/** * @fileoverview Search itemized committee spending (Schedule B) or get aggregate * breakdowns by purpose or recipient. Answers "what is this committee spending money on?" * @module mcp-server/tools/definitions/search-disbursements.tool */ import { z } from '@cyanheads/mcp-ts-core'; import { JsonRpcErrorCode } from '@cyanheads/mcp-ts-core/errors'; export declare const searchDisbursements: import("@cyanheads/mcp-ts-core").ToolDefinition>; committee_id: z.ZodString; recipient_name: z.ZodOptional; recipient_state: z.ZodOptional; recipient_city: z.ZodOptional; recipient_committee_id: z.ZodOptional; disbursement_description: z.ZodOptional; disbursement_purpose_category: z.ZodOptional; cycle: z.ZodOptional; min_date: z.ZodOptional; max_date: z.ZodOptional; min_amount: z.ZodOptional; max_amount: z.ZodOptional; sort: z.ZodOptional>; page: z.ZodDefault; per_page: z.ZodDefault; cursor: z.ZodOptional; }, z.core.$strip>, z.ZodObject<{ results: z.ZodArray>; mode: z.ZodEnum<{ by_purpose: "by_purpose"; by_recipient: "by_recipient"; by_recipient_id: "by_recipient_id"; itemized: "itemized"; }>; committee: z.ZodOptional>; next_cursor: z.ZodOptional>; count: z.ZodOptional; pagination: z.ZodOptional>; search_criteria: z.ZodObject<{}, z.core.$loose>; }, z.core.$strip>, readonly [{ readonly reason: "itemized_only_filters_in_aggregate_mode"; readonly code: JsonRpcErrorCode.ValidationError; readonly when: "An itemized-only filter was supplied alongside an aggregate mode, which cannot apply it"; readonly recovery: "Re-run with mode \"itemized\" to filter by recipient, description, date range, or amount, or drop the named inputs to keep the aggregate. Aggregate modes accept only committee_id, cycle, mode, page, per_page."; }], { readonly totalCount: z.ZodNumber; readonly notice: z.ZodOptional; }>; //# sourceMappingURL=search-disbursements.tool.d.ts.map