import { z } from "zod"; export declare const FEEDBACK_TOOL_NAMES: { readonly BUG_REPORT: "bug_report"; readonly IMPROVEMENT_SUGGESTION: "improvement_suggestion"; }; export type FeedbackToolName = (typeof FEEDBACK_TOOL_NAMES)[keyof typeof FEEDBACK_TOOL_NAMES]; declare const FeedbackInputSchema: z.ZodObject<{ title: z.ZodPipeline, z.ZodString>; body: z.ZodPipeline, z.ZodString>; evidence: z.ZodArray, z.ZodString>, "many">; session: z.ZodPipeline, z.ZodString>; source: z.ZodPipeline, z.ZodString>; confidence: z.ZodNumber; }, "strict", z.ZodTypeAny, { title: string; body: string; evidence: string[]; session: string; source: string; confidence: number; }, { title: string; body: string; evidence: string[]; session: string; source: string; confidence: number; }>; export declare const BugReportSchema: z.ZodObject<{ title: z.ZodPipeline, z.ZodString>; body: z.ZodPipeline, z.ZodString>; evidence: z.ZodArray, z.ZodString>, "many">; session: z.ZodPipeline, z.ZodString>; source: z.ZodPipeline, z.ZodString>; confidence: z.ZodNumber; }, "strict", z.ZodTypeAny, { title: string; body: string; evidence: string[]; session: string; source: string; confidence: number; }, { title: string; body: string; evidence: string[]; session: string; source: string; confidence: number; }>; export declare const ImprovementSuggestionSchema: z.ZodObject<{ title: z.ZodPipeline, z.ZodString>; body: z.ZodPipeline, z.ZodString>; evidence: z.ZodArray, z.ZodString>, "many">; session: z.ZodPipeline, z.ZodString>; source: z.ZodPipeline, z.ZodString>; confidence: z.ZodNumber; }, "strict", z.ZodTypeAny, { title: string; body: string; evidence: string[]; session: string; source: string; confidence: number; }, { title: string; body: string; evidence: string[]; session: string; source: string; confidence: number; }>; export type BugReportInput = z.infer; export type ImprovementSuggestionInput = z.infer; export type FeedbackToolInput = BugReportInput | ImprovementSuggestionInput; export interface FeedbackToolContract { name: FeedbackToolName; description: string; schema: typeof FeedbackInputSchema; } export declare const FEEDBACK_TOOL_CONTRACTS: Record; export interface PersistedFeedbackReport extends FeedbackToolInput { id: string; tool: FeedbackToolName; createdAt: string; dedupeKey: string; } export declare function validateFeedbackToolInput(tool: FeedbackToolName, input: FeedbackToolInput): FeedbackToolInput; export declare function generateFeedbackDedupeKey(tool: FeedbackToolName, input: FeedbackToolInput): string; export declare class FeedbackReportStore { private readonly reportsDir; constructor(reportsDir: string); persist(tool: FeedbackToolName, input: FeedbackToolInput): PersistedFeedbackReport; list(): PersistedFeedbackReport[]; } export {}; //# sourceMappingURL=feedback-tools.d.ts.map