export type DiscordMethod = 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; export type DiscordResponse = unknown; export declare class DiscordApiError extends Error { readonly endpoint: string; readonly status: number; readonly discordError: string; readonly payload?: unknown | undefined; constructor(endpoint: string, status: number, discordError: string, payload?: unknown | undefined); } export interface DiscordTransport { call(method: DiscordMethod, endpoint: string, params?: Record, body?: Record): Promise; } export declare abstract class HttpDiscordTransport implements DiscordTransport { protected readonly fetch: typeof fetch; protected abstract baseUrl(): string; protected abstract authHeaders(): Promise> | Record; call(method: DiscordMethod, endpoint: string, params?: Record, body?: Record): Promise; } export declare class NodeDiscordTransport extends HttpDiscordTransport { private readonly token; private readonly base?; constructor(token: string, base?: string | undefined); protected baseUrl(): string; protected authHeaders(): Record; } //# sourceMappingURL=client.d.ts.map