import { ExtendedClient } from '@base';
import { Command } from '@types';
type Serialized = ReturnType<typeof serialize>;
export declare function loadCommands(client?: ExtendedClient, token?: string, commandsPath?: string): Promise<Serialized[]>;
export declare function registerCommands(client: ExtendedClient, commands: Serialized[], token?: string): Promise<void>;
export declare function Commands(client: ExtendedClient): Promise<void>;
declare function serialize(command: Command): {
    name: string;
    description: string;
    type: import("@types").CommandType;
    options: import("discord.js").APIApplicationCommandOption[];
    defaultMemberPermission: import("discord.js").PermissionResolvable | null;
    botpermission: "CreateInstantInvite" | "KickMembers" | "BanMembers" | "Administrator" | "ManageChannels" | "ManageGuild" | "AddReactions" | "ViewAuditLog" | "PrioritySpeaker" | "Stream" | "ViewChannel" | "SendMessages" | "SendTTSMessages" | "ManageMessages" | "EmbedLinks" | "AttachFiles" | "ReadMessageHistory" | "MentionEveryone" | "UseExternalEmojis" | "ViewGuildInsights" | "Connect" | "Speak" | "MuteMembers" | "DeafenMembers" | "MoveMembers" | "UseVAD" | "ChangeNickname" | "ManageNicknames" | "ManageRoles" | "ManageWebhooks" | "ManageEmojisAndStickers" | "ManageGuildExpressions" | "UseApplicationCommands" | "RequestToSpeak" | "ManageEvents" | "ManageThreads" | "CreatePublicThreads" | "CreatePrivateThreads" | "UseExternalStickers" | "SendMessagesInThreads" | "UseEmbeddedActivities" | "ModerateMembers" | "ViewCreatorMonetizationAnalytics" | "UseSoundboard" | "CreateGuildExpressions" | "CreateEvents" | "UseExternalSounds" | "SendVoiceMessages" | "SendPolls" | "UseExternalApps" | "PinMessages" | "BypassSlowmode" | null;
    dmPermission: boolean;
    nsfw: boolean;
    allowIds: string[] | null;
};
export {};
//# sourceMappingURL=handler.d.ts.map