import type { ActionFieldDef } from './types'; import type { Translate } from './server-error'; /** * Resolve a validation path (`customer_id`, `lines.0.unit_price`) to a * human label using the action/modal field schema. Nested line-item paths * become "Renglones → Precio unitario (fila 1)". */ export declare function labelForValidationPath(path: string, fields: readonly ActionFieldDef[] | undefined, t?: Translate): string; /** Build `{path: label}` covering scalar fields and `parent.N.child` templates * used by localizeFieldErrorMap (exact keys win when present). */ export declare function labelsForValidationFields(fields: readonly ActionFieldDef[] | undefined, t?: Translate): Record; /** * Toast description: one "Label: message" line per error. Re-resolves labels * for dotted line-item paths so operators see e.g. * "Precio unitario (fila 1): es obligatorio" instead of a bare headline. */ export declare function formatFieldErrorsDescription(errors: Record, fields?: readonly ActionFieldDef[], t?: Translate): string | undefined; /** Drop `key` and every `key.*` / `key.N.*` entry after the operator edits that field. */ export declare function clearFieldErrorTree(prev: Record, key: string): Record; /** Slice `parent.0.child` errors into `{ "0.child": msg }` for DynamicLineItems. */ export declare function lineItemErrorsFor(parentKey: string, errors: Record | undefined): Record; //# sourceMappingURL=field-validation-ui.d.ts.map