Skip to content

Commit

Permalink
feat(Interactions): add interaction response and followup route (#162)
Browse files Browse the repository at this point in the history
  • Loading branch information
advaith1 committed Jul 20, 2021
1 parent b9d61ae commit f99f07f
Show file tree
Hide file tree
Showing 8 changed files with 380 additions and 20 deletions.
90 changes: 90 additions & 0 deletions deno/rest/v8/interactions.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,16 @@ import type {
APIApplicationCommandPermission,
APIGuildApplicationCommandPermissions,
APIInteractionResponse,
APIInteractionResponseCallbackData,
} from '../../payloads/v8/mod.ts';
import type {
RESTDeleteAPIWebhookWithTokenMessageResult,
RESTGetAPIWebhookWithTokenMessageResult,
RESTPatchAPIWebhookWithTokenMessageFormDataBody,
RESTPatchAPIWebhookWithTokenMessageJSONBody,
RESTPatchAPIWebhookWithTokenMessageResult,
RESTPostAPIWebhookWithTokenWaitResult,
} from './webhook.ts';

/**
* https://discord.com/developers/docs/interactions/slash-commands#get-global-application-commands
Expand Down Expand Up @@ -111,6 +120,87 @@ export type RESTPostAPIInteractionCallbackFormDataBody =
file: unknown;
});

/**
* https://discord.com/developers/docs/interactions/slash-commands#get-original-interaction-response
*/
export type RESTGetAPIInteractionOriginalResponseResult = RESTGetAPIWebhookWithTokenMessageResult;

/**
* https://discord.com/developers/docs/interactions/slash-commands#edit-original-interaction-response
*/
export type RESTPatchAPIInteractionOriginalResponseJSONBody = RESTPatchAPIWebhookWithTokenMessageJSONBody;

/**
* https://discord.com/developers/docs/interactions/slash-commands#edit-original-interaction-response
*/
export type RESTPatchAPIInteractionOriginalResponseFormDataBody = RESTPatchAPIWebhookWithTokenMessageFormDataBody;

/**
* https://discord.com/developers/docs/interactions/slash-commands#edit-original-interaction-response
*/
export type RESTPatchAPIInteractionOriginalResponseResult = RESTPatchAPIWebhookWithTokenMessageResult;

/**
* https://discord.com/developers/docs/interactions/slash-commands#delete-original-interaction-response
*/
export type RESTDeleteAPIInteractionOriginalResponseResult = RESTDeleteAPIWebhookWithTokenMessageResult;

/**
* https://discord.com/developers/docs/interactions/slash-commands#create-followup-message
*/
export type RESTPostAPIInteractionFollowupJSONBody = APIInteractionResponseCallbackData;

/**
* https://discord.com/developers/docs/interactions/slash-commands#create-followup-message
*/
export type RESTPostAPIInteractionFollowupFormDataBody =
| {
/**
* JSON stringified message body
*/
payload_json?: string;
/**
* The file contents
*/
file: unknown;
}
| (RESTPostAPIInteractionFollowupJSONBody & {
/**
* The file contents
*/
file: unknown;
});

/**
* https://discord.com/developers/docs/interactions/slash-commands#create-followup-message
*/
export type RESTPostAPIInteractionFollowupResult = RESTPostAPIWebhookWithTokenWaitResult;

/**
* https://discord.com/developers/docs/interactions/slash-commands#get-followup-message
*/
export type RESTGetAPIInteractionFollowupResult = RESTGetAPIWebhookWithTokenMessageResult;

/**
* https://discord.com/developers/docs/interactions/slash-commands#edit-followup-message
*/
export type RESTPatchAPIInteractionFollowupJSONBody = RESTPatchAPIWebhookWithTokenMessageJSONBody;

/**
* https://discord.com/developers/docs/interactions/slash-commands#edit-followup-message
*/
export type RESTPatchAPIInteractionFollowupFormDataBody = RESTPatchAPIWebhookWithTokenMessageFormDataBody;

/**
* https://discord.com/developers/docs/interactions/slash-commands#edit-followup-message
*/
export type RESTPatchAPIInteractionFollowupResult = RESTPatchAPIWebhookWithTokenMessageResult;

/**
* https://discord.com/developers/docs/interactions/slash-commands#delete-followup-message
*/
export type RESTDeleteAPIInteractionFollowupResult = RESTDeleteAPIWebhookWithTokenMessageResult;

/**
* https://discord.com/developers/docs/interactions/slash-commands#get-guild-application-command-permissions
*/
Expand Down
10 changes: 5 additions & 5 deletions deno/rest/v8/webhook.ts
Original file line number Diff line number Diff line change
Expand Up @@ -220,6 +220,11 @@ export type RESTPostAPIWebhookWithTokenGitHubResult = never;
*/
export type RESTPostAPIWebhookWithTokenGitHubWaitResult = APIMessage;

/**
* https://discord.com/developers/docs/resources/webhook#get-webhook-message
*/
export type RESTGetAPIWebhookWithTokenMessageResult = APIMessage;

/**
* https://discord.com/developers/docs/resources/webhook#edit-webhook-message
*/
Expand Down Expand Up @@ -256,11 +261,6 @@ export type RESTPatchAPIWebhookWithTokenMessageFormDataBody =
file: unknown;
});

