/** @packageDocumentation
 * @module iModels
 */
import { ECSqlQueryOptions, ECSqlSchemaLocater, ECSqlSchemaLocaterOptions, SchemaKey, SchemaProps } from "@itwin/ecschema-metadata";
import { IModelDb } from "./IModelDb";
/**
 * A [[ECSqlSchemaLocater]]($ecschema-metadata) implementation that uses the [[IModelDb]] to load schemas incrementally.
 * @beta
 */
export declare class IModelIncrementalSchemaLocater extends ECSqlSchemaLocater {
    private readonly _iModel;
    /**
     * Constructs a new IModelIncrementalSchemaLocater instance.
     * @param iModel The [[IModelDb]] to query.
     * @param options Optional [[ECSqlSchemaLocaterOptions]]($ecschema-metadata).
     */
    constructor(iModel: IModelDb, options?: ECSqlSchemaLocaterOptions);
    /**
     * Gets [[SchemaProps]]($ecschema-metadata) for the given [[SchemaKey]]($ecschema-metadata).
     * This is the full schema json with all elements that are defined in the schema.
     * @param schemaKey The key of the schema to be resolved.
     */
    protected getSchemaProps(schemaKey: SchemaKey): Promise<SchemaProps | undefined>;
    /**
     * Executes an ECSql query against the IModelDb.
     * @param query The query to execute
     * @param options The [[ECSqlQueryOptions]]($ecschema-metadata) to use.
     * @returns A promise that resolves to read-only array of type TRow.
     */
    protected executeQuery<TRow>(query: string, options?: ECSqlQueryOptions): Promise<ReadonlyArray<TRow>>;
}
//# sourceMappingURL=IModelIncrementalSchemaLocater.d.ts.map