@acorex/platform 0.0.0-ACOREX

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (116) hide show
  1. package/README.md +7 -0
  2. package/auth/README.md +3 -0
  3. package/common/README.md +3 -0
  4. package/core/README.md +4 -0
  5. package/fesm2022/acorex-platform-auth.mjs +1362 -0
  6. package/fesm2022/acorex-platform-auth.mjs.map +1 -0
  7. package/fesm2022/acorex-platform-common-common-settings.provider-G9XcXXOG.mjs +127 -0
  8. package/fesm2022/acorex-platform-common-common-settings.provider-G9XcXXOG.mjs.map +1 -0
  9. package/fesm2022/acorex-platform-common.mjs +4601 -0
  10. package/fesm2022/acorex-platform-common.mjs.map +1 -0
  11. package/fesm2022/acorex-platform-core.mjs +4374 -0
  12. package/fesm2022/acorex-platform-core.mjs.map +1 -0
  13. package/fesm2022/acorex-platform-domain.mjs +3234 -0
  14. package/fesm2022/acorex-platform-domain.mjs.map +1 -0
  15. package/fesm2022/acorex-platform-layout-builder.mjs +2847 -0
  16. package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -0
  17. package/fesm2022/acorex-platform-layout-components-binding-expression-editor-popup.component-CXEdvDTf.mjs +121 -0
  18. package/fesm2022/acorex-platform-layout-components-binding-expression-editor-popup.component-CXEdvDTf.mjs.map +1 -0
  19. package/fesm2022/acorex-platform-layout-components.mjs +8583 -0
  20. package/fesm2022/acorex-platform-layout-components.mjs.map +1 -0
  21. package/fesm2022/acorex-platform-layout-designer.mjs +2474 -0
  22. package/fesm2022/acorex-platform-layout-designer.mjs.map +1 -0
  23. package/fesm2022/acorex-platform-layout-entity.mjs +19150 -0
  24. package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -0
  25. package/fesm2022/acorex-platform-layout-views.mjs +1468 -0
  26. package/fesm2022/acorex-platform-layout-views.mjs.map +1 -0
  27. package/fesm2022/acorex-platform-layout-widget-core.mjs +2950 -0
  28. package/fesm2022/acorex-platform-layout-widget-core.mjs.map +1 -0
  29. package/fesm2022/acorex-platform-layout-widgets-button-widget-designer.component-Dy7jF-oD.mjs +72 -0
  30. package/fesm2022/acorex-platform-layout-widgets-button-widget-designer.component-Dy7jF-oD.mjs.map +1 -0
  31. package/fesm2022/acorex-platform-layout-widgets-file-list-popup.component-9uCkMxcc.mjs +158 -0
  32. package/fesm2022/acorex-platform-layout-widgets-file-list-popup.component-9uCkMxcc.mjs.map +1 -0
  33. package/fesm2022/acorex-platform-layout-widgets-image-preview.popup-C_EPAvCU.mjs +29 -0
  34. package/fesm2022/acorex-platform-layout-widgets-image-preview.popup-C_EPAvCU.mjs.map +1 -0
  35. package/fesm2022/acorex-platform-layout-widgets-page-widget-designer.component-D10yO28c.mjs +172 -0
  36. package/fesm2022/acorex-platform-layout-widgets-page-widget-designer.component-D10yO28c.mjs.map +1 -0
  37. package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-BGQqY5Mw.mjs +111 -0
  38. package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-BGQqY5Mw.mjs.map +1 -0
  39. package/fesm2022/acorex-platform-layout-widgets-tabular-data-edit-popup.component-DmzNTYiS.mjs +274 -0
  40. package/fesm2022/acorex-platform-layout-widgets-tabular-data-edit-popup.component-DmzNTYiS.mjs.map +1 -0
  41. package/fesm2022/acorex-platform-layout-widgets-tabular-data-view-popup.component-BNG_588B.mjs +64 -0
  42. package/fesm2022/acorex-platform-layout-widgets-tabular-data-view-popup.component-BNG_588B.mjs.map +1 -0
  43. package/fesm2022/acorex-platform-layout-widgets-text-block-widget-designer.component-Vo4fWHtX.mjs +34 -0
  44. package/fesm2022/acorex-platform-layout-widgets-text-block-widget-designer.component-Vo4fWHtX.mjs.map +1 -0
  45. package/fesm2022/acorex-platform-layout-widgets.mjs +29791 -0
  46. package/fesm2022/acorex-platform-layout-widgets.mjs.map +1 -0
  47. package/fesm2022/acorex-platform-native.mjs +155 -0
  48. package/fesm2022/acorex-platform-native.mjs.map +1 -0
  49. package/fesm2022/acorex-platform-runtime-catalog-command-definition.mjs +20 -0
  50. package/fesm2022/acorex-platform-runtime-catalog-command-definition.mjs.map +1 -0
  51. package/fesm2022/acorex-platform-runtime-catalog-query-definition.mjs +20 -0
  52. package/fesm2022/acorex-platform-runtime-catalog-query-definition.mjs.map +1 -0
  53. package/fesm2022/acorex-platform-runtime.mjs +899 -0
  54. package/fesm2022/acorex-platform-runtime.mjs.map +1 -0
  55. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-Cvvr4HnL.mjs +160 -0
  56. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-Cvvr4HnL.mjs.map +1 -0
  57. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-TYoLN1Jq.mjs +120 -0
  58. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-TYoLN1Jq.mjs.map +1 -0
  59. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-C2z5Lq9y.mjs +237 -0
  60. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-C2z5Lq9y.mjs.map +1 -0
  61. package/fesm2022/acorex-platform-themes-default-error-401.component-C7EYJzSr.mjs +31 -0
  62. package/fesm2022/acorex-platform-themes-default-error-401.component-C7EYJzSr.mjs.map +1 -0
  63. package/fesm2022/acorex-platform-themes-default-error-404.component-7MVLMwIa.mjs +25 -0
  64. package/fesm2022/acorex-platform-themes-default-error-404.component-7MVLMwIa.mjs.map +1 -0
  65. package/fesm2022/acorex-platform-themes-default-error-offline.component-DR6G8gPC.mjs +19 -0
  66. package/fesm2022/acorex-platform-themes-default-error-offline.component-DR6G8gPC.mjs.map +1 -0
  67. package/fesm2022/acorex-platform-themes-default.mjs +2589 -0
  68. package/fesm2022/acorex-platform-themes-default.mjs.map +1 -0
  69. package/fesm2022/acorex-platform-themes-shared-icon-chooser-column.component-CqkWJYdv.mjs +55 -0
  70. package/fesm2022/acorex-platform-themes-shared-icon-chooser-column.component-CqkWJYdv.mjs.map +1 -0
  71. package/fesm2022/acorex-platform-themes-shared-icon-chooser-view.component-BOTuLdWN.mjs +57 -0
  72. package/fesm2022/acorex-platform-themes-shared-icon-chooser-view.component-BOTuLdWN.mjs.map +1 -0
  73. package/fesm2022/acorex-platform-themes-shared-settings.provider-DSs1o1M6.mjs +168 -0
  74. package/fesm2022/acorex-platform-themes-shared-settings.provider-DSs1o1M6.mjs.map +1 -0
  75. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-CHfrTtol.mjs +65 -0
  76. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-CHfrTtol.mjs.map +1 -0
  77. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-BSmvnUVq.mjs +64 -0
  78. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-BSmvnUVq.mjs.map +1 -0
  79. package/fesm2022/acorex-platform-themes-shared.mjs +2125 -0
  80. package/fesm2022/acorex-platform-themes-shared.mjs.map +1 -0
  81. package/fesm2022/acorex-platform-workflow.mjs +2501 -0
  82. package/fesm2022/acorex-platform-workflow.mjs.map +1 -0
  83. package/fesm2022/acorex-platform.mjs +6 -0
  84. package/fesm2022/acorex-platform.mjs.map +1 -0
  85. package/layout/builder/README.md +1578 -0
  86. package/layout/components/README.md +3 -0
  87. package/layout/designer/README.md +4 -0
  88. package/layout/entity/README.md +4 -0
  89. package/layout/views/README.md +3 -0
  90. package/layout/widget-core/README.md +4 -0
  91. package/layout/widgets/README.md +3 -0
  92. package/native/README.md +4 -0
  93. package/package.json +103 -0
  94. package/runtime/README.md +3 -0
  95. package/themes/default/README.md +3 -0
  96. package/themes/shared/README.md +3 -0
  97. package/types/acorex-platform-auth.d.ts +680 -0
  98. package/types/acorex-platform-common.d.ts +2926 -0
  99. package/types/acorex-platform-core.d.ts +2896 -0
  100. package/types/acorex-platform-domain.d.ts +2353 -0
  101. package/types/acorex-platform-layout-builder.d.ts +926 -0
  102. package/types/acorex-platform-layout-components.d.ts +2903 -0
  103. package/types/acorex-platform-layout-designer.d.ts +422 -0
  104. package/types/acorex-platform-layout-entity.d.ts +3189 -0
  105. package/types/acorex-platform-layout-views.d.ts +667 -0
  106. package/types/acorex-platform-layout-widget-core.d.ts +1086 -0
  107. package/types/acorex-platform-layout-widgets.d.ts +5478 -0
  108. package/types/acorex-platform-native.d.ts +28 -0
  109. package/types/acorex-platform-runtime-catalog-command-definition.d.ts +137 -0
  110. package/types/acorex-platform-runtime-catalog-query-definition.d.ts +125 -0
  111. package/types/acorex-platform-runtime.d.ts +470 -0
  112. package/types/acorex-platform-themes-default.d.ts +573 -0
  113. package/types/acorex-platform-themes-shared.d.ts +170 -0
  114. package/types/acorex-platform-workflow.d.ts +1806 -0
  115. package/types/acorex-platform.d.ts +2 -0
  116. package/workflow/README.md +4 -0
