Hierarchy

Constructors

  • Parameters

    • client: Client<true>
    • mongodb: Without<MongoClient, {
          options?: MongoClientOptions;
          url: string;
      }> & {
          options?: MongoClientOptions;
          url: string;
      } | Without<{
          options?: MongoClientOptions;
          url: string;
      }, MongoClient> & MongoClient

    Returns GiveawayClient

Properties

#cache: Collection<string, CollectionFilter> = ...
#dapi: REST = ...
#deleteAfter: number = 2
#events: EventEmitter<string | symbol, any> = ...
#mongo: MongoDB
#randomButtonColor: boolean = false
client: Client<true>
dbs: {
    active: Collection<Document>;
    deleteGiveaway: ((id, name?) => Promise<[null | DeleteResult, null | DeleteResult]>);
    getAll: (<D>(name?, filter?) => Promise<Giveaway<D>[]>);
    getGiveaway: (<D>(id, name?) => Promise<null | Giveaway<D>>);
    getSettings: ((guildId) => Promise<null | GiveawaySettings>);
    old: Collection<Document>;
    settings: Collection<Document>;
    templates: Collection<Document>;
}

Type declaration

  • active: Collection<Document>
  • deleteGiveaway: ((id, name?) => Promise<[null | DeleteResult, null | DeleteResult]>)
      • (id, name?): Promise<[null | DeleteResult, null | DeleteResult]>
      • Parameters

        Returns Promise<[null | DeleteResult, null | DeleteResult]>

  • getAll: (<D>(name?, filter?) => Promise<Giveaway<D>[]>)
      • <D>(name?, filter?): Promise<Giveaway<D>[]>
      • Type Parameters

        • D

        Parameters

        Returns Promise<Giveaway<D>[]>

  • getGiveaway: (<D>(id, name?) => Promise<null | Giveaway<D>>)
  • getSettings: ((guildId) => Promise<null | GiveawaySettings>)
  • old: Collection<Document>
  • settings: Collection<Document>
  • templates: Collection<Document>
errorHandler: ((error) => null) = noop

Type declaration

    • (error): null
    • Parameters

      • error: unknown

      Returns null

templates: GiveawayTemplates = ...
utils: GiveawayUtils = ...

