import { RowStore } from 'oak-domain/lib/types'; import { EntityDict } from '../general-app-domain'; import { RuntimeContext } from './RuntimeContext'; import { Application } from '../features/application'; import { Token } from '../features/token'; import { AspectDict as GeneralAspectDict } from '../aspects/AspectDict'; import { CommonAspectDict } from 'oak-common-aspect'; import { UniversalContext } from 'oak-domain/lib/store/UniversalContext'; declare type AspectDict> = GeneralAspectDict & CommonAspectDict; export declare type SerializedData = { a?: string; t?: string; }; export declare class FrontendRuntimeContext, AD extends AspectDict> extends UniversalContext implements RuntimeContext { private application?; private token?; constructor(store: RowStore, application?: Application, token?: Token); getApplicationId(): Promise; getSystemId(): Promise<("systemId" extends infer T ? T extends "systemId" ? T extends keyof ED["application"]["Schema"] ? { id: 1; name: 1; config: 1; type: 1; systemId: 1; system: { id: 1; name: 1; config: 1; }; }[T] extends 1 | undefined ? ED["application"]["Schema"][T] : { id: 1; name: 1; config: 1; type: 1; systemId: 1; system: { id: 1; name: 1; config: 1; }; }[T] extends import("oak-domain/lib/types").OtmSubProjection ? never[] | import("oak-domain/lib/types").SelectRowShape[T][0], { id: 1; name: 1; config: 1; type: 1; systemId: 1; system: { id: 1; name: 1; config: 1; }; }[T]["data"]>[] : T extends import("oak-domain/lib/types").OptionalKeys ? import("oak-domain/lib/types").SelectRowShape[T]>, { id: 1; name: 1; config: 1; type: 1; systemId: 1; system: { id: 1; name: 1; config: 1; }; }[T]> | null : import("oak-domain/lib/types").SelectRowShape[T]>, { id: 1; name: 1; config: 1; type: 1; systemId: 1; system: { id: 1; name: 1; config: 1; }; }[T]> : never : never : never) | undefined>; getApplication(): Promise | undefined>; getTokenValue(): Promise; getToken(): Promise | undefined>; getCurrentUserId(): Promise; toString(): Promise; isRoot(): Promise; } export {};