import { z } from 'zod'; import type { PredicateContext } from './predicate.js'; export type MappingSource = { value: unknown; } | { template: string; } | { path: string; }; export type MappingConfig = Record; export declare const mappingSourceSchema: z.ZodUnion, z.ZodObject<{ template: z.ZodString; }, z.core.$strict>, z.ZodObject<{ path: z.ZodString; }, z.core.$strict>]>; export declare const mappingConfigSchema: z.ZodRecord, z.ZodObject<{ template: z.ZodString; }, z.core.$strict>, z.ZodObject<{ path: z.ZodString; }, z.core.$strict>]>>; export declare const TEMPLATE_PATH_ROOTS: readonly ["input", "state", "results", "requestContext"]; export type TemplateSyntaxIssue = { code: 'mustache_placeholder' | 'empty_placeholder' | 'unknown_root'; message: string; }; export declare function resolveMapping(config: MappingConfig, scope: PredicateContext): Record; export declare function validateTemplateSyntax(template: string): TemplateSyntaxIssue[];