UNPKG

detritus-client

Version:

A Typescript NodeJS library to interact with Discord's API, both Rest and Gateway.

292 lines (291 loc) 13.4 kB
import { RequestTypes } from 'detritus-client-rest'; import { ShardClient } from '../client'; import { BaseCollection } from '../collections/basecollection'; import { BaseSet } from '../collections/baseset'; import { GuildExplicitContentFilterTypes, GuildNSFWLevels, Locales, MfaLevels, PremiumGuildTiers } from '../constants'; import { PermissionTools, UrlQuery } from '../utils'; import { BaseStructure, BaseStructureData } from './basestructure'; import { Channel, ChannelGuildCategory, ChannelGuildStageVoice, ChannelGuildStore, ChannelGuildText, ChannelGuildThread, ChannelGuildVoice } from './channel'; import { Emoji } from './emoji'; import { Member } from './member'; import { Message } from './message'; import { Presence } from './presence'; import { Role } from './role'; import { StageInstance } from './stageinstance'; import { Sticker } from './sticker'; import { User } from './user'; import { VoiceRegion } from './voiceregion'; import { VoiceState } from './voicestate'; /** * Base Guild Structure * @category Structure */ export declare class BaseGuild extends BaseStructure { readonly _keys: BaseSet<string>; features: BaseSet<string>; icon: null | string; id: string; name: string; constructor(client: ShardClient, data?: BaseStructureData, isClone?: boolean); get acronym(): string; get canHaveBanner(): boolean; get canHaveDiscoveryFeatures(): boolean; get canHaveNews(): boolean; get canHavePublic(): boolean; get canHaveSplash(): boolean; get canHaveStore(): boolean; get canHaveVanityUrl(): boolean; get canHaveVipRegions(): boolean; get createdAt(): Date; get createdAtUnix(): number; get iconUrl(): null | string; get isDiscoverable(): boolean; get isPartnered(): boolean; get isPublic(): boolean; get isVerified(): boolean; get jumpLink(): string; get widgetImageUrl(): string; get widgetUrl(): string; hasFeature(feature: string): boolean; iconUrlFormat(format?: null | string, query?: UrlQuery): null | string; widgetImageUrlFormat(query?: UrlQuery): string; widgetUrlFormat(options?: RequestTypes.RouteWidget): string; ack(): Promise<any>; addMember(userId: string, options: RequestTypes.AddGuildMember): Promise<any>; addMemberRole(userId: string, roleId: string): Promise<any>; beginPrune(options?: RequestTypes.BeginGuildPrune): Promise<any>; createBan(userId: string, options: RequestTypes.CreateGuildBan): Promise<any>; createChannel(options: RequestTypes.CreateGuildChannel): Promise<Channel>; createEmoji(options: RequestTypes.CreateGuildEmoji): Promise<Emoji>; createIntegration(options: RequestTypes.CreateGuildIntegration): Promise<any>; createRole(options: RequestTypes.CreateGuildRole): Promise<Role>; createSticker(options: RequestTypes.CreateGuildSticker): Promise<Sticker>; createTemplate(options: RequestTypes.CreateGuildTemplate): Promise<import("./template").Template>; delete(): Promise<any>; deleteChannel(channelId: string, options?: RequestTypes.DeleteChannel): Promise<Channel>; deleteEmoji(emojiId: string, options?: RequestTypes.DeleteGuildEmoji): Promise<any>; deleteIntegration(integrationId: string, options?: RequestTypes.DeleteGuildIntegration): Promise<any>; deletePremiumSubscription(subscriptionId: string): Promise<any>; deleteRole(roleId: string, options?: RequestTypes.DeleteGuildRole): Promise<any>; deleteSticker(stickerId: string): Promise<any>; deleteTemplate(templateId: string): Promise<any>; edit(options: RequestTypes.EditGuild): Promise<Guild>; editChannel(channelId: string, options: RequestTypes.EditChannel): Promise<Channel>; editChannelPositions(channels: RequestTypes.EditGuildChannels, options?: RequestTypes.EditGuildChannelsExtra): Promise<any>; editEmbed(options: RequestTypes.EditGuildEmbed): Promise<any>; editEmoji(emojiId: string, options: RequestTypes.EditGuildEmoji): Promise<Emoji>; editIntegration(integrationId: string, options: RequestTypes.EditGuildIntegration): Promise<any>; editMember(userId: string, options: RequestTypes.EditGuildMember): Promise<any>; editMfaLevel(options: RequestTypes.EditGuildMfaLevel): Promise<any>; editNick(nick: string, options?: RequestTypes.EditGuildNick): Promise<any>; editRole(roleId: string, options: RequestTypes.EditGuildRole): Promise<Role>; editRolePositions(roles: RequestTypes.EditGuildRolePositions, options?: RequestTypes.EditGuildRolePositionsExtra): Promise<BaseCollection<string, Role>>; editSticker(stickerId: string, options?: RequestTypes.EditGuildSticker): Promise<Sticker>; editVanityUrl(code: string, options?: RequestTypes.EditGuildVanity): Promise<any>; editVoiceState(userId: string, options: RequestTypes.EditGuildVoiceState): Promise<any>; fetchApplications(channelId?: string): Promise<any>; fetchAuditLogs(options: RequestTypes.FetchGuildAuditLogs): Promise<BaseCollection<string, import("./auditlog").AuditLog>>; fetchBans(): Promise<import("../rest/types").RestResponses.FetchGuildBans>; fetchChannels(): Promise<BaseCollection<string, Channel>>; fetchEmbed(): Promise<any>; fetchEmoji(emojiId: string): Promise<Emoji>; fetchEmojis(): Promise<BaseCollection<string, Emoji>>; fetchInvites(): Promise<BaseCollection<string, import("./invite").Invite>>; fetchIntegrations(): Promise<BaseCollection<string, import("./integration").Integration>>; fetchMember(userId: string): Promise<Member>; fetchMembers(options: RequestTypes.FetchGuildMembers): Promise<BaseCollection<string, Member>>; fetchMembersSearch(options: RequestTypes.FetchGuildMembersSearch): Promise<BaseCollection<string, Member>>; fetchPremiumSubscriptions(): Promise<BaseCollection<string, import("./premiumsubscription").PremiumSubscription>>; fetchPruneCount(): Promise<any>; fetchRoles(): Promise<BaseCollection<string, Role>>; fetchSticker(stickerId: string): Promise<Sticker>; fetchStickers(): Promise<BaseCollection<string, Sticker>>; fetchTemplates(): Promise<BaseCollection<string, import("./template").Template>>; fetchVanityUrl(): Promise<any>; fetchVoiceRegions(): Promise<BaseCollection<string, VoiceRegion>>; fetchWebhooks(): Promise<BaseCollection<string, import("./webhook").Webhook>>; fetchWidget(): Promise<any>; fetchWidgetJson(): Promise<any>; fetchWidgetPng(options?: RequestTypes.FetchGuildWidgetPng): Promise<any>; join(options: RequestTypes.JoinGuild): Promise<any>; leave(): Promise<any>; removeBan(userId: string, options?: RequestTypes.RemoveGuildBan): Promise<any>; removeMember(userId: string, options?: RequestTypes.RemoveGuildMember): Promise<any>; removeMemberRole(userId: string, roleId: string, options?: RequestTypes.RemoveGuildBan): Promise<any>; requestMembers(options: { limit?: number; presences?: boolean; query: string; timeout?: number; userIds?: Array<string>; }): Promise<{ members: BaseCollection<string, Member>; nonce: string; notFound: BaseSet<string>; presences: BaseCollection<string, Presence>; }>; search(options: RequestTypes.SearchOptions, retry?: boolean): Promise<any>; syncIntegration(integrationId: string): Promise<any>; mergeValue(key: string, value: any): void; toString(): string; } /** * Partial Guild Structure * @category Structure */ export declare class GuildPartial extends BaseGuild { readonly _keys: BaseSet<string>; banner: null | string; description: null | string; nsfw: boolean; nsfwLevel: GuildNSFWLevels; splash: null | string; vanityUrlCode: null | string; verificationLevel: number; welcomeScreen: GuildWelcomeScreen | null; constructor(client: ShardClient, data?: BaseStructureData, isClone?: boolean); get bannerUrl(): null | string; get splashUrl(): null | string; bannerUrlFormat(format?: null | string, query?: UrlQuery): null | string; splashUrlFormat(format?: null | string, query?: UrlQuery): null | string; mergeValue(key: string, value: any): void; } /** * Guild Structure * @category Structure */ export declare class Guild extends GuildPartial { readonly _keys: BaseSet<string>; readonly _keysMerge: BaseSet<string>; readonly _keysSkipDifference: BaseSet<string>; readonly _channelIds: BaseSet<string>; readonly _threadIds: BaseSet<string>; afkChannelId: null | string; afkTimeout: number; applicationCommandCount: number; applicationId?: null | string; banner: null | string; defaultMessageNotifications: number; description: null | string; embedChannelId: null | string; embedEnabled: boolean; explicitContentFilter: GuildExplicitContentFilterTypes; emojis: BaseCollection<string, Emoji>; features: BaseSet<string>; discoverySplash: null | string; hasMetadata: boolean; icon: null | string; id: string; isPartial: boolean; isReady: boolean; joinedAtUnix: number; large: boolean; lazy: boolean; left: boolean; maxMembers: number; maxPresences: number; maxVideoChannelUsers: number; memberCount: number; members: BaseCollection<string, Member>; mfaLevel: MfaLevels; name: string; nsfw: boolean; nsfwLevel: GuildNSFWLevels; ownerId: string; preferredLocale: Locales; premiumSubscriptionCount: number; premiumTier: PremiumGuildTiers; publicUpdatesChannelId: null | string; region: string; roles: BaseCollection<string, Role>; rulesChannelId: null | string; splash: null | string; stageInstances: BaseCollection<string, StageInstance>; stickers: BaseCollection<string, Sticker>; systemChannelFlags: number; systemChannelId: null | string; unavailable: boolean; vanityUrlCode: null | string; verificationLevel: number; welcomeScreen: GuildWelcomeScreen | null; widgetChannelId: null | string; widgetEnabled: boolean; constructor(client: ShardClient, data?: BaseStructureData, isClone?: boolean); get afkChannel(): Channel | null; get allTextChannels(): BaseCollection<string, ChannelGuildText>; get allVoiceChannels(): BaseCollection<string, ChannelGuildStageVoice | ChannelGuildVoice>; get categoryChannels(): BaseCollection<string, ChannelGuildCategory>; get channels(): BaseCollection<string, Channel>; get defaultRole(): null | Role; get discoverySplashUrl(): null | string; get hasSystemChannelSuppressJoinNotifications(): boolean; get hasSystemChannelSuppressPremiumSubscriptions(): boolean; get joinedAt(): Date | null; get maxAttachmentSize(): number; get maxBitrate(): number; get maxEmojis(): number; get me(): Member | null; get messages(): BaseCollection<string, Message>; get owner(): null | User; get preferredLocaleText(): string; get presences(): BaseCollection<string, Presence>; get publicUpdatesChannel(): Channel | null; get rulesChannel(): Channel | null; get stageVoiceChannels(): BaseCollection<string, ChannelGuildStageVoice>; get storeChannels(): BaseCollection<string, ChannelGuildStore>; get systemChannel(): Channel | null; get textChannels(): BaseCollection<string, ChannelGuildText>; get threads(): BaseCollection<string, ChannelGuildThread>; get voiceChannels(): BaseCollection<string, ChannelGuildVoice>; get voiceStates(): BaseCollection<string, VoiceState>; can(permissions: PermissionTools.PermissionChecks, member?: Member | null, options?: { ignoreAdministrator?: boolean; ignoreOwner?: boolean; }): boolean; discoverySplashUrlFormat(format?: null | string, query?: UrlQuery): null | string; hasSystemChannelFlag(flag: number): boolean; isOwner(userId: string): boolean; fetchVoiceRegion(): Promise<VoiceRegion>; mergeValue(key: string, value: any): void; } /** * Guild Me Structure * @category Structure */ export declare class GuildMe extends BaseGuild { readonly _keys: BaseSet<string>; owner: boolean; permissions: bigint; constructor(client: ShardClient, data?: BaseStructureData, isClone?: boolean); can(permissions: PermissionTools.PermissionChecks, options?: { ignoreAdministrator?: boolean; ignoreOwner?: boolean; }): boolean; mergeValue(key: string, value: any): void; } /** * Guild Welcome Screen, used in [[Guild]] * @category Structure */ export declare class GuildWelcomeScreen extends BaseStructure { readonly _uncloneable = true; readonly _keys: BaseSet<string>; description: string; welcomeChannels: BaseCollection<string, GuildWelcomeScreenChannel>; constructor(client: ShardClient, data?: BaseStructureData, isClone?: boolean); mergeValue(key: string, value: any): void; } /** * Guild Welcome Screen Channel, used in [[GuildWelcomeScreen]] * @category Structure */ export declare class GuildWelcomeScreenChannel extends BaseStructure { readonly _uncloneable = true; readonly _keys: BaseSet<string>; readonly guildWelcomeScreen: GuildWelcomeScreen; channelId: string; description: string; emojiId?: string; emojiName: string | null; constructor(guildWelcomeScreen: GuildWelcomeScreen, data: BaseStructureData); }