schemas/config
Type Aliases
'Read the “', Type Aliases, '” section'StudioCMSConfig
'Read the “', StudioCMSConfig, '” section'type StudioCMSConfig = typeof StudioCMSOptionsSchema._output;
Defined in: studiocms/packages/studiocms/src/schemas/config/index.ts:112
StudioCMSOptions
'Read the “', StudioCMSOptions, '” section'type StudioCMSOptions = typeof StudioCMSOptionsSchema._input;
Defined in: studiocms/packages/studiocms/src/schemas/config/index.ts:111
Variables
'Read the “', Variables, '” section'StudioCMSOptionsSchema
'Read the “', StudioCMSOptionsSchema, '” section'const StudioCMSOptionsSchema: ZodDefault<ZodOptional<ZodObject<{ componentRegistry: ZodOptional<ZodRecord<ZodString, ZodString>>; dashboardConfig: ZodDefault<ZodOptional<ZodObject<{ AuthConfig: ZodDefault<ZodOptional<ZodObject<..., ..., ..., ..., ...>>>; dashboardEnabled: ZodDefault<ZodOptional<ZodBoolean>>; dashboardRouteOverride: ZodOptional<ZodString>; developerConfig: ZodDefault<ZodOptional<ZodObject<..., ..., ..., ..., ...>>>; faviconURL: ZodDefault<ZodOptional<ZodString>>; inject404Route: ZodDefault<ZodOptional<ZodBoolean>>; versionCheck: ZodDefault<ZodOptional<ZodBoolean>>; }, "strip", ZodTypeAny, { AuthConfig: { enabled: boolean; providers: { auth0: boolean; discord: boolean; github: boolean; google: boolean; usernameAndPassword: boolean; usernameAndPasswordConfig: { allowUserRegistration: ...; }; }; }; dashboardEnabled: boolean; dashboardRouteOverride: string; developerConfig: { testingAndDemoMode: boolean; }; faviconURL: string; inject404Route: boolean; versionCheck: boolean; }, { AuthConfig: { enabled: ... | ... | ...; providers: ... | ...; }; dashboardEnabled: boolean; dashboardRouteOverride: string; developerConfig: { testingAndDemoMode: ... | ... | ...; }; faviconURL: string; inject404Route: boolean; versionCheck: boolean; }>>>; dateLocale: ZodDefault<ZodOptional<ZodString>>; dateTimeFormat: ZodDefault<ZodOptional<ZodType<DateTimeFormatOptions, ZodTypeDef, DateTimeFormatOptions>>>; dbStartPage: ZodDefault<ZodOptional<ZodBoolean>>; defaultFrontEndConfig: ZodDefault<ZodOptional<ZodUnion<[ZodDefault<ZodOptional<ZodObject<..., ..., ..., ..., ...>>>, ZodBoolean]>>>; imageService: ZodDefault<ZodOptional<ZodObject<{ cdnPlugin: ZodOptional<ZodEnum<[...]>>; }, "strip", ZodTypeAny, { cdnPlugin: "cloudinary-js"; }, { cdnPlugin: "cloudinary-js"; }>>>; includedIntegrations: ZodDefault<ZodOptional<ZodObject<{ robotsTXT: ZodDefault<ZodOptional<ZodUnion<...>>>; }, "strip", ZodTypeAny, { robotsTXT: | boolean | RobotsConfig; }, { robotsTXT: | boolean | RobotsConfig; }>>>; overrides: ZodDefault<ZodOptional<ZodObject<{ CustomImageOverride: ZodOptional<ZodString>; FormattedDateOverride: ZodOptional<ZodString>; }, "strip", ZodTypeAny, { CustomImageOverride: string; FormattedDateOverride: string; }, { CustomImageOverride: string; FormattedDateOverride: string; }>>>; plugins: ZodOptional<ZodType<StudioCMSPlugin[], ZodTypeDef, StudioCMSPlugin[]>>; rendererConfig: ZodDefault<ZodOptional<ZodObject<{ markdocConfig: ZodDefault<ZodOptional<ZodObject<..., ..., ..., ..., ...>>>; mdxConfig: ZodDefault<ZodOptional<ZodObject<..., ..., ..., ..., ...>>>; renderer: ZodDefault<ZodOptional<ZodUnion<...>>>; studiocms: ZodEffects<ZodDefault<ZodOptional<...>>, { autoLinkHeadings: boolean; callouts: { enabled: ...; theme: ...; }; discordSubtext: boolean; sanitize: ... | ...; }, | undefined | false | { autoLinkHeadings: ...; callouts: ...; discordSubtext: ...; sanitize: ...; }>; }, "strip", ZodTypeAny, { markdocConfig: { argParse: { file: ...; location: ...; slots: ...; }; renderType: | "html" | "react-static" | MarkdocRenderer; transformConfig: { functions: ...; nodes: ...; partials: ...; tags: ...; validation: ...; variables: ...; }; }; mdxConfig: { recmaPlugins: PluggableList; rehypePlugins: PluggableList; remarkPlugins: PluggableList; remarkRehypeOptions: { allowDangerousHtml: ... | ... | ... | ...; clobberPrefix: ... | ... | ...; file: any; footnoteBackContent: ... | ... | ... | ...; footnoteBackLabel: ... | ... | ... | ...; footnoteLabel: ... | ... | ...; footnoteLabelProperties: ... | ... | ...; footnoteLabelTagName: ... | ... | ...; handlers: any; passThrough: ... | ... | ...; unknownHandler: any; }; }; renderer: | "studiocms" | "astro" | "markdoc" | "mdx" | CustomRenderer; studiocms: { autoLinkHeadings: boolean; callouts: { enabled: boolean; theme: ... | ... | ...; }; discordSubtext: boolean; sanitize: { allowAttributes: ...; allowComments: ...; allowComponents: ...; allowCustomElements: ...; allowElements: ...; blockElements: ...; dropAttributes: ...; dropElements: ...; }; }; }, { markdocConfig: { argParse: ... | ...; renderType: ... | ... | ... | ...; transformConfig: ... | ...; }; mdxConfig: { recmaPlugins: ... | ...; rehypePlugins: ... | ...; remarkPlugins: ... | ...; remarkRehypeOptions: ... | ...; }; renderer: | "studiocms" | "astro" | "markdoc" | "mdx" | CustomRenderer; studiocms: | false | { autoLinkHeadings: ... | ... | ...; callouts: ... | ... | ...; discordSubtext: ... | ... | ...; sanitize: ... | ...; }; }>>>; sdk: ZodEffects<ZodDefault<ZodOptional<ZodUnion<[ZodBoolean, ZodObject<{ cacheConfig: ...; }, "strip", ZodTypeAny, { cacheConfig: ...; }, { cacheConfig: ...; }>]>>>, { cacheConfig: { enabled: boolean; lifetime: number; }; }, | undefined | boolean | { cacheConfig: | boolean | { lifetime: string; }; }>; verbose: ZodDefault<ZodOptional<ZodBoolean>>; }, "strip", ZodTypeAny, { componentRegistry: Record<string, string>; dashboardConfig: { AuthConfig: { enabled: boolean; providers: { auth0: boolean; discord: boolean; github: boolean; google: boolean; usernameAndPassword: boolean; usernameAndPasswordConfig: { allowUserRegistration: boolean; }; }; }; dashboardEnabled: boolean; dashboardRouteOverride: string; developerConfig: { testingAndDemoMode: boolean; }; faviconURL: string; inject404Route: boolean; versionCheck: boolean; }; dateLocale: string; dateTimeFormat: DateTimeFormatOptions; dbStartPage: boolean; defaultFrontEndConfig: | boolean | { favicon: string; htmlDefaultHead: { attrs: Record<string, undefined | string | boolean>; content: string; tag: | "title" | "base" | "link" | "style" | "meta" | "script" | "noscript" | "template"; }[]; htmlDefaultLanguage: string; injectQuickActionsMenu: boolean; }; imageService: { cdnPlugin: "cloudinary-js"; }; includedIntegrations: { robotsTXT: | boolean | RobotsConfig; }; overrides: { CustomImageOverride: string; FormattedDateOverride: string; }; plugins: StudioCMSPlugin[]; rendererConfig: { markdocConfig: { argParse: { file: string; location: boolean; slots: boolean; }; renderType: | "html" | "react-static" | MarkdocRenderer; transformConfig: { functions: Record<string, any>; nodes: Record<string, {}>; partials: Record<string, any>; tags: Record<string, {}>; validation: { environment: ... | ...; parents: ... | ...; validateFunctions: ... | ... | ...; }; variables: Record<string, any>; }; }; mdxConfig: { recmaPlugins: PluggableList; rehypePlugins: PluggableList; remarkPlugins: PluggableList; remarkRehypeOptions: { allowDangerousHtml: null | boolean; clobberPrefix: null | string; file: any; footnoteBackContent: | null | string | (...args: [number, number, ...unknown[]]) => | string | { type: ...; value: ...; } | { children: ...; properties: ...; tagName: ...; type: ...; } | { type: ...; value: ...; } | ...[]; footnoteBackLabel: | null | string | (...args: [number, number, ...unknown[]]) => string; footnoteLabel: null | string; footnoteLabelProperties: | null | Record<string, undefined | null | string | number | boolean | ...[]>; footnoteLabelTagName: null | string; handlers: any; passThrough: null | string[]; unknownHandler: any; }; }; renderer: | "studiocms" | "astro" | "markdoc" | "mdx" | CustomRenderer; studiocms: { autoLinkHeadings: boolean; callouts: { enabled: boolean; theme: "github" | "obsidian" | "vitepress"; }; discordSubtext: boolean; sanitize: { allowAttributes: Record<string, ...[]>; allowComments: boolean; allowComponents: boolean; allowCustomElements: boolean; allowElements: string[]; blockElements: string[]; dropAttributes: Record<string, ...[]>; dropElements: string[]; }; }; }; sdk: { cacheConfig: { enabled: boolean; lifetime: number; }; }; verbose: boolean; }, { componentRegistry: Record<string, string>; dashboardConfig: { AuthConfig: { enabled: boolean; providers: { auth0: ... | ... | ...; discord: ... | ... | ...; github: ... | ... | ...; google: ... | ... | ...; usernameAndPassword: ... | ... | ...; usernameAndPasswordConfig: ... | ...; }; }; dashboardEnabled: boolean; dashboardRouteOverride: string; developerConfig: { testingAndDemoMode: boolean; }; faviconURL: string; inject404Route: boolean; versionCheck: boolean; }; dateLocale: string; dateTimeFormat: DateTimeFormatOptions; dbStartPage: boolean; defaultFrontEndConfig: | boolean | { favicon: string; htmlDefaultHead: { attrs: Record<..., ...>; content: string; tag: | "title" | "base" | "link" | "style" | "meta" | "script" | "noscript" | "template"; }[]; htmlDefaultLanguage: string; injectQuickActionsMenu: boolean; }; imageService: { cdnPlugin: "cloudinary-js"; }; includedIntegrations: { robotsTXT: | boolean | RobotsConfig; }; overrides: { CustomImageOverride: string; FormattedDateOverride: string; }; plugins: StudioCMSPlugin[]; rendererConfig: { markdocConfig: { argParse: { file: ... | ...; location: ... | ... | ...; slots: ... | ... | ...; }; renderType: | "html" | "react-static" | MarkdocRenderer; transformConfig: { functions: ... | ...; nodes: ... | ...; partials: ... | ...; tags: ... | ...; validation: ... | ...; variables: ... | ...; }; }; mdxConfig: { recmaPlugins: PluggableList; rehypePlugins: PluggableList; remarkPlugins: PluggableList; remarkRehypeOptions: { allowDangerousHtml: ... | ... | ... | ...; clobberPrefix: ... | ... | ...; file: any; footnoteBackContent: ... | ... | ... | ...; footnoteBackLabel: ... | ... | ... | ...; footnoteLabel: ... | ... | ...; footnoteLabelProperties: ... | ... | ...; footnoteLabelTagName: ... | ... | ...; handlers: any; passThrough: ... | ... | ...; unknownHandler: any; }; }; renderer: | "studiocms" | "astro" | "markdoc" | "mdx" | CustomRenderer; studiocms: | false | { autoLinkHeadings: boolean; callouts: | false | { theme: ... | ... | ... | ...; }; discordSubtext: boolean; sanitize: { allowAttributes: ... | ...; allowComments: ... | ... | ...; allowComponents: ... | ... | ...; allowCustomElements: ... | ... | ...; allowElements: ... | ...; blockElements: ... | ...; dropAttributes: ... | ...; dropElements: ... | ...; }; }; }; sdk: | boolean | { cacheConfig: | boolean | { lifetime: string; }; }; verbose: boolean;}>>>;
Defined in: studiocms/packages/studiocms/src/schemas/config/index.ts:33
References
'Read the “', References, '” section'CustomRenderer
'Read the “', CustomRenderer, '” section'Re-exports CustomRenderer
dashboardConfigSchema
'Read the “', dashboardConfigSchema, '” section'Re-exports dashboardConfigSchema
DefaultFrontEndConfigSchema
'Read the “', DefaultFrontEndConfigSchema, '” section'Re-exports DefaultFrontEndConfigSchema
FrontEndConfigSchema
'Read the “', FrontEndConfigSchema, '” section'Re-exports FrontEndConfigSchema
imageServiceSchema
'Read the “', imageServiceSchema, '” section'Re-exports imageServiceSchema
overridesSchema
'Read the “', overridesSchema, '” section'Re-exports overridesSchema
Re-exports Renderer
StudioCMSRendererConfig
'Read the “', StudioCMSRendererConfig, '” section'Re-exports StudioCMSRendererConfig
StudioCMSRendererConfigSchema
'Read the “', StudioCMSRendererConfigSchema, '” section'Re-exports StudioCMSRendererConfigSchema
TransformToProcessor
'Read the “', TransformToProcessor, '” section'Re-exports TransformToProcessor