@@ -0,0 +1,470 @@
1
+ import { AXPExecuteCommandResult, AXPViewDefinition, AXPMetaData } from '@acorex/platform/core';
2
+ import * as i0 from '@angular/core';
3
+ import { InjectionToken, EnvironmentProviders, Type, Provider } from '@angular/core';
4
+ import { AXComponent } from '@acorex/cdk/common';
5
+
6
+ /**
7
+ * Shared build-time metadata shapes for command and query catalog definitions.
8
+ * Lives under `shared/` so secondary ng-packagr entries under `commands/` or `queries/` share a common `src/lib` compilation root.
9
+ */
10
+ /** Command metadata validation: rule key + optional rule options only. */
11
+ interface AXPCommandValidationRuleValue {
12
+ rule: string;
13
+ options?: Record<string, unknown>;
14
+ }
15
+ /**
16
+ * Widget/interface reference for a schema property (name + optional widget options).
17
+ */
18
+ interface AXPCommandInterfaceDefinitionValue {
19
+ name: string;
20
+ options?: Record<string, unknown>;
21
+ }
22
+ /**
23
+ * One input/output property description (same structural role as AXPPropertyDefinition).
24
+ */
25
+ interface AXPCommandSchemaPropertyDefinition {
26
+ name: string;
27
+ title: string;
28
+ description?: string;
29
+ icon?: string;
30
+ defaultValue?: unknown;
31
+ disabled?: boolean;
32
+ interface: AXPCommandInterfaceDefinitionValue;
33
+ validations?: AXPCommandValidationRuleValue[];
34
+ }
35
+ /** Structured usage hints for planners and assistants (prefer over duplicating rules only in `description`). */
36
+ interface AXPCommandAiUsageMetadata {
37
+ whenToUse?: string[];
38
+ avoidWhen?: string[];
39
+ /** Registry keys or tool names that commonly follow this command/query. */
40
+ followUpTools?: string[];
41
+ }
42
+ /** Declarative contracts: what the tool provides, who depends on it, and guarantees (not workflow `outcomes`). */
43
+ interface AXPCommandAiContractsMetadata {
44
+ provides?: string[];
45
+ requiredBy?: string[];
46
+ guarantees?: string[];
47
+ }
48
+ type AXPCommandAiSafetyKind = 'read-only' | 'mutating';
49
+ interface AXPCommandAiSafetyMetadata {
50
+ kind?: AXPCommandAiSafetyKind;
51
+ sideEffects?: boolean;
52
+ requiresConfirmation?: boolean;
53
+ }
54
+ type AXPCommandAiPerformanceCost = 'low' | 'medium' | 'high';
55
+ interface AXPCommandAiPerformanceMetadata {
56
+ cost?: AXPCommandAiPerformanceCost;
57
+ cacheable?: boolean;
58
+ }
59
+ interface AXPCommandAiNextStepMetadata {
60
+ when: string;
61
+ action: string;
62
+ }
63
+ /**
64
+ * How to interpret a successful payload for agents (documentation only; not command workflow outcomes).
65
+ */
66
+ interface AXPCommandAiResultSemanticsMetadata {
67
+ noMatch?: string;
68
+ exactMatch?: string;
69
+ multipleMatches?: string;
70
+ failed?: string;
71
+ /** Full catalog listing (e.g. no entity filter). */
72
+ catalog?: string;
73
+ }
74
+ interface AXPCommandAiMetadata {
75
+ shortDescription?: string;
76
+ tags?: string[];
77
+ usage?: AXPCommandAiUsageMetadata;
78
+ contracts?: AXPCommandAiContractsMetadata;
79
+ safety?: AXPCommandAiSafetyMetadata;
80
+ performance?: AXPCommandAiPerformanceMetadata;
81
+ nextSteps?: AXPCommandAiNextStepMetadata[];
82
+ resultSemantics?: AXPCommandAiResultSemanticsMetadata;
83
+ /**
84
+ * Default input fragment merged for AI/tool invocations (catalog & tooling).
85
+ * Runtime merge for a given command is applied in the AI module (not the generic command executor).
86
+ */
87
+ toolInputDefaults?: Record<string, unknown>;
88
+ /**
89
+ * Optional JSON Schema fragment for LLM tool `parameters` (OpenAI-style function calling).
90
+ * Merged over the auto-generated schema from catalog `inputs` (`properties` / `required` deep-merged).
91
+ * Use when widget-to-type inference is insufficient (e.g. `object`, `array`, `enum`, `format`).
92
+ */
93
+ toolParametersSchema?: Record<string, unknown>;
94
+ }
95
+ type AXPCommandExecutionMode = 'frontend' | 'backend' | 'both';
96
+ /**
97
+ * Where this command is intended to appear in product tooling (AI agents, workflow automation pickers, etc.).
98
+ * Omitted = not declared here; runtimes may fall back to other metadata (e.g. `ai.tags`).
99
+ */
100
+ type AXPCommandCapability = 'ai' | 'workflow';
101
+
102
+ /**
103
+ * Build-time command metadata for AXPCommand implementations.
104
+ * `inputs` / `outputs` are schema rows (same family as entity optionDefinitions).
105
+ * Validation entries: only `rule` name and optional `options` (no title/message on rules).
106
+ * Do not import from Angular templates; sidecars may import `defineCommand` from `@acorex/platform/runtime`.
107
+ *
108
+ * Query metadata (fetch-only, no outcomes) is defined in `../queries/query-definition.types.ts` with `defineQuery`.
109
+ */
110
+
111
+ type AXPCommandOutcomeDefinition = {
112
+ mode: 'static';
113
+ values: string[];
114
+ } | {
115
+ mode: 'dynamic';
116
+ summary: string;
117
+ derivesFrom: string;
118
+ examples?: string[];
119
+ };
120
+ interface AXPCommandMetadataDefinition {
121
+ /** Runtime registration key (provideCommand / provideCommandSetups). */
122
+ key: string;
123
+ title: string;
124
+ description: string;
125
+ executionMode: AXPCommandExecutionMode;
126
+ /** Input parameters as schema rows. */
127
+ inputs?: AXPCommandSchemaPropertyDefinition[];
128
+ /** Output shape as schema rows. */
129
+ outputs?: AXPCommandSchemaPropertyDefinition[];
130
+ outcomes: AXPCommandOutcomeDefinition;
131
+ ai?: AXPCommandAiMetadata;
132
+ /** Optional list of surfaces that may list or invoke this command as a tool/activity. */
133
+ capabilities?: AXPCommandCapability[];
134
+ }
135
+
136
+ /**
137
+ * Typed identity helper for command metadata sidecars.
138
+ */
139
+ declare function defineCommand<T extends AXPCommandMetadataDefinition>(definition: T): T;
140
+
141
+ type AXPCommandExecutionStage = 'before' | 'after';
142
+ interface AXPCommandExecutionEvent<TInput = unknown, TResult = unknown> {
143
+ stage: AXPCommandExecutionStage;
144
+ key: string;
145
+ input: TInput;
146
+ success?: boolean;
147
+ result?: AXPExecuteCommandResult<TResult> | null;
148
+ error?: unknown;
149
+ }
150
+ type CommandExecutionHandler<TInput, TResult> = (event: AXPCommandExecutionEvent<TInput, TResult>) => void;
151
+ declare class AXPCommandEventsService {
152
+ private readonly broadcast;
153
+ private readonly distributedEvents;
154
+ listen<TInput = unknown, TResult = unknown>(handler: CommandExecutionHandler<TInput, TResult>): () => void;
155
+ emit<TInput = unknown, TResult = unknown>(event: AXPCommandExecutionEvent<TInput, TResult>): Promise<void>;
156
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXPCommandEventsService, never>;
157
+ static ɵprov: i0.ɵɵInjectableDeclaration<AXPCommandEventsService>;
158
+ }
159
+
160
+ declare class AXPCommandExecutor {
161
+ private readonly injector;
162
+ private readonly registry;
163
+ private readonly extensions;
164
+ private readonly commandEvents;
165
+ execute<TInput = any, TResult = any>(key: string, input: TInput): Promise<AXPExecuteCommandResult<TResult> | null>;
166
+ private getPluginMiddlewares;
167
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXPCommandExecutor, never>;
168
+ static ɵprov: i0.ɵɵInjectableDeclaration<AXPCommandExecutor>;
169
+ }
170
+
171
+ /**
172
+ * Represents a middleware function in the command execution pipeline.
173
+ */
174
+ type AXPCommandMiddleware<TInput = any, TResult = any> = (input: TInput, next: (input: TInput) => Promise<AXPExecuteCommandResult<TResult>>) => Promise<AXPExecuteCommandResult<TResult>>;
175
+ /**
176
+ * Creates a composed handler by chaining the provided command middlewares.
177
+ */
178
+ declare function composeCommandMiddlewares<TInput, TResult>(middlewares: AXPCommandMiddleware<TInput, TResult>[]): (handler: (input: TInput) => Promise<AXPExecuteCommandResult<TResult>>) => (input: TInput) => Promise<AXPExecuteCommandResult<TResult>>;
179
+
180
+ interface AXPCommandExtension {
181
+ target: string | RegExp;
182
+ middleware: AXPCommandMiddleware;
183
+ }
184
+ declare const AXP_COMMAND_EXTENSION: InjectionToken<AXPCommandExtension[]>;
185
+
186
+ type AXPExecuteCommandResultPromise<TResult = any> = Promise<AXPExecuteCommandResult<TResult>>;
187
+ interface AXPCommand<TInput = any, TResult = any> {
188
+ execute(input: TInput): AXPExecuteCommandResultPromise<TResult>;
189
+ }
190
+
191
+ declare class AXPCommandRegistry {
192
+ private registry;
193
+ private middlewares;
194
+ register(key: string, loader: () => Promise<AXPCommand>): void;
195
+ unregister(key: string): boolean;
196
+ use(middleware: AXPCommandMiddleware): void;
197
+ exists(key: string): boolean;
198
+ getLoader(key: string): (() => Promise<AXPCommand>) | undefined;
199
+ getMiddlewares(): readonly AXPCommandMiddleware[];
200
+ getRegisteredKeys(): string[];
201
+ clear(): void;
202
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXPCommandRegistry, never>;
203
+ static ɵprov: i0.ɵɵInjectableDeclaration<AXPCommandRegistry>;
204
+ }
205
+
206
+ declare class AXPCommandService {
207
+ private readonly registry;
208
+ private readonly executor;
209
+ register(key: string, loader: () => Promise<AXPCommand>): void;
210
+ unregister(key: string): boolean;
211
+ use(middleware: AXPCommandMiddleware): void;
212
+ exists(key: string): boolean;
213
+ getRegisteredKeys(): string[];
214
+ clear(): void;
215
+ execute<TInput = any, TResult = any>(key: string, input: TInput): Promise<AXPExecuteCommandResult<TResult> | null>;
216
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXPCommandService, never>;
217
+ static ɵprov: i0.ɵɵInjectableDeclaration<AXPCommandService>;
218
+ }
219
+
220
+ declare const AXP_COMMAND_MIDDLEWARE_SETUP: InjectionToken<void>;
221
+ type AXPCommandMiddlewareEntry = (AXPCommandMiddleware | {
222
+ target: string | RegExp;
223
+ middleware: AXPCommandMiddleware;
224
+ })[];
225
+ declare function provideCommandMiddleware(entries: AXPCommandMiddlewareEntry): EnvironmentProviders;
226
+
227
+ declare const AXP_COMMAND_SETUP: InjectionToken<void>;
228
+ type AXPCommandLoader = {
229
+ key: string;
230
+ command: () => Type<AXPCommand> | Promise<Type<AXPCommand>>;
231
+ };
232
+ declare function provideCommandSetups(entries: AXPCommandLoader[]): EnvironmentProviders;
233
+ declare function provideCommand(key: string, loader: () => Type<AXPCommand> | Promise<Type<AXPCommand>>): EnvironmentProviders;
234
+
235
+ /**
236
+ * Build-time query metadata for AXPQuery implementations.
237
+ * Mirrors command metadata shape except there are no `outcomes` (queries only `fetch`).
238
+ * `inputs` / `outputs` are schema rows (same family as entity optionDefinitions).
239
+ */
240
+
241
+ /** One input/output property description for query definitions (same as command schema rows). */
242
+ type AXPQuerySchemaPropertyDefinition = AXPCommandSchemaPropertyDefinition;
243
+ interface AXPQueryMetadataDefinition {
244
+ /** Runtime registration key (provideQuerySetups). */
245
+ key: string;
246
+ title: string;
247
+ description: string;
248
+ executionMode: AXPCommandExecutionMode;
249
+ /** Query input / filter parameters as schema rows. */
250
+ inputs?: AXPQuerySchemaPropertyDefinition[];
251
+ /** Documented result shape as schema rows. */
252
+ outputs?: AXPQuerySchemaPropertyDefinition[];
253
+ ai?: AXPCommandAiMetadata;
254
+ /** Optional list of surfaces that may list or invoke this query as a tool (e.g. AI assistants). */
255
+ capabilities?: AXPCommandCapability[];
256
+ }
257
+
258
+ /**
259
+ * Typed identity helper for query metadata sidecars.
260
+ */
261
+ declare function defineQuery<T extends AXPQueryMetadataDefinition>(definition: T): T;
262
+
263
+ type AXPQueryMiddleware<TInput = any, TResult = any> = (input: TInput, next: (input: TInput) => Promise<TResult>) => Promise<TResult>;
264
+ declare function composeQueryMiddlewares<TInput, TResult>(middlewares: AXPQueryMiddleware<TInput, TResult>[]): (handler: (input: TInput) => Promise<TResult>) => (input: TInput) => Promise<TResult>;
265
+
266
+ declare const AXP_QUERY_MIDDLEWARE_SETUP: InjectionToken<void>;
267
+ type AXPQueryMiddlewareEntry = (AXPQueryMiddleware | {
268
+ key: string;
269
+ middleware: AXPQueryMiddleware;
270
+ })[];
271
+ declare function provideQueryMiddleware(entries: AXPQueryMiddlewareEntry): EnvironmentProviders;
272
+
273
+ interface AXPQuery<TInput = any, TResult = any> {
274
+ fetch(input: TInput): Promise<TResult>;
275
+ }
276
+
277
+ declare const AXP_QUERY_SETUP: InjectionToken<void>;
278
+ type AXPQueryLoaderEntry = {
279
+ key: string;
280
+ loader: () => Type<AXPQuery> | Promise<Type<AXPQuery>>;
281
+ };
282
+ declare function provideQuerySetups(entries: AXPQueryLoaderEntry[]): EnvironmentProviders;
283
+
284
+ declare class AXPQueryExecutor {
285
+ private readonly injector;
286
+ private readonly registry;
287
+ private readonly extensions;
288
+ fetch<TInput = any, TResult = any>(key: string, input: TInput): Promise<TResult | null>;
289
+ private getPluginMiddlewares;
290
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXPQueryExecutor, never>;
291
+ static ɵprov: i0.ɵɵInjectableDeclaration<AXPQueryExecutor>;
292
+ }
293
+
294
+ interface AXPQueryExtension {
295
+ target: string | RegExp;
296
+ middleware: AXPQueryMiddleware;
297
+ }
298
+ declare const AXP_QUERY_EXTENSION: InjectionToken<AXPQueryExtension[]>;
299
+
300
+ declare class AXPQueryRegistry {
301
+ private registry;
302
+ private middlewares;
303
+ register(key: string, loader: () => Promise<AXPQuery>): void;
304
+ unregister(key: string): boolean;
305
+ use(middleware: AXPQueryMiddleware): void;
306
+ exists(key: string): boolean;
307
+ getLoader(key: string): (() => Promise<AXPQuery>) | undefined;
308
+ getMiddlewares(): readonly AXPQueryMiddleware[];
309
+ getRegisteredKeys(): string[];
310
+ clear(): void;
311
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXPQueryRegistry, never>;
312
+ static ɵprov: i0.ɵɵInjectableDeclaration<AXPQueryRegistry>;
313
+ }
314
+
315
+ declare class AXPQueryService {
316
+ private readonly registry;
317
+ private readonly executor;
318
+ register(key: string, loader: () => Promise<AXPQuery>): void;
319
+ unregister(key: string): boolean;
320
+ use(middleware: AXPQueryMiddleware): void;
321
+ exists(key: string): boolean;
322
+ getRegisteredKeys(): string[];
323
+ clear(): void;
324
+ fetch<TInput = any, TResult = any>(key: string, input: TInput): Promise<TResult | null>;
325
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXPQueryService, never>;
326
+ static ɵprov: i0.ɵɵInjectableDeclaration<AXPQueryService>;
327
+ }
328
+
329
+ interface AXPViewProvider<TInput = any> {
330
+ provide(input: TInput): Promise<AXPViewDefinition>;
331
+ }
332
+
333
+ type AXPViewMiddleware<TInput = any> = (input: TInput, next: (input: TInput) => Promise<AXPViewDefinition>) => Promise<AXPViewDefinition>;
334
+ declare function composeViewMiddlewares<TInput>(middlewares: AXPViewMiddleware<TInput>[]): (handler: (input: TInput) => Promise<AXPViewDefinition>) => (input: TInput) => Promise<AXPViewDefinition>;
335
+
336
+ declare class AXPViewRegistry {
337
+ private registry;
338
+ private middlewares;
339
+ register(key: string, loader: () => Promise<AXPViewProvider>): void;
340
+ unregister(key: string): boolean;
341
+ use(middleware: AXPViewMiddleware): void;
342
+ exists(key: string): boolean;
343
+ getLoader(key: string): (() => Promise<AXPViewProvider>) | undefined;
344
+ getMiddlewares(): readonly AXPViewMiddleware[];
345
+ getRegisteredKeys(): string[];
346
+ clear(): void;
347
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXPViewRegistry, never>;
348
+ static ɵprov: i0.ɵɵInjectableDeclaration<AXPViewRegistry>;
349
+ }
350
+
351
+ declare class AXPViewExecutor {
352
+ private readonly injector;
353
+ private readonly registry;
354
+ private readonly extensions;
355
+ provide<TInput = any>(key: string, input: TInput): Promise<AXPViewDefinition | null>;
356
+ private getPluginMiddlewares;
357
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXPViewExecutor, never>;
358
+ static ɵprov: i0.ɵɵInjectableDeclaration<AXPViewExecutor>;
359
+ }
360
+
361
+ declare class AXPViewService {
362
+ private readonly registry;
363
+ private readonly executor;
364
+ register(key: string, loader: () => Promise<AXPViewProvider>): void;
365
+ unregister(key: string): boolean;
366
+ use(middleware: AXPViewMiddleware): void;
367
+ exists(key: string): boolean;
368
+ getRegisteredKeys(): string[];
369
+ clear(): void;
370
+ provide<TInput = any>(key: string, input: TInput): Promise<AXPViewDefinition | null>;
371
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXPViewService, never>;
372
+ static ɵprov: i0.ɵɵInjectableDeclaration<AXPViewService>;
373
+ }
374
+
375
+ interface AXPViewExtension {
376
+ target: string | RegExp;
377
+ middleware: AXPViewMiddleware;
378
+ }
379
+ declare const AXP_VIEW_EXTENSION: InjectionToken<AXPViewExtension[]>;
380
+
381
+ declare const AXP_VIEW_SETUP: InjectionToken<void>;
382
+ declare function provideViewSetups(providers: Provider[]): EnvironmentProviders;
383
+ declare function provideViewSetup(key: string, loader: () => Promise<AXPViewProvider>): Provider;
384
+
385
+ type AXPPolicyOptions = {
386
+ id: string;
387
+ sender: HTMLElement | AXComponent | AXPMetaData;
388
+ policies?: string[];
389
+ };
390
+
391
+ interface AXPPolicy {
392
+ apply(context: AXPPolicyEngineContext): Promise<void>;
393
+ }
394
+ declare class AXPPolicyEngineContext {
395
+ private _id;
396
+ private _sender;
397
+ private _visible;
398
+ private _enabled;
399
+ constructor(options: AXPPolicyOptions);
400
+ get sender(): AXPPolicyOptions['sender'];
401
+ get id(): string;
402
+ get visible(): boolean;
403
+ get enabled(): boolean;
404
+ setVisible(visible: boolean): this;
405
+ setEnabled(enabled: boolean): this;
406
+ }
407
+
408
+ type AXPPolicyEngineMiddleware = (context: AXPPolicyEngineContext, next: (context: AXPPolicyEngineContext) => Promise<void>) => Promise<void>;
409
+ declare function composePolicyEngineMiddlewares(middlewares: AXPPolicyEngineMiddleware[]): (handler: (context: AXPPolicyEngineContext) => Promise<void>) => (context: AXPPolicyEngineContext) => Promise<void>;
410
+
411
+ declare class AXPPolicyEngineRegistry {
412
+ private registry;
413
+ private middlewares;
414
+ private extensions;
415
+ private injector;
416
+ use(mw: AXPPolicyEngineMiddleware): void;
417
+ exists(key: string): boolean;
418
+ getPolicies(): string[];
419
+ register(key: string, loader: () => Promise<AXPPolicy>): void;
420
+ private getPluginMiddlewares;
421
+ execute(policy: string, instance: AXPPolicyOptions): Promise<AXPPolicyEngineContext>;
422
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXPPolicyEngineRegistry, never>;
423
+ static ɵprov: i0.ɵɵInjectableDeclaration<AXPPolicyEngineRegistry>;
424
+ }
425
+
426
+ declare class AXPPolicyEngineService {
427
+ private registry;
428
+ apply(options: AXPPolicyOptions): Promise<void>;
429
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXPPolicyEngineService, never>;
430
+ static ɵprov: i0.ɵɵInjectableDeclaration<AXPPolicyEngineService>;
431
+ }
432
+
433
+ declare class AXPPolicyEngineDirective {
434
+ #private;
435
+ policy: i0.InputSignal<string | null | undefined>;
436
+ private service;
437
+ private elementRef;
438
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXPPolicyEngineDirective, never>;
439
+ static ɵdir: i0.ɵɵDirectiveDeclaration<AXPPolicyEngineDirective, "[axp-apply-policy]", never, { "policy": { "alias": "axp-apply-policy"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
440
+ }
441
+
442
+ interface AXPPolicyExtension {
443
+ key: string;
444
+ middleware: AXPPolicyEngineMiddleware;
445
+ }
446
+ declare const AXP_POLICY_EXTENSION: InjectionToken<AXPPolicyExtension[]>;
447
+
448
+ declare const AXP_POLICY_ENGINE_MIDDLEWARE_SETUP: InjectionToken<void>;
449
+ type AXPPolicyLoader = {
450
+ key: string;
451
+ policy: () => Type<AXPPolicy> | Promise<Type<AXPPolicy>>;
452
+ };
453
+ declare function providePolicySetups(entries: AXPPolicyLoader[]): EnvironmentProviders;
454
+
455
+ declare class AXPRuntimeModule {
456
+ private _commandSetup;
457
+ private _commandMiddlewareSetup;
458
+ private _querySetup;
459
+ private _queryMiddlewareSetup;
460
+ private _viewSetup;
461
+ private _viewMiddlewareSetup;
462
+ private _policyEngineSetup;
463
+ constructor();
464
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXPRuntimeModule, never>;
465
+ static ɵmod: i0.ɵɵNgModuleDeclaration<AXPRuntimeModule, never, never, never>;
466
+ static ɵinj: i0.ɵɵInjectorDeclaration<AXPRuntimeModule>;
467
+ }
468
+
469
+ export { AXPCommandEventsService, AXPCommandExecutor, AXPCommandRegistry, AXPCommandService, AXPPolicyEngineContext, AXPPolicyEngineDirective, AXPPolicyEngineRegistry, AXPPolicyEngineService, AXPQueryExecutor, AXPQueryRegistry, AXPQueryService, AXPRuntimeModule, AXPViewExecutor, AXPViewRegistry, AXPViewService, AXP_COMMAND_EXTENSION, AXP_COMMAND_MIDDLEWARE_SETUP, AXP_COMMAND_SETUP, AXP_POLICY_ENGINE_MIDDLEWARE_SETUP, AXP_POLICY_EXTENSION, AXP_QUERY_EXTENSION, AXP_QUERY_MIDDLEWARE_SETUP, AXP_QUERY_SETUP, AXP_VIEW_EXTENSION, AXP_VIEW_SETUP, composeCommandMiddlewares, composePolicyEngineMiddlewares, composeQueryMiddlewares, composeViewMiddlewares, defineCommand, defineQuery, provideCommand, provideCommandMiddleware, provideCommandSetups, providePolicySetups, provideQueryMiddleware, provideQuerySetups, provideViewSetup, provideViewSetups };
470
+ export type { AXPCommand, AXPCommandAiContractsMetadata, AXPCommandAiMetadata, AXPCommandAiNextStepMetadata, AXPCommandAiPerformanceCost, AXPCommandAiPerformanceMetadata, AXPCommandAiResultSemanticsMetadata, AXPCommandAiSafetyKind, AXPCommandAiSafetyMetadata, AXPCommandAiUsageMetadata, AXPCommandCapability, AXPCommandExecutionEvent, AXPCommandExecutionMode, AXPCommandExecutionStage, AXPCommandExtension, AXPCommandInterfaceDefinitionValue, AXPCommandMetadataDefinition, AXPCommandMiddleware, AXPCommandOutcomeDefinition, AXPCommandSchemaPropertyDefinition, AXPCommandValidationRuleValue, AXPExecuteCommandResultPromise, AXPPolicy, AXPPolicyEngineMiddleware, AXPPolicyExtension, AXPQuery, AXPQueryExtension, AXPQueryMetadataDefinition, AXPQueryMiddleware, AXPQuerySchemaPropertyDefinition, AXPViewExtension, AXPViewMiddleware, AXPViewProvider };