@tanzanite/discord-akairo
    Preparing search index...

    Class AkairoHandler<Module, Handler, Events>

    Base class for handling modules.

    Type Parameters

    Hierarchy (View Summary)

    Index

    Constructors

    Properties

    "[brandSymbol]": Events

    This field doesn't actually exist, it's just a way to make TS properly infer the events from classes that extend AsyncEventEmitter

    automateCategories: boolean

    Whether or not to automate category names.

    categories: Collection<string, Category<string, Module>>

    Categories, mapped by ID to Category.

    classToHandle: Class<Module>

    Class to handle.

    client: AkairoClient

    The Akairo client.

    directory: string

    The main directory to modules.

    extensions: Set<string>

    File extensions to load.

    loadFilter: LoadPredicate

    Function that filters files when loading.

    modules: Collection<string, Module>

    Modules loaded, mapped by ID to AkairoModule.

    Methods

    • Type Parameters

      • K extends string | number | symbol

      Parameters

      • eventName: K
      • listener: Exclude<
            InternalAsyncEventEmitterInternalListenerForEvent<
                AsyncEventEmitter<Events>,
                K,
                Events,
            >["listener"],
            undefined,
        >

      Returns this

    • Type Parameters

      • K extends string | symbol

      Parameters

      • eventName: K
      • listener: Exclude<
            InternalAsyncEventEmitterInternalListenerForEvent<
                AsyncEventEmitter<Events>,
                K,
                Events,
            >["listener"],
            undefined,
        >

      Returns this

    • Type Parameters

      • K extends string | number | symbol

      Parameters

      • eventName: K
      • ...args: InternalGetAsyncEventEmitterEventParameters<AsyncEventEmitter<Events>, K>

      Returns boolean

    • Type Parameters

      • K extends string | symbol

      Parameters

      • eventName: K
      • ...args: InternalGetAsyncEventEmitterEventParameters<AsyncEventEmitter<Events>, K>

      Returns boolean

    • Returns (string | symbol)[] & (keyof AsyncEventEmitterPredefinedEvents)[] & (
          keyof Events
      )[]

    • Returns number

    • Type Parameters

      • K extends string | number | symbol

      Parameters

      • eventName: K

      Returns number

    • Parameters

      • eventName: string | symbol

      Returns number

    • Type Parameters

      • K extends string | number | symbol

      Parameters

      • eventName: K

      Returns Exclude<
          InternalAsyncEventEmitterInternalListenerForEvent<
              AsyncEventEmitter<Events>,
              K,
              Events,
          >["listener"],
          undefined,
      >[]

    • Type Parameters

      • K extends string | symbol

      Parameters

      • eventName: K

      Returns Exclude<
          InternalAsyncEventEmitterInternalListenerForEvent<
              AsyncEventEmitter<Events>,
              K,
              Events,
          >["listener"],
          undefined,
      >[]

    • Loads a module, can be a module class or a filepath.

      Parameters

      • thing: string | Module

        Module class or path to module.

      • isReload: boolean = false

        Whether this is a reload or not.

      Returns Promise<undefined | Module>

    • Type Parameters

      • K extends string | number | symbol

      Parameters

      • eventName: K
      • listener: Exclude<
            InternalAsyncEventEmitterInternalListenerForEvent<
                AsyncEventEmitter<Events>,
                K,
                Events,
            >["listener"],
            undefined,
        >

      Returns this

    • Type Parameters

      • K extends string | symbol

      Parameters

      • eventName: K
      • listener: Exclude<
            InternalAsyncEventEmitterInternalListenerForEvent<
                AsyncEventEmitter<Events>,
                K,
                Events,
            >["listener"],
            undefined,
        >

      Returns this

    • Type Parameters

      • K extends string | number | symbol

      Parameters

      • eventName: K
      • listener: Exclude<
            InternalAsyncEventEmitterInternalListenerForEvent<
                AsyncEventEmitter<Events>,
                K,
                Events,
            >["listener"],
            undefined,
        >

      Returns this

    • Type Parameters

      • K extends string | symbol

      Parameters

      • eventName: K
      • listener: Exclude<
            InternalAsyncEventEmitterInternalListenerForEvent<
                AsyncEventEmitter<Events>,
                K,
                Events,
            >["listener"],
            undefined,
        >

      Returns this

    • Type Parameters

      • K extends string | number | symbol

      Parameters

      • eventName: K
      • listener: Exclude<
            InternalAsyncEventEmitterInternalListenerForEvent<
                AsyncEventEmitter<Events>,
                K,
                Events,
            >["listener"],
            undefined,
        >

      Returns this

    • Type Parameters

      • K extends string | symbol

      Parameters

      • eventName: K
      • listener: Exclude<
            InternalAsyncEventEmitterInternalListenerForEvent<
                AsyncEventEmitter<Events>,
                K,
                Events,
            >["listener"],
            undefined,
        >

      Returns this

    • Type Parameters

      • K extends string | number | symbol

      Parameters

      • eventName: K
      • listener: Exclude<
            InternalAsyncEventEmitterInternalListenerForEvent<
                AsyncEventEmitter<Events>,
                K,
                Events,
            >["listener"],
            undefined,
        >

      Returns this

    • Type Parameters

      • K extends string | symbol

      Parameters

      • eventName: K
      • listener: Exclude<
            InternalAsyncEventEmitterInternalListenerForEvent<
                AsyncEventEmitter<Events>,
                K,
                Events,
            >["listener"],
            undefined,
        >

      Returns this

    • Type Parameters

      • K extends string | number | symbol

      Parameters

      • eventName: K
      • listener: Exclude<
            InternalAsyncEventEmitterInternalListenerForEvent<
                AsyncEventEmitter<Events>,
                K,
                Events,
            >["listener"],
            undefined,
        >

      Returns this

    • Type Parameters

      • K extends string | symbol

      Parameters

      • eventName: K
      • listener: Exclude<
            InternalAsyncEventEmitterInternalListenerForEvent<
                AsyncEventEmitter<Events>,
                K,
                Events,
            >["listener"],
            undefined,
        >

      Returns this

    • Type Parameters

      • K extends string | number | symbol

      Parameters

      • eventName: K

      Returns InternalAsyncEventEmitterInternalListenerForEvent<
          AsyncEventEmitter<Events>,
          K,
          Events,
      >[]

    • Type Parameters

      • K extends string | symbol

      Parameters

      • eventName: K

      Returns InternalAsyncEventEmitterInternalListenerForEvent<
          AsyncEventEmitter<Events>,
          K,
          Events,
      >[]

    • Type Parameters

      • K extends string | number | symbol

      Parameters

      • event: K

      Returns this

    • Type Parameters

      • K extends string | number | symbol

      Parameters

      • Optionalevent: K

      Returns this

    • Parameters

      • event: string | symbol

      Returns this

    • Parameters

      • Optionalevent: string | symbol

      Returns this

    • Type Parameters

      • K extends string | number | symbol

      Parameters

      • eventName: K
      • listener: Exclude<
            InternalAsyncEventEmitterInternalListenerForEvent<
                AsyncEventEmitter<Events>,
                K,
                Events,
            >["listener"],
            undefined,
        >

      Returns this

    • Type Parameters

      • K extends string | symbol

      Parameters

      • eventName: K
      • listener: Exclude<
            InternalAsyncEventEmitterInternalListenerForEvent<
                AsyncEventEmitter<Events>,
                K,
                Events,
            >["listener"],
            undefined,
        >

      Returns this

    • Parameters

      • n: number

      Returns this

    • Returns Promise<boolean>

    • Type Parameters

      • EventMap extends {}
      • EventName extends PropertyKey = (keyof AsyncEventEmitterPredefinedEvents) | keyof EventMap

      Parameters

      • emitter: AsyncEventEmitter<EventMap>
      • eventName: (keyof AsyncEventEmitterPredefinedEvents) | EventName

      Returns number

    • Parameters

      • emitter: AsyncEventEmitter<any>
      • eventName: string | symbol

      Returns number

    • Type Parameters

      • EventMap extends {}
      • EventName extends PropertyKey = (keyof AsyncEventEmitterPredefinedEvents) | keyof EventMap

      Parameters

      • emitter: AsyncEventEmitter<EventMap>
      • eventName: EventName
      • Optionaloptions: AbortableMethods

      Returns AsyncGenerator<
          InternalGetAsyncEventEmitterEventParameters<
              AsyncEventEmitter<EventMap>,
              EventName,
              EventMap,
          >,
          void,
      >

    • Parameters

      • emitter: AsyncEventEmitter<any>
      • eventName: string | symbol
      • Optionaloptions: AbortableMethods

      Returns AsyncGenerator<any[], void>

    • Type Parameters

      • EventMap extends {}
      • EventName extends PropertyKey = (keyof AsyncEventEmitterPredefinedEvents) | keyof EventMap

      Parameters

      • emitter: AsyncEventEmitter<EventMap>
      • eventName: EventName
      • Optionaloptions: AbortableMethods

      Returns Promise<
          InternalGetAsyncEventEmitterEventParameters<
              AsyncEventEmitter<EventMap>,
              EventName,
              EventMap,
          >,
      >

    • Parameters

      • emitter: AsyncEventEmitter<any>
      • eventName: string | symbol
      • Optionaloptions: AbortableMethods

      Returns Promise<any[]>

    • Reads files recursively from a directory.

      Parameters

      • directory: string

        Directory to read.

      Returns string[]