import type { TABLE_NAMES, TABLE_OBSERVATIONAL_MEMORY } from '../../constants.js';
import type { StorageColumn } from '../../types.js';
import { StoreOperations } from './base.js';
type InMemoryTableNames = TABLE_NAMES | typeof TABLE_OBSERVATIONAL_MEMORY;
export declare class StoreOperationsInMemory extends StoreOperations {
    data: Record<InMemoryTableNames, Map<string, Record<string, any>>>;
    constructor();
    getDatabase(): Record<InMemoryTableNames, Map<string, Record<string, any>>>;
    insert({ tableName, record }: {
        tableName: TABLE_NAMES;
        record: Record<string, any>;
    }): Promise<void>;
    batchInsert({ tableName, records }: {
        tableName: TABLE_NAMES;
        records: Record<string, any>[];
    }): Promise<void>;
    load<R>({ tableName, keys }: {
        tableName: TABLE_NAMES;
        keys: Record<string, string>;
    }): Promise<R | null>;
    createTable({ tableName, schema: _schema, }: {
        tableName: TABLE_NAMES;
        schema: Record<string, StorageColumn>;
    }): Promise<void>;
    clearTable({ tableName }: {
        tableName: TABLE_NAMES;
    }): Promise<void>;
    dropTable({ tableName }: {
        tableName: TABLE_NAMES;
    }): Promise<void>;
    alterTable({ tableName: _tableName, schema: _schema, }: {
        tableName: TABLE_NAMES;
        schema: Record<string, StorageColumn>;
        ifNotExists: string[];
    }): Promise<void>;
    hasColumn(_table: string, _column: string): Promise<boolean>;
}
export {};
//# sourceMappingURL=inmemory.d.ts.map