import { Context, ID, EdgeQueryableDataOptions, Loader, LoaderFactory } from "../base"; import { AssocEdge, AssocEdgeConstructor } from "../ent"; interface AssocLoader extends Loader { loadEdgeForID2(id: ID, id2: ID): Promise; } export declare class AssocEdgeLoader implements Loader { private edgeType; private edgeCtr; private options; context: Context; private loaderFn; private loader; constructor(edgeType: string, edgeCtr: AssocEdgeConstructor, options: EdgeQueryableDataOptions, context: Context); private getLoader; load(id: ID): Promise; loadEdgeForID2(id: ID, id2: ID): Promise; clearAll(): void; } export declare class AssocDirectEdgeLoader implements Loader { private edgeType; private edgeCtr; private options?; context?: Context | undefined; constructor(edgeType: string, edgeCtr: AssocEdgeConstructor, options?: Partial> | undefined, context?: Context | undefined); load(id: ID): Promise; loadEdgeForID2(id: ID, id2: ID): Promise; clearAll(): void; } export declare class AssocEdgeLoaderFactory implements LoaderFactory { private edgeType; private edgeCtr; name: string; constructor(edgeType: string, edgeCtr: AssocEdgeConstructor | (() => AssocEdgeConstructor)); createLoader(context?: Context): AssocLoader; private isFunction; createConfigurableLoader(options: EdgeQueryableDataOptions, context?: Context): AssocLoader; } export {};