import { DbConfig } from './database/db-interfaces';
import { ConfigRow, StringConfigRow, RolesRow, Role } from '../models/database';
import ConfigInterface from './config-interface';
export default class Config implements ConfigInterface {
    database: DbConfig;
    roles: RolesRow[];
    config: ConfigRow[];
    stringConfig: StringConfigRow[];
    constructor(database: DbConfig);
    getRoles(userid: string): Role[];
    getConfig(config: string): number;
    getStringConfig(config: string): string[];
    checkRole(userid: string, role: Role): boolean;
    getAllRoles(): RolesRow[];
    getAllConfig(): ConfigRow[];
    getAllStringConfig(): StringConfigRow[];
    updateAll(): Promise<void>;
    updateRoles(): Promise<void>;
    updateConfig(): Promise<void>;
    updateStringConfig(): Promise<void>;
    setRole(userid: string, role: Role): Promise<void>;
    setConfig(config: string, value: number): Promise<void>;
    setStringConfig(config: string, value: string): Promise<void>;
    deleteRole(userid: string, role: Role): Promise<void>;
    deleteConfig(config: string): Promise<void>;
    deleteStringConfig(config: string, value: string): Promise<void>;
}
