import type { ControlInvokeResult, ControlListResult, ControlSetResult, ProviderControlDef, ProviderEffect } from './contracts.js';
import type { ChatMessage } from '../types.js';
export type ProviderControlValue = string | number | boolean;
export declare function extractProviderControlValues(controls: ProviderControlDef[] | undefined, data: any): Record<string, ProviderControlValue> | undefined;
export declare function normalizeProviderEffects(data: any): ProviderEffect[];
export declare function buildPersistedProviderEffectMessage(effect: ProviderEffect | null | undefined): ChatMessage | null;
export declare function normalizeControlListResult(data: any): ControlListResult;
export declare function normalizeControlSetResult(data: any): ControlSetResult;
export declare function normalizeControlInvokeResult(data: any): ControlInvokeResult;
