Skip to content

Commit

Permalink
feat: add to core
Browse files Browse the repository at this point in the history
  • Loading branch information
Jiralite committed Aug 22, 2023
1 parent 14c4835 commit 3f7a969
Show file tree
Hide file tree
Showing 2 changed files with 33 additions and 0 deletions.
28 changes: 28 additions & 0 deletions packages/core/src/api/application.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
/* eslint-disable jsdoc/check-param-names */

import type { RequestData, REST } from '@discordjs/rest';
import {
// @ts-expect-error discord-api-types
type RESTPatchCurrentApplicationJSONBody,
// @ts-expect-error discord-api-types
type RESTPatchCurrentApplicationResult,
Routes,
} from 'discord-api-types/v10';

export class ApplicationsAPI {
public constructor(private readonly rest: REST) {}

/**
* Edits properties of the application associated with the requesting bot user.
*
* @see {@link https://discord.com/developers/docs/resources/application#edit-current-application}
* @param body - The new application data
* @param options - The options for editing the application
*/
public async edit(body: RESTPatchCurrentApplicationJSONBody, { signal }: Pick<RequestData, 'signal'> = {}) {
return this.rest.patch(Routes.currentApplication(), {
body,
signal,
}) as Promise<RESTPatchCurrentApplicationResult>;
}
}
5 changes: 5 additions & 0 deletions packages/core/src/api/index.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import type { REST } from '@discordjs/rest';
import { ApplicationsAPI } from './application.js';
import { ApplicationCommandsAPI } from './applicationCommands.js';
import { ChannelsAPI } from './channel.js';
import { GuildsAPI } from './guild.js';
Expand All @@ -13,6 +14,7 @@ import { UsersAPI } from './user.js';
import { VoiceAPI } from './voice.js';
import { WebhooksAPI } from './webhook.js';

export * from './application.js';
export * from './applicationCommands.js';
export * from './channel.js';
export * from './guild.js';
Expand All @@ -28,6 +30,8 @@ export * from './voice.js';
export * from './webhook.js';

export class API {
public readonly application: ApplicationsAPI;

public readonly applicationCommands: ApplicationCommandsAPI;

public readonly channels: ChannelsAPI;
Expand Down Expand Up @@ -55,6 +59,7 @@ export class API {
public readonly webhooks: WebhooksAPI;

public constructor(public readonly rest: REST) {
this.application = new ApplicationsAPI(rest);
this.applicationCommands = new ApplicationCommandsAPI(rest);
this.channels = new ChannelsAPI(rest);
this.guilds = new GuildsAPI(rest);
Expand Down

0 comments on commit 3f7a969

Please sign in to comment.