/**
* https://discord.com/developers/docs/resources/webhook#get-webhook-message
*/
export type RESTGetAPIWebhookWithTokenMessageResult = APIMessage;

/**
* https://discord.com/developers/docs/resources/webhook#edit-webhook-message
*/
Expand Down
90 changes: 90 additions & 0 deletions deno/rest/v9/interactions.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,16 @@ import type {
APIApplicationCommandPermission,
APIGuildApplicationCommandPermissions,
APIInteractionResponse,
APIInteractionResponseCallbackData,
} from '../../payloads/v9/mod.ts';
import type {
RESTDeleteAPIWebhookWithTokenMessageResult,
RESTGetAPIWebhookWithTokenMessageResult,
RESTPatchAPIWebhookWithTokenMessageFormDataBody,
RESTPatchAPIWebhookWithTokenMessageJSONBody,
RESTPatchAPIWebhookWithTokenMessageResult,
RESTPostAPIWebhookWithTokenWaitResult,
} from './webhook.ts';

/**
* https://discord.com/developers/docs/interactions/slash-commands#get-global-application-commands
Expand Down Expand Up @@ -111,6 +120,87 @@ export type RESTPostAPIInteractionCallbackFormDataBody =
file: unknown;
});

/**
* https://discord.com/developers/docs/interactions/slash-commands#get-original-interaction-response
*/
export type RESTGetAPIInteractionOriginalResponseResult = RESTGetAPIWebhookWithTokenMessageResult;

/**
* https://discord.com/developers/docs/interactions/slash-commands#edit-original-interaction-response
*/
export type RESTPatchAPIInteractionOriginalResponseJSONBody = RESTPatchAPIWebhookWithTokenMessageJSONBody;

/**
* https://discord.com/developers/docs/interactions/slash-commands#edit-original-interaction-response
*/
export type RESTPatchAPIInteractionOriginalResponseFormDataBody = RESTPatchAPIWebhookWithTokenMessageFormDataBody;

/**
* https://discord.com/developers/docs/interactions/slash-commands#edit-original-interaction-response
*/
export type RESTPatchAPIInteractionOriginalResponseResult = RESTPatchAPIWebhookWithTokenMessageResult;

/**
* https://discord.com/developers/docs/interactions/slash-commands#delete-original-interaction-response
*/
export type RESTDeleteAPIInteractionOriginalResponseResult = RESTDeleteAPIWebhookWithTokenMessageResult;

/**
* https://discord.com/developers/docs/interactions/slash-commands#create-followup-message
*/
export type RESTPostAPIInteractionFollowupJSONBody = APIInteractionResponseCallbackData;

