// Generated by dts-bundle-generator v8.0.1 import * as ts from 'typescript'; export interface ProjectPaths { /** * absolute path of the project root directory */ projectRoot: string; /** * absolute path of the UXPin configuration file */ configPath: string; } export interface ComponentInfo { dirPath: string; implementation: ComponentImplementationInfo; documentation?: ComponentDocumenationInfo; presets?: ComponentPresetInfo[]; } export interface ComponentImplementationInfo { path: string; lang: ComponentImplementationLang; framework: ComponentImplementationFramework; } export type ComponentImplementationLang = "javascript" | "typescript"; export type ComponentImplementationFramework = "reactjs"; export interface ComponentDocumenationInfo { path: string; } export interface ComponentPresetInfo { path: string; } export interface ComponentExample { code: string; } export type ComponentPropertyDefinition = ComponentProperty & ComponentPropertyCustomDescriptors; export interface ComponentProperty { defaultValue?: PropertyDefaultValue; description: string; isRequired: boolean; name: string; type?: PropertyType; } export interface ComponentPropertyCustomDescriptors { /** * `descriptors` property is disallowed here to make strict distinction between internal `ParsedComponentProperty` * and the exported `ComponentPropertyDefinition`. Property defined with `never` causes that's not possible to assign * a variable in type of `ParsedComponentProperty` to a variable in type of `ComponentPropertyDefinition` * and the other way around. */ descriptors?: never; autoUpdate?: PropertyAutoUpdate; customDescription?: string; customName?: string; customType?: CustomControlType; conditionalFn?: string; hidden?: boolean; isAutoUpdated?: true; } export interface PropertyDefaultValue { value: any; } export interface PropertyAutoUpdate { targetPropName: string; valuePath: string; } export interface PropertyType { name: T; structure: PropertyTypeStructureMap[T]; } export interface PropertyTypeStructureMap { any: {}; array: {}; boolean: {}; custom: {}; date: {}; element: {}; enum: EnumTypeStructure; func: FunctionStructure; literal: { value: string | number | ts.PseudoBigInt; }; node: {}; number: {}; object: {}; shape: ShapeTypeStructure; string: {}; symbol: {}; typedArray: TypedArrayStructure; dictionary: { valueType: PropertyType; }; union: UnionTypeStructure; unsupported: { raw: string; }; empty: {}; } export interface EnumTypeStructure { label: string | number; value: string | number | ts.PseudoBigInt; } export interface UnionTypeStructure { elements: PropertyType[]; } export interface ShapeTypeStructure { [propName: string]: PropertyType; } export interface TypedArrayStructure { memberType: PropertyType; } export interface FunctionStructure { arguments?: FunctionArgumentStructure[]; returnType?: PropertyType; } export interface FunctionArgumentStructure { name: string; type: PropertyType; } export interface CustomControlType { name: T; structure: CustomControlTypeStructureMap[T]; } declare enum CustomControlTypeName { CodeEditor = "codeeditor", Color = "color", Css = "css", Input = "input", Image = "image", Interactions = "interactions", MaterialIcons = "materialicons", Number = "number", ReturningFunction = "returningfunction", TailwindClassName = "tailwindclassname", Select = "select", Switcher = "switcher", Textfield = "textfield" } export interface CustomControlTypeStructureMap { [CustomControlTypeName.CodeEditor]: {}; [CustomControlTypeName.Color]: {}; [CustomControlTypeName.Css]: {}; [CustomControlTypeName.Input]: {}; [CustomControlTypeName.Image]: {}; [CustomControlTypeName.Interactions]: {}; [CustomControlTypeName.MaterialIcons]: {}; [CustomControlTypeName.TailwindClassName]: {}; [CustomControlTypeName.Number]: {}; [CustomControlTypeName.ReturningFunction]: { params?: string[]; }; [CustomControlTypeName.Select]: {}; [CustomControlTypeName.Switcher]: {}; [CustomControlTypeName.Textfield]: { rows?: number; }; } export interface ComponentPresetElement { name: string; props: ComponentPresetElementProps; } export interface ComponentPresetElementProps { [propName: string]: PresetElementPropValue; } export interface ComponentPreset { name: string; rootId: string; elements: { [id: string]: ComponentPresetElement; }; } export interface PresetElementReference { uxpinPresetElementId: string; } export type PresetElementPropValue = PresetElementReference | any | Array; export type ComponentWrapper = BuiltInComponentWrapper | CustomComponentWrapper; export interface GenericComponentWrapper { name: string; type: ComponentWrapperType; } export type BuiltInComponentWrapper = GenericComponentWrapper & { type: ComponentWrapperType.BUILT_IN; }; export type CustomComponentWrapper = GenericComponentWrapper & { path: string; type: ComponentWrapperType.CUSTOM; }; declare enum ComponentWrapperType { BUILT_IN = "builtIn", CUSTOM = "custom" } export interface ComponentMetadata { name: string; namespace?: ComponentNamespace; componentDocUrl?: string; componentDescription?: string; properties: ComponentPropertyDefinition[]; wrappers?: ComponentWrapper[]; defaultExported: boolean; usePortal?: boolean | string; } export interface ComponentDefinition extends ComponentMetadata { documentation: { examples: ComponentExample[]; }; info: ComponentInfo; presets: ComponentPreset[]; } export interface ComponentNamespace { importSlug: string; name: string; } export interface ComponentCategory { name: string; components: ComponentDefinition[]; } export interface DesignSystemSnapshot { name: string; settings?: string; categorizedComponents: ComponentCategory[]; vcs: VCSDetails; } export interface VCSDetails { branchName: string; commitHash: string; movedObjects?: MovedObjects; tags?: VCSTag[]; paths?: ProjectPaths; } export interface MovedObjects { diffSourceCommitHash: string; components: MovedFilePathsMap; } export interface MovedFilePathsMap { [sourcePath: string]: string; } export interface VCSTag { name: string; commitHash: string; } export {};