import { type ComputedRef } from '#imports'; type UseBlokkliRuntimeConfig = { /** * Resolve a canonical color id to its current hex. * * Reads `app.config.blokkli.colorOptions` first; if the id is missing, * disabled (null override on the id itself or its ``), or null * /undefined to begin with, cascades through `colorPalette` in order * and returns the first that resolves. Falls back to `FALLBACK_HEX` * only when every palette entry is also gone. */ resolveColorHex: (id: string | null | undefined) => string; /** * Ordered canonical color ids with disabled entries already filtered * out — a `: null` family-disable drops `.`, * a direct `: null` drops that id. Cycle through this for default * color assignment (e.g. dynamic chart series). */ colorPalette: ComputedRef; }; /** * Runtime-only config surface for userland and integrator components * (chart renderers, custom blocks, …) outside the editor. * * Sources: * - `app.config.blokkli.colorOptions` — flat `Record` * seeded by the module with every canonical id (bare for flat colors, * `.` for ramped colors) at its build-time hex. `null` * disables. The bare `` is kept for ramped colors so userland * can family-disable with `: null`. This is the user-overridable * surface — `updateAppConfig` deep-merges into it. * - `#blokkli-build/config` → `colorPalette` — ordered canonical ids * (one per declared family — flat ids verbatim, ramped ids as * `.`). Build-time static data, NOT in appConfig * because it's not userland-overridable. Used as the cascading * fallback for unresolved ids. * * Returns: * - `resolveColorHex(id)` — flat lookup. If the requested id is missing * or disabled, cascade through the enabled palette in order and return * the first one that resolves. If even that yields nothing, return * `FALLBACK_HEX`. * - `colorPalette` — computed ordered canonical ids with disabled * entries already filtered out (a `: null` family-disable drops * `.`; a direct `: null` drops that id). Userland * can cycle through this directly to assign default colors — no need * to second-guess which ids are still live. */ export declare function useBlokkliRuntimeConfig(): UseBlokkliRuntimeConfig; export {};