import sql from "mssql";
declare type CtIsVersionValid = {
    pool: sql.ConnectionPool;
    versionNumber: string;
    dbName?: string;
    schema?: string;
    tableName?: string;
    tableId?: never;
} | {
    pool: sql.ConnectionPool;
    versionNumber: string;
    dbName?: string;
    schema?: never;
    tableName?: never;
    tableId?: number;
};
/**
 * @description This function is to check the validity of the value of versionNumber against specific table in the database.
 * @note
 * - this function accept table name or table ID
 * - If an application has a value for last_synchronization_version that is older than the minimum valid synchronization version for a table, that application cannot perform valid change enumeration. This is because some change information might have been cleaned up.
 */
export declare function ctIsVersionValid(input: CtIsVersionValid): Promise<boolean>;
declare type TableIdQueryInput = {
    versionNumber: string;
    dbName?: string;
    tableId: number;
};
export declare function ctIsVersionValidByTableIdQuery({ versionNumber, dbName, tableId, }: TableIdQueryInput): string;
declare type TableNameQueryInput = {
    versionNumber: string;
    dbName?: string;
    schema?: string;
    tableName: string;
};
export declare function ctIsVersionValidByTableNameQuery({ versionNumber, dbName, tableName, schema, }: TableNameQueryInput): string;
export {};
