import AccountManager from "../account"; export type APIKeyInfos = { id: number; key?: string; name: string; used: string | null; requests: number; generalPermissions: number[]; serverPermissions: number[]; created: string; }; export declare function convertRawToAPIKey(accountManager: AccountManager, raw: S): S extends APIKeyInfos[] ? APIKey[] : APIKey; export default class APIKey { private accountManager; constructor(accountManager: AccountManager, infos: APIKeyInfos); /** * The Internal Id of the API Key * @since 0.0.1 */ id: number; /** * The Name of the API Key * @since 0.0.1 */ name: string; /** * The Key of the API Key * @since 0.0.1 */ key: string | undefined; /** * The Permissions of the API Key * @since 0.2.0 */ permissions: { general: number[]; server: number[]; }; /** * The Amount of Requests that were made with this API Key * @since 0.1.36 */ requests: number; /** * The Date when the API Key was last used * @since 0.0.1 */ used: Date | null; /** * The Date when the API Key was created * @since 0.0.1 */ created: Date; /** * Delete this API Key * @since 0.0.1 */ delete(): import("../..").Response; /** * Reset this API Keys Key * @since 0.1.7 */ resetKey(): import("../..").Response; /** * Edit this API Key * @since 0.0.9 */ edit(data: { name?: string; permissions?: { general: number[]; server: number[]; }; }): import("../..").Response; }