@flytedan/flytebot-design-system 0.31.0 → 0.33.0

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/dist/index.d.cts CHANGED
@@ -1126,6 +1126,13 @@ interface FilterFieldMultiSelect extends FilterFieldBase {
1126
1126
  * express an "any"/"is"-only dimension exactly rather than showing a switch with
1127
1127
  * nothing to switch to. Defaults to both `["in", "notIn"]`. */
1128
1128
  operators?: FilterOperator[];
1129
+ /** The most values one selection may hold, e.g. the server's own limit on an id list.
1130
+ * validateFilterValue rejects a larger selection, search stops offering new options
1131
+ * once the limit is reached, and a pasted list that would exceed it is refused with a
1132
+ * visible error instead of being applied. Must be a whole number of at least 1;
1133
+ * FilterBar throws a clear, field-naming error in development if it isn't. No limit
1134
+ * when omitted. */
1135
+ maxValues?: number;
1129
1136
  }
1130
1137
  interface FilterRangeValue {
1131
1138
  min?: number;
@@ -1163,9 +1170,9 @@ interface FilterFieldDate extends FilterFieldBase {
1163
1170
  * development if it isn't. */
1164
1171
  defaultDays?: number;
1165
1172
  /** Upper bound enforced on the "within the last N days" input. Default 3650 (ten
1166
- * years) — generous enough for any real "recent activity" window while still
1167
- * guaranteeing a plausible, in-range value ever reaches `onFilterChange`. Must be a
1168
- * whole number from 1 to 3650; FilterBar throws a clear, field-naming error in
1173
+ * years), which is also a hard ceiling: a larger maxDays is treated as 3650 by
1174
+ * validateFilterValue and the Days input, in production as well as development. Must
1175
+ * be a whole number from 1 to 3650; FilterBar throws a clear, field-naming error in
1169
1176
  * development if it isn't. */
1170
1177
  maxDays?: number;
1171
1178
  }
@@ -1183,12 +1190,17 @@ interface FilterBarProps extends Omit<React.HTMLAttributes<HTMLSpanElement>, "on
1183
1190
  fields: FilterField[];
1184
1191
  /** Straight off useServerTable — a value of undefined/""/false reads as "not set",
1185
1192
  * same convention that hook already uses for activeFilterCount. multiSelect/range/
1186
- * date values are objects instead (see isFieldSet). */
1193
+ * date values are objects instead (see isFieldSet). Pass a new object whenever the
1194
+ * filters change (as a state update does): FilterBar re-reads this record only when
1195
+ * its identity changes, so a parent that re-renders before applying an emission
1196
+ * doesn't make FilterBar forget it. */
1187
1197
  filters: Record<string, unknown>;
1188
1198
  /** Fires on every value edit. Maps 1:1 onto useServerTable's setFilter(id, value).
1189
1199
  * FilterBar only ever calls this with a COMPLETE, valid value for the field — an
1190
- * emptied selection, a one-sided date range, an invalid numeric range or a cleared
1191
- * bound go through onFilterRemove (or nothing) instead. */
1200
+ * emptied selection, a one-sided date range, an invalid numeric range, number text
1201
+ * that isn't a valid value, or a cleared bound go through onFilterRemove (or nothing,
1202
+ * when the filter isn't set) instead. Number fields emit on every keystroke that
1203
+ * leaves them valid, so debounce the request this triggers. */
1192
1204
  onFilterChange: (key: string, value: unknown) => void;
1193
1205
  /** Fires when a chip's × is clicked, or when an edit leaves a field with no valid
1194
1206
  * value. Maps 1:1 onto useServerTable's clearFilter(id). */
@@ -1198,6 +1210,27 @@ interface FilterBarProps extends Omit<React.HTMLAttributes<HTMLSpanElement>, "on
1198
1210
  align?: "left" | "right";
1199
1211
  className?: string;
1200
1212
  }
