/** SDK-owned platform module. This implementation is maintained in goodvibes-sdk. */
/**
 * JSON Schema definition for the write tool input.
 */
export declare const WRITE_SCHEMA: {
    readonly type: "object";
    readonly properties: {
        readonly files: {
            readonly type: "array";
            readonly description: "Array of files to write.";
            readonly items: {
                readonly type: "object";
                readonly properties: {
                    readonly path: {
                        readonly type: "string";
                        readonly description: "Path to the file to write, relative to project root or absolute.";
                    };
                    readonly content: {
                        readonly type: "string";
                        readonly description: "UTF-8 file content to write.";
                    };
                    readonly content_base64: {
                        readonly type: "string";
                        readonly description: "Base64-encoded file content. Use when content contains single quotes, backticks, or ${} patterns.";
                    };
                    readonly encoding: {
                        readonly type: "string";
                        readonly description: "File encoding. Default: utf-8.";
                        readonly default: "utf-8";
                    };
                    readonly mode: {
                        readonly type: "string";
                        readonly enum: readonly ["fail_if_exists", "overwrite", "backup"];
                        readonly description: string;
                        readonly default: "fail_if_exists";
                    };
                };
                readonly required: readonly ["path"];
                readonly additionalProperties: false;
            };
            readonly minItems: 1;
        };
        readonly verbosity: {
            readonly type: "string";
            readonly enum: readonly ["count_only", "minimal", "standard", "verbose"];
            readonly description: "Output detail level. Default: count_only (recommended — you provided the content).";
            readonly default: "count_only";
        };
        readonly dry_run: {
            readonly type: "boolean";
            readonly description: "If true, validate and plan writes but do not write any files.";
            readonly default: false;
        };
        readonly validate: {
            readonly type: "object";
            readonly description: "Run validators after all files have been written.";
            readonly properties: {
                readonly after: {
                    readonly type: "array";
                    readonly items: {
                        readonly type: "string";
                        readonly enum: readonly ["typecheck", "lint", "test", "build"];
                    };
                    readonly description: "Validators to run after writing. Failures are reported but do NOT undo writes.";
                };
            };
            readonly additionalProperties: false;
        };
        readonly transaction: {
            readonly type: "object";
            readonly description: "Batch transaction behaviour when one or more file writes fail.";
            readonly properties: {
                readonly mode: {
                    readonly type: "string";
                    readonly enum: readonly ["atomic", "partial", "none"];
                    readonly description: string;
                    readonly default: "none";
                };
            };
            readonly additionalProperties: false;
        };
    };
    readonly required: readonly ["files"];
    readonly additionalProperties: false;
};
export type WriteMode = 'fail_if_exists' | 'overwrite' | 'backup';
export type WriteVerbosity = 'count_only' | 'minimal' | 'standard' | 'verbose';
export type WriteValidatorName = 'typecheck' | 'lint' | 'test' | 'build';
export type WriteTransactionMode = 'atomic' | 'partial' | 'none';
export interface WriteFileInput {
    path: string;
    content?: string;
    content_base64?: string;
    encoding?: string;
    mode?: WriteMode;
}
export interface WriteInput {
    files: WriteFileInput[];
    verbosity?: WriteVerbosity;
    dry_run?: boolean;
    validate?: {
        after?: WriteValidatorName[];
    };
    transaction?: {
        mode?: WriteTransactionMode;
    };
}
//# sourceMappingURL=schema.d.ts.map