import { PostgresClientType, PostgresPoolClientType } from '../../../../types/postgres';
import type { PostgresStoreService } from './postgres';
export declare const KVTables: (context: PostgresStoreService) => {
    /**
     * Deploys the necessary tables with the specified naming strategy.
     * @param appName - The name of the application.
     */
    deploy(appName: string): Promise<void>;
    getAdvisoryLockId(appName: string): number;
    hashStringToInt(str: string): number;
    waitForTablesCreation(lockId: number, appName: string): Promise<void>;
    checkIfTablesExist(client: PostgresClientType, appName: string): Promise<boolean>;
    createTables(client: PostgresClientType | PostgresPoolClientType, appName: string): Promise<void>;
    getTableNames(appName: string): string[];
    getTableDefinitions(appName: string): Array<{
        schema: string;
        name: string;
        type: string;
    }>;
};
