UNPKG

studiocms

Version:

Astro Native CMS for AstroDB. Built from the ground up by the Astro community.

1,567 lines 127 kB
import type { AvailableIcons } from 'studiocms:ui/icons'; import type { AstroIntegration } from 'astro'; import { z } from 'astro/zod'; import type { SanitizeOptions } from 'ultrahtml/transformers/sanitize'; export declare const astroIntegrationSchema: z.Schema<AstroIntegration>; /** * Schema for a StudioCMS colorway. */ export declare const StudioCMSColorway: z.ZodEnum<["primary", "success", "warning", "danger", "info", "mono"]>; /** * A union schema that represents different types of field schemas. * This schema can be one of the following: * - CheckboxFieldSchema * - TextInputFieldSchema * - TextAreaFieldSchema * - RadioGroupFieldSchema * - SelectFieldSchema */ export declare const FieldSchema: z.ZodUnion<[z.ZodObject<{ /** * The name of the field used in the form submission data */ name: z.ZodString; /** * The label of the field displayed in the form */ label: z.ZodString; /** * Is the field required */ required: z.ZodOptional<z.ZodBoolean>; /** * Is the field read only (disabled) */ readOnly: z.ZodOptional<z.ZodBoolean>; } & { color: z.ZodOptional<z.ZodEnum<["primary", "success", "warning", "danger", "info", "mono"]>>; } & { input: z.ZodLiteral<"checkbox">; defaultChecked: z.ZodOptional<z.ZodBoolean>; size: z.ZodOptional<z.ZodEnum<["sm", "md", "lg"]>>; }, "strip", z.ZodTypeAny, { name: string; label: string; input: "checkbox"; required?: boolean | undefined; readOnly?: boolean | undefined; color?: "primary" | "success" | "warning" | "danger" | "info" | "mono" | undefined; defaultChecked?: boolean | undefined; size?: "sm" | "md" | "lg" | undefined; }, { name: string; label: string; input: "checkbox"; required?: boolean | undefined; readOnly?: boolean | undefined; color?: "primary" | "success" | "warning" | "danger" | "info" | "mono" | undefined; defaultChecked?: boolean | undefined; size?: "sm" | "md" | "lg" | undefined; }>, z.ZodObject<{ /** * The name of the field used in the form submission data */ name: z.ZodString; /** * The label of the field displayed in the form */ label: z.ZodString; /** * Is the field required */ required: z.ZodOptional<z.ZodBoolean>; /** * Is the field read only (disabled) */ readOnly: z.ZodOptional<z.ZodBoolean>; } & { placeholder: z.ZodOptional<z.ZodString>; } & { input: z.ZodLiteral<"input">; type: z.ZodOptional<z.ZodEnum<["text", "password", "email", "number", "tel", "url", "search"]>>; defaultValue: z.ZodOptional<z.ZodString>; }, "strip", z.ZodTypeAny, { name: string; label: string; input: "input"; type?: "number" | "text" | "password" | "email" | "tel" | "url" | "search" | undefined; required?: boolean | undefined; readOnly?: boolean | undefined; placeholder?: string | undefined; defaultValue?: string | undefined; }, { name: string; label: string; input: "input"; type?: "number" | "text" | "password" | "email" | "tel" | "url" | "search" | undefined; required?: boolean | undefined; readOnly?: boolean | undefined; placeholder?: string | undefined; defaultValue?: string | undefined; }>, z.ZodObject<{ /** * The name of the field used in the form submission data */ name: z.ZodString; /** * The label of the field displayed in the form */ label: z.ZodString; /** * Is the field required */ required: z.ZodOptional<z.ZodBoolean>; /** * Is the field read only (disabled) */ readOnly: z.ZodOptional<z.ZodBoolean>; } & { placeholder: z.ZodOptional<z.ZodString>; } & { input: z.ZodLiteral<"textarea">; defaultValue: z.ZodOptional<z.ZodString>; }, "strip", z.ZodTypeAny, { name: string; label: string; input: "textarea"; required?: boolean | undefined; readOnly?: boolean | undefined; placeholder?: string | undefined; defaultValue?: string | undefined; }, { name: string; label: string; input: "textarea"; required?: boolean | undefined; readOnly?: boolean | undefined; placeholder?: string | undefined; defaultValue?: string | undefined; }>, z.ZodObject<{ /** * The name of the field used in the form submission data */ name: z.ZodString; /** * The label of the field displayed in the form */ label: z.ZodString; /** * Is the field required */ required: z.ZodOptional<z.ZodBoolean>; /** * Is the field read only (disabled) */ readOnly: z.ZodOptional<z.ZodBoolean>; } & { color: z.ZodOptional<z.ZodEnum<["primary", "success", "warning", "danger", "info", "mono"]>>; } & { input: z.ZodLiteral<"radio">; direction: z.ZodOptional<z.ZodEnum<["horizontal", "vertical"]>>; defaultValue: z.ZodOptional<z.ZodString>; options: z.ZodArray<z.ZodObject<{ label: z.ZodString; value: z.ZodString; disabled: z.ZodOptional<z.ZodBoolean>; }, "strip", z.ZodTypeAny, { value: string; label: string; disabled?: boolean | undefined; }, { value: string; label: string; disabled?: boolean | undefined; }>, "many">; }, "strip", z.ZodTypeAny, { options: { value: string; label: string; disabled?: boolean | undefined; }[]; name: string; label: string; input: "radio"; required?: boolean | undefined; readOnly?: boolean | undefined; color?: "primary" | "success" | "warning" | "danger" | "info" | "mono" | undefined; defaultValue?: string | undefined; direction?: "horizontal" | "vertical" | undefined; }, { options: { value: string; label: string; disabled?: boolean | undefined; }[]; name: string; label: string; input: "radio"; required?: boolean | undefined; readOnly?: boolean | undefined; color?: "primary" | "success" | "warning" | "danger" | "info" | "mono" | undefined; defaultValue?: string | undefined; direction?: "horizontal" | "vertical" | undefined; }>, z.ZodObject<{ /** * The name of the field used in the form submission data */ name: z.ZodString; /** * The label of the field displayed in the form */ label: z.ZodString; /** * Is the field required */ required: z.ZodOptional<z.ZodBoolean>; /** * Is the field read only (disabled) */ readOnly: z.ZodOptional<z.ZodBoolean>; } & { placeholder: z.ZodOptional<z.ZodString>; } & { input: z.ZodLiteral<"select">; type: z.ZodOptional<z.ZodEnum<["basic", "search"]>>; defaultValue: z.ZodOptional<z.ZodString>; options: z.ZodArray<z.ZodObject<{ label: z.ZodString; value: z.ZodString; disabled: z.ZodOptional<z.ZodBoolean>; }, "strip", z.ZodTypeAny, { value: string; label: string; disabled?: boolean | undefined; }, { value: string; label: string; disabled?: boolean | undefined; }>, "many">; }, "strip", z.ZodTypeAny, { options: { value: string; label: string; disabled?: boolean | undefined; }[]; name: string; label: string; input: "select"; type?: "search" | "basic" | undefined; required?: boolean | undefined; readOnly?: boolean | undefined; placeholder?: string | undefined; defaultValue?: string | undefined; }, { options: { value: string; label: string; disabled?: boolean | undefined; }[]; name: string; label: string; input: "select"; type?: "search" | "basic" | undefined; required?: boolean | undefined; readOnly?: boolean | undefined; placeholder?: string | undefined; defaultValue?: string | undefined; }>]>; /** * A schema that represents the settings field. * It is a union of `FieldSchema` and `RowFieldSchema`. */ export declare const SettingsFieldSchema: z.ZodUnion<[z.ZodUnion<[z.ZodObject<{ /** * The name of the field used in the form submission data */ name: z.ZodString; /** * The label of the field displayed in the form */ label: z.ZodString; /** * Is the field required */ required: z.ZodOptional<z.ZodBoolean>; /** * Is the field read only (disabled) */ readOnly: z.ZodOptional<z.ZodBoolean>; } & { color: z.ZodOptional<z.ZodEnum<["primary", "success", "warning", "danger", "info", "mono"]>>; } & { input: z.ZodLiteral<"checkbox">; defaultChecked: z.ZodOptional<z.ZodBoolean>; size: z.ZodOptional<z.ZodEnum<["sm", "md", "lg"]>>; }, "strip", z.ZodTypeAny, { name: string; label: string; input: "checkbox"; required?: boolean | undefined; readOnly?: boolean | undefined; color?: "primary" | "success" | "warning" | "danger" | "info" | "mono" | undefined; defaultChecked?: boolean | undefined; size?: "sm" | "md" | "lg" | undefined; }, { name: string; label: string; input: "checkbox"; required?: boolean | undefined; readOnly?: boolean | undefined; color?: "primary" | "success" | "warning" | "danger" | "info" | "mono" | undefined; defaultChecked?: boolean | undefined; size?: "sm" | "md" | "lg" | undefined; }>, z.ZodObject<{ /** * The name of the field used in the form submission data */ name: z.ZodString; /** * The label of the field displayed in the form */ label: z.ZodString; /** * Is the field required */ required: z.ZodOptional<z.ZodBoolean>; /** * Is the field read only (disabled) */ readOnly: z.ZodOptional<z.ZodBoolean>; } & { placeholder: z.ZodOptional<z.ZodString>; } & { input: z.ZodLiteral<"input">; type: z.ZodOptional<z.ZodEnum<["text", "password", "email", "number", "tel", "url", "search"]>>; defaultValue: z.ZodOptional<z.ZodString>; }, "strip", z.ZodTypeAny, { name: string; label: string; input: "input"; type?: "number" | "text" | "password" | "email" | "tel" | "url" | "search" | undefined; required?: boolean | undefined; readOnly?: boolean | undefined; placeholder?: string | undefined; defaultValue?: string | undefined; }, { name: string; label: string; input: "input"; type?: "number" | "text" | "password" | "email" | "tel" | "url" | "search" | undefined; required?: boolean | undefined; readOnly?: boolean | undefined; placeholder?: string | undefined; defaultValue?: string | undefined; }>, z.ZodObject<{ /** * The name of the field used in the form submission data */ name: z.ZodString; /** * The label of the field displayed in the form */ label: z.ZodString; /** * Is the field required */ required: z.ZodOptional<z.ZodBoolean>; /** * Is the field read only (disabled) */ readOnly: z.ZodOptional<z.ZodBoolean>; } & { placeholder: z.ZodOptional<z.ZodString>; } & { input: z.ZodLiteral<"textarea">; defaultValue: z.ZodOptional<z.ZodString>; }, "strip", z.ZodTypeAny, { name: string; label: string; input: "textarea"; required?: boolean | undefined; readOnly?: boolean | undefined; placeholder?: string | undefined; defaultValue?: string | undefined; }, { name: string; label: string; input: "textarea"; required?: boolean | undefined; readOnly?: boolean | undefined; placeholder?: string | undefined; defaultValue?: string | undefined; }>, z.ZodObject<{ /** * The name of the field used in the form submission data */ name: z.ZodString; /** * The label of the field displayed in the form */ label: z.ZodString; /** * Is the field required */ required: z.ZodOptional<z.ZodBoolean>; /** * Is the field read only (disabled) */ readOnly: z.ZodOptional<z.ZodBoolean>; } & { color: z.ZodOptional<z.ZodEnum<["primary", "success", "warning", "danger", "info", "mono"]>>; } & { input: z.ZodLiteral<"radio">; direction: z.ZodOptional<z.ZodEnum<["horizontal", "vertical"]>>; defaultValue: z.ZodOptional<z.ZodString>; options: z.ZodArray<z.ZodObject<{ label: z.ZodString; value: z.ZodString; disabled: z.ZodOptional<z.ZodBoolean>; }, "strip", z.ZodTypeAny, { value: string; label: string; disabled?: boolean | undefined; }, { value: string; label: string; disabled?: boolean | undefined; }>, "many">; }, "strip", z.ZodTypeAny, { options: { value: string; label: string; disabled?: boolean | undefined; }[]; name: string; label: string; input: "radio"; required?: boolean | undefined; readOnly?: boolean | undefined; color?: "primary" | "success" | "warning" | "danger" | "info" | "mono" | undefined; defaultValue?: string | undefined; direction?: "horizontal" | "vertical" | undefined; }, { options: { value: string; label: string; disabled?: boolean | undefined; }[]; name: string; label: string; input: "radio"; required?: boolean | undefined; readOnly?: boolean | undefined; color?: "primary" | "success" | "warning" | "danger" | "info" | "mono" | undefined; defaultValue?: string | undefined; direction?: "horizontal" | "vertical" | undefined; }>, z.ZodObject<{ /** * The name of the field used in the form submission data */ name: z.ZodString; /** * The label of the field displayed in the form */ label: z.ZodString; /** * Is the field required */ required: z.ZodOptional<z.ZodBoolean>; /** * Is the field read only (disabled) */ readOnly: z.ZodOptional<z.ZodBoolean>; } & { placeholder: z.ZodOptional<z.ZodString>; } & { input: z.ZodLiteral<"select">; type: z.ZodOptional<z.ZodEnum<["basic", "search"]>>; defaultValue: z.ZodOptional<z.ZodString>; options: z.ZodArray<z.ZodObject<{ label: z.ZodString; value: z.ZodString; disabled: z.ZodOptional<z.ZodBoolean>; }, "strip", z.ZodTypeAny, { value: string; label: string; disabled?: boolean | undefined; }, { value: string; label: string; disabled?: boolean | undefined; }>, "many">; }, "strip", z.ZodTypeAny, { options: { value: string; label: string; disabled?: boolean | undefined; }[]; name: string; label: string; input: "select"; type?: "search" | "basic" | undefined; required?: boolean | undefined; readOnly?: boolean | undefined; placeholder?: string | undefined; defaultValue?: string | undefined; }, { options: { value: string; label: string; disabled?: boolean | undefined; }[]; name: string; label: string; input: "select"; type?: "search" | "basic" | undefined; required?: boolean | undefined; readOnly?: boolean | undefined; placeholder?: string | undefined; defaultValue?: string | undefined; }>]>, z.ZodObject<{ /** * The name of the field used in the form submission data */ name: z.ZodString; /** * The label of the field displayed in the form */ label: z.ZodString; /** * Is the field required */ required: z.ZodOptional<z.ZodBoolean>; /** * Is the field read only (disabled) */ readOnly: z.ZodOptional<z.ZodBoolean>; } & { input: z.ZodLiteral<"row">; alignCenter: z.ZodOptional<z.ZodBoolean>; gapSize: z.ZodOptional<z.ZodEnum<["sm", "md", "lg"]>>; fields: z.ZodLazy<z.ZodArray<z.ZodUnion<[z.ZodObject<{ /** * The name of the field used in the form submission data */ name: z.ZodString; /** * The label of the field displayed in the form */ label: z.ZodString; /** * Is the field required */ required: z.ZodOptional<z.ZodBoolean>; /** * Is the field read only (disabled) */ readOnly: z.ZodOptional<z.ZodBoolean>; } & { color: z.ZodOptional<z.ZodEnum<["primary", "success", "warning", "danger", "info", "mono"]>>; } & { input: z.ZodLiteral<"checkbox">; defaultChecked: z.ZodOptional<z.ZodBoolean>; size: z.ZodOptional<z.ZodEnum<["sm", "md", "lg"]>>; }, "strip", z.ZodTypeAny, { name: string; label: string; input: "checkbox"; required?: boolean | undefined; readOnly?: boolean | undefined; color?: "primary" | "success" | "warning" | "danger" | "info" | "mono" | undefined; defaultChecked?: boolean | undefined; size?: "sm" | "md" | "lg" | undefined; }, { name: string; label: string; input: "checkbox"; required?: boolean | undefined; readOnly?: boolean | undefined; color?: "primary" | "success" | "warning" | "danger" | "info" | "mono" | undefined; defaultChecked?: boolean | undefined; size?: "sm" | "md" | "lg" | undefined; }>, z.ZodObject<{ /** * The name of the field used in the form submission data */ name: z.ZodString; /** * The label of the field displayed in the form */ label: z.ZodString; /** * Is the field required */ required: z.ZodOptional<z.ZodBoolean>; /** * Is the field read only (disabled) */ readOnly: z.ZodOptional<z.ZodBoolean>; } & { placeholder: z.ZodOptional<z.ZodString>; } & { input: z.ZodLiteral<"input">; type: z.ZodOptional<z.ZodEnum<["text", "password", "email", "number", "tel", "url", "search"]>>; defaultValue: z.ZodOptional<z.ZodString>; }, "strip", z.ZodTypeAny, { name: string; label: string; input: "input"; type?: "number" | "text" | "password" | "email" | "tel" | "url" | "search" | undefined; required?: boolean | undefined; readOnly?: boolean | undefined; placeholder?: string | undefined; defaultValue?: string | undefined; }, { name: string; label: string; input: "input"; type?: "number" | "text" | "password" | "email" | "tel" | "url" | "search" | undefined; required?: boolean | undefined; readOnly?: boolean | undefined; placeholder?: string | undefined; defaultValue?: string | undefined; }>, z.ZodObject<{ /** * The name of the field used in the form submission data */ name: z.ZodString; /** * The label of the field displayed in the form */ label: z.ZodString; /** * Is the field required */ required: z.ZodOptional<z.ZodBoolean>; /** * Is the field read only (disabled) */ readOnly: z.ZodOptional<z.ZodBoolean>; } & { placeholder: z.ZodOptional<z.ZodString>; } & { input: z.ZodLiteral<"textarea">; defaultValue: z.ZodOptional<z.ZodString>; }, "strip", z.ZodTypeAny, { name: string; label: string; input: "textarea"; required?: boolean | undefined; readOnly?: boolean | undefined; placeholder?: string | undefined; defaultValue?: string | undefined; }, { name: string; label: string; input: "textarea"; required?: boolean | undefined; readOnly?: boolean | undefined; placeholder?: string | undefined; defaultValue?: string | undefined; }>, z.ZodObject<{ /** * The name of the field used in the form submission data */ name: z.ZodString; /** * The label of the field displayed in the form */ label: z.ZodString; /** * Is the field required */ required: z.ZodOptional<z.ZodBoolean>; /** * Is the field read only (disabled) */ readOnly: z.ZodOptional<z.ZodBoolean>; } & { color: z.ZodOptional<z.ZodEnum<["primary", "success", "warning", "danger", "info", "mono"]>>; } & { input: z.ZodLiteral<"radio">; direction: z.ZodOptional<z.ZodEnum<["horizontal", "vertical"]>>; defaultValue: z.ZodOptional<z.ZodString>; options: z.ZodArray<z.ZodObject<{ label: z.ZodString; value: z.ZodString; disabled: z.ZodOptional<z.ZodBoolean>; }, "strip", z.ZodTypeAny, { value: string; label: string; disabled?: boolean | undefined; }, { value: string; label: string; disabled?: boolean | undefined; }>, "many">; }, "strip", z.ZodTypeAny, { options: { value: string; label: string; disabled?: boolean | undefined; }[]; name: string; label: string; input: "radio"; required?: boolean | undefined; readOnly?: boolean | undefined; color?: "primary" | "success" | "warning" | "danger" | "info" | "mono" | undefined; defaultValue?: string | undefined; direction?: "horizontal" | "vertical" | undefined; }, { options: { value: string; label: string; disabled?: boolean | undefined; }[]; name: string; label: string; input: "radio"; required?: boolean | undefined; readOnly?: boolean | undefined; color?: "primary" | "success" | "warning" | "danger" | "info" | "mono" | undefined; defaultValue?: string | undefined; direction?: "horizontal" | "vertical" | undefined; }>, z.ZodObject<{ /** * The name of the field used in the form submission data */ name: z.ZodString; /** * The label of the field displayed in the form */ label: z.ZodString; /** * Is the field required */ required: z.ZodOptional<z.ZodBoolean>; /** * Is the field read only (disabled) */ readOnly: z.ZodOptional<z.ZodBoolean>; } & { placeholder: z.ZodOptional<z.ZodString>; } & { input: z.ZodLiteral<"select">; type: z.ZodOptional<z.ZodEnum<["basic", "search"]>>; defaultValue: z.ZodOptional<z.ZodString>; options: z.ZodArray<z.ZodObject<{ label: z.ZodString; value: z.ZodString; disabled: z.ZodOptional<z.ZodBoolean>; }, "strip", z.ZodTypeAny, { value: string; label: string; disabled?: boolean | undefined; }, { value: string; label: string; disabled?: boolean | undefined; }>, "many">; }, "strip", z.ZodTypeAny, { options: { value: string; label: string; disabled?: boolean | undefined; }[]; name: string; label: string; input: "select"; type?: "search" | "basic" | undefined; required?: boolean | undefined; readOnly?: boolean | undefined; placeholder?: string | undefined; defaultValue?: string | undefined; }, { options: { value: string; label: string; disabled?: boolean | undefined; }[]; name: string; label: string; input: "select"; type?: "search" | "basic" | undefined; required?: boolean | undefined; readOnly?: boolean | undefined; placeholder?: string | undefined; defaultValue?: string | undefined; }>]>, "many">>; }, "strip", z.ZodTypeAny, { name: string; label: string; input: "row"; fields: ({ name: string; label: string; input: "checkbox"; required?: boolean | undefined; readOnly?: boolean | undefined; color?: "primary" | "success" | "warning" | "danger" | "info" | "mono" | undefined; defaultChecked?: boolean | undefined; size?: "sm" | "md" | "lg" | undefined; } | { name: string; label: string; input: "input"; type?: "number" | "text" | "password" | "email" | "tel" | "url" | "search" | undefined; required?: boolean | undefined; readOnly?: boolean | undefined; placeholder?: string | undefined; defaultValue?: string | undefined; } | { name: string; label: string; input: "textarea"; required?: boolean | undefined; readOnly?: boolean | undefined; placeholder?: string | undefined; defaultValue?: string | undefined; } | { options: { value: string; label: string; disabled?: boolean | undefined; }[]; name: string; label: string; input: "radio"; required?: boolean | undefined; readOnly?: boolean | undefined; color?: "primary" | "success" | "warning" | "danger" | "info" | "mono" | undefined; defaultValue?: string | undefined; direction?: "horizontal" | "vertical" | undefined; } | { options: { value: string; label: string; disabled?: boolean | undefined; }[]; name: string; label: string; input: "select"; type?: "search" | "basic" | undefined; required?: boolean | undefined; readOnly?: boolean | undefined; placeholder?: string | undefined; defaultValue?: string | undefined; })[]; required?: boolean | undefined; readOnly?: boolean | undefined; alignCenter?: boolean | undefined; gapSize?: "sm" | "md" | "lg" | undefined; }, { name: string; label: string; input: "row"; fields: ({ name: string; label: string; input: "checkbox"; required?: boolean | undefined; readOnly?: boolean | undefined; color?: "primary" | "success" | "warning" | "danger" | "info" | "mono" | undefined; defaultChecked?: boolean | undefined; size?: "sm" | "md" | "lg" | undefined; } | { name: string; label: string; input: "input"; type?: "number" | "text" | "password" | "email" | "tel" | "url" | "search" | undefined; required?: boolean | undefined; readOnly?: boolean | undefined; placeholder?: string | undefined; defaultValue?: string | undefined; } | { name: string; label: string; input: "textarea"; required?: boolean | undefined; readOnly?: boolean | undefined; placeholder?: string | undefined; defaultValue?: string | undefined; } | { options: { value: string; label: string; disabled?: boolean | undefined; }[]; name: string; label: string; input: "radio"; required?: boolean | undefined; readOnly?: boolean | undefined; color?: "primary" | "success" | "warning" | "danger" | "info" | "mono" | undefined; defaultValue?: string | undefined; direction?: "horizontal" | "vertical" | undefined; } | { options: { value: string; label: string; disabled?: boolean | undefined; }[]; name: string; label: string; input: "select"; type?: "search" | "basic" | undefined; required?: boolean | undefined; readOnly?: boolean | undefined; placeholder?: string | undefined; defaultValue?: string | undefined; })[]; required?: boolean | undefined; readOnly?: boolean | undefined; alignCenter?: boolean | undefined; gapSize?: "sm" | "md" | "lg" | undefined; }>]>; /** * Represents the type inferred from the `SettingsFieldSchema` schema. * * This type is used to define the structure of settings fields within the application. */ export type SettingsField = z.infer<typeof SettingsFieldSchema>; /** * A custom schema for i18n label translations. */ export declare const i18nLabelSchema: z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodString>, Record<string, string>, Record<string, string>>; /** * A union schema that represents different types of dashboard page schemas. * This schema can be one of the following: * - SingleSidebarSchema * - DoubleSidebarSchema */ export declare const DashboardPageSchema: z.ZodUnion<[z.ZodObject<{ /** * The title of the dashboard page */ title: z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodString>, Record<string, string>, Record<string, string>>; /** * The description of the dashboard page */ description: z.ZodString; /** * The desired route of the dashboard page */ route: z.ZodString; /** * The icon to display in the sidebar * * @default 'cube-transparent' * @optional */ icon: z.ZodOptional<z.ZodDefault<z.ZodString>>; /** * The required permissions to access the page */ requiredPermissions: z.ZodOptional<z.ZodDefault<z.ZodUnion<[z.ZodLiteral<"owner">, z.ZodLiteral<"admin">, z.ZodLiteral<"editor">, z.ZodLiteral<"visitor">, z.ZodLiteral<"none">]>>>; /** * The component to render in the page header to display action buttons */ pageActionsComponent: z.ZodOptional<z.ZodString>; /** * The component to render in the page body */ pageBodyComponent: z.ZodString; } & { /** * The sidebar layout */ sidebar: z.ZodLiteral<"single">; }, "strip", z.ZodTypeAny, { title: Record<string, string>; description: string; route: string; pageBodyComponent: string; sidebar: "single"; icon?: string | undefined; requiredPermissions?: "owner" | "admin" | "editor" | "visitor" | "none" | undefined; pageActionsComponent?: string | undefined; }, { title: Record<string, string>; description: string; route: string; pageBodyComponent: string; sidebar: "single"; icon?: string | undefined; requiredPermissions?: "owner" | "admin" | "editor" | "visitor" | "none" | undefined; pageActionsComponent?: string | undefined; }>, z.ZodObject<{ /** * The title of the dashboard page */ title: z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodString>, Record<string, string>, Record<string, string>>; /** * The description of the dashboard page */ description: z.ZodString; /** * The desired route of the dashboard page */ route: z.ZodString; /** * The icon to display in the sidebar * * @default 'cube-transparent' * @optional */ icon: z.ZodOptional<z.ZodDefault<z.ZodString>>; /** * The required permissions to access the page */ requiredPermissions: z.ZodOptional<z.ZodDefault<z.ZodUnion<[z.ZodLiteral<"owner">, z.ZodLiteral<"admin">, z.ZodLiteral<"editor">, z.ZodLiteral<"visitor">, z.ZodLiteral<"none">]>>>; /** * The component to render in the page header to display action buttons */ pageActionsComponent: z.ZodOptional<z.ZodString>; /** * The component to render in the page body */ pageBodyComponent: z.ZodString; } & { /** * The sidebar layout */ sidebar: z.ZodLiteral<"double">; /** * The component to render in the inner sidebar */ innerSidebarComponent: z.ZodString; }, "strip", z.ZodTypeAny, { title: Record<string, string>; description: string; route: string; pageBodyComponent: string; sidebar: "double"; innerSidebarComponent: string; icon?: string | undefined; requiredPermissions?: "owner" | "admin" | "editor" | "visitor" | "none" | undefined; pageActionsComponent?: string | undefined; }, { title: Record<string, string>; description: string; route: string; pageBodyComponent: string; sidebar: "double"; innerSidebarComponent: string; icon?: string | undefined; requiredPermissions?: "owner" | "admin" | "editor" | "visitor" | "none" | undefined; pageActionsComponent?: string | undefined; }>]>; /** * A union schema that represents different types of available dashboard base schemas. * This schema can be one of the following: * - AvailableSingleSchema * - AvailableDoubleSchema */ export declare const AvailableDashboardBaseSchema: z.ZodUnion<[z.ZodObject<{ /** * The title of the dashboard page */ title: z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodString>, Record<string, string>, Record<string, string>>; /** * The description of the dashboard page */ description: z.ZodString; /** * The desired route of the dashboard page */ route: z.ZodString; /** * The icon to display in the sidebar * * @default 'cube-transparent' * @optional */ icon: z.ZodOptional<z.ZodDefault<z.ZodString>>; /** * The required permissions to access the page */ requiredPermissions: z.ZodOptional<z.ZodDefault<z.ZodUnion<[z.ZodLiteral<"owner">, z.ZodLiteral<"admin">, z.ZodLiteral<"editor">, z.ZodLiteral<"visitor">, z.ZodLiteral<"none">]>>>; /** * The component to render in the page header to display action buttons */ pageActionsComponent: z.ZodOptional<z.ZodString>; /** * The component to render in the page body */ pageBodyComponent: z.ZodString; } & { /** * The slug of the dashboard page */ slug: z.ZodString; } & { /** * The sidebar layout */ sidebar: z.ZodLiteral<"single">; }, "strip", z.ZodTypeAny, { title: Record<string, string>; description: string; route: string; pageBodyComponent: string; slug: string; sidebar: "single"; icon?: string | undefined; requiredPermissions?: "owner" | "admin" | "editor" | "visitor" | "none" | undefined; pageActionsComponent?: string | undefined; }, { title: Record<string, string>; description: string; route: string; pageBodyComponent: string; slug: string; sidebar: "single"; icon?: string | undefined; requiredPermissions?: "owner" | "admin" | "editor" | "visitor" | "none" | undefined; pageActionsComponent?: string | undefined; }>, z.ZodObject<{ /** * The title of the dashboard page */ title: z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodString>, Record<string, string>, Record<string, string>>; /** * The description of the dashboard page */ description: z.ZodString; /** * The desired route of the dashboard page */ route: z.ZodString; /** * The icon to display in the sidebar * * @default 'cube-transparent' * @optional */ icon: z.ZodOptional<z.ZodDefault<z.ZodString>>; /** * The required permissions to access the page */ requiredPermissions: z.ZodOptional<z.ZodDefault<z.ZodUnion<[z.ZodLiteral<"owner">, z.ZodLiteral<"admin">, z.ZodLiteral<"editor">, z.ZodLiteral<"visitor">, z.ZodLiteral<"none">]>>>; /** * The component to render in the page header to display action buttons */ pageActionsComponent: z.ZodOptional<z.ZodString>; /** * The component to render in the page body */ pageBodyComponent: z.ZodString; } & { /** * The slug of the dashboard page */ slug: z.ZodString; } & { /** * The sidebar layout */ sidebar: z.ZodLiteral<"double">; /** * The component to render in the inner sidebar */ innerSidebarComponent: z.ZodString; }, "strip", z.ZodTypeAny, { title: Record<string, string>; description: string; route: string; pageBodyComponent: string; slug: string; sidebar: "double"; innerSidebarComponent: string; icon?: string | undefined; requiredPermissions?: "owner" | "admin" | "editor" | "visitor" | "none" | undefined; pageActionsComponent?: string | undefined; }, { title: Record<string, string>; description: string; route: string; pageBodyComponent: string; slug: string; sidebar: "double"; innerSidebarComponent: string; icon?: string | undefined; requiredPermissions?: "owner" | "admin" | "editor" | "visitor" | "none" | undefined; pageActionsComponent?: string | undefined; }>]>; /** * A union schema that represents different types of final dashboard base schemas. * This schema can be one of the following: * - FinalSingleSchema * - FinalDoubleSchema */ export declare const FinalDashboardBaseSchema: z.ZodUnion<[z.ZodObject<{ /** * The title of the dashboard page */ title: z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodString>, Record<string, string>, Record<string, string>>; /** * The description of the dashboard page */ description: z.ZodString; /** * The desired route of the dashboard page */ route: z.ZodString; /** * The icon to display in the sidebar * * @default 'cube-transparent' * @optional */ icon: z.ZodOptional<z.ZodDefault<z.ZodString>>; /** * The required permissions to access the page */ requiredPermissions: z.ZodOptional<z.ZodDefault<z.ZodUnion<[z.ZodLiteral<"owner">, z.ZodLiteral<"admin">, z.ZodLiteral<"editor">, z.ZodLiteral<"visitor">, z.ZodLiteral<"none">]>>>; /** * The component to render in the page header to display action buttons */ pageActionsComponent: z.ZodOptional<z.ZodString>; /** * The component to render in the page body */ pageBodyComponent: z.ZodString; } & { /** * The slug of the dashboard page */ slug: z.ZodString; } & { components: z.ZodObject<{ PageActionsComponent: z.ZodOptional<z.ZodType<(_props: any) => any, z.ZodTypeDef, (_props: any) => any>>; PageBodyComponent: z.ZodType<(_props: any) => any, z.ZodTypeDef, (_props: any) => any>; InnerSidebarComponent: z.ZodOptional<z.ZodType<(_props: any) => any, z.ZodTypeDef, (_props: any) => any>>; }, "strip", z.ZodTypeAny, { PageBodyComponent: (_props: any) => any; PageActionsComponent?: ((_props: any) => any) | undefined; InnerSidebarComponent?: ((_props: any) => any) | undefined; }, { PageBodyComponent: (_props: any) => any; PageActionsComponent?: ((_props: any) => any) | undefined; InnerSidebarComponent?: ((_props: any) => any) | undefined; }>; } & { /** * The sidebar layout */ sidebar: z.ZodLiteral<"single">; }, "strip", z.ZodTypeAny, { title: Record<string, string>; description: string; route: string; pageBodyComponent: string; slug: string; components: { PageBodyComponent: (_props: any) => any; PageActionsComponent?: ((_props: any) => any) | undefined; InnerSidebarComponent?: ((_props: any) => any) | undefined; }; sidebar: "single"; icon?: string | undefined; requiredPermissions?: "owner" | "admin" | "editor" | "visitor" | "none" | undefined; pageActionsComponent?: string | undefined; }, { title: Record<string, string>; description: string; route: string; pageBodyComponent: string; slug: string; components: { PageBodyComponent: (_props: any) => any; PageActionsComponent?: ((_props: any) => any) | undefined; InnerSidebarComponent?: ((_props: any) => any) | undefined; }; sidebar: "single"; icon?: string | undefined; requiredPermissions?: "owner" | "admin" | "editor" | "visitor" | "none" | undefined; pageActionsComponent?: string | undefined; }>, z.ZodObject<{ /** * The title of the dashboard page */ title: z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodString>, Record<string, string>, Record<string, string>>; /** * The description of the dashboard page */ description: z.ZodString; /** * The desired route of the dashboard page */ route: z.ZodString; /** * The icon to display in the sidebar * * @default 'cube-transparent' * @optional */ icon: z.ZodOptional<z.ZodDefault<z.ZodString>>; /** * The required permissions to access the page */ requiredPermissions: z.ZodOptional<z.ZodDefault<z.ZodUnion<[z.ZodLiteral<"owner">, z.ZodLiteral<"admin">, z.ZodLiteral<"editor">, z.ZodLiteral<"visitor">, z.ZodLiteral<"none">]>>>; /** * The component to render in the page header to display action buttons */ pageActionsComponent: z.ZodOptional<z.ZodString>; /** * The component to render in the page body */ pageBodyComponent: z.ZodString; } & { /** * The slug of the dashboard page */ slug: z.ZodString; } & { components: z.ZodObject<{ PageActionsComponent: z.ZodOptional<z.ZodType<(_props: any) => any, z.ZodTypeDef, (_props: any) => any>>; PageBodyComponent: z.ZodType<(_props: any) => any, z.ZodTypeDef, (_props: any) => any>; InnerSidebarComponent: z.ZodOptional<z.ZodType<(_props: any) => any, z.ZodTypeDef, (_props: any) => any>>; }, "strip", z.ZodTypeAny, { PageBodyComponent: (_props: any) => any; PageActionsComponent?: ((_props: any) => any) | undefined; InnerSidebarComponent?: ((_props: any) => any) | undefined; }, { PageBodyComponent: (_props: any) => any; PageActionsComponent?: ((_props: any) => any) | undefined; InnerSidebarComponent?: ((_props: any) => any) | undefined; }>; } & { /** * The sidebar layout */ sidebar: z.ZodLiteral<"double">; /** * The component to render in the inner sidebar */ innerSidebarComponent: z.ZodString; }, "strip", z.ZodTypeAny, { title: Record<string, string>; description: string; route: string; pageBodyComponent: string; slug: string; components: { PageBodyComponent: (_props: any) => any; PageActionsComponent?: ((_props: any) => any) | undefined; InnerSidebarComponent?: ((_props: any) => any) | undefined; }; sidebar: "double"; innerSidebarComponent: string; icon?: string | undefined; requiredPermissions?: "owner" | "admin" | "editor" | "visitor" | "none" | undefined; pageActionsComponent?: string | undefined; }, { title: Record<string, string>; description: string; route: string; pageBodyComponent: string; slug: string; components: { PageBodyComponent: (_props: any) => any; PageActionsComponent?: ((_props: any) => any) | undefined; InnerSidebarComponent?: ((_props: any) => any) | undefined; }; sidebar: "double"; innerSidebarComponent: string; icon?: string | undefined; requiredPermissions?: "owner" | "admin" | "editor" | "visitor" | "none" | undefined; pageActionsComponent?: string | undefined; }>]>; /** * Schema for an array of available dashboard pages. * * This schema defines an object with the following properties: * - `user`: An optional array of `AvailableDashboardBaseSchema` representing the available dashboard pages for users. * - `admin`: An optional array of `AvailableDashboardBaseSchema` representing the available dashboard pages for admins. */ export declare const AvailableDashboardPagesSchema: z.ZodObject<{ /** * Available dashboard pages for users */ user: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodObject<{ /** * The title of the dashboard page */ title: z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodString>, Record<string, string>, Record<string, string>>; /** * The description of the dashboard page */ description: z.ZodString; /** * The desired route of the dashboard page */ route: z.ZodString; /** * The icon to display in the sidebar * * @default 'cube-transparent' * @optional */ icon: z.ZodOptional<z.ZodDefault<z.ZodString>>; /** * The required permissions to access the page */ requiredPermissions: z.ZodOptional<z.ZodDefault<z.ZodUnion<[z.ZodLiteral<"owner">, z.ZodLiteral<"admin">, z.ZodLiteral<"editor">, z.ZodLiteral<"visitor">, z.ZodLiteral<"none">]>>>; /** * The component to render in the page header to display action buttons */ pageActionsComponent: z.ZodOptional<z.ZodString>; /** * The component to render in the page body */ pageBodyComponent: z.ZodString; } & { /** * The slug of the dashboard page */ slug: z.ZodString; } & { /** * The sidebar layout */ sidebar: z.ZodLiteral<"single">; }, "strip", z.ZodTypeAny, { title: Record<string, string>; description: string; route: string; pageBodyComponent: string; slug: string; sidebar: "single"; icon?: string | undefined; requiredPermissions?: "owner" | "admin" | "editor" | "visitor" | "none" | undefined; pageActionsComponent?: string | undefined; }, { title: Record<string, string>; description: string; route: string; pageBodyComponent: string; slug: string; sidebar: "single"; icon?: string | undefined; requiredPermissions?: "owner" | "admin" | "editor" | "visitor" | "none" | undefined; pageActionsComponent?: string | undefined; }>, z.ZodObject<{ /** * The title of the dashboard page */ title: z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodString>, Record<string, string>, Record<string, string>>; /** * The description of the dashboard page */ description: z.ZodString; /** * The desired route of the dashboard page */ route: z.ZodString; /** * The icon to display in the sidebar * * @default 'cube-transparent' * @optional */ icon: z.ZodOptional<z.ZodDefault<z.ZodString>>; /** * The required permissions to access the page */ requiredPermissions: z.ZodOptional<z.ZodDefault<z.ZodUnion<[z.ZodLiteral<"owner">, z.ZodLiteral<"admin">, z.ZodLiteral<"editor">, z.ZodLiteral<"visitor">, z.ZodLiteral<"none">]>>>; /** * The component to render in the page header to display action buttons */ pageActionsComponent: z.ZodOptional<z.ZodString>; /** * The component to render in the page body */ pageBodyComponent: z.ZodString; } & { /** * The slug of the dashboard page */ slug: z.ZodString; } & { /** * The sidebar layout */ sidebar: z.ZodLiteral<"double">; /** * The component to render in the inner sidebar */ innerSidebarComponent: z.ZodString; }, "strip", z.ZodTypeAny, { title: Record<string, string>; description: string; route: string; pageBodyComponent: string; slug: string; sidebar: "double"; innerSidebarComponent: string; icon?: string | undefined; requiredPermissions?: "owner" | "admin" | "editor" | "visitor" | "none" | undefined; pageActionsComponent?: string | undefined; }, { title: Record<string, string>; description: string; route: string; pageBodyComponent: string; slug: string; sidebar: "double"; innerSidebarComponent: string; icon?: string | undefined; requiredPermissions?: "owner" | "admin" | "editor" | "visitor" | "none" | undefined; pageActionsComponent?: string | undefined; }>]>, "many">>; /** * Available dashboard pages for admins */ admin: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodObject<{ /** * The title of the dashboard page */ title: z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodString>, Record<string, string>, Record<string, string>>; /** * The description of the dashboard page */ description: z.ZodString; /** * The desired route of the dashboard page */ route: z.ZodString; /** * The icon to display in the sidebar * * @default 'cube-transparent' * @optional */ icon: z.ZodOptional<z.ZodDefault<z.ZodString>>; /** * The required permissions to access the page */ requiredPermissions: z.ZodOptional<z.ZodDefault<z.ZodUnion<[z.ZodLiteral<"owner">, z.ZodLiteral<"admin">, z.ZodLiteral<"editor">, z.ZodLiteral<"visitor">, z.ZodLiteral<"none">]>>>; /** * The component to render in the page header to display action buttons */ pageActionsComponent: z.ZodOptional<z.ZodString>; /** * The component to render in the page body */ pageBodyComponent: z.ZodString; } & { /** * The slug of the dashboard page */ slug: z.ZodString; } & { /** * The sidebar layout */ sidebar: z.ZodLiteral<"single">; }, "strip", z.ZodTypeAny, { title: Record<string, string>; description: string; route: string; pageBodyComponent: string; slug: string; sidebar: "single"; icon?: string | undefined; requiredPermissions?: "owner" | "admin" | "editor" | "visito