/** * adowire — Development-mode template state proxy * * Wraps the data object passed to Edge.js `render()` in a `Proxy` that logs * warnings whenever the template reads a property that does not exist in the * component's public state — **including nested objects**. * * **Why?** * Edge.js templates are untyped — `{{ submittedData.naem }}` (a typo for * `name`) silently evaluates to `undefined` and renders an empty string. * The dev proxy turns those silent failures into visible console warnings * so you catch them immediately during development. * * **Deep proxying** * When a property access returns a plain object, that object is itself * wrapped in a proxy so that `{{ submittedData.naem }}` warns with the * full path `submittedData.naem`. Proxies are cached per-object in a * `WeakMap` so repeated access never creates duplicates. * * The proxy is **only** meant for development; in production the raw data * object is passed through unchanged (zero overhead). * * @module */ /** * Retrieve and clear all accumulated dev-proxy warnings. */ export declare function flushDevWarnings(): string[]; /** * Wrap `data` in a development Proxy that warns about accessing properties * not present in the object — at any nesting depth. * * @param data The template data object (component public state + framework injections). * @param componentName Human-readable component name for the warning message. * @returns A `Proxy` around `data` (or `data` itself when proxying is not possible). */ export declare function createDevStateProxy(data: Record, componentName: string): Record; /** * Conditionally wrap template data in a dev proxy. * * Returns the raw `data` unchanged when `enabled` is false (production mode) * or when the data is not a plain object. * * @param data Template data object. * @param componentName Component name for warnings. * @param enabled Whether dev-mode proxying is active. */ export declare function maybeDevProxy(data: Record, componentName: string, enabled: boolean): Record; /** * Determine whether the dev proxy should be active based on the adowire * config and the current environment. * * Resolution order: * 1. Explicit `config.devProxy` boolean (if provided) * 2. `NODE_ENV !== 'production'` * * @param config The adowire config object (may be partial or undefined). */ export declare function isDevProxyEnabled(config?: { devProxy?: boolean; }): boolean;