import { ComponentsOverride, AttributesOverride, FlattenedKeyType } from "../client/useHusar.js"; import { ModelTypes } from "../zeus/index.js"; export declare function HusarComponents(host?: readonly [string, { readonly headers?: { husar_token: string; } | undefined; }]): { View: ({ name, data, fields, components, attributes, state, setState, onSubmit: submit, }: { name: T; data?: (T extends string ? (`View${T}` extends keyof ZEUS_MODELS ? ZEUS_MODELS[`View${T}`] : never) : never) | null; fields: ModelTypes["CMSField"][]; components?: ComponentsOverride; attributes?: AttributesOverride; state?: Partial<{ [K in import("../client/useHusar.js").FlattenKeysStart extends infer T_1 ? T_1 extends import("../client/useHusar.js").FlattenKeysStart ? T_1 extends `${infer R_1}.` ? R_1 : T_1 : never : never]: FlattenedKeyType>; }>; setState?: (state: Partial<{ [K_1 in import("../client/useHusar.js").FlattenKeysStart extends infer T_2 ? T_2 extends import("../client/useHusar.js").FlattenKeysStart ? T_2 extends `${infer R_1}.` ? R_1 : T_2 : never : never]: FlattenedKeyType>; }>) => void; onSubmit?: (data: Partial<{ [K_1 in import("../client/useHusar.js").FlattenKeysStart extends infer T_2 ? T_2 extends import("../client/useHusar.js").FlattenKeysStart ? T_2 extends `${infer R_1}.` ? R_1 : T_2 : never : never]: FlattenedKeyType>; }> | undefined) => Promise; }) => import("react/jsx-runtime").JSX.Element; Model: ({ name, data, fields, components, attributes, state, setState, onSubmit: submit, }: { name: T; data?: (T extends keyof ZEUS_MODELS ? ZEUS_MODELS[T] : never) | null; fields: ModelTypes["CMSField"][]; components?: ComponentsOverride; attributes?: AttributesOverride; state?: Partial<{ [K in import("../client/useHusar.js").FlattenKeysStart extends infer T_1 ? T_1 extends import("../client/useHusar.js").FlattenKeysStart ? T_1 extends `${infer R_1}.` ? R_1 : T_1 : never : never]: FlattenedKeyType>; }>; setState?: (state: Partial<{ [K_1 in import("../client/useHusar.js").FlattenKeysStart extends infer T_2 ? T_2 extends import("../client/useHusar.js").FlattenKeysStart ? T_2 extends `${infer R_1}.` ? R_1 : T_2 : never : never]: FlattenedKeyType>; }>) => void; onSubmit?: (data: Partial<{ [K_1 in import("../client/useHusar.js").FlattenKeysStart extends infer T_2 ? T_2 extends import("../client/useHusar.js").FlattenKeysStart ? T_2 extends `${infer R_1}.` ? R_1 : T_2 : never : never]: FlattenedKeyType>; }> | undefined) => Promise; }) => import("react/jsx-runtime").JSX.Element; Shape: ({ name, data, fields, components, attributes, state, setState, onSubmit: submit, }: { name: T; data?: (T extends string ? (`Shape${T}` extends keyof ZEUS_MODELS ? ZEUS_MODELS[`Shape${T}`] : never) : never) | null; fields: ModelTypes["CMSField"][]; components?: ComponentsOverride; attributes?: AttributesOverride; state?: Partial<{ [K in import("../client/useHusar.js").FlattenKeysStart extends infer T_1 ? T_1 extends import("../client/useHusar.js").FlattenKeysStart ? T_1 extends `${infer R_1}.` ? R_1 : T_1 : never : never]: FlattenedKeyType>; }>; setState?: (state: Partial<{ [K_1 in import("../client/useHusar.js").FlattenKeysStart extends infer T_2 ? T_2 extends import("../client/useHusar.js").FlattenKeysStart ? T_2 extends `${infer R_1}.` ? R_1 : T_2 : never : never]: FlattenedKeyType>; }>) => void; onSubmit?: (data: Partial<{ [K_1 in import("../client/useHusar.js").FlattenKeysStart extends infer T_2 ? T_2 extends import("../client/useHusar.js").FlattenKeysStart ? T_2 extends `${infer R_1}.` ? R_1 : T_2 : never : never]: FlattenedKeyType>; }> | undefined) => Promise; }) => import("react/jsx-runtime").JSX.Element; };