import { z } from 'zod'; import type { BlokkliChartData } from '#blokkli/charts/types'; import type { McpToolContext } from '#blokkli/agent/app/types'; import type { ColorOption } from '#blokkli/types/colors'; export declare const chartTypeEnum: z.ZodEnum<{ [x: string]: string; }>; export declare const chartColorEnum: z.ZodEnum<{ [x: string]: string; }>; export declare const chartSeriesSchema: z.ZodObject<{ name: z.ZodString; color: z.ZodOptional>; data: z.ZodArray; }, z.core.$strip>; export declare const chartTranslationSchema: z.ZodObject<{ title: z.ZodOptional; categories: z.ZodOptional>; seriesNames: z.ZodOptional>; footnotes: z.ZodOptional>; prefix: z.ZodOptional; suffix: z.ZodOptional; }, z.core.$strip>; export declare const numberFormatSchema: z.ZodObject<{ locale: z.ZodOptional; decimals: z.ZodOptional; prefix: z.ZodOptional; suffix: z.ZodOptional; notation: z.ZodOptional>; }, z.core.$strip>; export declare const dateFormatSchema: z.ZodObject<{ style: z.ZodOptional>; }, z.core.$strip>; export declare const chartDataSchema: z.ZodObject<{ title: z.ZodDefault>; type: z.ZodEnum<{ [x: string]: string; }>; categories: z.ZodArray; series: z.ZodArray>; data: z.ZodArray; }, z.core.$strip>>; categoryColors: z.ZodOptional>>; footnotes: z.ZodDefault>>; typeOptions: z.ZodOptional>>; numberFormat: z.ZodOptional; decimals: z.ZodOptional; prefix: z.ZodOptional; suffix: z.ZodOptional; notation: z.ZodOptional>; }, z.core.$strip>>; dateFormat: z.ZodOptional>; }, z.core.$strip>>; translations: z.ZodOptional; categories: z.ZodOptional>; seriesNames: z.ZodOptional>; footnotes: z.ZodOptional>; prefix: z.ZodOptional; suffix: z.ZodOptional; }, z.core.$strip>>>; }, z.core.$strip>; export declare const advancedConfigSchema: z.ZodRecord; /** * Structural validation for an `advanced` chart's ECharts config. ECharts * itself ships no validator and is permissive at runtime, so this mirrors * the editor's textarea check: non-null object, not an array, non-empty. */ export declare function validateAdvancedConfig(value: unknown): { error: string; } | { value: Record; }; /** * Validate and normalize chart data. * * - Checks series data length matches categories length * - Auto-assigns missing series colors * - Auto-assigns categoryColors for pie/donut/radialBar * - Validates color IDs exist in the provided colors map * - Validates typeOptions keys against the chart type definition * - Fills typeOptions defaults */ export declare function validateChartData(data: BlokkliChartData, options: ColorOption[]): { error: string; } | { data: BlokkliChartData; }; /** * Find the option key for a chart option on a block. * * Charts are stored as a JSON option with `dataType: 'chart'` on any block. * This helper looks up the block's definition and returns the option key. */ export declare function findChartOptionKey(ctx: McpToolContext, uuid: string): { key: string; } | { error: string; }; /** * Find a bundle that has a chart option among a field's allowed bundles. * * Returns the bundle name and the option key for the chart data. */ export declare function findChartBundle(ctx: McpToolContext, allowedBundles: string[]): { bundle: string; key: string; } | { error: string; };