/**
* https://discord.com/developers/docs/interactions/slash-commands#create-followup-message
*/
export type RESTPostAPIInteractionFollowupFormDataBody =
| {
/**
* JSON stringified message body
*/
payload_json?: string;
/**
* The file contents
*/
file: unknown;
}
| (RESTPostAPIInteractionFollowupJSONBody & {
/**
* The file contents
*/
file: unknown;
});

/**
* https://discord.com/developers/docs/interactions/slash-commands#create-followup-message
*/
export type RESTPostAPIInteractionFollowupResult = RESTPostAPIWebhookWithTokenWaitResult;

/**
* https://discord.com/developers/docs/interactions/slash-commands#get-followup-message
*/
export type RESTGetAPIInteractionFollowupResult = RESTGetAPIWebhookWithTokenMessageResult;

/**
* https://discord.com/developers/docs/interactions/slash-commands#edit-followup-message
*/
export type RESTPatchAPIInteractionFollowupJSONBody = RESTPatchAPIWebhookWithTokenMessageJSONBody;

/**
* https://discord.com/developers/docs/interactions/slash-commands#edit-followup-message
*/
export type RESTPatchAPIInteractionFollowupFormDataBody = RESTPatchAPIWebhookWithTokenMessageFormDataBody;

/**
* https://discord.com/developers/docs/interactions/slash-commands#edit-followup-message
*/
export type RESTPatchAPIInteractionFollowupResult = RESTPatchAPIWebhookWithTokenMessageResult;

/**
* https://discord.com/developers/docs/interactions/slash-commands#delete-followup-message
*/
export type RESTDeleteAPIInteractionFollowupResult = RESTDeleteAPIWebhookWithTokenMessageResult;

/**
* https://discord.com/developers/docs/interactions/slash-commands#get-guild-application-command-permissions
*/
Expand Down
10 changes: 5 additions & 5 deletions deno/rest/v9/webhook.ts
Original file line number Diff line number Diff line change
Expand Up @@ -224,6 +224,11 @@ export type RESTPostAPIWebhookWithTokenGitHubResult = never;
*/
export type RESTPostAPIWebhookWithTokenGitHubWaitResult = APIMessage;

/**
* https://discord.com/developers/docs/resources/webhook#get-webhook-message
*/
export type RESTGetAPIWebhookWithTokenMessageResult = APIMessage;

/**
* https://discord.com/developers/docs/resources/webhook#edit-webhook-message
*/
Expand Down Expand Up @@ -260,11 +265,6 @@ export type RESTPatchAPIWebhookWithTokenMessageFormDataBody =
file: unknown;
});

/**
* https://discord.com/developers/docs/resources/webhook#get-webhook-message
*/
export type RESTGetAPIWebhookWithTokenMessageResult = APIMessage;

/**
* https://discord.com/developers/docs/resources/webhook#edit-webhook-message
*/
Expand Down
90 changes: 90 additions & 0 deletions rest/v8/interactions.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,16 @@ import type {
APIApplicationCommandPermission,
APIGuildApplicationCommandPermissions,
APIInteractionResponse,
APIInteractionResponseCallbackData,
} from '../../payloads/v8/index';
import type {
RESTDeleteAPIWebhookWithTokenMessageResult,
RESTGetAPIWebhookWithTokenMessageResult,
RESTPatchAPIWebhookWithTokenMessageFormDataBody,
RESTPatchAPIWebhookWithTokenMessageJSONBody,
RESTPatchAPIWebhookWithTokenMessageResult,
RESTPostAPIWebhookWithTokenWaitResult,
} from './webhook';

/**
* https://discord.com/developers/docs/interactions/slash-commands#get-global-application-commands
Expand Down Expand Up @@ -111,6 +120,87 @@ export type RESTPostAPIInteractionCallbackFormDataBody =
file: unknown;
});

/**
* https://discord.com/developers/docs/interactions/slash-commands#get-original-interaction-response
*/
export type RESTGetAPIInteractionOriginalResponseResult = RESTGetAPIWebhookWithTokenMessageResult;

