import { BasicFeatures } from "../features"; import { AspectDict as CommonAspectDict } from "oak-common-aspect/lib/AspectDict"; import { AsyncContext } from "oak-domain/lib/store/AsyncRowStore"; import { EntityDict as BaseEntityDict } from "oak-domain/lib/base-app-domain"; import { OpRecord } from "oak-domain/lib/types"; type AspectDict> = Record Promise>; type TransformAspectDict, ED extends BaseEntityDict, BCT extends AsyncContext> = { [K in keyof T]: T[K] extends (params: infer P, context: BCT) => infer R ? R extends Promise ? (params: P, callback?: (result: R, opRecords?: OpRecord[]) => void, dontPublish?: true, ignoreContext?: true) => R : never : never; }; export type AspectDictTrans, BCT extends AsyncContext> = TransformAspectDict, ED, BCT>; export declare const createService: >(cache: BasicFeatures["cache"]) => AspectDictTrans; export {};