import { z } from "zod"; import type { RequestContext, McpTextContent, SdkContext, NormalizedEntitySnapshot } from "@cesteral/shared"; export declare const CreateEntityInputSchema: z.ZodObject<{ entityType: z.ZodEnum<[string, ...string[]]>; data: z.ZodRecord; dry_run: z.ZodDefault>; }, "strip", z.ZodTypeAny, { entityType: string; data: Record; dry_run: boolean; }, { entityType: string; data: Record; dry_run?: boolean | undefined; }>; export declare const CreateEntityOutputSchema: z.ZodObject<{ entity: z.ZodRecord; entityType: z.ZodString; timestamp: z.ZodString; dryRun: z.ZodOptional>; after: z.ZodOptional>; dispatchedCapability: z.ZodType; }, "strip", z.ZodTypeAny, { entityType: string; timestamp: string; entity: Record; dispatchedCapability: import("@cesteral/contract-schema").DispatchedCapability; dryRun?: import("@cesteral/contract-schema").DryRunResult | undefined; after?: NormalizedEntitySnapshot | undefined; }, { entityType: string; timestamp: string; entity: Record; dispatchedCapability: import("@cesteral/contract-schema").DispatchedCapability; dryRun?: import("@cesteral/contract-schema").DryRunResult | undefined; after?: NormalizedEntitySnapshot | undefined; }>; type CreateEntityInput = z.infer; type CreateEntityOutput = z.infer; export declare function createEntityLogic(input: CreateEntityInput, context: RequestContext, sdkContext?: SdkContext): Promise; export declare function createEntityResponseFormatter(result: CreateEntityOutput): McpTextContent[]; export declare const createEntityTool: { name: string; title: string; description: string; inputSchema: z.ZodObject<{ entityType: z.ZodEnum<[string, ...string[]]>; data: z.ZodRecord; dry_run: z.ZodDefault>; }, "strip", z.ZodTypeAny, { entityType: string; data: Record; dry_run: boolean; }, { entityType: string; data: Record; dry_run?: boolean | undefined; }>; outputSchema: z.ZodObject<{ entity: z.ZodRecord; entityType: z.ZodString; timestamp: z.ZodString; dryRun: z.ZodOptional>; after: z.ZodOptional>; dispatchedCapability: z.ZodType; }, "strip", z.ZodTypeAny, { entityType: string; timestamp: string; entity: Record; dispatchedCapability: import("@cesteral/contract-schema").DispatchedCapability; dryRun?: import("@cesteral/contract-schema").DryRunResult | undefined; after?: NormalizedEntitySnapshot | undefined; }, { entityType: string; timestamp: string; entity: Record; dispatchedCapability: import("@cesteral/contract-schema").DispatchedCapability; dryRun?: import("@cesteral/contract-schema").DryRunResult | undefined; after?: NormalizedEntitySnapshot | undefined; }>; annotations: { readOnlyHint: boolean; openWorldHint: boolean; idempotentHint: boolean; destructiveHint: boolean; cesteral: { kind: "write"; writeClass: "entity"; executableArgsExclude: string[]; platform: string; contractPlatformSlug: string; contractToolSlug: string; operation: "create"[]; entityKinds: "campaign"[]; entityIdArgs: never[]; readPartner: { toolName: string; argMap: { entityType: string; }; }; schemaVersion: number; contractId: string; supportsDryRun: true; supportsBeforeAfterSnapshot: true; requiresValidation: true; requiresSimulation: true; }; }; inputExamples: ({ label: string; input: { entityType: string; data: { name: string; account: string; status: string; totalBudget: { amount: string; currencyCode: string; }; runSchedule: { start: number; end: number; }; campaignGroup?: undefined; type?: undefined; objectiveType?: undefined; dailyBudget?: undefined; bidType?: undefined; unitCost?: undefined; }; }; } | { label: string; input: { entityType: string; data: { name: string; campaignGroup: string; account: string; type: string; objectiveType: string; status: string; dailyBudget: { amount: string; currencyCode: string; }; bidType: string; unitCost: { amount: string; currencyCode: string; }; totalBudget?: undefined; runSchedule?: undefined; }; }; })[]; logic: typeof createEntityLogic; responseFormatter: typeof createEntityResponseFormatter; }; export {}; //# sourceMappingURL=create-entity.tool.d.ts.map