/**
* https://discord.com/developers/docs/interactions/slash-commands#edit-original-interaction-response
*/
export type RESTPatchAPIInteractionOriginalResponseJSONBody = RESTPatchAPIWebhookWithTokenMessageJSONBody;

/**
* https://discord.com/developers/docs/interactions/slash-commands#edit-original-interaction-response
*/
export type RESTPatchAPIInteractionOriginalResponseFormDataBody = RESTPatchAPIWebhookWithTokenMessageFormDataBody;

/**
* https://discord.com/developers/docs/interactions/slash-commands#edit-original-interaction-response
*/
export type RESTPatchAPIInteractionOriginalResponseResult = RESTPatchAPIWebhookWithTokenMessageResult;

/**
* https://discord.com/developers/docs/interactions/slash-commands#delete-original-interaction-response
*/
export type RESTDeleteAPIInteractionOriginalResponseResult = RESTDeleteAPIWebhookWithTokenMessageResult;

/**
* https://discord.com/developers/docs/interactions/slash-commands#create-followup-message
*/
export type RESTPostAPIInteractionFollowupJSONBody = APIInteractionResponseCallbackData;

/**
* https://discord.com/developers/docs/interactions/slash-commands#create-followup-message
*/
export type RESTPostAPIInteractionFollowupFormDataBody =
| {
/**
* JSON stringified message body
*/
payload_json?: string;
/**
* The file contents
*/
file: unknown;
}
| (RESTPostAPIInteractionFollowupJSONBody & {
/**
* The file contents
*/
file: unknown;
});

/**
* https://discord.com/developers/docs/interactions/slash-commands#create-followup-message
*/
export type RESTPostAPIInteractionFollowupResult = RESTPostAPIWebhookWithTokenWaitResult;

/**
* https://discord.com/developers/docs/interactions/slash-commands#get-followup-message
*/
export type RESTGetAPIInteractionFollowupResult = RESTGetAPIWebhookWithTokenMessageResult;

/**
* https://discord.com/developers/docs/interactions/slash-commands#edit-followup-message
*/
export type RESTPatchAPIInteractionFollowupJSONBody = RESTPatchAPIWebhookWithTokenMessageJSONBody;

/**
* https://discord.com/developers/docs/interactions/slash-commands#edit-followup-message
*/
export type RESTPatchAPIInteractionFollowupFormDataBody = RESTPatchAPIWebhookWithTokenMessageFormDataBody;

/**
* https://discord.com/developers/docs/interactions/slash-commands#edit-followup-message
*/
export type RESTPatchAPIInteractionFollowupResult = RESTPatchAPIWebhookWithTokenMessageResult;

/**
* https://discord.com/developers/docs/interactions/slash-commands#delete-followup-message
*/
export type RESTDeleteAPIInteractionFollowupResult = RESTDeleteAPIWebhookWithTokenMessageResult;

/**
* https://discord.com/developers/docs/interactions/slash-commands#get-guild-application-command-permissions
*/
Expand Down
10 changes: 5 additions & 5 deletions rest/v8/webhook.ts
Original file line number Diff line number Diff line change
Expand Up @@ -220,6 +220,11 @@ export type RESTPostAPIWebhookWithTokenGitHubResult = never;
*/
export type RESTPostAPIWebhookWithTokenGitHubWaitResult = APIMessage;

/**
* https://discord.com/developers/docs/resources/webhook#get-webhook-message
*/
export type RESTGetAPIWebhookWithTokenMessageResult = APIMessage;

/**
* https://discord.com/developers/docs/resources/webhook#edit-webhook-message
*/
Expand Down Expand Up @@ -256,11 +261,6 @@ export type RESTPatchAPIWebhookWithTokenMessageFormDataBody =
file: unknown;
});

/**
* https://discord.com/developers/docs/resources/webhook#get-webhook-message
*/
export type RESTGetAPIWebhookWithTokenMessageResult = APIMessage;

/**
* https://discord.com/developers/docs/resources/webhook#edit-webhook-message
*/
Expand Down
Loading

0 comments on commit f99f07f

Please sign in to comment.