import type { ApiDefinition, ApiDefinitionRegistry, BindingInputMap, BindingOperationRef, BindingValue, BindingValueSource, ComponentDataBindingRegistry, ComponentEventDto, DataEndpointConfig, DataSourceDiagnostic, PropBinding, StateAdapter, UiNode } from '@ankhorage/contracts'; export type RuntimeBindingOperationKey = string; export interface RuntimeBindingOperationExecutionArgs { readonly operation: BindingOperationRef; readonly api: ApiDefinition; readonly endpoint: DataEndpointConfig; readonly input?: BindingValue; readonly node?: UiNode; } export type RuntimeBindingOperationExecutionResult = { readonly ok: true; readonly data: BindingValue; readonly diagnostics?: readonly DataSourceDiagnostic[]; } | { readonly ok: false; readonly diagnostics: readonly DataSourceDiagnostic[]; }; export type RuntimeBindingOperationExecutor = (args: RuntimeBindingOperationExecutionArgs) => Promise; export type RuntimeBindingOperationResultCache = Readonly>; export type RuntimeBindingOperationResultWriter = (key: RuntimeBindingOperationKey, value: BindingValue) => void; export interface RuntimeBindingResolutionContext { readonly context?: Record; readonly event?: ComponentEventDto; readonly stateAdapter?: StateAdapter; readonly apis?: ApiDefinitionRegistry; readonly dataBindings?: ComponentDataBindingRegistry; readonly operationResults?: RuntimeBindingOperationResultCache; readonly executeOperation?: RuntimeBindingOperationExecutor; } export interface RuntimeBindingResolutionArgs extends RuntimeBindingResolutionContext { readonly node: UiNode; readonly props: Record; } export interface RuntimeBindingResolutionResult { readonly props: Record; readonly diagnostics: readonly DataSourceDiagnostic[]; } export declare function resolveRuntimeBindingsAsync(args: RuntimeBindingResolutionArgs): Promise; export declare function resolveRuntimeBindings(args: RuntimeBindingResolutionArgs): RuntimeBindingResolutionResult; export declare function resolveRuntimeBindingValue(binding: PropBinding, context: RuntimeBindingResolutionContext, diagnostics?: DataSourceDiagnostic[]): Promise; export declare function resolveRuntimeBindingValueSync(binding: PropBinding, context: RuntimeBindingResolutionContext, diagnostics?: DataSourceDiagnostic[]): unknown; export declare function resolveBindingInputMap(input: BindingInputMap | undefined, context: RuntimeBindingResolutionContext, diagnostics?: DataSourceDiagnostic[]): Promise; export declare function resolveBindingInputMapSync(input: BindingInputMap | undefined, context: RuntimeBindingResolutionContext, diagnostics?: DataSourceDiagnostic[]): BindingValue | undefined; export declare function createRuntimeBindingOperationKey(operation: BindingOperationRef): RuntimeBindingOperationKey; export declare function resolveRuntimeBindingValueSourceSync(source: BindingValueSource, context: RuntimeBindingResolutionContext, diagnostics: DataSourceDiagnostic[]): BindingValue | undefined; export declare function applyRuntimeBindingDataPath(value: BindingValue | undefined, path: string | undefined): BindingValue | undefined; //# sourceMappingURL=runtimeBindings.d.ts.map