import type { QueryAnnotation } from "../abstract/QueryAnnotation";
import { QueryBase } from "../abstract/QueryBase";
import type { Schema } from "../abstract/Schema";
import type { Row, Table } from "../types";
import type { PgClient } from "./PgClient";
import { PgRunner } from "./PgRunner";
export declare class PgQueryLoad<TTable extends Table> extends QueryBase<TTable, string, Row<TTable> | null, PgClient> {
    /** @ignore */
    readonly RUNNER_CLASS: typeof PgRunnerLoad;
}
declare class PgRunnerLoad<TTable extends Table> extends PgRunner<TTable, string, Row<TTable> | null> {
    static readonly IS_WRITE = false;
    private builder;
    readonly op = "SELECT_BY_ID";
    readonly maxBatchSize = 1000;
    readonly default: null;
    constructor(schema: Schema<TTable>, client: PgClient);
    key(input: string): string;
    runSingle(input: string, annotations: QueryAnnotation[]): Promise<Row<TTable> | undefined>;
    runBatch(inputs: Map<string, string>, annotations: QueryAnnotation[]): Promise<Map<string, Row<TTable>>>;
}
export {};
//# sourceMappingURL=PgQueryLoad.d.ts.map