import { z } from 'zod';
export declare const TOOL_SYNC_DBT_PROJECT_DESCRIPTION = "Tool: syncDbtProject\n\nPurpose:\nRecompile/refresh the Lightdash project so that semantic-layer changes that have already landed in the dbt repository (a newly merged metric, dimension, model or rename) become available in explores. This is the same operation as clicking \"Settings \u2192 Project \u2192 Sync dbt project\" (the \"Refresh dbt\" button) in the web app.\n\nUse this AFTER a writeback pull request has been merged, to make the merged change usable inside Lightdash, so you can then build/verify a chart or repoint affected content. Without a sync, a just-merged field will not yet appear in the explores.\n\nWhen to use:\n- A writeback PR you opened has been merged and the new/renamed/removed field is not yet reflected in the explores.\n- The user asks to \"refresh\", \"sync\", \"recompile\" or \"pull in\" the dbt changes.\n\nWhen NOT to use:\n- To make a change to the semantic layer \u2014 use editDbtProject (this tool does not edit anything, it only refreshes).\n- Before a change has actually merged \u2014 there is nothing new to pick up.\n\nBehaviour:\nThis triggers a compile job and waits for it to finish (up to a timeout). It returns:\n- \"success\" once the compile completes \u2014 the new/changed fields are now live and you can immediately build or verify content.\n- \"in_progress\" if the compile is still running when the wait times out \u2014 tell the user it's still syncing and to retry shortly.\n- \"error\" if the compile failed \u2014 surface the failure summary.\n\nParameters:\n- reason: An optional short, human-readable note about why you're syncing (e.g. \"picking up the newly merged net_revenue metric\"). For your own logging/telemetry; it does not affect the compile.\n";
export declare const toolSyncDbtProjectArgsSchema: z.ZodObject<{
    reason: z.ZodNullable<z.ZodString>;
}, z.UnknownKeysParam, z.ZodTypeAny, {
    reason: string | null;
}, {
    reason: string | null;
}>;
export declare const toolSyncDbtProjectOutputSchema: z.ZodObject<{
    result: z.ZodString;
    metadata: z.ZodObject<{
        status: z.ZodEnum<["success", "error"]>;
    }, "strip", z.ZodTypeAny, {
        status: "error" | "success";
    }, {
        status: "error" | "success";
    }>;
}, "strip", z.ZodTypeAny, {
    metadata: {
        status: "error" | "success";
    };
    result: string;
}, {
    metadata: {
        status: "error" | "success";
    };
    result: string;
}>;
export type ToolSyncDbtProjectArgs = z.infer<typeof toolSyncDbtProjectArgsSchema>;
export type ToolSyncDbtProjectArgsTransformed = ToolSyncDbtProjectArgs;
export type ToolSyncDbtProjectOutput = z.infer<typeof toolSyncDbtProjectOutputSchema>;
//# sourceMappingURL=toolSyncDbtProjectArgs.d.ts.map