import z from "zod/v4"; export declare class Theme { private readonly basePath; readonly content: T; constructor(basePath: string, content: T); getFile(file: string): Buffer; } export declare class ThemeManager { readonly schema: Schema; private _defaultTheme; private logger; /** * Reserved anchor id referring to the canvas itself. */ static readonly CANVAS_ANCHOR_ID = "$canvas"; static readonly ANCHOR_LOCATION: z.ZodLiteral<"top_left" | "top_right" | "bottom_left" | "bottom_right">; static readonly ANCHOR: z.ZodObject<{ id: z.ZodDefault; location: z.ZodDefault>; }, z.core.$strip>; static readonly ELEMENT: z.ZodObject<{ type: z.ZodString; x: z.ZodNumber; y: z.ZodNumber; id: z.ZodOptional; anchor: z.ZodOptional; location: z.ZodDefault>; }, z.core.$strip>>; }, z.core.$strip>; static readonly ELEMENTS: z.ZodDiscriminatedUnion<[z.ZodObject<{ type: z.ZodString; x: z.ZodNumber; y: z.ZodNumber; id: z.ZodOptional; anchor: z.ZodOptional; location: z.ZodDefault>; }, z.core.$strip>>; }, z.core.$strip>], "type">; /** * Loose shapes used to inspect the layout of an already validated theme. */ private static readonly LAYOUT_ELEMENT; private static readonly LAYOUT_CONTENT; static readonly BASE_OBJECT: z.ZodObject<{ name: z.ZodString; }, z.core.$strip>; static readonly BASE_THEME: z.ZodObject<{ name: z.ZodString; displayName: z.ZodString; width: z.ZodNumber; height: z.ZodNumber; layout: z.ZodOptional>; }, z.core.$strip>>; }, z.core.$strip>; private loadedThemes; get defaultTheme(): string; private set defaultTheme(value); constructor(schema: Schema, searchPaths: string[] | undefined, _defaultTheme: string); validate(theme: unknown): z.infer | null; /** * Report broken layout references. A broken reference does not stop a theme from loading, * the element falls back to being anchored to the top left corner of the canvas instead. */ private checkLayoutReferences; has(themeName: string): boolean; get(themeName: string): Theme> | null; load(path: string): boolean; }