type CrCommandArguments = Record<string | number, string | number | boolean>;
interface CrCommandParams {
    name: string;
    help?: string;
    paramType?: 'number' | 'playerId' | 'string' | 'longString';
    optional?: boolean;
}
interface CrCommandProperties {
    name?: string;
    help?: string;
    params?: CrCommandParams[];
    restricted?: boolean | string | string[];
}
export declare function addCommand<T extends CrCommandArguments>(commandName: string | string[], cb: (source: number, args: T, raw: string) => Promise<any>, properties?: CrCommandProperties): void;
export {};
