import { App } from 'koishi-core';
import BuiltinMethods from './builtin';
import QueryOperators from './query';
export declare namespace Tests {
    const Keywords: string[];
    type Keywords = 'name';
    type UnitOptions<T> = (T extends (app: App, options?: infer R) => any ? R : {}) & {
        [K in keyof T as Exclude<K, Keywords>]?: false | UnitOptions<T[K]>;
    };
    type Unit<T> = ((app: App, options?: UnitOptions<T>) => void) & {
        [K in keyof T as Exclude<K, Keywords>]: Unit<T[K]>;
    };
    function DatabaseTests(app: App): void;
    namespace DatabaseTests {
        const builtin: typeof BuiltinMethods;
        const query: typeof QueryOperators;
    }
    export const database: Unit<typeof DatabaseTests>;
    export {};
}
