@threadplane/chat 0.0.57 → 0.0.58
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.
- package/README.md +5 -5
- package/fesm2022/threadplane-chat.mjs +1004 -663
- package/fesm2022/threadplane-chat.mjs.map +1 -1
- package/package.json +1 -1
- package/types/threadplane-chat.d.ts +243 -153
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import * as _threadplane_render from '@threadplane/render';
|
|
2
2
|
import { StandardSchemaV1, StandardSchemaInferOutput, AngularRegistry, RenderEvent, ViewRegistry, RenderViewEntry, RenderHost } from '@threadplane/render';
|
|
3
3
|
export { StandardSchemaInferInput, StandardSchemaInferOutput, StandardSchemaV1, ViewRegistry, toRenderRegistry, views, withViews, withoutViews } from '@threadplane/render';
|
|
4
|
-
import {
|
|
5
|
-
export {
|
|
4
|
+
import { A2uiComponent, A2uiSurface, A2uiMessage, A2uiActionMessage, A2uiErrorMessage, A2uiClientCapabilities } from '@threadplane/a2ui';
|
|
5
|
+
export { A2UI_BASIC_CATALOG_ID, A2UI_MIME_TYPE, A2UI_WIRE_VERSION, A2uiAction, A2uiActionMessage, A2uiCatalogComponent, A2uiCheck, A2uiChildren, A2uiClientCapabilities, A2uiClientDataModel, A2uiComponent, A2uiComponentBase, A2uiErrorMessage, A2uiEventAction, A2uiFunctionAction, A2uiFunctionCall, A2uiPathRef, A2uiSurface, A2uiTheme, DynamicBoolean, DynamicNumber, DynamicString, DynamicStringList, DynamicValue, isFunctionCall, isPathRef } from '@threadplane/a2ui';
|
|
6
6
|
import * as _angular_core from '@angular/core';
|
|
7
7
|
import { Type, InjectionToken, Signal, TemplateRef, ElementRef, WritableSignal, InputSignal, InputSignalWithTransform } from '@angular/core';
|
|
8
8
|
import * as _json_render_core from '@json-render/core';
|
|
@@ -1791,29 +1791,29 @@ declare function createParseTreeStore(parser: PartialJsonParser): ParseTreeStore
|
|
|
1791
1791
|
|
|
1792
1792
|
/** Chat-internal projection of an A2UI component, materialized by the
|
|
1793
1793
|
* surface store. Distinct from the wire-format `A2uiComponent` in
|
|
1794
|
-
* `@threadplane/a2ui`
|
|
1795
|
-
*
|
|
1796
|
-
* progressive renderer consumes. */
|
|
1794
|
+
* `@threadplane/a2ui` — this type adds the per-component readiness fields
|
|
1795
|
+
* the progressive renderer consumes. */
|
|
1797
1796
|
interface A2uiComponentView {
|
|
1798
1797
|
/** The component's id (same as the wire-format `A2uiComponent.id`). */
|
|
1799
1798
|
readonly id: string;
|
|
1800
|
-
/** The component type
|
|
1801
|
-
* against catalog `views` entries. */
|
|
1799
|
+
/** The component type — e.g. `'Button'`, `'TextField'` — matched
|
|
1800
|
+
* against catalog `views` entries. Mirrors the wire `component` string. */
|
|
1802
1801
|
readonly type: string;
|
|
1803
1802
|
/** Data model paths this component references via its `{$.path}` prop
|
|
1804
|
-
* expressions. Extracted once on `
|
|
1803
|
+
* expressions. Extracted once on `updateComponents` apply; immutable. */
|
|
1805
1804
|
readonly bindings: readonly string[];
|
|
1806
1805
|
/** Monotonic: `false` until every binding has resolved at least once
|
|
1807
1806
|
* in the accumulated data model, then `true` forever. Once `true`,
|
|
1808
|
-
* subsequent `
|
|
1807
|
+
* subsequent `updateDataModel` envelopes push new prop values but do
|
|
1809
1808
|
* NOT flip this back to `false`. */
|
|
1810
1809
|
readonly ready: boolean;
|
|
1811
|
-
/** Resolved property bag
|
|
1810
|
+
/** Resolved property bag (reserved protocol keys stripped). Meaningful
|
|
1811
|
+
* only when `ready === true`. */
|
|
1812
1812
|
readonly props: Readonly<Record<string, unknown>>;
|
|
1813
|
-
/** The raw wire-format component
|
|
1813
|
+
/** The raw wire-format component, retained so the slot directive
|
|
1814
1814
|
* can look up the catalog entry by type and resolve nested children
|
|
1815
1815
|
* on re-renders. */
|
|
1816
|
-
readonly def:
|
|
1816
|
+
readonly def: A2uiComponent;
|
|
1817
1817
|
}
|
|
1818
1818
|
|
|
1819
1819
|
/** Chat-side state for a surface — wraps the wire-format `A2uiSurface`
|
|
@@ -1843,10 +1843,15 @@ interface A2uiSurfaceStore {
|
|
|
1843
1843
|
}
|
|
1844
1844
|
/**
|
|
1845
1845
|
* Create an {@link A2uiSurfaceStore} — the per-conversation store that buffers
|
|
1846
|
-
* streamed A2UI
|
|
1846
|
+
* streamed A2UI v0.9 envelopes, tracks each surface's data model + lifecycle
|
|
1847
1847
|
* state, and exposes them as signals for rendering. One store backs a chat
|
|
1848
1848
|
* thread's A2UI surfaces.
|
|
1849
1849
|
*
|
|
1850
|
+
* A surface becomes visible once its `createSurface` envelope has arrived AND
|
|
1851
|
+
* a component with id `root` has been defined (the v0.9 progressive-rendering
|
|
1852
|
+
* rule). Everything received earlier is buffered; afterwards, components merge
|
|
1853
|
+
* incrementally by id and data-model updates apply immediately.
|
|
1854
|
+
*
|
|
1850
1855
|
* @returns A fresh, empty {@link A2uiSurfaceStore}.
|
|
1851
1856
|
* @example
|
|
1852
1857
|
* ```ts
|
|
@@ -2211,6 +2216,37 @@ declare class ChatTimelineSliderComponent {
|
|
|
2211
2216
|
}
|
|
2212
2217
|
|
|
2213
2218
|
type ChatSidenavMode = 'expanded' | 'collapsed' | 'drawer';
|
|
2219
|
+
/**
|
|
2220
|
+
* The conversation sidebar: thread list, projects, search, and the new-chat
|
|
2221
|
+
* action. Pair it with a runtime's thread store (e.g. `LangGraphThreadsAdapter`)
|
|
2222
|
+
* and a {@link ThreadActionAdapter} for the per-row rename/delete/archive menu.
|
|
2223
|
+
*
|
|
2224
|
+
* **This component renders the sidebar only — it is not a layout wrapper.** Its
|
|
2225
|
+
* `<ng-content>` slots are all named (`sidenavHeader`, `sidenavPrimary`,
|
|
2226
|
+
* `sidenavSections`, `sidenavFooterLeft`, `sidenavFooterRight`,
|
|
2227
|
+
* `sidenavAccount`) and target regions *inside* the sidebar. There is no default
|
|
2228
|
+
* slot, so a `<chat>` placed between the tags is silently dropped. Render the
|
|
2229
|
+
* chat as a sibling and lay the two out yourself:
|
|
2230
|
+
*
|
|
2231
|
+
* @example
|
|
2232
|
+
* ```html
|
|
2233
|
+
* <chat-sidenav
|
|
2234
|
+
* [threads]="threads.threads()"
|
|
2235
|
+
* [activeThreadId]="activeThread()"
|
|
2236
|
+
* [actions]="threadActions"
|
|
2237
|
+
* [agent]="agent"
|
|
2238
|
+
* (newChat)="activeThread.set(null)"
|
|
2239
|
+
* (threadSelected)="activeThread.set($event)"
|
|
2240
|
+
* />
|
|
2241
|
+
* <main class="chat-pane">
|
|
2242
|
+
* <chat [agent]="agent" />
|
|
2243
|
+
* </main>
|
|
2244
|
+
* ```
|
|
2245
|
+
* ```css
|
|
2246
|
+
* :host { display: flex; height: 100dvh; }
|
|
2247
|
+
* .chat-pane { flex: 1; min-width: 0; }
|
|
2248
|
+
* ```
|
|
2249
|
+
*/
|
|
2214
2250
|
declare class ChatSidenavComponent {
|
|
2215
2251
|
readonly mode: _angular_core.InputSignal<ChatSidenavMode>;
|
|
2216
2252
|
readonly open: _angular_core.InputSignal<boolean>;
|
|
@@ -2639,17 +2675,15 @@ interface PartialArgsBridge {
|
|
|
2639
2675
|
* tool_call.arguments JSON. Uses @cacheplane/partial-json to extract
|
|
2640
2676
|
* structurally-complete envelope objects from the growing args string.
|
|
2641
2677
|
*
|
|
2642
|
-
* Synthesis safety net:
|
|
2643
|
-
*
|
|
2644
|
-
*
|
|
2645
|
-
*
|
|
2646
|
-
*
|
|
2647
|
-
*
|
|
2648
|
-
* (PR #252) actually fires while dataModelUpdates flow in.
|
|
2678
|
+
* Synthesis safety net: v0.9 requires a `createSurface` envelope before
|
|
2679
|
+
* any `updateComponents`. If a complete `updateComponents` arrives for a
|
|
2680
|
+
* surface with no `createSurface` seen yet this turn, the bridge
|
|
2681
|
+
* synthesises one (basic catalog) so the surface can mount as soon as its
|
|
2682
|
+
* `root` component is defined — the store gates rendering on
|
|
2683
|
+
* createSurface + root, and fills the tree in progressively after that.
|
|
2649
2684
|
*
|
|
2650
|
-
* The store
|
|
2651
|
-
*
|
|
2652
|
-
* beginRendering (if any) is a no-op rather than a conflict.
|
|
2685
|
+
* The store treats a later "real" createSurface for the same surface as an
|
|
2686
|
+
* idempotent refresh, so LLMs that emit one out of order are harmless.
|
|
2653
2687
|
*/
|
|
2654
2688
|
declare function createPartialArgsBridge(store: A2uiSurfaceStore): PartialArgsBridge;
|
|
2655
2689
|
|
|
@@ -2678,27 +2712,40 @@ declare class A2uiSurfaceComponent {
|
|
|
2678
2712
|
readonly surfaceFallback: _angular_core.InputSignal<Type<unknown> | undefined>;
|
|
2679
2713
|
readonly events: _angular_core.OutputEmitterRef<RenderEvent>;
|
|
2680
2714
|
readonly action: _angular_core.OutputEmitterRef<A2uiActionMessage>;
|
|
2681
|
-
/**
|
|
2715
|
+
/** Emitted when a submit is blocked by failing validation checks —
|
|
2716
|
+
* the spec client → agent error message (code VALIDATION_FAILED). */
|
|
2717
|
+
readonly validationError: _angular_core.OutputEmitterRef<A2uiErrorMessage>;
|
|
2718
|
+
/** Surface-owned live state store: `$bindState` props read it and input
|
|
2719
|
+
* components write user edits into it, so event-time logic (checks,
|
|
2720
|
+
* action context) sees CURRENT values instead of the agent-seeded
|
|
2721
|
+
* snapshot. Seeded from spec.state with user edits preserved. Public so
|
|
2722
|
+
* hosts (and tests) can read the live values of a rendered surface. */
|
|
2723
|
+
readonly liveStore: _json_render_core.StateStore;
|
|
2724
|
+
/** Last value this component seeded per state path (see chat-generative-ui:
|
|
2725
|
+
* distinguishes "still our seed — safe to overwrite" from "user edited"). */
|
|
2726
|
+
private readonly seeded;
|
|
2727
|
+
constructor();
|
|
2728
|
+
/** Agent-set primary color from `createSurface.theme.primaryColor`.
|
|
2682
2729
|
* Returns null when unset so the host binding doesn't override the
|
|
2683
2730
|
* consumer's `:root`-level `--a2ui-primary` default. */
|
|
2684
2731
|
readonly primaryColor: _angular_core.Signal<string | null>;
|
|
2685
|
-
/** Agent
|
|
2686
|
-
*
|
|
2687
|
-
|
|
2688
|
-
|
|
2689
|
-
|
|
2690
|
-
|
|
2691
|
-
*
|
|
2692
|
-
* multiple top-level
|
|
2732
|
+
/** Agent identity chrome from `createSurface.theme`. When neither
|
|
2733
|
+
* `agentDisplayName` nor `iconUrl` is set, no header renders at all
|
|
2734
|
+
* (zero layout impact for themeless surfaces — the common case). */
|
|
2735
|
+
protected readonly agentDisplayName: _angular_core.Signal<string | null>;
|
|
2736
|
+
protected readonly iconUrl: _angular_core.Signal<string | null>;
|
|
2737
|
+
/** Roots from the surface state. The v0.9 wire contract reserves the
|
|
2738
|
+
* component id `root` as the single tree root; we keep the renderer
|
|
2739
|
+
* permissive in case future surfaces emit multiple top-level
|
|
2740
|
+
* components.
|
|
2693
2741
|
*
|
|
2694
2742
|
* Conservative: returns only the first key from componentViews
|
|
2695
|
-
* insertion order.
|
|
2696
|
-
* true root id; plumbing it through A2uiSurfaceState is a follow-up. */
|
|
2743
|
+
* insertion order. */
|
|
2697
2744
|
readonly rootIds: _angular_core.Signal<string[]>;
|
|
2698
2745
|
/** Convert the A2UI surface to a json-render Spec for rendering.
|
|
2699
2746
|
* Prefers `state().surface` (the progressively-built wire surface)
|
|
2700
2747
|
* over the legacy `surface` input. surfaceToSpec handles
|
|
2701
|
-
* children
|
|
2748
|
+
* children-id-list → spec.children translation + reserved-key
|
|
2702
2749
|
* filtering + path-ref → $bindState rewriting; the rendered tree
|
|
2703
2750
|
* then uses render-element's standard input-mapping
|
|
2704
2751
|
* (`childKeys: el.children`) so catalog components receive the
|
|
@@ -2716,14 +2763,19 @@ declare class A2uiSurfaceComponent {
|
|
|
2716
2763
|
'a2ui:localAction': (params: Record<string, unknown>) => unknown;
|
|
2717
2764
|
}>;
|
|
2718
2765
|
onRenderEvent(event: RenderEvent): void;
|
|
2766
|
+
/** Agent-seeded data model overlaid with the store's current state
|
|
2767
|
+
* (user edits + check messages). Shallow per-key merge is sufficient:
|
|
2768
|
+
* store snapshots hold whole top-level values written via pointers. */
|
|
2769
|
+
private mergedLiveModel;
|
|
2719
2770
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<A2uiSurfaceComponent, never>;
|
|
2720
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<A2uiSurfaceComponent, "a2ui-surface", never, { "surface": { "alias": "surface"; "required": false; "isSignal": true; }; "state": { "alias": "state"; "required": false; "isSignal": true; }; "catalog": { "alias": "catalog"; "required": true; "isSignal": true; }; "handlers": { "alias": "handlers"; "required": false; "isSignal": true; }; "surfaceFallback": { "alias": "surfaceFallback"; "required": false; "isSignal": true; }; }, { "events": "events"; "action": "action"; }, never, never, true, never>;
|
|
2771
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<A2uiSurfaceComponent, "a2ui-surface", never, { "surface": { "alias": "surface"; "required": false; "isSignal": true; }; "state": { "alias": "state"; "required": false; "isSignal": true; }; "catalog": { "alias": "catalog"; "required": true; "isSignal": true; }; "handlers": { "alias": "handlers"; "required": false; "isSignal": true; }; "surfaceFallback": { "alias": "surfaceFallback"; "required": false; "isSignal": true; }; }, { "events": "events"; "action": "action"; "validationError": "validationError"; }, never, never, true, never>;
|
|
2721
2772
|
}
|
|
2722
2773
|
|
|
2723
|
-
/** Builds
|
|
2724
|
-
* The action.context is
|
|
2725
|
-
*
|
|
2726
|
-
* child whose
|
|
2774
|
+
/** Builds a v0.9 A2uiActionMessage from handler params and the current
|
|
2775
|
+
* surface. The action.context is the resolved plain object the renderer
|
|
2776
|
+
* produced from the component's `action.event.context`. Sets action.label
|
|
2777
|
+
* when the source component is a Button with a Text child whose text is a
|
|
2778
|
+
* non-empty bare literal. */
|
|
2727
2779
|
declare function buildA2uiActionMessage(params: Record<string, unknown>, surface: A2uiSurface): A2uiActionMessage;
|
|
2728
2780
|
|
|
2729
2781
|
/**
|
|
@@ -2743,20 +2795,36 @@ declare function a2uiBasicCatalog(): ViewRegistry;
|
|
|
2743
2795
|
/** Writes a typed value to the render state store if the prop has a binding path. */
|
|
2744
2796
|
declare function emitBinding(host: RenderHost, bindings: Record<string, string> | undefined, prop: string, value: unknown): void;
|
|
2745
2797
|
|
|
2746
|
-
/**
|
|
2747
|
-
|
|
2798
|
+
/**
|
|
2799
|
+
* The A2UI client capabilities this renderer supports — the typed
|
|
2800
|
+
* `a2uiClientCapabilities` metadata a host attaches to agent requests so
|
|
2801
|
+
* the agent knows which component catalogs it may target
|
|
2802
|
+
* (catalog negotiation, A2UI v0.9 transport metadata).
|
|
2803
|
+
*
|
|
2804
|
+
* @example
|
|
2805
|
+
* ```ts
|
|
2806
|
+
* const metadata = { a2uiClientCapabilities: a2uiClientCapabilities() };
|
|
2807
|
+
* ```
|
|
2808
|
+
*/
|
|
2809
|
+
declare function a2uiClientCapabilities(): A2uiClientCapabilities;
|
|
2810
|
+
|
|
2811
|
+
/** v0.9 TextField variant values ('date' was removed — DateTimeInput owns dates). */
|
|
2812
|
+
type TextFieldVariant = 'longText' | 'number' | 'shortText' | 'obscured';
|
|
2748
2813
|
declare class A2uiTextFieldComponent {
|
|
2749
2814
|
private static _idCounter;
|
|
2750
2815
|
protected readonly _inputId: string;
|
|
2751
2816
|
private readonly host;
|
|
2752
2817
|
readonly label: _angular_core.InputSignal<string>;
|
|
2753
|
-
/**
|
|
2754
|
-
readonly
|
|
2755
|
-
/** Back-compat alias: value. surface-to-spec resolves DynamicString → plain string. */
|
|
2756
|
-
readonly value: _angular_core.Signal<string>;
|
|
2818
|
+
/** v0.9 prop: resolved string value. */
|
|
2819
|
+
readonly value: _angular_core.InputSignal<string>;
|
|
2757
2820
|
readonly placeholder: _angular_core.InputSignal<string>;
|
|
2758
|
-
|
|
2821
|
+
/** v0.9 prop: input variant (default 'shortText'). */
|
|
2822
|
+
readonly variant: _angular_core.InputSignal<TextFieldVariant>;
|
|
2823
|
+
/** Enforced by the surface's check gate as an implicit regex rule (plus the native pattern attribute). */
|
|
2759
2824
|
readonly validationRegexp: _angular_core.InputSignal<string>;
|
|
2825
|
+
/** Live validation message written by the surface's check gate
|
|
2826
|
+
* (bound to /_a2uiChecks/<id>); empty when valid. */
|
|
2827
|
+
readonly errorText: _angular_core.InputSignal<string>;
|
|
2760
2828
|
readonly _bindings: _angular_core.InputSignal<Record<string, string>>;
|
|
2761
2829
|
readonly bindings: _angular_core.InputSignal<Record<string, string>>;
|
|
2762
2830
|
readonly loading: _angular_core.InputSignal<boolean>;
|
|
@@ -2765,39 +2833,42 @@ declare class A2uiTextFieldComponent {
|
|
|
2765
2833
|
protected readonly htmlInputType: _angular_core.Signal<string>;
|
|
2766
2834
|
onInput(event: Event): void;
|
|
2767
2835
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<A2uiTextFieldComponent, never>;
|
|
2768
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<A2uiTextFieldComponent, "a2ui-text-field", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "
|
|
2836
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<A2uiTextFieldComponent, "a2ui-text-field", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "validationRegexp": { "alias": "validationRegexp"; "required": false; "isSignal": true; }; "errorText": { "alias": "errorText"; "required": false; "isSignal": true; }; "_bindings": { "alias": "_bindings"; "required": false; "isSignal": true; }; "bindings": { "alias": "bindings"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "childKeys": { "alias": "childKeys"; "required": false; "isSignal": true; }; "spec": { "alias": "spec"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
2769
2837
|
}
|
|
2770
2838
|
|
|
2771
2839
|
declare class A2uiCheckBoxComponent {
|
|
2772
2840
|
private readonly host;
|
|
2773
2841
|
readonly label: _angular_core.InputSignal<string>;
|
|
2774
|
-
/**
|
|
2775
|
-
readonly value: _angular_core.InputSignal<boolean
|
|
2776
|
-
/**
|
|
2777
|
-
|
|
2842
|
+
/** v0.9 prop: boolean checked state. */
|
|
2843
|
+
readonly value: _angular_core.InputSignal<boolean>;
|
|
2844
|
+
/** Live validation message written by the surface's check gate
|
|
2845
|
+
* (bound to /_a2uiChecks/<id>); empty when valid. */
|
|
2846
|
+
readonly errorText: _angular_core.InputSignal<string>;
|
|
2778
2847
|
readonly _bindings: _angular_core.InputSignal<Record<string, string>>;
|
|
2779
2848
|
readonly bindings: _angular_core.InputSignal<Record<string, string>>;
|
|
2780
2849
|
readonly loading: _angular_core.InputSignal<boolean>;
|
|
2781
2850
|
readonly childKeys: _angular_core.InputSignal<string[]>;
|
|
2782
2851
|
readonly spec: _angular_core.InputSignal<Spec | undefined>;
|
|
2783
|
-
protected readonly effectiveValue: _angular_core.Signal<boolean>;
|
|
2784
2852
|
onChange(event: Event): void;
|
|
2785
2853
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<A2uiCheckBoxComponent, never>;
|
|
2786
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<A2uiCheckBoxComponent, "a2ui-check-box", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "
|
|
2854
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<A2uiCheckBoxComponent, "a2ui-check-box", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "errorText": { "alias": "errorText"; "required": false; "isSignal": true; }; "_bindings": { "alias": "_bindings"; "required": false; "isSignal": true; }; "bindings": { "alias": "bindings"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "childKeys": { "alias": "childKeys"; "required": false; "isSignal": true; }; "spec": { "alias": "spec"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
2787
2855
|
}
|
|
2788
2856
|
|
|
2857
|
+
type ButtonVariant = 'default' | 'primary' | 'borderless';
|
|
2789
2858
|
declare class A2uiButtonComponent {
|
|
2790
|
-
/**
|
|
2859
|
+
/** v0.9: child Text component is rendered inside the button via childKeys. */
|
|
2791
2860
|
readonly childKeys: _angular_core.InputSignal<string[]>;
|
|
2792
2861
|
readonly spec: _angular_core.InputSignal<Spec>;
|
|
2793
|
-
|
|
2862
|
+
/** v0.9 prop: visual style (default 'default'). */
|
|
2863
|
+
readonly variant: _angular_core.InputSignal<ButtonVariant>;
|
|
2794
2864
|
readonly disabled: _angular_core.InputSignal<boolean>;
|
|
2795
2865
|
readonly emit: _angular_core.InputSignal<(event: string) => void>;
|
|
2796
2866
|
readonly bindings: _angular_core.InputSignal<Record<string, string>>;
|
|
2797
2867
|
readonly loading: _angular_core.InputSignal<boolean>;
|
|
2868
|
+
protected cssClass(): string;
|
|
2798
2869
|
handleClick(): void;
|
|
2799
2870
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<A2uiButtonComponent, never>;
|
|
2800
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<A2uiButtonComponent, "a2ui-button", never, { "childKeys": { "alias": "childKeys"; "required": false; "isSignal": true; }; "spec": { "alias": "spec"; "required": true; "isSignal": true; }; "
|
|
2871
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<A2uiButtonComponent, "a2ui-button", never, { "childKeys": { "alias": "childKeys"; "required": false; "isSignal": true; }; "spec": { "alias": "spec"; "required": true; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "emit": { "alias": "emit"; "required": false; "isSignal": true; }; "bindings": { "alias": "bindings"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
2801
2872
|
}
|
|
2802
2873
|
|
|
2803
2874
|
/** Resolved option shape — label and value are plain strings after surface-to-spec resolves them. */
|
|
@@ -2805,30 +2876,44 @@ interface ResolvedOption {
|
|
|
2805
2876
|
label: string;
|
|
2806
2877
|
value: string;
|
|
2807
2878
|
}
|
|
2808
|
-
declare class
|
|
2879
|
+
declare class A2uiChoicePickerComponent {
|
|
2880
|
+
private static _idCounter;
|
|
2881
|
+
/** Groups the radio inputs of this instance (mutuallyExclusive mode). */
|
|
2882
|
+
protected readonly _groupName: string;
|
|
2809
2883
|
private readonly host;
|
|
2810
2884
|
readonly label: _angular_core.InputSignal<string>;
|
|
2811
|
-
/**
|
|
2812
|
-
*
|
|
2813
|
-
*
|
|
2814
|
-
|
|
2815
|
-
readonly selections: _angular_core.InputSignal<string | string[] | undefined>;
|
|
2816
|
-
protected readonly selectionsArray: _angular_core.Signal<string[]>;
|
|
2885
|
+
/** v0.9 prop: current selection (string[]). Normalized in `valueArray`
|
|
2886
|
+
* because LLMs sometimes seed the data model with a scalar (e.g. `"5"`)
|
|
2887
|
+
* instead of an array (`["5"]`); we coerce so .includes() works either way. */
|
|
2888
|
+
readonly value: _angular_core.InputSignal<string | string[] | undefined>;
|
|
2817
2889
|
/** Resolved options with plain string labels (surface-to-spec resolves DynamicString). */
|
|
2818
2890
|
readonly options: _angular_core.InputSignal<ResolvedOption[]>;
|
|
2819
|
-
/**
|
|
2820
|
-
readonly
|
|
2891
|
+
/** v0.9 prop: 'mutuallyExclusive' (single-select, default) or 'multipleSelection'. */
|
|
2892
|
+
readonly variant: _angular_core.InputSignal<"mutuallyExclusive" | "multipleSelection">;
|
|
2893
|
+
/** v0.9 prop: render as 'checkbox' rows (default) or 'chips'. */
|
|
2894
|
+
readonly displayStyle: _angular_core.InputSignal<"checkbox" | "chips">;
|
|
2895
|
+
/** v0.9 prop: when true, show a client-side option filter input. */
|
|
2896
|
+
readonly filterable: _angular_core.InputSignal<boolean>;
|
|
2897
|
+
/** Live validation message written by the surface's check gate
|
|
2898
|
+
* (bound to /_a2uiChecks/<id>); empty when valid. */
|
|
2899
|
+
readonly errorText: _angular_core.InputSignal<string>;
|
|
2821
2900
|
readonly _bindings: _angular_core.InputSignal<Record<string, string>>;
|
|
2822
2901
|
readonly bindings: _angular_core.InputSignal<Record<string, string>>;
|
|
2823
2902
|
readonly loading: _angular_core.InputSignal<boolean>;
|
|
2824
2903
|
readonly childKeys: _angular_core.InputSignal<string[]>;
|
|
2825
2904
|
readonly spec: _angular_core.InputSignal<Spec | undefined>;
|
|
2905
|
+
protected readonly valueArray: _angular_core.Signal<string[]>;
|
|
2826
2906
|
protected readonly isSingleSelect: _angular_core.Signal<boolean>;
|
|
2907
|
+
/** Local, client-side option filter (only rendered when filterable). */
|
|
2908
|
+
protected readonly filterText: _angular_core.WritableSignal<string>;
|
|
2909
|
+
protected readonly visibleOptions: _angular_core.Signal<ResolvedOption[]>;
|
|
2827
2910
|
protected isSelected(value: string): boolean;
|
|
2828
|
-
|
|
2911
|
+
onFilterInput(event: Event): void;
|
|
2829
2912
|
onCheckChange(value: string, event: Event): void;
|
|
2830
|
-
|
|
2831
|
-
|
|
2913
|
+
onChipToggle(value: string): void;
|
|
2914
|
+
private toggled;
|
|
2915
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<A2uiChoicePickerComponent, never>;
|
|
2916
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<A2uiChoicePickerComponent, "a2ui-choice-picker", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "displayStyle": { "alias": "displayStyle"; "required": false; "isSignal": true; }; "filterable": { "alias": "filterable"; "required": false; "isSignal": true; }; "errorText": { "alias": "errorText"; "required": false; "isSignal": true; }; "_bindings": { "alias": "_bindings"; "required": false; "isSignal": true; }; "bindings": { "alias": "bindings"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "childKeys": { "alias": "childKeys"; "required": false; "isSignal": true; }; "spec": { "alias": "spec"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
2832
2917
|
}
|
|
2833
2918
|
|
|
2834
2919
|
declare class A2uiSliderComponent {
|
|
@@ -2836,13 +2921,15 @@ declare class A2uiSliderComponent {
|
|
|
2836
2921
|
protected readonly _inputId: string;
|
|
2837
2922
|
private readonly host;
|
|
2838
2923
|
readonly label: _angular_core.InputSignal<string>;
|
|
2839
|
-
/**
|
|
2924
|
+
/** v0.9 prop: value (resolved DynamicNumber). */
|
|
2840
2925
|
readonly value: _angular_core.InputSignal<number>;
|
|
2841
|
-
/**
|
|
2842
|
-
readonly
|
|
2843
|
-
/**
|
|
2844
|
-
readonly
|
|
2845
|
-
|
|
2926
|
+
/** v0.9 prop: lower bound (default 0). */
|
|
2927
|
+
readonly min: _angular_core.InputSignal<number>;
|
|
2928
|
+
/** v0.9 prop: upper bound. */
|
|
2929
|
+
readonly max: _angular_core.InputSignal<number>;
|
|
2930
|
+
/** Live validation message written by the surface's check gate
|
|
2931
|
+
* (bound to /_a2uiChecks/<id>); empty when valid. */
|
|
2932
|
+
readonly errorText: _angular_core.InputSignal<string>;
|
|
2846
2933
|
readonly _bindings: _angular_core.InputSignal<Record<string, string>>;
|
|
2847
2934
|
readonly bindings: _angular_core.InputSignal<Record<string, string>>;
|
|
2848
2935
|
readonly loading: _angular_core.InputSignal<boolean>;
|
|
@@ -2850,7 +2937,7 @@ declare class A2uiSliderComponent {
|
|
|
2850
2937
|
readonly spec: _angular_core.InputSignal<Spec | undefined>;
|
|
2851
2938
|
onInput(event: Event): void;
|
|
2852
2939
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<A2uiSliderComponent, never>;
|
|
2853
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<A2uiSliderComponent, "a2ui-slider", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "
|
|
2940
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<A2uiSliderComponent, "a2ui-slider", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "min": { "alias": "min"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "errorText": { "alias": "errorText"; "required": false; "isSignal": true; }; "_bindings": { "alias": "_bindings"; "required": false; "isSignal": true; }; "bindings": { "alias": "bindings"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "childKeys": { "alias": "childKeys"; "required": false; "isSignal": true; }; "spec": { "alias": "spec"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
2854
2941
|
}
|
|
2855
2942
|
|
|
2856
2943
|
declare class A2uiDateTimeInputComponent {
|
|
@@ -2858,12 +2945,19 @@ declare class A2uiDateTimeInputComponent {
|
|
|
2858
2945
|
protected readonly _inputId: string;
|
|
2859
2946
|
private readonly host;
|
|
2860
2947
|
readonly label: _angular_core.InputSignal<string>;
|
|
2861
|
-
/**
|
|
2948
|
+
/** v0.9 prop: ISO 8601 value (resolved DynamicString). Still renders when absent. */
|
|
2862
2949
|
readonly value: _angular_core.InputSignal<string>;
|
|
2863
|
-
/**
|
|
2950
|
+
/** v0.9 prop: enableDate — include date portion. */
|
|
2864
2951
|
readonly enableDate: _angular_core.InputSignal<boolean>;
|
|
2865
|
-
/**
|
|
2952
|
+
/** v0.9 prop: enableTime — include time portion. */
|
|
2866
2953
|
readonly enableTime: _angular_core.InputSignal<boolean>;
|
|
2954
|
+
/** v0.9 prop: ISO lower bound mapped to the native input's min. */
|
|
2955
|
+
readonly min: _angular_core.InputSignal<string | undefined>;
|
|
2956
|
+
/** v0.9 prop: ISO upper bound mapped to the native input's max. */
|
|
2957
|
+
readonly max: _angular_core.InputSignal<string | undefined>;
|
|
2958
|
+
/** Live validation message written by the surface's check gate
|
|
2959
|
+
* (bound to /_a2uiChecks/<id>); empty when valid. */
|
|
2960
|
+
readonly errorText: _angular_core.InputSignal<string>;
|
|
2867
2961
|
readonly _bindings: _angular_core.InputSignal<Record<string, string>>;
|
|
2868
2962
|
readonly bindings: _angular_core.InputSignal<Record<string, string>>;
|
|
2869
2963
|
readonly loading: _angular_core.InputSignal<boolean>;
|
|
@@ -2873,13 +2967,14 @@ declare class A2uiDateTimeInputComponent {
|
|
|
2873
2967
|
protected readonly htmlInputType: _angular_core.Signal<string>;
|
|
2874
2968
|
onChange(event: Event): void;
|
|
2875
2969
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<A2uiDateTimeInputComponent, never>;
|
|
2876
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<A2uiDateTimeInputComponent, "a2ui-date-time-input", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "enableDate": { "alias": "enableDate"; "required": false; "isSignal": true; }; "enableTime": { "alias": "enableTime"; "required": false; "isSignal": true; }; "_bindings": { "alias": "_bindings"; "required": false; "isSignal": true; }; "bindings": { "alias": "bindings"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "childKeys": { "alias": "childKeys"; "required": false; "isSignal": true; }; "spec": { "alias": "spec"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
2970
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<A2uiDateTimeInputComponent, "a2ui-date-time-input", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "enableDate": { "alias": "enableDate"; "required": false; "isSignal": true; }; "enableTime": { "alias": "enableTime"; "required": false; "isSignal": true; }; "min": { "alias": "min"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "errorText": { "alias": "errorText"; "required": false; "isSignal": true; }; "_bindings": { "alias": "_bindings"; "required": false; "isSignal": true; }; "bindings": { "alias": "bindings"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "childKeys": { "alias": "childKeys"; "required": false; "isSignal": true; }; "spec": { "alias": "spec"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
2877
2971
|
}
|
|
2878
2972
|
|
|
2879
|
-
type
|
|
2973
|
+
type TextVariant = 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'caption' | 'body';
|
|
2880
2974
|
declare class A2uiTextComponent {
|
|
2881
2975
|
readonly text: _angular_core.InputSignal<string>;
|
|
2882
|
-
|
|
2976
|
+
/** v0.9 prop: typography variant. */
|
|
2977
|
+
readonly variant: _angular_core.InputSignal<TextVariant>;
|
|
2883
2978
|
readonly bindings: _angular_core.InputSignal<Record<string, string>>;
|
|
2884
2979
|
readonly emit: _angular_core.InputSignal<(event: string) => void>;
|
|
2885
2980
|
readonly loading: _angular_core.InputSignal<boolean>;
|
|
@@ -2887,92 +2982,98 @@ declare class A2uiTextComponent {
|
|
|
2887
2982
|
readonly spec: _angular_core.InputSignal<Spec | undefined>;
|
|
2888
2983
|
protected cssClass(): string;
|
|
2889
2984
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<A2uiTextComponent, never>;
|
|
2890
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<A2uiTextComponent, "a2ui-text", never, { "text": { "alias": "text"; "required": false; "isSignal": true; }; "
|
|
2985
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<A2uiTextComponent, "a2ui-text", never, { "text": { "alias": "text"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "bindings": { "alias": "bindings"; "required": false; "isSignal": true; }; "emit": { "alias": "emit"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "childKeys": { "alias": "childKeys"; "required": false; "isSignal": true; }; "spec": { "alias": "spec"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
2891
2986
|
}
|
|
2892
2987
|
|
|
2893
2988
|
declare class A2uiIconComponent {
|
|
2894
|
-
/**
|
|
2895
|
-
readonly name: _angular_core.InputSignal<string |
|
|
2896
|
-
|
|
2897
|
-
|
|
2898
|
-
readonly size: _angular_core.InputSignal<number | null>;
|
|
2989
|
+
/** v0.9 prop: a Material Symbols name (string) or an inline `{ svgPath }`. */
|
|
2990
|
+
readonly name: _angular_core.InputSignal<string | {
|
|
2991
|
+
svgPath: string;
|
|
2992
|
+
} | undefined>;
|
|
2899
2993
|
readonly bindings: _angular_core.InputSignal<Record<string, string>>;
|
|
2900
2994
|
readonly emit: _angular_core.InputSignal<(event: string) => void>;
|
|
2901
2995
|
readonly loading: _angular_core.InputSignal<boolean>;
|
|
2902
2996
|
readonly childKeys: _angular_core.InputSignal<string[]>;
|
|
2903
2997
|
readonly spec: _angular_core.InputSignal<Spec | undefined>;
|
|
2904
|
-
|
|
2998
|
+
/** Inline SVG path when `name` is the `{ svgPath }` object form. */
|
|
2999
|
+
protected readonly svgPath: _angular_core.Signal<string | null>;
|
|
3000
|
+
/** The string ligature name when `name` is a string. */
|
|
3001
|
+
protected readonly ligatureName: _angular_core.Signal<string>;
|
|
2905
3002
|
/** The effective name as a Material Symbols ligature (camelCase → snake_case). */
|
|
2906
3003
|
protected readonly glyphName: _angular_core.Signal<string>;
|
|
2907
3004
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<A2uiIconComponent, never>;
|
|
2908
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<A2uiIconComponent, "a2ui-icon", never, { "name": { "alias": "name"; "required": false; "isSignal": true; }; "
|
|
3005
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<A2uiIconComponent, "a2ui-icon", never, { "name": { "alias": "name"; "required": false; "isSignal": true; }; "bindings": { "alias": "bindings"; "required": false; "isSignal": true; }; "emit": { "alias": "emit"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "childKeys": { "alias": "childKeys"; "required": false; "isSignal": true; }; "spec": { "alias": "spec"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
2909
3006
|
}
|
|
2910
3007
|
|
|
2911
|
-
/**
|
|
2912
|
-
type ImageFit = 'contain' | 'cover' | 'fill' | 'none' | '
|
|
2913
|
-
/**
|
|
2914
|
-
|
|
2915
|
-
* intents. */
|
|
2916
|
-
type ImageUsageHint = 'icon' | 'avatar' | 'smallFeature' | 'mediumFeature' | 'largeFeature' | 'header';
|
|
3008
|
+
/** v0.9 fit values; 'scaleDown' maps to CSS object-fit: scale-down. */
|
|
3009
|
+
type ImageFit = 'contain' | 'cover' | 'fill' | 'none' | 'scaleDown';
|
|
3010
|
+
/** v0.9 variant maps to a sizing preset class. */
|
|
3011
|
+
type ImageVariant = 'icon' | 'avatar' | 'smallFeature' | 'mediumFeature' | 'largeFeature' | 'header';
|
|
2917
3012
|
declare class A2uiImageComponent {
|
|
2918
3013
|
readonly url: _angular_core.InputSignal<string>;
|
|
2919
|
-
|
|
2920
|
-
readonly
|
|
2921
|
-
|
|
2922
|
-
|
|
2923
|
-
|
|
2924
|
-
|
|
2925
|
-
readonly usageHint: _angular_core.InputSignal<ImageUsageHint | undefined>;
|
|
3014
|
+
/** v0.9 prop: alt text / accessible description. */
|
|
3015
|
+
readonly description: _angular_core.InputSignal<string>;
|
|
3016
|
+
/** v0.9 prop: CSS object-fit equivalent ('scaleDown' → 'scale-down'). */
|
|
3017
|
+
readonly fit: _angular_core.InputSignal<ImageFit>;
|
|
3018
|
+
/** v0.9 prop: sizing preset. */
|
|
3019
|
+
readonly variant: _angular_core.InputSignal<ImageVariant>;
|
|
2926
3020
|
readonly bindings: _angular_core.InputSignal<Record<string, string>>;
|
|
2927
3021
|
readonly emit: _angular_core.InputSignal<(event: string) => void>;
|
|
2928
3022
|
readonly loading: _angular_core.InputSignal<boolean>;
|
|
2929
3023
|
readonly childKeys: _angular_core.InputSignal<string[]>;
|
|
2930
3024
|
readonly spec: _angular_core.InputSignal<Spec | undefined>;
|
|
2931
|
-
protected
|
|
2932
|
-
protected
|
|
2933
|
-
protected hintStyle(): {
|
|
2934
|
-
maxWidth: string;
|
|
2935
|
-
aspectRatio?: string;
|
|
2936
|
-
borderRadius?: string;
|
|
2937
|
-
} | null;
|
|
3025
|
+
protected readonly objectFit: _angular_core.Signal<string>;
|
|
3026
|
+
protected readonly cssClass: _angular_core.Signal<string>;
|
|
2938
3027
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<A2uiImageComponent, never>;
|
|
2939
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<A2uiImageComponent, "a2ui-image", never, { "url": { "alias": "url"; "required": false; "isSignal": true; }; "
|
|
3028
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<A2uiImageComponent, "a2ui-image", never, { "url": { "alias": "url"; "required": false; "isSignal": true; }; "description": { "alias": "description"; "required": false; "isSignal": true; }; "fit": { "alias": "fit"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "bindings": { "alias": "bindings"; "required": false; "isSignal": true; }; "emit": { "alias": "emit"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "childKeys": { "alias": "childKeys"; "required": false; "isSignal": true; }; "spec": { "alias": "spec"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
2940
3029
|
}
|
|
2941
3030
|
|
|
2942
|
-
type
|
|
3031
|
+
type ColumnAlign = 'start' | 'center' | 'end' | 'stretch';
|
|
3032
|
+
type ColumnJustify = 'start' | 'center' | 'end' | 'spaceAround' | 'spaceBetween' | 'spaceEvenly' | 'stretch';
|
|
2943
3033
|
declare class A2uiColumnComponent {
|
|
2944
3034
|
readonly childKeys: _angular_core.InputSignal<string[]>;
|
|
2945
3035
|
readonly spec: _angular_core.InputSignal<Spec>;
|
|
2946
|
-
|
|
2947
|
-
readonly
|
|
2948
|
-
|
|
3036
|
+
/** v0.9 prop: cross-axis alignment (default 'stretch'). */
|
|
3037
|
+
readonly align: _angular_core.InputSignal<ColumnAlign>;
|
|
3038
|
+
/** v0.9 prop: main-axis distribution (default 'start'). */
|
|
3039
|
+
readonly justify: _angular_core.InputSignal<ColumnJustify>;
|
|
3040
|
+
/** Not part of the v0.9 catalog — kept for json-render generative-ui
|
|
3041
|
+
* specs, which may set a numeric spacing unit (multiples of 4px) or a
|
|
3042
|
+
* named size. Unset falls back to the CSS default gap. */
|
|
3043
|
+
readonly gap: _angular_core.InputSignal<number | "small" | "medium" | "large" | undefined>;
|
|
2949
3044
|
readonly bindings: _angular_core.InputSignal<Record<string, string>>;
|
|
2950
3045
|
readonly emit: _angular_core.InputSignal<(event: string) => void>;
|
|
2951
3046
|
readonly loading: _angular_core.InputSignal<boolean>;
|
|
2952
3047
|
protected readonly alignItems: _angular_core.Signal<string>;
|
|
2953
|
-
|
|
2954
|
-
protected readonly
|
|
3048
|
+
protected readonly justifyContent: _angular_core.Signal<string>;
|
|
3049
|
+
protected readonly cssClass: _angular_core.Signal<"a2ui-col a2ui-col--justify-stretch" | "a2ui-col">;
|
|
3050
|
+
protected readonly gapPx: _angular_core.Signal<number | null>;
|
|
2955
3051
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<A2uiColumnComponent, never>;
|
|
2956
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<A2uiColumnComponent, "a2ui-column", never, { "childKeys": { "alias": "childKeys"; "required": false; "isSignal": true; }; "spec": { "alias": "spec"; "required": true; "isSignal": true; }; "
|
|
3052
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<A2uiColumnComponent, "a2ui-column", never, { "childKeys": { "alias": "childKeys"; "required": false; "isSignal": true; }; "spec": { "alias": "spec"; "required": true; "isSignal": true; }; "align": { "alias": "align"; "required": false; "isSignal": true; }; "justify": { "alias": "justify"; "required": false; "isSignal": true; }; "gap": { "alias": "gap"; "required": false; "isSignal": true; }; "bindings": { "alias": "bindings"; "required": false; "isSignal": true; }; "emit": { "alias": "emit"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
2957
3053
|
}
|
|
2958
3054
|
|
|
2959
|
-
type
|
|
2960
|
-
type
|
|
3055
|
+
type RowAlign = 'start' | 'center' | 'end' | 'stretch';
|
|
3056
|
+
type RowJustify = 'start' | 'center' | 'end' | 'spaceAround' | 'spaceBetween' | 'spaceEvenly' | 'stretch';
|
|
2961
3057
|
declare class A2uiRowComponent {
|
|
2962
3058
|
readonly childKeys: _angular_core.InputSignal<string[]>;
|
|
2963
3059
|
readonly spec: _angular_core.InputSignal<Spec>;
|
|
2964
|
-
|
|
2965
|
-
readonly
|
|
2966
|
-
|
|
3060
|
+
/** v0.9 prop: cross-axis alignment (default 'stretch'). */
|
|
3061
|
+
readonly align: _angular_core.InputSignal<RowAlign>;
|
|
3062
|
+
/** v0.9 prop: main-axis distribution (default 'start'). */
|
|
3063
|
+
readonly justify: _angular_core.InputSignal<RowJustify>;
|
|
3064
|
+
/** Not part of the v0.9 catalog — kept for json-render generative-ui
|
|
3065
|
+
* specs, which may set a numeric spacing unit (multiples of 4px) or a
|
|
3066
|
+
* named size. Unset falls back to the CSS default gap. */
|
|
3067
|
+
readonly gap: _angular_core.InputSignal<number | "small" | "medium" | "large" | undefined>;
|
|
2967
3068
|
readonly bindings: _angular_core.InputSignal<Record<string, string>>;
|
|
2968
3069
|
readonly emit: _angular_core.InputSignal<(event: string) => void>;
|
|
2969
3070
|
readonly loading: _angular_core.InputSignal<boolean>;
|
|
2970
3071
|
protected readonly alignItems: _angular_core.Signal<string>;
|
|
2971
3072
|
protected readonly justifyContent: _angular_core.Signal<string>;
|
|
2972
|
-
|
|
2973
|
-
protected readonly gapPx: _angular_core.Signal<number>;
|
|
3073
|
+
protected readonly cssClass: _angular_core.Signal<"a2ui-row" | "a2ui-row a2ui-row--justify-stretch">;
|
|
3074
|
+
protected readonly gapPx: _angular_core.Signal<number | null>;
|
|
2974
3075
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<A2uiRowComponent, never>;
|
|
2975
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<A2uiRowComponent, "a2ui-row", never, { "childKeys": { "alias": "childKeys"; "required": false; "isSignal": true; }; "spec": { "alias": "spec"; "required": true; "isSignal": true; }; "
|
|
3076
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<A2uiRowComponent, "a2ui-row", never, { "childKeys": { "alias": "childKeys"; "required": false; "isSignal": true; }; "spec": { "alias": "spec"; "required": true; "isSignal": true; }; "align": { "alias": "align"; "required": false; "isSignal": true; }; "justify": { "alias": "justify"; "required": false; "isSignal": true; }; "gap": { "alias": "gap"; "required": false; "isSignal": true; }; "bindings": { "alias": "bindings"; "required": false; "isSignal": true; }; "emit": { "alias": "emit"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
2976
3077
|
}
|
|
2977
3078
|
|
|
2978
3079
|
declare class A2uiCardComponent {
|
|
@@ -2987,11 +3088,8 @@ declare class A2uiCardComponent {
|
|
|
2987
3088
|
}
|
|
2988
3089
|
|
|
2989
3090
|
declare class A2uiDividerComponent {
|
|
2990
|
-
/**
|
|
2991
|
-
readonly axis: _angular_core.InputSignal<"horizontal" | "vertical"
|
|
2992
|
-
/** Older alias retained for json-render usage and back-compat. */
|
|
2993
|
-
readonly direction: _angular_core.InputSignal<"horizontal" | "vertical">;
|
|
2994
|
-
/** Effective axis — `axis` wins if provided, otherwise fall back to `direction`. */
|
|
3091
|
+
/** v0.9 prop: divider axis (default 'horizontal'). */
|
|
3092
|
+
readonly axis: _angular_core.InputSignal<"horizontal" | "vertical">;
|
|
2995
3093
|
protected readonly orientation: _angular_core.Signal<"horizontal" | "vertical">;
|
|
2996
3094
|
readonly bindings: _angular_core.InputSignal<Record<string, string>>;
|
|
2997
3095
|
readonly emit: _angular_core.InputSignal<(event: string) => void>;
|
|
@@ -2999,33 +3097,31 @@ declare class A2uiDividerComponent {
|
|
|
2999
3097
|
readonly childKeys: _angular_core.InputSignal<string[]>;
|
|
3000
3098
|
readonly spec: _angular_core.InputSignal<Spec | undefined>;
|
|
3001
3099
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<A2uiDividerComponent, never>;
|
|
3002
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<A2uiDividerComponent, "a2ui-divider", never, { "axis": { "alias": "axis"; "required": false; "isSignal": true; }; "
|
|
3100
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<A2uiDividerComponent, "a2ui-divider", never, { "axis": { "alias": "axis"; "required": false; "isSignal": true; }; "bindings": { "alias": "bindings"; "required": false; "isSignal": true; }; "emit": { "alias": "emit"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "childKeys": { "alias": "childKeys"; "required": false; "isSignal": true; }; "spec": { "alias": "spec"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
3003
3101
|
}
|
|
3004
3102
|
|
|
3005
3103
|
declare class A2uiListComponent {
|
|
3006
3104
|
readonly childKeys: _angular_core.InputSignal<string[]>;
|
|
3007
3105
|
readonly spec: _angular_core.InputSignal<Spec>;
|
|
3008
3106
|
readonly direction: _angular_core.InputSignal<"horizontal" | "vertical">;
|
|
3009
|
-
/**
|
|
3010
|
-
readonly
|
|
3107
|
+
/** v0.9 prop: cross-axis alignment (default 'stretch'). */
|
|
3108
|
+
readonly align: _angular_core.InputSignal<"center" | "start" | "end" | "stretch">;
|
|
3011
3109
|
readonly bindings: _angular_core.InputSignal<Record<string, string>>;
|
|
3012
3110
|
readonly emit: _angular_core.InputSignal<(event: string) => void>;
|
|
3013
3111
|
readonly loading: _angular_core.InputSignal<boolean>;
|
|
3014
3112
|
protected readonly listClass: _angular_core.Signal<"a2ui-list--horizontal" | "a2ui-list--vertical">;
|
|
3015
|
-
protected readonly alignmentCss: _angular_core.Signal<string
|
|
3113
|
+
protected readonly alignmentCss: _angular_core.Signal<string>;
|
|
3016
3114
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<A2uiListComponent, never>;
|
|
3017
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<A2uiListComponent, "a2ui-list", never, { "childKeys": { "alias": "childKeys"; "required": false; "isSignal": true; }; "spec": { "alias": "spec"; "required": true; "isSignal": true; }; "direction": { "alias": "direction"; "required": false; "isSignal": true; }; "
|
|
3115
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<A2uiListComponent, "a2ui-list", never, { "childKeys": { "alias": "childKeys"; "required": false; "isSignal": true; }; "spec": { "alias": "spec"; "required": true; "isSignal": true; }; "direction": { "alias": "direction"; "required": false; "isSignal": true; }; "align": { "alias": "align"; "required": false; "isSignal": true; }; "bindings": { "alias": "bindings"; "required": false; "isSignal": true; }; "emit": { "alias": "emit"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
3018
3116
|
}
|
|
3019
3117
|
|
|
3020
3118
|
declare class A2uiModalComponent {
|
|
3021
3119
|
/**
|
|
3022
|
-
*
|
|
3023
|
-
*
|
|
3120
|
+
* v0.9: childKeys[0] = trigger (inline entry point),
|
|
3121
|
+
* childKeys[1] = content (modal body).
|
|
3024
3122
|
*/
|
|
3025
3123
|
readonly childKeys: _angular_core.InputSignal<string[]>;
|
|
3026
3124
|
readonly spec: _angular_core.InputSignal<Spec>;
|
|
3027
|
-
/** Resolved title string (from optional title DynamicString). */
|
|
3028
|
-
readonly title: _angular_core.InputSignal<string>;
|
|
3029
3125
|
readonly bindings: _angular_core.InputSignal<Record<string, string>>;
|
|
3030
3126
|
readonly emit: _angular_core.InputSignal<(event: string) => void>;
|
|
3031
3127
|
readonly loading: _angular_core.InputSignal<boolean>;
|
|
@@ -3033,13 +3129,13 @@ declare class A2uiModalComponent {
|
|
|
3033
3129
|
protected readonly entryPointKey: _angular_core.Signal<string>;
|
|
3034
3130
|
protected readonly contentKey: _angular_core.Signal<string>;
|
|
3035
3131
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<A2uiModalComponent, never>;
|
|
3036
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<A2uiModalComponent, "a2ui-modal", never, { "childKeys": { "alias": "childKeys"; "required": false; "isSignal": true; }; "spec": { "alias": "spec"; "required": true; "isSignal": true; }; "
|
|
3132
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<A2uiModalComponent, "a2ui-modal", never, { "childKeys": { "alias": "childKeys"; "required": false; "isSignal": true; }; "spec": { "alias": "spec"; "required": true; "isSignal": true; }; "bindings": { "alias": "bindings"; "required": false; "isSignal": true; }; "emit": { "alias": "emit"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
3037
3133
|
}
|
|
3038
3134
|
|
|
3039
3135
|
declare class A2uiTabsComponent {
|
|
3040
|
-
/** Resolved tab titles from
|
|
3136
|
+
/** Resolved tab titles from tabs[*].title — produced by surface-to-spec. */
|
|
3041
3137
|
readonly tabTitles: _angular_core.InputSignal<string[]>;
|
|
3042
|
-
/**
|
|
3138
|
+
/** v0.9: each child key corresponds to a tab's child (childKeys[i] ↔ tabTitles[i]). */
|
|
3043
3139
|
readonly childKeys: _angular_core.InputSignal<string[]>;
|
|
3044
3140
|
readonly spec: _angular_core.InputSignal<Spec>;
|
|
3045
3141
|
readonly bindings: _angular_core.InputSignal<Record<string, string>>;
|
|
@@ -3055,32 +3151,26 @@ declare class A2uiTabsComponent {
|
|
|
3055
3151
|
|
|
3056
3152
|
declare class A2uiAudioPlayerComponent {
|
|
3057
3153
|
readonly url: _angular_core.InputSignal<string>;
|
|
3058
|
-
/**
|
|
3154
|
+
/** v0.9 prop: short description / title rendered above the player. */
|
|
3059
3155
|
readonly description: _angular_core.InputSignal<string>;
|
|
3060
|
-
/** v1 prop name: autoPlay (camelCase). */
|
|
3061
|
-
readonly autoPlay: _angular_core.InputSignal<boolean>;
|
|
3062
|
-
readonly controls: _angular_core.InputSignal<boolean>;
|
|
3063
3156
|
readonly bindings: _angular_core.InputSignal<Record<string, string>>;
|
|
3064
3157
|
readonly emit: _angular_core.InputSignal<(event: string) => void>;
|
|
3065
3158
|
readonly loading: _angular_core.InputSignal<boolean>;
|
|
3066
3159
|
readonly childKeys: _angular_core.InputSignal<string[]>;
|
|
3067
3160
|
readonly spec: _angular_core.InputSignal<Spec | undefined>;
|
|
3068
3161
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<A2uiAudioPlayerComponent, never>;
|
|
3069
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<A2uiAudioPlayerComponent, "a2ui-audio-player", never, { "url": { "alias": "url"; "required": false; "isSignal": true; }; "description": { "alias": "description"; "required": false; "isSignal": true; }; "
|
|
3162
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<A2uiAudioPlayerComponent, "a2ui-audio-player", never, { "url": { "alias": "url"; "required": false; "isSignal": true; }; "description": { "alias": "description"; "required": false; "isSignal": true; }; "bindings": { "alias": "bindings"; "required": false; "isSignal": true; }; "emit": { "alias": "emit"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "childKeys": { "alias": "childKeys"; "required": false; "isSignal": true; }; "spec": { "alias": "spec"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
3070
3163
|
}
|
|
3071
3164
|
|
|
3072
3165
|
declare class A2uiVideoComponent {
|
|
3073
3166
|
readonly url: _angular_core.InputSignal<string>;
|
|
3074
|
-
/** v1 prop name: autoPlay (camelCase). */
|
|
3075
|
-
readonly autoPlay: _angular_core.InputSignal<boolean>;
|
|
3076
|
-
readonly controls: _angular_core.InputSignal<boolean>;
|
|
3077
3167
|
readonly bindings: _angular_core.InputSignal<Record<string, string>>;
|
|
3078
3168
|
readonly emit: _angular_core.InputSignal<(event: string) => void>;
|
|
3079
3169
|
readonly loading: _angular_core.InputSignal<boolean>;
|
|
3080
3170
|
readonly childKeys: _angular_core.InputSignal<string[]>;
|
|
3081
3171
|
readonly spec: _angular_core.InputSignal<Spec | undefined>;
|
|
3082
3172
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<A2uiVideoComponent, never>;
|
|
3083
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<A2uiVideoComponent, "a2ui-video", never, { "url": { "alias": "url"; "required": false; "isSignal": true; }; "
|
|
3173
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<A2uiVideoComponent, "a2ui-video", never, { "url": { "alias": "url"; "required": false; "isSignal": true; }; "bindings": { "alias": "bindings"; "required": false; "isSignal": true; }; "emit": { "alias": "emit"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "childKeys": { "alias": "childKeys"; "required": false; "isSignal": true; }; "spec": { "alias": "spec"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
3084
3174
|
}
|
|
3085
3175
|
|
|
3086
3176
|
/**
|
|
@@ -3370,5 +3460,5 @@ declare function mockAgent(opts?: MockAgentOptions): MockAgent;
|
|
|
3370
3460
|
/** Inferred argument type for a schema (alias of StandardSchemaInferOutput). */
|
|
3371
3461
|
type ToolArgs<S extends StandardSchemaV1> = StandardSchemaInferOutput<S>;
|
|
3372
3462
|
|
|
3373
|
-
export { A2uiAudioPlayerComponent, A2uiButtonComponent, A2uiCardComponent, A2uiCheckBoxComponent, A2uiColumnComponent, A2uiDateTimeInputComponent, A2uiDividerComponent, A2uiIconComponent, A2uiImageComponent, A2uiListComponent, A2uiModalComponent,
|
|
3463
|
+
export { A2uiAudioPlayerComponent, A2uiButtonComponent, A2uiCardComponent, A2uiCheckBoxComponent, A2uiChoicePickerComponent, A2uiColumnComponent, A2uiDateTimeInputComponent, A2uiDividerComponent, A2uiIconComponent, A2uiImageComponent, A2uiListComponent, A2uiModalComponent, A2uiRowComponent, A2uiSliderComponent, A2uiSurfaceComponent, A2uiTabsComponent, A2uiTextComponent, A2uiTextFieldComponent, A2uiVideoComponent, AGENT_ERROR_MESSAGES, AgentError, CHAT_CONFIG, CHAT_LIFECYCLE, ChatApprovalCardComponent, ChatCitationCardTemplateDirective, ChatCitationPreviewComponent, ChatCitationsCardComponent, ChatCitationsComponent, ChatComponent, ChatConfirmDialogComponent, ChatConnectedOverlayDirective, ChatErrorComponent, ChatGenerativeUiComponent, ChatGenuiSkeletonComponent, ChatHistorySearchPaletteComponent, ChatInputComponent, ChatInterruptComponent, ChatInterruptPanelComponent, ChatLauncherButtonComponent, ChatMessageActionsComponent, ChatMessageComponent, ChatMessageListComponent, ChatOverflowMenuComponent, ChatOverlayOriginDirective, ChatPopupComponent, ChatProjectListComponent, ChatReasoningComponent, ChatScrollBubbleComponent, ChatSelectComponent, ChatSidebarComponent, ChatSidenavComponent, ChatSidenavScrimComponent, ChatStreamingMdComponent, ChatSubagentCardComponent, ChatSubagentsComponent, ChatSuggestionsComponent, ChatThreadListComponent, ChatTimelineComponent, ChatTimelineSliderComponent, ChatToolCallCardComponent, ChatToolCallTemplateDirective, ChatToolCallsComponent, ChatToolViewsComponent, ChatTraceComponent, ChatTypingIndicatorComponent, ChatWelcomeComponent, ChatWelcomeSuggestionComponent, ChatWindowComponent, CitationsResolverService, IS_HEADER_ROW, MARKDOWN_VIEW_REGISTRY, MarkdownAutolinkComponent, MarkdownBlockquoteComponent, MarkdownChildrenComponent, MarkdownCitationReferenceComponent, MarkdownCodeBlockComponent, MarkdownDocumentComponent, MarkdownEmphasisComponent, MarkdownHardBreakComponent, MarkdownHeadingComponent, MarkdownHtmlComponent, MarkdownImageComponent, MarkdownInlineCodeComponent, MarkdownLinkComponent, MarkdownListComponent, MarkdownListItemComponent, MarkdownMathComponent, MarkdownParagraphComponent, MarkdownSoftBreakComponent, MarkdownStrikethroughComponent, MarkdownStrongComponent, MarkdownTableCellComponent, MarkdownTableComponent, MarkdownTableRowComponent, MarkdownTextComponent, MarkdownThematicBreakComponent, MessageTemplateDirective, STREAMING_MARKDOWN_CONTRACT_VIOLATION_POLICY, a2uiBasicCatalog, a2uiClientCapabilities, action, ask, buildA2uiActionMessage, cacheplaneMarkdownViews, cancelledClientToolResult, citationSourceVisual, citationTypeLabel, citationTypeMeta, clientToolGuardFailureResult, completeDelivery, createA2uiSurfaceStore, createAgentRef, createContentClassifier, createParseTreeStore, createPartialArgsBridge, defaultInterruptedClientToolResult, deriveDomain, deriveJsonSchema, deriveMonogram, deriveSourceType, emitBinding, executeFunctionTool, extractErrorMessage, formatDuration, formatPublished, getInterrupt, getMessageType, injectThreadRouting, isAbortError, isAssistantMessage, isSystemMessage, isToolMessage, isTyping, isUserMessage, markdownDocument, messageContent, mockAgent, monogramColor, monogramHue, normalizeEnvelopeArgs, normalizeViewEntry, provideChat, renderMarkdown, selectPendingClientToolCalls, shouldClaimBeforeExecute, startClientToolExecutor, staticDelivery, statusColor, streamingDelivery, submitMessage, toAgentError, toClientToolSpecs, tools, validateArgs, view };
|
|
3374
3464
|
export type { A2uiComponentView, A2uiSurfaceState, A2uiSurfaceStore, A2uiViewEntry, A2uiViews, Agent, AgentCheckpoint, AgentCustomEvent, AgentErrorKind, AgentEvent, AgentInterrupt, AgentRef, AgentRuntimeTelemetryEvent, AgentRuntimeTelemetryPayload, AgentRuntimeTelemetryProperties, AgentRuntimeTelemetrySink, AgentStateUpdateEvent, AgentStatus, AgentSubmitInput, AgentSubmitOptions, AgentWithHistory, AnyFunctionToolDef, AskToolDef, ChatApprovalAction, ChatConfig, ChatLifecycle, ChatMessageRole, ChatRenderEvent, ChatScrollBubbleMode, ChatSelectOption, ChatSidenavMode, ChatToolCallTemplateContext, Citation, CitationImageVisual, CitationMonogramVisual, CitationSourceVisual, CitationTypeIcon, CitationTypeIconVisual, CitationTypeMeta, ClientToolContinuationLimitEvent, ClientToolContinuationOptions, ClientToolContinuationPolicy, ClientToolDef, ClientToolExecutionGuard, ClientToolExecutionKey, ClientToolExecutionOptions, ClientToolExecutionRecord, ClientToolExecutionStore, ClientToolExecutorOptions, ClientToolLifecycle, ClientToolLifecyclePhase, ClientToolRegistry, ClientToolResult, ClientToolSpec, ClientToolViewProps, ClientToolsCapability, ClientToolsCoordinator, CompleteOutcome, ConnectedPosition, ContentBlock, ContentClassifier, ContentType, ElementAccumulationState, FunctionToolDef, FunctionToolHandlerContext, InterruptAction, Message, MessageDelivery, MessageTemplateType, MockAgent, MockAgentOptions, OverflowMenuItem, OverlayPositionResult, ParseTreeStore, PartialArgsBridge, Project, ProjectActionAdapter, ResolvedCitation, Role, SelectPendingClientToolCallsInput, StreamingMarkdownContractViolationPolicy, StreamingMarkdownDocument, Subagent, SubagentStatus, Thread, ThreadActionAdapter, ThreadMatch, ThreadRoutingConfig, ToolArgs, ToolCall, ToolCallInfo, ToolCallStatus, TraceState, ViewProps, ViewToolDef };
|