Accessors

  • get #messages(): {
        components: (<D>(data, m, disableButton?, emoji?) => APIActionRowComponent<APIMessageActionRowComponent>[]);
        create: ((channelId, body?, files?) => Promise<null | APIMessage>);
        defaultMessageOptions: ((id, data, options?) => MessageCreateOptions);
        edit: (<D>(data, body, files?) => Promise<null | APIMessage>);
        fetch: (<D>(data) => Promise<null | APIMessage>);
        getDefaultRerollMessage: ((data, guildId, modId, winners) => Promise<CustomMessage>);
        getDefaultWinnerMessage: ((data, guildId, winners) => Promise<CustomMessage>);
        isDefaultEmbed(msg) => boolean;
    }
  • Returns {
        components: (<D>(data, m, disableButton?, emoji?) => APIActionRowComponent<APIMessageActionRowComponent>[]);
        create: ((channelId, body?, files?) => Promise<null | APIMessage>);
        defaultMessageOptions: ((id, data, options?) => MessageCreateOptions);
        edit: (<D>(data, body, files?) => Promise<null | APIMessage>);
        fetch: (<D>(data) => Promise<null | APIMessage>);
        getDefaultRerollMessage: ((data, guildId, modId, winners) => Promise<CustomMessage>);
        getDefaultWinnerMessage: ((data, guildId, winners) => Promise<CustomMessage>);
        isDefaultEmbed(msg) => boolean;
    }

    • components: (<D>(data, m, disableButton?, emoji?) => APIActionRowComponent<APIMessageActionRowComponent>[])
        • <D>(data, m, disableButton?, emoji?): APIActionRowComponent<APIMessageActionRowComponent>[]
        • Type Parameters

          • D

          Parameters

          • data: Giveaway<D>
          • m: APIMessage
          • disableButton: boolean = false
          • Optional emoji: ComponentEmojiResolvable

          Returns APIActionRowComponent<APIMessageActionRowComponent>[]

    • create: ((channelId, body?, files?) => Promise<null | APIMessage>)
        • (channelId, body?, files?): Promise<null | APIMessage>
        • Parameters

          • channelId: string
          • Optional body: RESTPostAPIChannelMessageJSONBody
          • Optional files: RawFile[]

          Returns Promise<null | APIMessage>

    • defaultMessageOptions: ((id, data, options?) => MessageCreateOptions)
        • (id, data, options?): MessageCreateOptions
        • Parameters

          • id: string
          • data: AddGiveaway
          • options: MessageCreateOptions = {}

          Returns MessageCreateOptions

    • edit: (<D>(data, body, files?) => Promise<null | APIMessage>)
        • <D>(data, body, files?): Promise<null | APIMessage>
        • Type Parameters

          • D

          Parameters

          • data: Giveaway<D>
          • body: RESTPatchAPIChannelMessageJSONBody
          • Optional files: RawFile[]

          Returns Promise<null | APIMessage>

    • fetch: (<D>(data) => Promise<null | APIMessage>)
        • <D>(data): Promise<null | APIMessage>
        • Type Parameters

          • D

          Parameters

          Returns Promise<null | APIMessage>

    • getDefaultRerollMessage: ((data, guildId, modId, winners) => Promise<CustomMessage>)
    • getDefaultWinnerMessage: ((data, guildId, winners) => Promise<CustomMessage>)
    • isDefaultEmbed:function
  • get api(): {
        cancel: ((id, reason?) => Promise<{
            message: string;
            status: false;
        } | [null | DeleteResult, null | DeleteResult]>);
        create: ((data) => Promise<{
            message: string;
            status: false;
        } | {
            message: string;
            status: true;
        }>);
        del: ((id, name?, deleteOld?) => Promise<[null | DeleteResult, null | DeleteResult]>);
        deleteOld: (() => Promise<{
            message: string;
            status: false;
        } | {
            message: string;
            status: true;
        }>);
        entries: {
            count: (<D>(data, userCount?) => number);
            user: (<D>(data, userId) => Promise<number>);
        };
        get: (<D>(id, name?) => Promise<null | Giveaway<D>>);
        list: {
            channel: ((channelId) => Promise<GiveawayDatabase[]>);
            server: ((guildId) => Promise<GiveawayDatabase[]>);
        };
        pickWinner: (<D>(data, winners?) => string[]);
        reroll: ((id, modId, amount?, giveRewards?) => Promise<{
            message: string;
            status: false;
        } | {
            message: string;
            status: true;
        }>);
        reschedule: ((id) => Promise<{
            message: string;
            status: false;
        } | {
            message: string;
            status: true;
        }>);
        schedule: ((id, time) => any);
        scheduleAll: (() => Promise<{
            message: string;
            status: false;
        } | {
            message: string;
            status: true;
        }>);
        update: (<D>(id, data, name?, updateMessage?, disableButton?, isEnd?, r?) => Promise<null | UpdateResult<Document>>);
    }
  • Returns {
        cancel: ((id, reason?) => Promise<{
            message: string;
            status: false;
        } | [null | DeleteResult, null | DeleteResult]>);
        create: ((data) => Promise<{
            message: string;
            status: false;
        } | {
            message: string;
            status: true;
        }>);
        del: ((id, name?, deleteOld?) => Promise<[null | DeleteResult, null | DeleteResult]>);
        deleteOld: (() => Promise<{
            message: string;
            status: false;
        } | {
            message: string;
            status: true;
        }>);
        entries: {
            count: (<D>(data, userCount?) => number);
            user: (<D>(data, userId) => Promise<number>);
        };
        get: (<D>(id, name?) => Promise<null | Giveaway<D>>);
        list: {
            channel: ((channelId) => Promise<GiveawayDatabase[]>);
            server: ((guildId) => Promise<GiveawayDatabase[]>);
        };
        pickWinner: (<D>(data, winners?) => string[]);
        reroll: ((id, modId, amount?, giveRewards?) => Promise<{
            message: string;
            status: false;
        } | {
            message: string;
            status: true;
        }>);
        reschedule: ((id) => Promise<{
            message: string;
            status: false;
        } | {
            message: string;
            status: true;
        }>);
        schedule: ((id, time) => any);
        scheduleAll: (() => Promise<{
            message: string;
            status: false;
        } | {
            message: string;
            status: true;
        }>);
        update: (<D>(id, data, name?, updateMessage?, disableButton?, isEnd?, r?) => Promise<null | UpdateResult<Document>>);
    }

    • cancel: ((id, reason?) => Promise<{
          message: string;
          status: false;
      } | [null | DeleteResult, null | DeleteResult]>)
        • (id, reason?): Promise<{
              message: string;
              status: false;
          } | [null | DeleteResult, null | DeleteResult]>
        • Parameters

          • id: string
          • reason: string = "No Reason Provided."

          Returns Promise<{
              message: string;
              status: false;
          } | [null | DeleteResult, null | DeleteResult]>

    • create: ((data) => Promise<{
          message: string;
          status: false;
      } | {
          message: string;
          status: true;
      }>)
        • (data): Promise<{
              message: string;
              status: false;
          } | {
              message: string;
              status: true;
          }>
        • Parameters

          Returns Promise<{
              message: string;
              status: false;
          } | {
              message: string;
              status: true;
          }>

    • del: ((id, name?, deleteOld?) => Promise<[null | DeleteResult, null | DeleteResult]>)
        • (id, name?, deleteOld?): Promise<[null | DeleteResult, null | DeleteResult]>
        • Parameters

          Returns Promise<[null | DeleteResult, null | DeleteResult]>

          Description

          Deletes a giveaway from the system.

    • deleteOld: (() => Promise<{
          message: string;
          status: false;
      } | {
          message: string;
          status: true;
      }>)
        • (): Promise<{
              message: string;
              status: false;
          } | {
              message: string;
              status: true;
          }>
        • Returns Promise<{
              message: string;
              status: false;
          } | {
              message: string;
              status: true;
          }>

    • entries: {
          count: (<D>(data, userCount?) => number);
          user: (<D>(data, userId) => Promise<number>);
      }
      • count: (<D>(data, userCount?) => number)
          • <D>(data, userCount?): number
          • Type Parameters

            • D

            Parameters

            • data: Giveaway<D>
            • userCount: boolean = true

            Returns number

      • user: (<D>(data, userId) => Promise<number>)
          • <D>(data, userId): Promise<number>
          • Type Parameters

            • D

            Parameters

            Returns Promise<number>

    • get: (<D>(id, name?) => Promise<null | Giveaway<D>>)
    • list: {
          channel: ((channelId) => Promise<GiveawayDatabase[]>);
          server: ((guildId) => Promise<GiveawayDatabase[]>);
      }
    • pickWinner: (<D>(data, winners?) => string[])
        • <D>(data, winners?): string[]
        • Type Parameters

          • D

          Parameters

          • data: Giveaway<D>
          • Optional winners: number

          Returns string[]

    • reroll: ((id, modId, amount?, giveRewards?) => Promise<{
          message: string;
          status: false;
      } | {
          message: string;
          status: true;
      }>)
        • (id, modId, amount?, giveRewards?): Promise<{
              message: string;
              status: false;
          } | {
              message: string;
              status: true;
          }>
        • Parameters

          • id: string
          • modId: string
          • amount: number = 1
          • giveRewards: boolean = true

          Returns Promise<{
              message: string;
              status: false;
          } | {
              message: string;
              status: true;
          }>

    • reschedule: ((id) => Promise<{
          message: string;
          status: false;
      } | {
          message: string;
          status: true;
      }>)
        • (id): Promise<{
              message: string;
              status: false;
          } | {
              message: string;
              status: true;
          }>
        • Parameters

          • id: string

          Returns Promise<{
              message: string;
              status: false;
          } | {
              message: string;
              status: true;
          }>

    • schedule: ((id, time) => any)
        • (id, time): any
        • Parameters

          • id: string
          • time: string | Date

          Returns any

    • scheduleAll: (() => Promise<{
          message: string;
          status: false;
      } | {
          message: string;
          status: true;
      }>)
        • (): Promise<{
              message: string;
              status: false;
          } | {
              message: string;
              status: true;
          }>
        • Returns Promise<{
              message: string;
              status: false;
          } | {
              message: string;
              status: true;
          }>

    • update: (<D>(id, data, name?, updateMessage?, disableButton?, isEnd?, r?) => Promise<null | UpdateResult<Document>>)
        • <D>(id, data, name?, updateMessage?, disableButton?, isEnd?, r?): Promise<null | UpdateResult<Document>>
        • Type Parameters

          • D

          Parameters

          • id: string
          • data: Giveaway<D>
          • name: CollectionNames = "active"
          • updateMessage: boolean = true
          • disableButton: boolean = false
          • isEnd: boolean = false
          • Optional r: {
                defer: ((options?) => Promise<void | InteractionResponse<boolean>>);
                deferUpdate: ((options?) => Promise<void | InteractionResponse<boolean>>);
                deleteReply: ((timeout?) => Promise<void | InteractionResponse<boolean>>);
                edit: ((options) => Promise<void | Message<boolean>>);
                followUp: ((options) => Promise<void | Message<boolean>>);
                raw: RepliableInteraction;
                reply: ((options) => Promise<void | Message<boolean> | InteractionResponse<boolean>>);
                send: ((options) => Promise<void | Message<boolean>>);
                showModal: ((options) => Promise<void>);
                update: ((options) => Promise<void | InteractionResponse<boolean>>);
            }
            • defer: ((options?) => Promise<void | InteractionResponse<boolean>>)
                • (options?): Promise<void | InteractionResponse<boolean>>
                • Parameters

                  • Optional options: InteractionDeferReplyOptions

                  Returns Promise<void | InteractionResponse<boolean>>

            • deferUpdate: ((options?) => Promise<void | InteractionResponse<boolean>>)
                • (options?): Promise<void | InteractionResponse<boolean>>
                • Parameters

                  • Optional options: InteractionDeferUpdateOptions

                  Returns Promise<void | InteractionResponse<boolean>>

            • deleteReply: ((timeout?) => Promise<void | InteractionResponse<boolean>>)
                • (timeout?): Promise<void | InteractionResponse<boolean>>
                • Parameters

                  • Optional timeout: number

                  Returns Promise<void | InteractionResponse<boolean>>

            • edit: ((options) => Promise<void | Message<boolean>>)
                • (options): Promise<void | Message<boolean>>
                • Parameters

                  • options: CommonInteractionEditReplyOptions

                  Returns Promise<void | Message<boolean>>

            • followUp: ((options) => Promise<void | Message<boolean>>)
                • (options): Promise<void | Message<boolean>>
                • Parameters

                  • options: InteractionReplyOptions

                  Returns Promise<void | Message<boolean>>

            • raw: RepliableInteraction
            • reply: ((options) => Promise<void | Message<boolean> | InteractionResponse<boolean>>)
                • (options): Promise<void | Message<boolean> | InteractionResponse<boolean>>
                • Parameters

                  • options: InteractionReplyOptions

                  Returns Promise<void | Message<boolean> | InteractionResponse<boolean>>

            • send: ((options) => Promise<void | Message<boolean>>)
                • (options): Promise<void | Message<boolean>>
                • Parameters

                  • options: TextBasedChannelSendOption

                  Returns Promise<void | Message<boolean>>

            • showModal: ((options) => Promise<void>)
                • (options): Promise<void>
                • Parameters

                  • options: APIModalInteractionResponseCallbackData | ModalComponentData | JSONEncodable<APIModalInteractionResponseCallbackData>

                  Returns Promise<void>

            • update: ((options) => Promise<void | InteractionResponse<boolean>>)
                • (options): Promise<void | InteractionResponse<boolean>>
                • Parameters

                  • options: CommonInteractionUpdateOptions

                  Returns Promise<void | InteractionResponse<boolean>>

          Returns Promise<null | UpdateResult<Document>>

  • get filters(): {
        add: ((channelId, filter) => {
            message: string;
            status: true;
        });
        get: ((channelId) => null | CollectionFilter);
        list: ((ids?) => CollectionFilter[]);
        multiple: {
            add: ((channels) => {
                data: {
                    message: string;
                    status: boolean;
                }[];
                status: true;
            });
            get: ((ids) => CollectionFilter[]);
            remove: ((ids) => {
                message: string;
                status: true;
            });
        };
        remove: ((channelId) => {
            message: string;
            status: false;
        } | {
            message: string;
            status: true;
        });
        removeAll: (() => {
            message: string;
            status: false;
        } | {
            message: string;
            status: true;
        });
    }
  • Returns {
        add: ((channelId, filter) => {
            message: string;
            status: true;
        });
        get: ((channelId) => null | CollectionFilter);
        list: ((ids?) => CollectionFilter[]);
        multiple: {
            add: ((channels) => {
                data: {
                    message: string;
                    status: boolean;
                }[];
                status: true;
            });
            get: ((ids) => CollectionFilter[]);
            remove: ((ids) => {
                message: string;
                status: true;
            });
        };
        remove: ((channelId) => {
            message: string;
            status: false;
        } | {
            message: string;
            status: true;
        });
        removeAll: (() => {
            message: string;
            status: false;
        } | {
            message: string;
            status: true;
        });
    }

    • add: ((channelId, filter) => {
          message: string;
          status: true;
      })
        • (channelId, filter): {
              message: string;
              status: true;
          }
        • Parameters

          Returns {
              message: string;
              status: true;
          }

          • message: string
          • status: true
    • get: ((channelId) => null | CollectionFilter)
    • list: ((ids?) => CollectionFilter[])
    • multiple: {
          add: ((channels) => {
              data: {
                  message: string;
                  status: boolean;
              }[];
              status: true;
          });
          get: ((ids) => CollectionFilter[]);
          remove: ((ids) => {
              message: string;
              status: true;
          });
      }
      • add: ((channels) => {
            data: {
                message: string;
                status: boolean;
            }[];
            status: true;
        })
          • (channels): {
                data: {
                    message: string;
                    status: boolean;
                }[];
                status: true;
            }
          • Parameters

            • channels: {
                  channelId: string;
                  filter: GiveawayFilter;
              }[]

            Returns {
                data: {
                    message: string;
                    status: boolean;
                }[];
                status: true;
            }

            • data: {
                  message: string;
                  status: boolean;
              }[]
            • status: true
      • get: ((ids) => CollectionFilter[])
      • remove: ((ids) => {
            message: string;
            status: true;
        })
          • (ids): {
                message: string;
                status: true;
            }
          • Parameters

            • ids: string[]

            Returns {
                message: string;
                status: true;
            }

            • message: string
            • status: true
    • remove: ((channelId) => {
          message: string;
          status: false;
      } | {
          message: string;
          status: true;
      })
        • (channelId): {
              message: string;
              status: false;
          } | {
              message: string;
              status: true;
          }
        • Parameters

          • channelId: string

          Returns {
              message: string;
              status: false;
          } | {
              message: string;
              status: true;
          }

    • removeAll: (() => {
          message: string;
          status: false;
      } | {
          message: string;
          status: true;
      })
        • (): {
              message: string;
              status: false;
          } | {
              message: string;
              status: true;
          }
        • Returns {
              message: string;
              status: false;
          } | {
              message: string;
              status: true;
          }

  • get interactions(): {
        main: ((i, filter?) => Promise<void | Message<boolean>>);
        users: {
            list: ((i) => Promise<null | void | Message<boolean> | PaginatedMessage>);
            remove: ((i) => Promise<void | Message<boolean> | InteractionResponse<boolean>>);
        };
    }
  • Returns {
        main: ((i, filter?) => Promise<void | Message<boolean>>);
        users: {
            list: ((i) => Promise<null | void | Message<boolean> | PaginatedMessage>);
            remove: ((i) => Promise<void | Message<boolean> | InteractionResponse<boolean>>);
        };
    }

    • main: ((i, filter?) => Promise<void | Message<boolean>>)
        • (i, filter?): Promise<void | Message<boolean>>
        • Parameters

          Returns Promise<void | Message<boolean>>

    • users: {
          list: ((i) => Promise<null | void | Message<boolean> | PaginatedMessage>);
          remove: ((i) => Promise<void | Message<boolean> | InteractionResponse<boolean>>);
      }
      • list: ((i) => Promise<null | void | Message<boolean> | PaginatedMessage>)
          • (i): Promise<null | void | Message<boolean> | PaginatedMessage>
          • Parameters

            • i: Interaction

            Returns Promise<null | void | Message<boolean> | PaginatedMessage>

      • remove: ((i) => Promise<void | Message<boolean> | InteractionResponse<boolean>>)
          • (i): Promise<void | Message<boolean> | InteractionResponse<boolean>>
          • Parameters

            • i: Interaction

            Returns Promise<void | Message<boolean> | InteractionResponse<boolean>>

  • get settings(): {
        get: ((guildId) => Promise<null | GiveawaySettings>);
        list: (() => Promise<GiveawaySettings[]>);
        remove: ((guildId) => Promise<null | DeleteResult>);
        update: ((guildId, data) => Promise<null | UpdateResult<Document>>);
    }
  • Returns {
        get: ((guildId) => Promise<null | GiveawaySettings>);
        list: (() => Promise<GiveawaySettings[]>);
        remove: ((guildId) => Promise<null | DeleteResult>);
        update: ((guildId, data) => Promise<null | UpdateResult<Document>>);
    }

    • get: ((guildId) => Promise<null | GiveawaySettings>)
    • list: (() => Promise<GiveawaySettings[]>)
    • remove: ((guildId) => Promise<null | DeleteResult>)
        • (guildId): Promise<null | DeleteResult>
        • Parameters

          • guildId: string

          Returns Promise<null | DeleteResult>

    • update: ((guildId, data) => Promise<null | UpdateResult<Document>>)
        • (guildId, data): Promise<null | UpdateResult<Document>>
        • Parameters

          Returns Promise<null | UpdateResult<Document>>

