detritus-client
Version:
A Typescript NodeJS library to interact with Discord's API, both Rest and Gateway.
90 lines (89 loc) • 3.29 kB
TypeScript
import { RequestTypes } from 'detritus-client-rest';
import { ShardClient } from '../client';
import { BaseCollection } from '../collections/basecollection';
import { BaseSet } from '../collections/baseset';
import { ApplicationCommandOptionTypes, ApplicationCommandPermissionTypes, ApplicationCommandTypes } from '../constants';
import { BaseStructure, BaseStructureData } from './basestructure';
import { User } from './user';
/**
* Application Command Structure
* @category Structure
*/
export declare class ApplicationCommand extends BaseStructure {
readonly _keys: BaseSet<string>;
applicationId: string;
defaultPermission: boolean;
description: string;
guildId?: string;
id: string;
name: string;
options?: BaseCollection<string, ApplicationCommandOption>;
type: ApplicationCommandTypes;
version: string;
constructor(client: ShardClient, data: BaseStructureData, isClone?: boolean);
get _optionsKey(): string;
get hash(): string;
get key(): string;
edit(options: RequestTypes.EditApplicationCommand | RequestTypes.EditApplicationGuildCommand): Promise<ApplicationCommand>;
delete(): Promise<any>;
mergeValue(key: string, value: any): void;
}
/**
* Application Command Option Structure
* @category Structure
*/
export declare class ApplicationCommandOption extends BaseStructure {
readonly _keys: BaseSet<string>;
readonly command: ApplicationCommand;
choices?: BaseCollection<string, ApplicationCommandOptionChoice>;
description: string;
name: string;
options?: BaseCollection<string, ApplicationCommandOption>;
required: boolean;
type: ApplicationCommandOptionTypes;
constructor(command: ApplicationCommand, data: BaseStructureData, isClone?: boolean);
get _choicesKey(): string;
get _optionsKey(): string;
get key(): string;
mergeValue(key: string, value: any): void;
}
/**
* Application Command Option Choice Structure
* @category Structure
*/
export declare class ApplicationCommandOptionChoice extends BaseStructure {
readonly _keys: BaseSet<string>;
readonly option: ApplicationCommandOption;
name: string;
value: string | number;
constructor(option: ApplicationCommandOption, data: BaseStructureData, isClone?: boolean);
get key(): string;
}
/**
* Application Command Permissions Structure
* @category Structure
*/
export declare class ApplicationCommandPermissions extends BaseStructure {
readonly _keys: BaseSet<string>;
applicationId: string;
guildId: string;
id: string;
permissions: BaseCollection<string, ApplicationCommandPermission>;
constructor(client: ShardClient, data: BaseStructureData, isClone?: boolean);
mergeValue(key: string, value: any): void;
}
/**
* Application Command Permission Structure
* @category Structure
*/
export declare class ApplicationCommandPermission extends BaseStructure {
readonly _keys: BaseSet<string>;
readonly commandPermissions: ApplicationCommandPermissions;
id: string;
permission: boolean;
type: ApplicationCommandPermissionTypes;
constructor(commandPermissions: ApplicationCommandPermissions, data: BaseStructureData, isClone?: boolean);
get isRole(): boolean;
get isUser(): boolean;
get user(): User | null;
}