import { ClassInterface } from 'classInterface'; import { Dict, OxAccountMetadata, OxAccountRole, OxAccountPermissions, OxCreateInvoice } from '../../types'; interface UpdateAccountBalance { amount: number; message?: string; } interface RemoveAccountBalance extends UpdateAccountBalance { overdraw?: boolean; } interface TransferAccountBalance { toId: number; amount: number; overdraw?: boolean; message?: string; note?: string; actorId?: number; } export declare class OxAccount extends ClassInterface { accountId: number; protected static members: Dict; static get(accountId: number): Promise; static getAll(): Dict; constructor(accountId: number); get(key: T): Promise; get(keys: T[]): Promise>; addBalance({ amount, message }: UpdateAccountBalance): Promise<{ success: boolean; message?: string; }>; removeBalance({ amount, overdraw, message }: RemoveAccountBalance): Promise<{ success: boolean; message?: string; }>; transferBalance({ toId, amount, overdraw, message, note, actorId }: TransferAccountBalance): Promise<{ success: boolean; message?: string; }>; depositMoney(playerId: number, amount: number, message?: string, note?: string): Promise<{ success: boolean; message?: string; }>; withdrawMoney(playerId: number, amount: number, message?: string, note?: string): Promise<{ success: boolean; message?: string; }>; deleteAccount(): Promise<{ success: boolean; message?: string; }>; getCharacterRole(id: number | string): Promise; setCharacterRole(id: number | string, role?: OxAccountRole): Promise<0 | { success: boolean; message?: string; } | null>; playerHasPermission(playerId: number, permission: keyof OxAccountPermissions): Promise; setShared(): Promise<{ success: boolean; message?: string; }>; createInvoice(data: Omit): Promise<{ success: boolean; message?: string; }>; } export {};