export interface DefaultTypeAdapter {
    transformValueFromDB(value: unknown, type: string): unknown;
    transformValueToDB(value: unknown, type: string): unknown;
    transformPlaceholder(placeholder: string, type: string, forceTypeCast: boolean, valueSentToDB: unknown): string;
}
export interface TypeAdapter {
    transformValueFromDB(value: unknown, type: string, next: DefaultTypeAdapter): unknown;
    transformValueToDB(value: unknown, type: string, next: DefaultTypeAdapter): unknown;
    transformPlaceholder?(placeholder: string, type: string, forceTypeCast: boolean, valueSentToDB: unknown, next: DefaultTypeAdapter): string;
}
export declare class CustomBooleanTypeAdapter implements TypeAdapter {
    readonly trueValue: number | string;
    readonly falseValue: number | string;
    constructor(trueValue: number, falseValue: number);
    constructor(trueValue: string, falseValue: string);
    transformValueFromDB(value: unknown, type: string, next: DefaultTypeAdapter): unknown;
    transformValueToDB(value: unknown, type: string, next: DefaultTypeAdapter): unknown;
}
export declare class ForceTypeCast implements TypeAdapter {
    transformValueFromDB(value: unknown, type: string, next: DefaultTypeAdapter): unknown;
    transformValueToDB(value: unknown, type: string, next: DefaultTypeAdapter): unknown;
    transformPlaceholder(placeholder: string, type: string, _forceTypeCast: boolean, valueSentToDB: unknown, next: DefaultTypeAdapter): string;
}