1213
+ type FilterValidation = {
1214
+ ok: true;
1215
+ } | {
1216
+ ok: false;
1217
+ reason: string;
1218
+ };
1219
+ /**
1220
+ * The one place every field kind's rules live. Pure, with no state, so FilterBar's own
1221
+ * commit function, a consumer's code (e.g. to disable a submit button) and a test can
1222
+ * all call it on any candidate value:
1223
+ * - text: a string.
1224
+ * - select: one of the field's own option values.
1225
+ * - multiSelect: `{ operator, values }` with at least one `{ value, label }` option, no
1226
+ * more than the field's `maxValues`, and an operator the field allows.
1227
+ * - date, withinDays: a whole number of days from 1 to the field's maxDays, which is
1228
+ * itself capped at 3650.
1229
+ * - date, between: two real YYYY-MM-DD dates, `from` on or before `to`.
1230
+ * - range: at least one bound; each present bound a finite number within the field's
1231
+ * min/max, and a whole number when `field.integer` is set; min ≤ max when both are set.
1232
+ */
1233
+ declare function validateFilterValue(field: FilterField, value: unknown): FilterValidation;
1201
1234
  /**
1202
1235
  * FilterBar — the declarative filter system for a server-driven list.
1203
1236
  *
@@ -2200,10 +2233,12 @@ interface TextareaProps extends React.TextareaHTMLAttributes<HTMLTextAreaElement
2200
2233
  }
2201
2234
  declare function Textarea({ label, help, error, required, rows, disabled, id, className, style, ...rest }: TextareaProps): React.JSX.Element;
2202
2235
 
2203
- /** Numeric field with thousands formatting on blur, +/- steppers with hold-to-repeat
2204
- * acceleration and arrow keys (shift = bigStep) that snap to the step grid within
2205
- * [min, max], and inline min/max/integer validation that keeps an invalid typed value
2206
- * from ever reaching `onChange`. */
2236
+ /** Numeric field with thousands formatting while unfocused, +/- steppers (press once for
2237
+ * one step, press and hold to repeat with acceleration), ArrowUp/ArrowDown (Shift for
2238
+ * `bigStep`), and inline min/max/integer validation that keeps an invalid typed value
2239
+ * from ever reaching `onChange`. Every stepper and arrow result lands on the step grid
2240
+ * (multiples of `step` counted from `min`, or from 0 when there is no finite `min`),
2241
+ * computed in decimal-safe arithmetic, then clamped into the allowed range. */
2207
2242
  interface NumberInputProps {
2208
2243
  label?: string;
2209
2244
  help?: string;
@@ -2220,16 +2255,24 @@ interface NumberInputProps {
2220
2255
  suffix?: string;
2221
2256
  required?: boolean;
2222
2257
  disabled?: boolean;
2258
+ /** Lowest allowed value. A typed value below it is shown as invalid and never reaches
2259
+ * `onChange`; the steppers and arrow keys stop at it. With `integer`, the lowest
2260
+ * allowed value is `Math.ceil(min)`. */
2223
2261
  min?: number;
2262
+ /** Highest allowed value, enforced the same way as `min`. With `integer`, the highest
2263
+ * allowed value is `Math.floor(max)`. */
2224
2264
  max?: number;
2265
+ /** Grid spacing for the steppers and arrow keys. Default 1. A press moves to the next
2266
+ * grid point in its direction, so from an off-grid value it snaps onto the grid
2267
+ * (step 10 from 3 goes up to 10, down to 0). Typed values are not snapped. */
2225
2268
  step?: number;
2226
- /** Larger step used while holding the steppers or shift+arrows. */
2269
+ /** Distance for Shift+ArrowUp/ArrowDown and for the accelerated phase of a held
2270
+ * stepper, also snapped to the step grid. Default `10 × step`. */
2227
2271
  bigStep?: number;
2228
- /** Requires a whole number. Off by default — a field with a whole-number `step` (e.g.
2229
- * cents in steps of 10) may still want decimal input, so this is a deliberate opt-in
2230
- * rather than inferred from `step`. When set, typed text, blur, the steppers and arrow
2231
- * keys all reject or snap away from a fractional value; a fractional value can never
2232
- * reach `onChange`. */
2272
+ /** Requires a whole number. Off by default, so a whole-number `step` (e.g. cents in
2273
+ * steps of 10) doesn't by itself block decimals. When set, a typed fraction is shown
2274
+ * as invalid, the allowed range narrows to `[ceil(min), floor(max)]`, and a stepper or
2275
+ * arrow result that falls between whole numbers is rounded in the direction of travel. */
2233
2276
  integer?: boolean;
2234
2277
  /** Thousands-format the display when not editing. Default true. */
2235
2278
  format?: boolean;
@@ -2237,13 +2280,12 @@ interface NumberInputProps {
2237
2280
  /** Called with {target:{value}} where value is a number — or `undefined` once the
2238
2281
  * field is cleared to empty. A cleared field is "no value", never `0`: the caller
2239
2282
  * (e.g. FilterBar's range/date panels) tells an unset bound apart from a typed
2240
- * zero by this, not by testing for `0` itself. */
2283
+ * zero by this, not by testing for `0` itself. Never called with an invalid value. */
2241
2284
  onChange?: (e: any) => void;
2242
- /** Called with the field's current validity every time it changes — true once the
2243
- * typed text is empty or a legal number, false while it is out of bounds, non-integer
2244
- * (when `integer` is set), or otherwise unparseable. Lets a parent (e.g. a panel with
2245
- * its own Done button) know a value is mid-edit-and-invalid even though nothing has
2246
- * been (or ever will be) passed to `onChange` for it. */
2285
+ /** Called on mount and whenever the field's validity changes — true while the text is
2286
+ * empty or a legal number, false while it is out of range, fractional (with
2287
+ * `integer`), or not a number. Invalid text stays in the field, flagged, after blur, so
2288
+ * a parent with its own Done button can keep it disabled until the text is fixed. */
2247
2289
  onValidityChange?: (valid: boolean) => void;
2248
2290
  placeholder?: string;
2249
2291
  style?: any;
@@ -4671,4 +4713,4 @@ declare function formatDocumentTitle(routeTitle: string | undefined | null, appN
4671
4713
  */
4672
4714
  declare function useDocumentTitle(routeTitle: string | undefined | null, appName: string): void;
4673
4715
 
4674
- export { AccountMenu, type AccountMenuLink, type AccountMenuProps, AgentChatPanel, type AgentChatPanelProps, AnchoredPopover, type AnchoredPopoverProps, AnimNum, type AnimNumProps, ApiSpecBrowser, type ApiSpecBrowserProps, type AppEntry, AppShell, type AppShellProps, AppSwitcher, type AppSwitcherProps, AppearanceMenu, type AppearanceMenuProps, type AppearancePrefs, type AppearanceStore, type AppearanceStoreOptions, type Attachment, Avatar, type AvatarProps, AvatarStack, type AvatarStackProps, Badge, type BadgeProps, Banner, type BannerProps, type BannerTone, BarList, type BarListProps, type BarListRow, BudgetReallocator, type BudgetReallocatorProps, Button, type ButtonProps, CHANNELS, CHANNEL_WEIGHTS, CHAT_UNAVAILABLE, Calendar, type CalendarProps, Card, type CardProps, CardRow, type CardRowProps, ChannelContribution, type ChannelContributionChannel, type ChannelContributionProps, ChannelMeta, type ChannelMetaRecord, ChannelTag, type ChannelTagProps, ChannelWeightOf, type ChatAdapter, ChatComposer, type ChatComposerProps, type ChatEngine, type ChatEngineOptions, ChatKit, type ChatMessage, type ChatRenderContext, ChatSessionBar, type ChatSessionBarProps, ChatTranscript, type ChatTranscriptProps, ChatTurn, type ChatTurnProps, Checkbox, type CheckboxProps, type Citation, Citations, type CitationsProps, Clamp, type ClampProps, ClockFace, type ClockFaceProps, CodeBlock, type CodeBlockProps, Collapsible, type CollapsibleProps, ComingSoon, type ComingSoonProps, type ContextUsage, type CreateVersionStoreOptions, CsiBadge, type CsiBadgeProps, CsiHero, type CsiHeroProps, CsiMeter, type CsiMeterProps, DEFAULT_PREFS, DEFAULT_STORAGE_KEY, DataTable, type DataTableColumn, type DataTableProps, DatePicker, type DatePickerProps, type DemoSessionControls, DemoSessionProvider, type DeviceSession, DiffBlock, type DiffBlockProps, DonutChart, type DonutChartProps, type DonutSegment, Drawer, type DrawerProps, Dropzone, DropzoneKit, type DropzoneProps, ENTITY_ROW_METRIC_WIDTH, type EditorTrigger, EmptyState, type EmptyStateProps, type EndpointSpec, EntityRow, type EntityRowAction, type EntityRowContent, type EntityRowMetric, EntityRowMetrics, type EntityRowMetricsProps, type EntityRowProps, FILE_VIEWER_CSV_ROW_LIMIT, FILE_VIEWER_TEXT_LIMIT, FeatureGate, type FeatureGateProps, type FeatureStatus, FileBrowser, type FileBrowserFile, type FileBrowserFolder, type FileBrowserPermissions, type FileBrowserProps, FileChip, type FileChipProps, FileGrid, type FileGridProps, FileKit, FilePickButton, type FilePickButtonProps, type FileRejection, FileStrip, type FileStripProps, FileTile, type FileTileProps, type FileUploadHandler, FileViewer, type FileViewerProps, FilterBar, type FilterBarProps, type FilterDateValue, type FilterField, type FilterFieldDate, type FilterFieldMultiSelect, type FilterFieldOption, type FilterFieldRange, type FilterFieldSelect, type FilterFieldText, type FilterMultiSelectValue, type FilterOperator, type FilterRangeValue, type FilterResolveMatch, type FilterResolveResult, type FilterValue, Flag$1 as Flag, type FlagExplanation, type FlagProps, FlytedeskBrand, type FlytedeskBrandProps, FlytedeskMark, type FlytedeskMarkProps, FormatEta, FunnelChart, type FunnelChartProps, type FunnelStep, Gate, type GateProps, IMPORTANCE_LEVELS, IconButton, type IconButtonProps, type ImportanceLevel, type ImportanceLevelId, ImportanceTag, type ImportanceTagProps, type ImportanceTokens, Input, type InputProps, type Job, type JobAction, type JobCardStatus, type JobStatus, JobTray, type JobTrayProps, Json, KeyHint, type KeyHintProps, type ListEnvelope, LoadingRegion, type LoadingRegionProps, Markdown, MarkdownEditor, type MarkdownEditorHandle, type MarkdownEditorProps, MarkdownInline, type MarkdownProps, type MentionSource, Menu, MenuButton, type MenuButtonProps, type MenuItem, type MenuProps, MessageBody, type MessageBodyProps, type MessageGroup, Meter, type MeterProps, type MeterSegment, type MeterSegmentInput, MixGap, type MixGapProps, type MixGapRow, MockJobKit, type MockJobStatus, Modal, type ModalProps, ModeSwitch, type ModeSwitchProps, type Model, ModelControls, type ModelControlsProps, NumberInput, type NumberInputProps, POPOVER_BODY_MIN, type Packet, PacketCard, type PacketCardProps, type PacketSchema, type Pager, Pagination, type PaginationProps, PermissionDenied, type PermissionDeniedProps, type PermissionGroup, PermissionHint, type PermissionItem, type Phase, type PhaseStatus, PhasedProgress, type PhasedProgressProps, type Placement, type PollOptions, Popover, type PopoverProps, type PreferenceCriterion, PreferenceMeter, type PreferenceMeterProps, type ProfileFieldDef, type ProfileFieldType, type ProfileNotificationDef, ProfilePage, type ProfilePageProps, ProgressBar, type ProgressBarProps, QueryKit, type QueuedTurn, QuotaRow, type QuotaRowProps, Radio, type RadioProps, RangeSlider, type RangeSliderProps, RelativeTime, type RelativeTimeProps, type RoadmapItem, type RoadmapResult, RoadmapTimeline, type RoadmapTimelineProps, type Role, RunActions, type RunActionsProps, type RunConfig, RuntimeKit, type RuntimeSummary, SaturationDistribution, type SaturationDistributionCampus, type SaturationDistributionProps, ScoreMeter, type ScoreMeterProps, ScreenHead, type ScreenHeadProps, SearchField, type SearchFieldProps, SegmentedControl, type SegmentedControlProps, SegmentedMeter, type SegmentedMeterProps, Select, type SelectOption, type SelectProps, type SendMessageResult, type ServerTable, type Session, type SessionContextValue, type Flag as SessionFlag, SessionKit, SessionProvider, type SessionProviderProps, type SessionRole, type SessionStats, type SessionUser, SidebarNav, type SidebarNavItem, type SidebarNavProps, type SignInContinueAs, SignInPage, type SignInPageProps, Skeleton, type SkeletonProps, SkeletonText, type SkeletonTextProps, type SlashCommand, Slider, type SliderProps, SortMenu, type SortMenuField, type SortMenuProps, type SpecModule, Spinner, type SpinnerProps, StatTile, type StatTileProps, type Step, StepList, type StepListProps, type StreamHandlers, type Suggestion, SurroundSound, type SurroundSoundProps, Switch, type SwitchProps, type TableQuery, Tabs, type TabsProps, Tag, type TagProps, TestModeBar, type TestModeBarProps, type TextScale, Textarea, type TextareaProps, type ThemeMode, ThinkingBlock, type ThinkingBlockProps, type ThreadSummary, TimePicker, type TimePickerProps, Toast, type ToastProps, Tooltip, type TooltipProps, Topbar, type TopbarProps, TranscriptKit, TransferList, type TransferListProps, type TransferListSide, type TransferListSideProps, TrendChart, type TrendChartProps, type TrendSeries, type UsageLimit, UseFeatureStatus, type UseResponsiveRailOptions, type UseResponsiveRailResult, UseRuntimeMode, type UseServerTableOptions, type User, VIRTUAL_LIST_BUFFER_ROWS, VIRTUAL_LIST_ROW_GAP, type VersionRecord, type VersionStore, VirtualList, type VirtualListProps, type VirtualLoadedBand, type VirtualWindow, type VoiceHandler, acceptMatches, anyOfFilter, applyPrefs, channelWeightOf, computeNeedMore, computeVirtualWindow, createLocalStorageAppearanceStore, createVersionStore, eqFilter, extensionOf, extractClipboardFiles, filterFiles, formatAbsolute, formatBytes, formatClock, formatDocumentTitle, formatDuration, formatEta, formatRelative, groupMessages, hasModifier, iconForMime, importanceLevel, importanceTokens, installFlytedeskFavicon, isImage, isSystemMessage, jobBucket, languageLabel, loadPrefs, markdownToText, meterFormats, modifierLabel, parseDelimited, pastedTextName, pluralizeUnit, preferenceScore, preferenceSegments, rangeFilter, resolveTheme, revokeAttachment, savePrefs, toAttachment, tokenize, useAppearancePrefs, useChatEngine, useDocumentTitle, useFeatureStatus, useFocusTrap, usePopoverPosition, useResponsiveRail, useRuntimeMode, useServerTable, useSessionContext, useStagedFiles, visibleMessages };
4716
+ export { AccountMenu, type AccountMenuLink, type AccountMenuProps, AgentChatPanel, type AgentChatPanelProps, AnchoredPopover, type AnchoredPopoverProps, AnimNum, type AnimNumProps, ApiSpecBrowser, type ApiSpecBrowserProps, type AppEntry, AppShell, type AppShellProps, AppSwitcher, type AppSwitcherProps, AppearanceMenu, type AppearanceMenuProps, type AppearancePrefs, type AppearanceStore, type AppearanceStoreOptions, type Attachment, Avatar, type AvatarProps, AvatarStack, type AvatarStackProps, Badge, type BadgeProps, Banner, type BannerProps, type BannerTone, BarList, type BarListProps, type BarListRow, BudgetReallocator, type BudgetReallocatorProps, Button, type ButtonProps, CHANNELS, CHANNEL_WEIGHTS, CHAT_UNAVAILABLE, Calendar, type CalendarProps, Card, type CardProps, CardRow, type CardRowProps, ChannelContribution, type ChannelContributionChannel, type ChannelContributionProps, ChannelMeta, type ChannelMetaRecord, ChannelTag, type ChannelTagProps, ChannelWeightOf, type ChatAdapter, ChatComposer, type ChatComposerProps, type ChatEngine, type ChatEngineOptions, ChatKit, type ChatMessage, type ChatRenderContext, ChatSessionBar, type ChatSessionBarProps, ChatTranscript, type ChatTranscriptProps, ChatTurn, type ChatTurnProps, Checkbox, type CheckboxProps, type Citation, Citations, type CitationsProps, Clamp, type ClampProps, ClockFace, type ClockFaceProps, CodeBlock, type CodeBlockProps, Collapsible, type CollapsibleProps, ComingSoon, type ComingSoonProps, type ContextUsage, type CreateVersionStoreOptions, CsiBadge, type CsiBadgeProps, CsiHero, type CsiHeroProps, CsiMeter, type CsiMeterProps, DEFAULT_PREFS, DEFAULT_STORAGE_KEY, DataTable, type DataTableColumn, type DataTableProps, DatePicker, type DatePickerProps, type DemoSessionControls, DemoSessionProvider, type DeviceSession, DiffBlock, type DiffBlockProps, DonutChart, type DonutChartProps, type DonutSegment, Drawer, type DrawerProps, Dropzone, DropzoneKit, type DropzoneProps, ENTITY_ROW_METRIC_WIDTH, type EditorTrigger, EmptyState, type EmptyStateProps, type EndpointSpec, EntityRow, type EntityRowAction, type EntityRowContent, type EntityRowMetric, EntityRowMetrics, type EntityRowMetricsProps, type EntityRowProps, FILE_VIEWER_CSV_ROW_LIMIT, FILE_VIEWER_TEXT_LIMIT, FeatureGate, type FeatureGateProps, type FeatureStatus, FileBrowser, type FileBrowserFile, type FileBrowserFolder, type FileBrowserPermissions, type FileBrowserProps, FileChip, type FileChipProps, FileGrid, type FileGridProps, FileKit, FilePickButton, type FilePickButtonProps, type FileRejection, FileStrip, type FileStripProps, FileTile, type FileTileProps, type FileUploadHandler, FileViewer, type FileViewerProps, FilterBar, type FilterBarProps, type FilterDateValue, type FilterField, type FilterFieldDate, type FilterFieldMultiSelect, type FilterFieldOption, type FilterFieldRange, type FilterFieldSelect, type FilterFieldText, type FilterMultiSelectValue, type FilterOperator, type FilterRangeValue, type FilterResolveMatch, type FilterResolveResult, type FilterValidation, type FilterValue, Flag$1 as Flag, type FlagExplanation, type FlagProps, FlytedeskBrand, type FlytedeskBrandProps, FlytedeskMark, type FlytedeskMarkProps, FormatEta, FunnelChart, type FunnelChartProps, type FunnelStep, Gate, type GateProps, IMPORTANCE_LEVELS, IconButton, type IconButtonProps, type ImportanceLevel, type ImportanceLevelId, ImportanceTag, type ImportanceTagProps, type ImportanceTokens, Input, type InputProps, type Job, type JobAction, type JobCardStatus, type JobStatus, JobTray, type JobTrayProps, Json, KeyHint, type KeyHintProps, type ListEnvelope, LoadingRegion, type LoadingRegionProps, Markdown, MarkdownEditor, type MarkdownEditorHandle, type MarkdownEditorProps, MarkdownInline, type MarkdownProps, type MentionSource, Menu, MenuButton, type MenuButtonProps, type MenuItem, type MenuProps, MessageBody, type MessageBodyProps, type MessageGroup, Meter, type MeterProps, type MeterSegment, type MeterSegmentInput, MixGap, type MixGapProps, type MixGapRow, MockJobKit, type MockJobStatus, Modal, type ModalProps, ModeSwitch, type ModeSwitchProps, type Model, ModelControls, type ModelControlsProps, NumberInput, type NumberInputProps, POPOVER_BODY_MIN, type Packet, PacketCard, type PacketCardProps, type PacketSchema, type Pager, Pagination, type PaginationProps, PermissionDenied, type PermissionDeniedProps, type PermissionGroup, PermissionHint, type PermissionItem, type Phase, type PhaseStatus, PhasedProgress, type PhasedProgressProps, type Placement, type PollOptions, Popover, type PopoverProps, type PreferenceCriterion, PreferenceMeter, type PreferenceMeterProps, type ProfileFieldDef, type ProfileFieldType, type ProfileNotificationDef, ProfilePage, type ProfilePageProps, ProgressBar, type ProgressBarProps, QueryKit, type QueuedTurn, QuotaRow, type QuotaRowProps, Radio, type RadioProps, RangeSlider, type RangeSliderProps, RelativeTime, type RelativeTimeProps, type RoadmapItem, type RoadmapResult, RoadmapTimeline, type RoadmapTimelineProps, type Role, RunActions, type RunActionsProps, type RunConfig, RuntimeKit, type RuntimeSummary, SaturationDistribution, type SaturationDistributionCampus, type SaturationDistributionProps, ScoreMeter, type ScoreMeterProps, ScreenHead, type ScreenHeadProps, SearchField, type SearchFieldProps, SegmentedControl, type SegmentedControlProps, SegmentedMeter, type SegmentedMeterProps, Select, type SelectOption, type SelectProps, type SendMessageResult, type ServerTable, type Session, type SessionContextValue, type Flag as SessionFlag, SessionKit, SessionProvider, type SessionProviderProps, type SessionRole, type SessionStats, type SessionUser, SidebarNav, type SidebarNavItem, type SidebarNavProps, type SignInContinueAs, SignInPage, type SignInPageProps, Skeleton, type SkeletonProps, SkeletonText, type SkeletonTextProps, type SlashCommand, Slider, type SliderProps, SortMenu, type SortMenuField, type SortMenuProps, type SpecModule, Spinner, type SpinnerProps, StatTile, type StatTileProps, type Step, StepList, type StepListProps, type StreamHandlers, type Suggestion, SurroundSound, type SurroundSoundProps, Switch, type SwitchProps, type TableQuery, Tabs, type TabsProps, Tag, type TagProps, TestModeBar, type TestModeBarProps, type TextScale, Textarea, type TextareaProps, type ThemeMode, ThinkingBlock, type ThinkingBlockProps, type ThreadSummary, TimePicker, type TimePickerProps, Toast, type ToastProps, Tooltip, type TooltipProps, Topbar, type TopbarProps, TranscriptKit, TransferList, type TransferListProps, type TransferListSide, type TransferListSideProps, TrendChart, type TrendChartProps, type TrendSeries, type UsageLimit, UseFeatureStatus, type UseResponsiveRailOptions, type UseResponsiveRailResult, UseRuntimeMode, type UseServerTableOptions, type User, VIRTUAL_LIST_BUFFER_ROWS, VIRTUAL_LIST_ROW_GAP, type VersionRecord, type VersionStore, VirtualList, type VirtualListProps, type VirtualLoadedBand, type VirtualWindow, type VoiceHandler, acceptMatches, anyOfFilter, applyPrefs, channelWeightOf, computeNeedMore, computeVirtualWindow, createLocalStorageAppearanceStore, createVersionStore, eqFilter, extensionOf, extractClipboardFiles, filterFiles, formatAbsolute, formatBytes, formatClock, formatDocumentTitle, formatDuration, formatEta, formatRelative, groupMessages, hasModifier, iconForMime, importanceLevel, importanceTokens, installFlytedeskFavicon, isImage, isSystemMessage, jobBucket, languageLabel, loadPrefs, markdownToText, meterFormats, modifierLabel, parseDelimited, pastedTextName, pluralizeUnit, preferenceScore, preferenceSegments, rangeFilter, resolveTheme, revokeAttachment, savePrefs, toAttachment, tokenize, useAppearancePrefs, useChatEngine, useDocumentTitle, useFeatureStatus, useFocusTrap, usePopoverPosition, useResponsiveRail, useRuntimeMode, useServerTable, useSessionContext, useStagedFiles, validateFilterValue, visibleMessages };
package/dist/index.d.ts CHANGED
@@ -1126,6 +1126,13 @@ interface FilterFieldMultiSelect extends FilterFieldBase {
1126
1126
  * express an "any"/"is"-only dimension exactly rather than showing a switch with
1127
1127
  * nothing to switch to. Defaults to both `["in", "notIn"]`. */
1128
1128
  operators?: FilterOperator[];
1129
+ /** The most values one selection may hold, e.g. the server's own limit on an id list.
1130
+ * validateFilterValue rejects a larger selection, search stops offering new options
1131
+ * once the limit is reached, and a pasted list that would exceed it is refused with a
1132
+ * visible error instead of being applied. Must be a whole number of at least 1;
1133
+ * FilterBar throws a clear, field-naming error in development if it isn't. No limit
1134
+ * when omitted. */
1135
+ maxValues?: number;
1129
1136
  }
1130
1137
  interface FilterRangeValue {
1131
1138
  min?: number;
@@ -1163,9 +1170,9 @@ interface FilterFieldDate extends FilterFieldBase {
1163
1170
  * development if it isn't. */
1164
1171
  defaultDays?: number;
1165
1172
  /** Upper bound enforced on the "within the last N days" input. Default 3650 (ten
1166
- * years) — generous enough for any real "recent activity" window while still
1167
- * guaranteeing a plausible, in-range value ever reaches `onFilterChange`. Must be a
1168
- * whole number from 1 to 3650; FilterBar throws a clear, field-naming error in
1173
+ * years), which is also a hard ceiling: a larger maxDays is treated as 3650 by
1174
+ * validateFilterValue and the Days input, in production as well as development. Must
1175
+ * be a whole number from 1 to 3650; FilterBar throws a clear, field-naming error in
1169
1176
  * development if it isn't. */
1170
1177
  maxDays?: number;
1171
1178
  }
@@ -1183,12 +1190,17 @@ interface FilterBarProps extends Omit<React.HTMLAttributes<HTMLSpanElement>, "on
1183
1190
  fields: FilterField[];
1184
1191
  /** Straight off useServerTable — a value of undefined/""/false reads as "not set",
1185
1192
  * same convention that hook already uses for activeFilterCount. multiSelect/range/
1186
- * date values are objects instead (see isFieldSet). */
1193
+ * date values are objects instead (see isFieldSet). Pass a new object whenever the
1194
+ * filters change (as a state update does): FilterBar re-reads this record only when
1195
+ * its identity changes, so a parent that re-renders before applying an emission
1196
+ * doesn't make FilterBar forget it. */
1187
1197
  filters: Record<string, unknown>;
1188
1198
  /** Fires on every value edit. Maps 1:1 onto useServerTable's setFilter(id, value).
1189
1199
  * FilterBar only ever calls this with a COMPLETE, valid value for the field — an
1190
- * emptied selection, a one-sided date range, an invalid numeric range or a cleared
1191
- * bound go through onFilterRemove (or nothing) instead. */
1200
+ * emptied selection, a one-sided date range, an invalid numeric range, number text
1201
+ * that isn't a valid value, or a cleared bound go through onFilterRemove (or nothing,
1202
+ * when the filter isn't set) instead. Number fields emit on every keystroke that
1203
+ * leaves them valid, so debounce the request this triggers. */
1192
1204
  onFilterChange: (key: string, value: unknown) => void;
1193
1205
  /** Fires when a chip's × is clicked, or when an edit leaves a field with no valid
1194
1206
  * value. Maps 1:1 onto useServerTable's clearFilter(id). */
@@ -1198,6 +1210,27 @@ interface FilterBarProps extends Omit<React.HTMLAttributes<HTMLSpanElement>, "on
1198
1210
  align?: "left" | "right";
1199
1211
  className?: string;
1200
1212
  }
1213
+ type FilterValidation = {
1214
+ ok: true;
1215
+ } | {
1216
+ ok: false;
1217
+ reason: string;
1218
+ };
1219
+ /**
1220
+ * The one place every field kind's rules live. Pure, with no state, so FilterBar's own
1221
+ * commit function, a consumer's code (e.g. to disable a submit button) and a test can
1222
+ * all call it on any candidate value:
1223
+ * - text: a string.
1224
+ * - select: one of the field's own option values.
1225
+ * - multiSelect: `{ operator, values }` with at least one `{ value, label }` option, no
1226
+ * more than the field's `maxValues`, and an operator the field allows.
1227
+ * - date, withinDays: a whole number of days from 1 to the field's maxDays, which is
1228
+ * itself capped at 3650.
1229
+ * - date, between: two real YYYY-MM-DD dates, `from` on or before `to`.
1230
+ * - range: at least one bound; each present bound a finite number within the field's
1231
+ * min/max, and a whole number when `field.integer` is set; min ≤ max when both are set.
1232
+ */
1233
+ declare function validateFilterValue(field: FilterField, value: unknown): FilterValidation;
1201
1234
  /**
1202
1235
  * FilterBar — the declarative filter system for a server-driven list.
1203
1236
  *
@@ -2200,10 +2233,12 @@ interface TextareaProps extends React.TextareaHTMLAttributes<HTMLTextAreaElement
2200
2233
  }
2201
2234
  declare function Textarea({ label, help, error, required, rows, disabled, id, className, style, ...rest }: TextareaProps): React.JSX.Element;
2202
2235
 
2203
- /** Numeric field with thousands formatting on blur, +/- steppers with hold-to-repeat
2204
- * acceleration and arrow keys (shift = bigStep) that snap to the step grid within
2205
- * [min, max], and inline min/max/integer validation that keeps an invalid typed value
2206
- * from ever reaching `onChange`. */
2236
+ /** Numeric field with thousands formatting while unfocused, +/- steppers (press once for
2237
+ * one step, press and hold to repeat with acceleration), ArrowUp/ArrowDown (Shift for
2238
+ * `bigStep`), and inline min/max/integer validation that keeps an invalid typed value
2239
+ * from ever reaching `onChange`. Every stepper and arrow result lands on the step grid
2240
+ * (multiples of `step` counted from `min`, or from 0 when there is no finite `min`),
2241
+ * computed in decimal-safe arithmetic, then clamped into the allowed range. */
2207
2242
  interface NumberInputProps {
2208
2243
  label?: string;
2209
2244
  help?: string;
@@ -2220,16 +2255,24 @@ interface NumberInputProps {
2220
2255
  suffix?: string;
2221
2256
  required?: boolean;
2222
2257
  disabled?: boolean;
2258
+ /** Lowest allowed value. A typed value below it is shown as invalid and never reaches
2259
+ * `onChange`; the steppers and arrow keys stop at it. With `integer`, the lowest
2260
+ * allowed value is `Math.ceil(min)`. */
2223
2261
  min?: number;
2262
+ /** Highest allowed value, enforced the same way as `min`. With `integer`, the highest
2263
+ * allowed value is `Math.floor(max)`. */
2224
2264
  max?: number;
2265
+ /** Grid spacing for the steppers and arrow keys. Default 1. A press moves to the next
2266
+ * grid point in its direction, so from an off-grid value it snaps onto the grid
2267
+ * (step 10 from 3 goes up to 10, down to 0). Typed values are not snapped. */
2225
2268
  step?: number;
2226
- /** Larger step used while holding the steppers or shift+arrows. */
2269
+ /** Distance for Shift+ArrowUp/ArrowDown and for the accelerated phase of a held
2270
+ * stepper, also snapped to the step grid. Default `10 × step`. */
2227
2271
  bigStep?: number;
2228
- /** Requires a whole number. Off by default — a field with a whole-number `step` (e.g.
2229
- * cents in steps of 10) may still want decimal input, so this is a deliberate opt-in
2230
- * rather than inferred from `step`. When set, typed text, blur, the steppers and arrow
2231
- * keys all reject or snap away from a fractional value; a fractional value can never
2232
- * reach `onChange`. */
2272
+ /** Requires a whole number. Off by default, so a whole-number `step` (e.g. cents in
2273
+ * steps of 10) doesn't by itself block decimals. When set, a typed fraction is shown
2274
+ * as invalid, the allowed range narrows to `[ceil(min), floor(max)]`, and a stepper or
2275
+ * arrow result that falls between whole numbers is rounded in the direction of travel. */
2233
2276
  integer?: boolean;
2234
2277
  /** Thousands-format the display when not editing. Default true. */
2235
2278
  format?: boolean;
@@ -2237,13 +2280,12 @@ interface NumberInputProps {
2237
2280
  /** Called with {target:{value}} where value is a number — or `undefined` once the
2238
2281
  * field is cleared to empty. A cleared field is "no value", never `0`: the caller
2239
2282
  * (e.g. FilterBar's range/date panels) tells an unset bound apart from a typed
2240
- * zero by this, not by testing for `0` itself. */
2283
+ * zero by this, not by testing for `0` itself. Never called with an invalid value. */
2241
2284
  onChange?: (e: any) => void;
2242
- /** Called with the field's current validity every time it changes — true once the
2243
- * typed text is empty or a legal number, false while it is out of bounds, non-integer
2244
- * (when `integer` is set), or otherwise unparseable. Lets a parent (e.g. a panel with
2245
- * its own Done button) know a value is mid-edit-and-invalid even though nothing has
2246
- * been (or ever will be) passed to `onChange` for it. */
2285
+ /** Called on mount and whenever the field's validity changes — true while the text is
2286
+ * empty or a legal number, false while it is out of range, fractional (with
2287
+ * `integer`), or not a number. Invalid text stays in the field, flagged, after blur, so
2288
+ * a parent with its own Done button can keep it disabled until the text is fixed. */
2247
2289
  onValidityChange?: (valid: boolean) => void;
2248
2290
  placeholder?: string;
2249
2291
  style?: any;
@@ -4671,4 +4713,4 @@ declare function formatDocumentTitle(routeTitle: string | undefined | null, appN
4671
4713
  */
4672
4714
  declare function useDocumentTitle(routeTitle: string | undefined | null, appName: string): void;
4673
4715
 
4674
- export { AccountMenu, type AccountMenuLink, type AccountMenuProps, AgentChatPanel, type AgentChatPanelProps, AnchoredPopover, type AnchoredPopoverProps, AnimNum, type AnimNumProps, ApiSpecBrowser, type ApiSpecBrowserProps, type AppEntry, AppShell, type AppShellProps, AppSwitcher, type AppSwitcherProps, AppearanceMenu, type AppearanceMenuProps, type AppearancePrefs, type AppearanceStore, type AppearanceStoreOptions, type Attachment, Avatar, type AvatarProps, AvatarStack, type AvatarStackProps, Badge, type BadgeProps, Banner, type BannerProps, type BannerTone, BarList, type BarListProps, type BarListRow, BudgetReallocator, type BudgetReallocatorProps, Button, type ButtonProps, CHANNELS, CHANNEL_WEIGHTS, CHAT_UNAVAILABLE, Calendar, type CalendarProps, Card, type CardProps, CardRow, type CardRowProps, ChannelContribution, type ChannelContributionChannel, type ChannelContributionProps, ChannelMeta, type ChannelMetaRecord, ChannelTag, type ChannelTagProps, ChannelWeightOf, type ChatAdapter, ChatComposer, type ChatComposerProps, type ChatEngine, type ChatEngineOptions, ChatKit, type ChatMessage, type ChatRenderContext, ChatSessionBar, type ChatSessionBarProps, ChatTranscript, type ChatTranscriptProps, ChatTurn, type ChatTurnProps, Checkbox, type CheckboxProps, type Citation, Citations, type CitationsProps, Clamp, type ClampProps, ClockFace, type ClockFaceProps, CodeBlock, type CodeBlockProps, Collapsible, type CollapsibleProps, ComingSoon, type ComingSoonProps, type ContextUsage, type CreateVersionStoreOptions, CsiBadge, type CsiBadgeProps, CsiHero, type CsiHeroProps, CsiMeter, type CsiMeterProps, DEFAULT_PREFS, DEFAULT_STORAGE_KEY, DataTable, type DataTableColumn, type DataTableProps, DatePicker, type DatePickerProps, type DemoSessionControls, DemoSessionProvider, type DeviceSession, DiffBlock, type DiffBlockProps, DonutChart, type DonutChartProps, type DonutSegment, Drawer, type DrawerProps, Dropzone, DropzoneKit, type DropzoneProps, ENTITY_ROW_METRIC_WIDTH, type EditorTrigger, EmptyState, type EmptyStateProps, type EndpointSpec, EntityRow, type EntityRowAction, type EntityRowContent, type EntityRowMetric, EntityRowMetrics, type EntityRowMetricsProps, type EntityRowProps, FILE_VIEWER_CSV_ROW_LIMIT, FILE_VIEWER_TEXT_LIMIT, FeatureGate, type FeatureGateProps, type FeatureStatus, FileBrowser, type FileBrowserFile, type FileBrowserFolder, type FileBrowserPermissions, type FileBrowserProps, FileChip, type FileChipProps, FileGrid, type FileGridProps, FileKit, FilePickButton, type FilePickButtonProps, type FileRejection, FileStrip, type FileStripProps, FileTile, type FileTileProps, type FileUploadHandler, FileViewer, type FileViewerProps, FilterBar, type FilterBarProps, type FilterDateValue, type FilterField, type FilterFieldDate, type FilterFieldMultiSelect, type FilterFieldOption, type FilterFieldRange, type FilterFieldSelect, type FilterFieldText, type FilterMultiSelectValue, type FilterOperator, type FilterRangeValue, type FilterResolveMatch, type FilterResolveResult, type FilterValue, Flag$1 as Flag, type FlagExplanation, type FlagProps, FlytedeskBrand, type FlytedeskBrandProps, FlytedeskMark, type FlytedeskMarkProps, FormatEta, FunnelChart, type FunnelChartProps, type FunnelStep, Gate, type GateProps, IMPORTANCE_LEVELS, IconButton, type IconButtonProps, type ImportanceLevel, type ImportanceLevelId, ImportanceTag, type ImportanceTagProps, type ImportanceTokens, Input, type InputProps, type Job, type JobAction, type JobCardStatus, type JobStatus, JobTray, type JobTrayProps, Json, KeyHint, type KeyHintProps, type ListEnvelope, LoadingRegion, type LoadingRegionProps, Markdown, MarkdownEditor, type MarkdownEditorHandle, type MarkdownEditorProps, MarkdownInline, type MarkdownProps, type MentionSource, Menu, MenuButton, type MenuButtonProps, type MenuItem, type MenuProps, MessageBody, type MessageBodyProps, type MessageGroup, Meter, type MeterProps, type MeterSegment, type MeterSegmentInput, MixGap, type MixGapProps, type MixGapRow, MockJobKit, type MockJobStatus, Modal, type ModalProps, ModeSwitch, type ModeSwitchProps, type Model, ModelControls, type ModelControlsProps, NumberInput, type NumberInputProps, POPOVER_BODY_MIN, type Packet, PacketCard, type PacketCardProps, type PacketSchema, type Pager, Pagination, type PaginationProps, PermissionDenied, type PermissionDeniedProps, type PermissionGroup, PermissionHint, type PermissionItem, type Phase, type PhaseStatus, PhasedProgress, type PhasedProgressProps, type Placement, type PollOptions, Popover, type PopoverProps, type PreferenceCriterion, PreferenceMeter, type PreferenceMeterProps, type ProfileFieldDef, type ProfileFieldType, type ProfileNotificationDef, ProfilePage, type ProfilePageProps, ProgressBar, type ProgressBarProps, QueryKit, type QueuedTurn, QuotaRow, type QuotaRowProps, Radio, type RadioProps, RangeSlider, type RangeSliderProps, RelativeTime, type RelativeTimeProps, type RoadmapItem, type RoadmapResult, RoadmapTimeline, type RoadmapTimelineProps, type Role, RunActions, type RunActionsProps, type RunConfig, RuntimeKit, type RuntimeSummary, SaturationDistribution, type SaturationDistributionCampus, type SaturationDistributionProps, ScoreMeter, type ScoreMeterProps, ScreenHead, type ScreenHeadProps, SearchField, type SearchFieldProps, SegmentedControl, type SegmentedControlProps, SegmentedMeter, type SegmentedMeterProps, Select, type SelectOption, type SelectProps, type SendMessageResult, type ServerTable, type Session, type SessionContextValue, type Flag as SessionFlag, SessionKit, SessionProvider, type SessionProviderProps, type SessionRole, type SessionStats, type SessionUser, SidebarNav, type SidebarNavItem, type SidebarNavProps, type SignInContinueAs, SignInPage, type SignInPageProps, Skeleton, type SkeletonProps, SkeletonText, type SkeletonTextProps, type SlashCommand, Slider, type SliderProps, SortMenu, type SortMenuField, type SortMenuProps, type SpecModule, Spinner, type SpinnerProps, StatTile, type StatTileProps, type Step, StepList, type StepListProps, type StreamHandlers, type Suggestion, SurroundSound, type SurroundSoundProps, Switch, type SwitchProps, type TableQuery, Tabs, type TabsProps, Tag, type TagProps, TestModeBar, type TestModeBarProps, type TextScale, Textarea, type TextareaProps, type ThemeMode, ThinkingBlock, type ThinkingBlockProps, type ThreadSummary, TimePicker, type TimePickerProps, Toast, type ToastProps, Tooltip, type TooltipProps, Topbar, type TopbarProps, TranscriptKit, TransferList, type TransferListProps, type TransferListSide, type TransferListSideProps, TrendChart, type TrendChartProps, type TrendSeries, type UsageLimit, UseFeatureStatus, type UseResponsiveRailOptions, type UseResponsiveRailResult, UseRuntimeMode, type UseServerTableOptions, type User, VIRTUAL_LIST_BUFFER_ROWS, VIRTUAL_LIST_ROW_GAP, type VersionRecord, type VersionStore, VirtualList, type VirtualListProps, type VirtualLoadedBand, type VirtualWindow, type VoiceHandler, acceptMatches, anyOfFilter, applyPrefs, channelWeightOf, computeNeedMore, computeVirtualWindow, createLocalStorageAppearanceStore, createVersionStore, eqFilter, extensionOf, extractClipboardFiles, filterFiles, formatAbsolute, formatBytes, formatClock, formatDocumentTitle, formatDuration, formatEta, formatRelative, groupMessages, hasModifier, iconForMime, importanceLevel, importanceTokens, installFlytedeskFavicon, isImage, isSystemMessage, jobBucket, languageLabel, loadPrefs, markdownToText, meterFormats, modifierLabel, parseDelimited, pastedTextName, pluralizeUnit, preferenceScore, preferenceSegments, rangeFilter, resolveTheme, revokeAttachment, savePrefs, toAttachment, tokenize, useAppearancePrefs, useChatEngine, useDocumentTitle, useFeatureStatus, useFocusTrap, usePopoverPosition, useResponsiveRail, useRuntimeMode, useServerTable, useSessionContext, useStagedFiles, visibleMessages };
4716
+ export { AccountMenu, type AccountMenuLink, type AccountMenuProps, AgentChatPanel, type AgentChatPanelProps, AnchoredPopover, type AnchoredPopoverProps, AnimNum, type AnimNumProps, ApiSpecBrowser, type ApiSpecBrowserProps, type AppEntry, AppShell, type AppShellProps, AppSwitcher, type AppSwitcherProps, AppearanceMenu, type AppearanceMenuProps, type AppearancePrefs, type AppearanceStore, type AppearanceStoreOptions, type Attachment, Avatar, type AvatarProps, AvatarStack, type AvatarStackProps, Badge, type BadgeProps, Banner, type BannerProps, type BannerTone, BarList, type BarListProps, type BarListRow, BudgetReallocator, type BudgetReallocatorProps, Button, type ButtonProps, CHANNELS, CHANNEL_WEIGHTS, CHAT_UNAVAILABLE, Calendar, type CalendarProps, Card, type CardProps, CardRow, type CardRowProps, ChannelContribution, type ChannelContributionChannel, type ChannelContributionProps, ChannelMeta, type ChannelMetaRecord, ChannelTag, type ChannelTagProps, ChannelWeightOf, type ChatAdapter, ChatComposer, type ChatComposerProps, type ChatEngine, type ChatEngineOptions, ChatKit, type ChatMessage, type ChatRenderContext, ChatSessionBar, type ChatSessionBarProps, ChatTranscript, type ChatTranscriptProps, ChatTurn, type ChatTurnProps, Checkbox, type CheckboxProps, type Citation, Citations, type CitationsProps, Clamp, type ClampProps, ClockFace, type ClockFaceProps, CodeBlock, type CodeBlockProps, Collapsible, type CollapsibleProps, ComingSoon, type ComingSoonProps, type ContextUsage, type CreateVersionStoreOptions, CsiBadge, type CsiBadgeProps, CsiHero, type CsiHeroProps, CsiMeter, type CsiMeterProps, DEFAULT_PREFS, DEFAULT_STORAGE_KEY, DataTable, type DataTableColumn, type DataTableProps, DatePicker, type DatePickerProps, type DemoSessionControls, DemoSessionProvider, type DeviceSession, DiffBlock, type DiffBlockProps, DonutChart, type DonutChartProps, type DonutSegment, Drawer, type DrawerProps, Dropzone, DropzoneKit, type DropzoneProps, ENTITY_ROW_METRIC_WIDTH, type EditorTrigger, EmptyState, type EmptyStateProps, type EndpointSpec, EntityRow, type EntityRowAction, type EntityRowContent, type EntityRowMetric, EntityRowMetrics, type EntityRowMetricsProps, type EntityRowProps, FILE_VIEWER_CSV_ROW_LIMIT, FILE_VIEWER_TEXT_LIMIT, FeatureGate, type FeatureGateProps, type FeatureStatus, FileBrowser, type FileBrowserFile, type FileBrowserFolder, type FileBrowserPermissions, type FileBrowserProps, FileChip, type FileChipProps, FileGrid, type FileGridProps, FileKit, FilePickButton, type FilePickButtonProps, type FileRejection, FileStrip, type FileStripProps, FileTile, type FileTileProps, type FileUploadHandler, FileViewer, type FileViewerProps, FilterBar, type FilterBarProps, type FilterDateValue, type FilterField, type FilterFieldDate, type FilterFieldMultiSelect, type FilterFieldOption, type FilterFieldRange, type FilterFieldSelect, type FilterFieldText, type FilterMultiSelectValue, type FilterOperator, type FilterRangeValue, type FilterResolveMatch, type FilterResolveResult, type FilterValidation, type FilterValue, Flag$1 as Flag, type FlagExplanation, type FlagProps, FlytedeskBrand, type FlytedeskBrandProps, FlytedeskMark, type FlytedeskMarkProps, FormatEta, FunnelChart, type FunnelChartProps, type FunnelStep, Gate, type GateProps, IMPORTANCE_LEVELS, IconButton, type IconButtonProps, type ImportanceLevel, type ImportanceLevelId, ImportanceTag, type ImportanceTagProps, type ImportanceTokens, Input, type InputProps, type Job, type JobAction, type JobCardStatus, type JobStatus, JobTray, type JobTrayProps, Json, KeyHint, type KeyHintProps, type ListEnvelope, LoadingRegion, type LoadingRegionProps, Markdown, MarkdownEditor, type MarkdownEditorHandle, type MarkdownEditorProps, MarkdownInline, type MarkdownProps, type MentionSource, Menu, MenuButton, type MenuButtonProps, type MenuItem, type MenuProps, MessageBody, type MessageBodyProps, type MessageGroup, Meter, type MeterProps, type MeterSegment, type MeterSegmentInput, MixGap, type MixGapProps, type MixGapRow, MockJobKit, type MockJobStatus, Modal, type ModalProps, ModeSwitch, type ModeSwitchProps, type Model, ModelControls, type ModelControlsProps, NumberInput, type NumberInputProps, POPOVER_BODY_MIN, type Packet, PacketCard, type PacketCardProps, type PacketSchema, type Pager, Pagination, type PaginationProps, PermissionDenied, type PermissionDeniedProps, type PermissionGroup, PermissionHint, type PermissionItem, type Phase, type PhaseStatus, PhasedProgress, type PhasedProgressProps, type Placement, type PollOptions, Popover, type PopoverProps, type PreferenceCriterion, PreferenceMeter, type PreferenceMeterProps, type ProfileFieldDef, type ProfileFieldType, type ProfileNotificationDef, ProfilePage, type ProfilePageProps, ProgressBar, type ProgressBarProps, QueryKit, type QueuedTurn, QuotaRow, type QuotaRowProps, Radio, type RadioProps, RangeSlider, type RangeSliderProps, RelativeTime, type RelativeTimeProps, type RoadmapItem, type RoadmapResult, RoadmapTimeline, type RoadmapTimelineProps, type Role, RunActions, type RunActionsProps, type RunConfig, RuntimeKit, type RuntimeSummary, SaturationDistribution, type SaturationDistributionCampus, type SaturationDistributionProps, ScoreMeter, type ScoreMeterProps, ScreenHead, type ScreenHeadProps, SearchField, type SearchFieldProps, SegmentedControl, type SegmentedControlProps, SegmentedMeter, type SegmentedMeterProps, Select, type SelectOption, type SelectProps, type SendMessageResult, type ServerTable, type Session, type SessionContextValue, type Flag as SessionFlag, SessionKit, SessionProvider, type SessionProviderProps, type SessionRole, type SessionStats, type SessionUser, SidebarNav, type SidebarNavItem, type SidebarNavProps, type SignInContinueAs, SignInPage, type SignInPageProps, Skeleton, type SkeletonProps, SkeletonText, type SkeletonTextProps, type SlashCommand, Slider, type SliderProps, SortMenu, type SortMenuField, type SortMenuProps, type SpecModule, Spinner, type SpinnerProps, StatTile, type StatTileProps, type Step, StepList, type StepListProps, type StreamHandlers, type Suggestion, SurroundSound, type SurroundSoundProps, Switch, type SwitchProps, type TableQuery, Tabs, type TabsProps, Tag, type TagProps, TestModeBar, type TestModeBarProps, type TextScale, Textarea, type TextareaProps, type ThemeMode, ThinkingBlock, type ThinkingBlockProps, type ThreadSummary, TimePicker, type TimePickerProps, Toast, type ToastProps, Tooltip, type TooltipProps, Topbar, type TopbarProps, TranscriptKit, TransferList, type TransferListProps, type TransferListSide, type TransferListSideProps, TrendChart, type TrendChartProps, type TrendSeries, type UsageLimit, UseFeatureStatus, type UseResponsiveRailOptions, type UseResponsiveRailResult, UseRuntimeMode, type UseServerTableOptions, type User, VIRTUAL_LIST_BUFFER_ROWS, VIRTUAL_LIST_ROW_GAP, type VersionRecord, type VersionStore, VirtualList, type VirtualListProps, type VirtualLoadedBand, type VirtualWindow, type VoiceHandler, acceptMatches, anyOfFilter, applyPrefs, channelWeightOf, computeNeedMore, computeVirtualWindow, createLocalStorageAppearanceStore, createVersionStore, eqFilter, extensionOf, extractClipboardFiles, filterFiles, formatAbsolute, formatBytes, formatClock, formatDocumentTitle, formatDuration, formatEta, formatRelative, groupMessages, hasModifier, iconForMime, importanceLevel, importanceTokens, installFlytedeskFavicon, isImage, isSystemMessage, jobBucket, languageLabel, loadPrefs, markdownToText, meterFormats, modifierLabel, parseDelimited, pastedTextName, pluralizeUnit, preferenceScore, preferenceSegments, rangeFilter, resolveTheme, revokeAttachment, savePrefs, toAttachment, tokenize, useAppearancePrefs, useChatEngine, useDocumentTitle, useFeatureStatus, useFocusTrap, usePopoverPosition, useResponsiveRail, useRuntimeMode, useServerTable, useSessionContext, useStagedFiles, validateFilterValue, visibleMessages };