{ $$typeof: typeof JSX_ELEMENT; children: unknown[]; props: P; type: CardComponentFunction; } /** Union of all element types that can be produced by chat components */ type ChatElement = CardJSXElement | CardElement | TextElement | ButtonElement | LinkButtonElement | LinkElement | ImageElement | DividerElement | ActionsElement | SectionElement | FieldsElement | FieldElement | ModalElement | TextInputElement | SelectElement | ExternalSelectElement | SelectOptionElement | RadioSelectElement | TableElement | ChartElement; interface CardComponent { (options?: CardOptions): CardElement; (props: CardProps): ChatElement; } interface TextComponent { (content: string, options?: { style?: TextStyle; }): TextElement; (props: TextProps): ChatElement; } interface ButtonComponent { (options: ButtonOptions): ButtonElement; (props: ButtonProps): ChatElement; } interface LinkButtonComponent { (options: LinkButtonOptions): LinkButtonElement; (props: LinkButtonProps): ChatElement; } interface CardLinkComponent { (options: { url: string; label: string; }): LinkElement; (props: CardLinkProps): ChatElement; } interface ImageComponent { (options: { url: string; alt?: string; }): ImageElement; (props: ImageProps): ChatElement; } interface FieldComponent { (options: { label: string; value: string; }): FieldElement; (props: FieldProps): ChatElement; } interface DividerComponent { (): DividerElement; (props: DividerProps): ChatElement; } interface SectionComponent { (children: CardChild[]): SectionElement; (props: ContainerProps): ChatElement; } interface ActionsComponent { (children: (ButtonElement | LinkButtonElement | SelectElement | RadioSelectElement)[]): ActionsElement; (props: ContainerProps): ChatElement; } interface FieldsComponent { (children: FieldElement[]): FieldsElement; (props: ContainerProps): ChatElement; } interface ModalComponent { (options: ModalOptions): ModalElement; (props: ModalProps): ChatElement; } interface TextInputComponent { (options: TextInputOptions): TextInputElement; (props: TextInputProps): ChatElement; } interface SelectComponent { (options: SelectOptions): SelectElement; (props: SelectProps): ChatElement; } interface ExternalSelectComponent { (options: ExternalSelectOptions): ExternalSelectElement; (props: ExternalSelectProps): ChatElement; } interface SelectOptionComponent { (options: { label: string; value: string; description?: string; }): SelectOptionElement; (props: SelectOptionProps): ChatElement; } interface RadioSelectComponent { (options: RadioSelectOptions): RadioSelectElement; (props: SelectProps): ChatElement; } interface TableComponent { (options: { caption?: string; headers: string[]; pageSize?: number; rows: string[][]; }): TableElement; (props: TableProps): ChatElement; } interface ChartComponent { (options: { chart: ChartDefinition; title: string; }): ChartElement; (props: ChartProps): ChatElement; } /** * Type guard to check if props match CardLinkProps */ declare function isCardLinkProps(props: CardJSXProps): props is CardLinkProps; /** * JSX factory function (used by the JSX transform). * Creates a lazy JSX element that will be resolved when needed. */ declare function jsx
(type: CardComponentFunction, props: P & { children?: unknown; }, _key?: string): CardJSXElement
; /** * JSX factory for elements with multiple children. */ declare function jsxs
(type: CardComponentFunction, props: P & { children?: unknown; }, _key?: string): CardJSXElement
; /** * Development JSX factory (same as jsx, but called in dev mode). */ declare const jsxDEV: typeof jsx; /** * Fragment support (flattens children). */ declare function Fragment(props: { children?: unknown; }): CardChild[]; /** * Convert a JSX element tree to a CardElement. * Call this on the root JSX element to get a usable CardElement. */ declare function toCardElement(jsxElement: unknown): CardElement | null; declare function toModalElement(jsxElement: unknown): ModalElement | null; /** * Check if a value is a JSX element (from our runtime or React). */ declare function isJSX(value: unknown): boolean; declare namespace JSX { type Element = ChatElement; type IntrinsicElements = {}; interface IntrinsicAttributes { key?: string | number; } interface ElementChildrenAttribute { children: {}; } } export { type FieldProps as $, type ActionsComponent as A, type ButtonComponent as B, type CardElement as C, type DividerComponent as D, type ExternalSelectComponent as E, type FieldComponent as F, type CardOptions as G, type CardProps as H, type ImageComponent as I, type ChartDataPoint as J, type ChartDefinition as K, type LinkButtonComponent as L, type ModalComponent as M, type ChartOptions as N, type ChartSegment as O, type ChartSeries as P, type ChatElement as Q, type RadioSelectComponent as R, type SectionComponent as S, type TextComponent as T, type ContainerProps as U, type DividerElement as V, type DividerProps as W, type ExternalSelectElement as X, type ExternalSelectOptions as Y, type ExternalSelectProps as Z, type FieldElement as _, type CardChild as a, type FieldsElement as a0, type ImageElement as a1, type ImageProps as a2, type LinkButtonElement as a3, type LinkButtonOptions as a4, type LinkButtonProps as a5, type LinkElement as a6, type ModalChild as a7, type ModalElement as a8, type ModalOptions as a9, jsx as aA, jsxDEV as aB, jsxs as aC, type ModalProps as aa, type PieChartDefinition as ab, type RadioSelectElement as ac, type RadioSelectOptions as ad, type SectionElement as ae, type SelectElement as af, type SelectOptionElement as ag, type SelectOptionProps as ah, type SelectOptions as ai, type SelectProps as aj, type SeriesChartDefinition as ak, type TableAlignment as al, type TableElement as am, type TableOptions as an, type TextElement as ao, type TextInputElement as ap, type TextInputOptions as aq, type TextInputProps as ar, type TextProps as as, type TextStyle as at, type ChartProps as au, Fragment as av, JSX as aw, type TableComponent as ax, type TableProps as ay, isCardLinkProps as az, type ChartElement as b, type CardComponent as c, type CardLinkComponent as d, type ChartComponent as e, type FieldsComponent as f, type SelectComponent as g, type SelectOptionComponent as h, Table as i, type TextInputComponent as j, cardChildToFallbackText as k, fromReactElement as l, fromReactModalElement as m, isCardElement as n, isJSX as o, isModalElement as p, toModalElement as q, type ActionsElement as r, type ButtonElement as s, toCardElement as t, type ButtonOptions as u, type ButtonProps as v, type ButtonStyle as w, type CardJSXElement as x, type CardJSXProps as y, type CardLinkProps as z };