UNPKG

detritus-client

Version:

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

176 lines (175 loc) 6.02 kB
import { ShardClient } from '../client'; import { BaseCollection } from '../collections/basecollection'; import { BaseSet } from '../collections/baseset'; import { ActivityPlatformTypes } from '../constants'; import { UrlQuery } from '../utils'; import { BaseStructure, BaseStructureData } from './basestructure'; import { Application } from './application'; import { Emoji } from './emoji'; import { User } from './user'; export declare const SpecialApplications: Readonly<{ XBOX: string; }>; export declare const SpecialPrefixes: Readonly<{ SPOTIFY: string; }>; export declare const ImageSizes: Readonly<{ SMALL: number; LARGE: number; }>; /** * Presence Structure, used to detail a user's presence in a guild (or general if you have them added (non-bots only)) * @category Structure */ export declare class Presence extends BaseStructure { readonly _keys: BaseSet<string>; readonly _keysMerge: BaseSet<string>; readonly _keysSkipDifference: BaseSet<string>; _activities?: BaseCollection<string, PresenceActivity>; _guildIds: BaseSet<string> | string; clientStatus?: { desktop?: string; mobile?: string; web?: string; }; lastGuildId: string; lastModified?: number; status: string; user: User; constructor(client: ShardClient, data?: BaseStructureData, isClone?: boolean); get activity(): null | PresenceActivity; get activities(): BaseCollection<string, PresenceActivity>; get game(): null | PresenceActivity; get guildIds(): BaseSet<string>; get isDnd(): boolean; get isIdle(): boolean; get isOffline(): boolean; get isOnline(): boolean; get showMobileIcon(): boolean; activityFor(guildId: string): null | PresenceActivity; activitiesFor(guildId: string): BaseCollection<string, PresenceActivity>; get _shouldDelete(): boolean; _deleteGuildId(guildId: string): void; _hasGuildId(guildId: string): boolean; mergeValue(key: string, value: any): void; toString(): string; } /** * Presence Activity Structure, used in [Presence] * @category Structure */ export declare class PresenceActivity extends BaseStructure { readonly _uncloneable = true; readonly _keys: BaseSet<string>; readonly _keysMerge: BaseSet<string>; readonly _keysSkipDifference: BaseSet<string>; readonly user: User; _guildIds: BaseSet<string> | string; applicationId?: string; assets?: PresenceActivityAssets; buttons?: Array<string>; createdAt?: number; details?: string; emoji?: Emoji; flags: number; id: string; instance?: boolean; metadata?: any; name: string; party?: { id?: string; size?: [number, number]; }; platform?: ActivityPlatformTypes; position: number; secrets?: { join?: string; match?: string; spectate?: string; }; sessionId?: string; state?: string; syncId?: string; timestamps?: PresenceActivityTimestamps; type: number; url?: string; constructor(user: User, data: BaseStructureData); get application(): Application | null; get applicationIsXbox(): boolean; get canInstance(): boolean; get canJoin(): boolean; get canJoinRequest(): boolean; get canPlay(): boolean; get canSpectate(): boolean; get canSync(): boolean; get group(): BaseCollection<string, User>; get guildIds(): BaseSet<string>; get imageUrl(): null | string; get isCustomStatus(): boolean; get isListening(): boolean; get isPlaying(): boolean; get isStreaming(): boolean; get isWatching(): boolean; get isOnAndroid(): boolean; get isOnIOS(): boolean; get isOnSpotify(): boolean; get isOnSamsung(): boolean; get isOnXbox(): boolean; get partyIsFull(): boolean; get partyIsSpotify(): boolean; get partyMaxSize(): number | null; get partySize(): number | null; get platformType(): string; get platformDiscordUrl(): null | string; get spotifyTrackUrl(): null | string; get typeText(): string; hasFlag(flag: number): boolean; imageUrlFormat(format?: null | string, query?: UrlQuery): null | string; fetchApplication(): Promise<Application | null>; fetchButtonUrls(): Promise<any>; fetchMetadata(): Promise<any>; get _shouldDelete(): boolean; _deleteGuildId(guildId: string): void; _hasGuildId(guildId: string): boolean; mergeValue(key: string, value: any): void; toString(): string; } /** * Presence Activity Assets Structure, used in [PresenceActivity] * @category Structure */ export declare class PresenceActivityAssets extends BaseStructure { readonly _uncloneable = true; readonly _keys: BaseSet<string>; readonly _keysMerge: BaseSet<string>; readonly activity: PresenceActivity; largeImage?: string; largeText?: string; smallImage?: string; smallText?: string; constructor(activity: PresenceActivity, data: BaseStructureData); get imageUrl(): string | null; get largeImageUrl(): string | null; get smallImageUrl(): string | null; imageUrlFormat(format?: null | string, query?: UrlQuery, hash?: null | string): null | string; largeImageUrlFormat(format?: null | string, query?: UrlQuery): string | null; smallImageUrlFormat(format?: null | string, query?: UrlQuery): string | null; mergeValue(key: string, value: any): void; } /** * Presence Activity Timestamp Structure * used to describe when they started doing an activity and if they ended it or not * @category Structure */ export declare class PresenceActivityTimestamps extends BaseStructure { readonly _uncloneable = true; readonly _keys: BaseSet<string>; readonly _keysMerge: BaseSet<string>; readonly activity: PresenceActivity; end?: number; start?: number; constructor(activity: PresenceActivity, data: BaseStructureData); get elapsedTime(): number; get totalTime(): number; mergeValue(key: string, value: any): void; }