/** @packageDocumentation
 * @module InstancesFilter
 */
import { GenericInstanceFilterRule, GenericInstanceFilterRuleGroup } from "@itwin/core-common";
import { IModelConnection } from "@itwin/core-frontend";
import { ClassInfo } from "@itwin/presentation-common";
import { PresentationInstanceFilter } from "./PresentationInstanceFilter.js";
/** @internal */
export declare function findBaseExpressionClassName(imodel: IModelConnection, propertyClassNames: string[]): Promise<string>;
/** @internal */
export declare function createInstanceFilterDefinitionBase(filter: PresentationInstanceFilter, imodel: IModelConnection): Promise<{
    expression: string;
    selectClassName: string;
    relatedInstances: {
        pathFromSelectToPropertyClass: {
            sourceClassName: string;
            targetClassName: string;
            relationshipName: string;
            isForwardRelationship: boolean;
        }[];
        alias: string;
    }[];
}>;
/** @internal */
export declare function createFilterExpression(filter: GenericInstanceFilterRule | GenericInstanceFilterRuleGroup): string;
/** @internal */
export declare function createFilterClassExpression(usedClasses: ClassInfo[]): string;
//# sourceMappingURL=InstanceFilterConverter.d.ts.map