import type { RESTDeleteAPIChannelAllMessageReactionsResult, RESTDeleteAPIChannelMessageReactionResult, RESTDeleteAPIChannelMessageResult, RESTDeleteAPIChannelPermissionResult, RESTDeleteAPIChannelPinResult, RESTDeleteAPIChannelRecipientResult, RESTDeleteAPIChannelResult, RESTDeleteAPIChannelThreadMembersResult, RESTGetAPIChannelInvitesResult, RESTGetAPIChannelMessageReactionUsersQuery, RESTGetAPIChannelMessageReactionUsersResult, RESTGetAPIChannelMessageResult, RESTGetAPIChannelMessagesQuery, RESTGetAPIChannelMessagesResult, RESTGetAPIChannelPinsResult, RESTGetAPIChannelResult, RESTGetAPIChannelThreadMemberQuery, RESTGetAPIChannelThreadMemberResult, RESTGetAPIChannelThreadMembersQuery, RESTGetAPIChannelThreadMembersResult, RESTGetAPIChannelThreadsArchivedPrivateResult, RESTGetAPIChannelThreadsArchivedPublicResult, RESTGetAPIChannelThreadsArchivedQuery, RESTGetAPIChannelUsersThreadsArchivedResult, RESTGetAPIGuildWebhooksResult, RESTGetAPIPollAnswerVotersQuery, RESTGetAPIPollAnswerVotersResult, RESTPatchAPIChannelJSONBody, RESTPatchAPIChannelMessageJSONBody, RESTPatchAPIChannelMessageResult, RESTPatchAPIChannelResult, RESTPostAPIChannelFollowersJSONBody, RESTPostAPIChannelFollowersResult, RESTPostAPIChannelInviteJSONBody, RESTPostAPIChannelInviteResult, RESTPostAPIChannelMessageCrosspostResult, RESTPostAPIChannelMessageJSONBody, RESTPostAPIChannelMessageResult, RESTPostAPIChannelMessagesBulkDeleteJSONBody, RESTPostAPIChannelMessagesBulkDeleteResult, RESTPostAPIChannelMessagesThreadsJSONBody, RESTPostAPIChannelMessagesThreadsResult, RESTPostAPIChannelThreadsJSONBody, RESTPostAPIChannelThreadsResult, RESTPostAPIChannelTypingResult, RESTPostAPIChannelWebhookJSONBody, RESTPostAPIChannelWebhookResult, RESTPostAPIGuildForumThreadsJSONBody, RESTPostAPIPollExpireResult, RESTPostAPISendSoundboardSound, RESTPutAPIChannelMessageReactionResult, RESTPutAPIChannelPermissionJSONBody, RESTPutAPIChannelPermissionResult, RESTPutAPIChannelPinResult, RESTPutAPIChannelRecipientJSONBody, RESTPutAPIChannelRecipientResult, RESTPutAPIChannelThreadMembersResult, } from '../../types'; import type { RestArguments, RestArgumentsNoBody } from '../api'; export interface ChannelRoutes { channels(id: string): { get(args?: RestArgumentsNoBody): Promise; patch(args: RestArguments): Promise; delete(args?: RestArgumentsNoBody): Promise; users: (id: '@me') => { threads: { archived: { private: { get( args?: RestArgumentsNoBody, ): Promise; }; }; }; }; 'thread-members': { get( args?: RestArgumentsNoBody, ): Promise; ( id: '@me', ): { put(args?: RestArgumentsNoBody): Promise; delete(args?: RestArgumentsNoBody): Promise; }; ( id: string, ): { get( args?: RestArgumentsNoBody, ): Promise; put(args?: RestArgumentsNoBody): Promise; delete(args?: RestArgumentsNoBody): Promise; }; }; threads: { post( args: RestArguments, ): Promise; archived: { public: { get( args?: RestArgumentsNoBody, ): Promise; }; private: { get( args?: RestArgumentsNoBody, ): Promise; }; }; }; recipients: (id: string) => { put(args?: RestArguments): Promise; delete(args?: RestArgumentsNoBody): Promise; }; pins: { get(args?: RestArgumentsNoBody): Promise; ( id: string, ): { put(args?: RestArgumentsNoBody): Promise; delete(args?: RestArgumentsNoBody): Promise; }; }; followers: { post(args: RestArguments): Promise; }; permissions: (id: string) => { put(args?: RestArguments): Promise; delete(args?: RestArgumentsNoBody): Promise; }; invites: { get(args?: RestArgumentsNoBody): Promise; post(args: RestArguments): Promise; }; messages: { get(args?: RestArgumentsNoBody): Promise; post(args: RestArguments): Promise; 'bulk-delete': { post( args: RestArguments, ): Promise; }; ( id: string, ): { get(args?: RestArgumentsNoBody): Promise; patch(args: RestArguments): Promise; delete(args?: RestArgumentsNoBody): Promise; threads: { post( args: RestArguments, ): Promise; }; crosspost: { post(args: RestArgumentsNoBody): Promise; }; reactions: { delete(args?: RestArgumentsNoBody): Promise; ( emoji: string, ): { get( args?: RestArgumentsNoBody, ): Promise; delete(args?: RestArgumentsNoBody): Promise; ( id: '@me', ): { put(args?: RestArgumentsNoBody): Promise; delete(args?: RestArgumentsNoBody): Promise; }; ( id: string, ): { delete(args?: RestArgumentsNoBody): Promise; }; }; }; }; }; typing: { post(args?: RestArgumentsNoBody): Promise; }; webhooks: { get(args?: RestArgumentsNoBody): Promise; post(args: RestArguments): Promise; }; 'voice-status': { put(args: RestArguments<{ status: string | null }>): Promise; }; polls(messageId: string): { answers(id: ValidAnswerId): { get(args?: RestArgumentsNoBody): Promise; }; expire: { post(args?: RestArgumentsNoBody): Promise; }; }; 'send-soundboard-sound': { post(args: RestArguments): Promise; }; }; } export type ValidAnswerId = 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10;