/** * Generic parameter encoding system for transforming input parameters * Used to convert structured parameters into API-specific formats (MIME, JSON, etc.) * * This is YAML-driven via the parameter_encoding directive in tool definitions. * No tool-specific code needed - keeps Matimo universal. */ /** * Encoding configuration from YAML */ export interface ParameterEncodingConfig { source: string[]; target: string; encoding: string; options?: Record; } /** * Apply parameter encodings to transform input parameters * @param params - User-provided parameters * @param encodings - List of encoding configurations from tool YAML * @returns Parameters with encoded values added */ export declare function applyParameterEncodings(params: Record, encodings: ParameterEncodingConfig[]): Record; /** * Example usage in YAML: * * execution: * type: http * method: POST * url: 'https://www.googleapis.com/gmail/v1/users/me/messages/send' * headers: * Content-Type: 'application/json' * Authorization: 'Bearer {GMAIL_ACCESS_TOKEN}' * * parameter_encoding: * - source: [to, subject, body, cc, bcc, isHtml] * target: raw * encoding: mime_rfc2822_base64url * * body: * raw: '{raw}' * * Then users call: * matimo.execute('gmail-send-email', { * to: 'user@example.com', * subject: 'Hello', * body: 'Hi there', * GMAIL_ACCESS_TOKEN: token * }); */ //# sourceMappingURL=parameter-encoding.d.ts.map