Methods

  • Parameters

    • bit: number

    Returns boolean

    Description

    Returns true/false if the client has certain gateway intents

  • Parameters

    • guildId: string

    Returns Promise<Collection<string, GuildMember>>

  • Parameters

    • guildId: string
    • userId: string

    Returns Promise<null | GuildMember>

  • Type Parameters

    • D

    • B = unknown

    Parameters

    • route: `/${string}`
    • Optional options: {
          auth?: boolean;
          body?: B;
          files?: RawFile[];
          method?: "delete" | "get" | "post" | "patch";
          query?: URLSearchParams;
          reason?: string;
      }
      • Optional auth?: boolean
      • Optional body?: B
      • Optional files?: RawFile[]
      • Optional method?: "delete" | "get" | "post" | "patch"
      • Optional query?: URLSearchParams
      • Optional reason?: string

    Returns Promise<null | D>

  • Parameters

    • userId: string

    Returns {
        add: ((id, entries?, r?) => Promise<{
            message: string;
            status: false;
        } | {
            message: string;
            status: true;
        }>);
        list: (<D>(guildIds?) => Promise<Giveaway<D>[]>);
        remove: ((id) => Promise<{
            message: string;
            status: false;
        } | {
            message: string;
            status: true;
        }>);
        update: ((id, type, entries) => Promise<{
            message: string;
            status: false;
        } | {
            message: string;
            status: true;
        }>);
    }

    • add: ((id, entries?, r?) => Promise<{
          message: string;
          status: false;
      } | {
          message: string;
          status: true;
      }>)
        • (id, entries?, r?): Promise<{
              message: string;
              status: false;
          } | {
              message: string;
              status: true;
          }>
        • Parameters

          • id: string
          • Optional entries: number
          • Optional r: {
                defer: ((options?) => Promise<void | InteractionResponse<boolean>>);
                deferUpdate: ((options?) => Promise<void | InteractionResponse<boolean>>);
                deleteReply: ((timeout?) => Promise<void | InteractionResponse<boolean>>);
                edit: ((options) => Promise<void | Message<boolean>>);
                followUp: ((options) => Promise<void | Message<boolean>>);
                raw: RepliableInteraction;
                reply: ((options) => Promise<void | Message<boolean> | InteractionResponse<boolean>>);
                send: ((options) => Promise<void | Message<boolean>>);
                showModal: ((options) => Promise<void>);
                update: ((options) => Promise<void | InteractionResponse<boolean>>);
            }
            • defer: ((options?) => Promise<void | InteractionResponse<boolean>>)
                • (options?): Promise<void | InteractionResponse<boolean>>
                • Parameters

                  • Optional options: InteractionDeferReplyOptions

                  Returns Promise<void | InteractionResponse<boolean>>

            • deferUpdate: ((options?) => Promise<void | InteractionResponse<boolean>>)
                • (options?): Promise<void | InteractionResponse<boolean>>
                • Parameters

                  • Optional options: InteractionDeferUpdateOptions

                  Returns Promise<void | InteractionResponse<boolean>>

            • deleteReply: ((timeout?) => Promise<void | InteractionResponse<boolean>>)
                • (timeout?): Promise<void | InteractionResponse<boolean>>
                • Parameters

                  • Optional timeout: number

                  Returns Promise<void | InteractionResponse<boolean>>

            • edit: ((options) => Promise<void | Message<boolean>>)
                • (options): Promise<void | Message<boolean>>
                • Parameters

                  • options: CommonInteractionEditReplyOptions

                  Returns Promise<void | Message<boolean>>

            • followUp: ((options) => Promise<void | Message<boolean>>)
                • (options): Promise<void | Message<boolean>>
                • Parameters

                  • options: InteractionReplyOptions

                  Returns Promise<void | Message<boolean>>

            • raw: RepliableInteraction
            • reply: ((options) => Promise<void | Message<boolean> | InteractionResponse<boolean>>)
                • (options): Promise<void | Message<boolean> | InteractionResponse<boolean>>
                • Parameters

                  • options: InteractionReplyOptions

                  Returns Promise<void | Message<boolean> | InteractionResponse<boolean>>

            • send: ((options) => Promise<void | Message<boolean>>)
                • (options): Promise<void | Message<boolean>>
                • Parameters

                  • options: TextBasedChannelSendOption

                  Returns Promise<void | Message<boolean>>

            • showModal: ((options) => Promise<void>)
                • (options): Promise<void>
                • Parameters

                  • options: APIModalInteractionResponseCallbackData | ModalComponentData | JSONEncodable<APIModalInteractionResponseCallbackData>

                  Returns Promise<void>

            • update: ((options) => Promise<void | InteractionResponse<boolean>>)
                • (options): Promise<void | InteractionResponse<boolean>>
                • Parameters

                  • options: CommonInteractionUpdateOptions

                  Returns Promise<void | InteractionResponse<boolean>>

          Returns Promise<{
              message: string;
              status: false;
          } | {
              message: string;
              status: true;
          }>

          Description

          'id' is the message or giveaway ID

    • list: (<D>(guildIds?) => Promise<Giveaway<D>[]>)
        • <D>(guildIds?): Promise<Giveaway<D>[]>
        • Type Parameters

          • D

          Parameters

          • Optional guildIds: string[]

          Returns Promise<Giveaway<D>[]>

    • remove: ((id) => Promise<{
          message: string;
          status: false;
      } | {
          message: string;
          status: true;
      }>)
        • (id): Promise<{
              message: string;
              status: false;
          } | {
              message: string;
              status: true;
          }>
        • Parameters

          • id: string

          Returns Promise<{
              message: string;
              status: false;
          } | {
              message: string;
              status: true;
          }>

          Description

          'id' is the message or giveaway ID

    • update: ((id, type, entries) => Promise<{
          message: string;
          status: false;
      } | {
          message: string;
          status: true;
      }>)
        • (id, type, entries): Promise<{
              message: string;
              status: false;
          } | {
              message: string;
              status: true;
          }>
        • Parameters

          • id: string
          • type: "add" | "remove"
          • entries: number

          Returns Promise<{
              message: string;
              status: false;
          } | {
              message: string;
              status: true;
          }>

Generated using TypeDoc