Skip to content
fayeuiStatic / 0.1.0
LLMs
API / Static edition

@fayegram-ai/faye-ui/contracts

Public exports and dependency-resolved component properties, with usage and rendering guidance.

Import

import { assertIdentifier, isRecord, assertRecord } from '@fayegram-ai/faye-ui/contracts';

Usage and behavior guide · API JSON

This entry has no declared client boundary; individual exported behavior still follows its rendering contract.

Public exports

NameKindResolved declaration type
assertIdentifiervalue(value: unknown, path: string) => asserts value is string
isRecordvalue(value: unknown) => value is Record<string, unknown>
assertRecordvalue(value: unknown, path: string) => asserts value is Record<string, unknown>
validateTokenContractvalue(schema: TokenContract) => TokenContract
assertPortablevalue(value: unknown, maxBytes?: number) => asserts value is JsonValue
parsePortablevalue(source: string, maxBytes?: number) => JsonValue
deepFreezevalue<T>(value: T) => Readonly<T>
canonicalJsonvalue(value: unknown) => string
validateDescriptorvalue(value: ComponentDescriptor) => ComponentDescriptor
resolveAccessibilityvalue(...sources: readonly (AccessibilityOptions | undefined)[]) => AccessibilityPreferences
accessibilityAttributesvalue(options?: AccessibilityOptions) => { readonly "data-faye-ui-focus": "auto" | "always"; readonly "data-faye-ui-hints": "auto" | "always"; readonly "data-faye-ui-contrast": "system" | "more"; }
InteractionOptionstypeInteractionOptions
InteractionVarianttypeInteractionVariant
InteractionLeveltypeInteractionLevel
TrackInteractionEffecttypeTrackInteractionEffect
InteractionVariantOverridestypeInteractionVariantOverrides
IconAttributetypeIconAttribute
IconAttributestypeReadonly<Record<string, IconAttribute>>
IconNodetypeIconNode
IconDefinitiontypeIconDefinition
SCHEMA_VERSIONvalue1
SchemetypeScheme
ColorPreferencetypeColorPreference
DensitytypeDensity
DirectiontypeDirection
TokenTypetypeTokenType
TokenValuetypeTokenValue
TokenReferencetypeTokenReference
TokenDefinitiontypeTokenDefinition
TokenSettypeReadonly<Record<string, TokenDefinition>>
TokenSpectypeTokenSpec
TokenContracttypeReadonly<Record<string, TokenSpec>>
ThemeAxistypeThemeAxis
ThemeAxestypeReadonly<Record<string, ThemeAxis>>
ThemeConditiontypeThemeCondition
ThemeDefinitiontypeThemeDefinition
ResolvedThemetypeResolvedTheme
JsonPrimitivetypeJsonPrimitive
JsonValuetypeJsonValue
StyleValuetypeStyleValue
DeclarationstypeReadonly<Record<string, StyleValue>>
PseudoStatetypePseudoState
ComponentDescriptortypeComponentDescriptor
StyleRuletypeStyleRule
ComponentSheettypeComponentSheet
SheetPatchtypeSheetPatch
ComponentProfiletypeComponentProfile
CompiledSheettypeCompiledSheet
ExtensionDescriptortypeExtensionDescriptor
ContractErrorvaluetypeof ContractError
AccessibilityOptionstypeAccessibilityOptions
AccessibilityPreferencestypeReadonly<Required<AccessibilityOptions>>
defaultAccessibilityvalueReadonly<Required<AccessibilityOptions>>

Defaults and customization

Defaults and native behavior are documented in the linked family guide. This reference does not infer a default from an optional property.

Use semantic tokens, public part hooks and customization sheets. Keep visual configuration separate from application state.

State, events and accessibility

For interactive controls, pair a controlled value/open prop with its corresponding change callback; default props initialize uncontrolled state. Keep application validation and submission policy explicit. Name controls with visible labels, name icon-only actions on the button, and preserve focus and dismissal behavior when replacing parts. Use native form names and submit/reset types where supported. See the usage guide for component-specific behavior and live examples.

Declaration authority

Generated from packages/faye-ui/dist/contracts/index.d.ts after the semantic package build. Common native/React attributes are intentionally omitted from property tables. Generic overloads, discriminated unions and complete inherited attributes remain authoritative in installed TypeScript declarations. React DOM attributes and Base UI component contracts describe the inherited foundations.