import type { FromLixSchemaDefinition } from "../../schema-definition/definition.js";
export type LixFileDescriptor = FromLixSchemaDefinition<typeof LixFileDescriptorSchema>;
export declare const LixFileDescriptorSchema: {
    readonly "x-lix-key": "lix_file_descriptor";
    readonly "x-lix-version": "1.0";
    readonly "x-lix-primary-key": readonly ["/id"];
    readonly "x-lix-unique": readonly [readonly ["/directory_id", "/name", "/extension"]];
    readonly "x-lix-override-lixcols": {
        readonly lixcol_file_id: "\"lix\"";
        readonly lixcol_plugin_key: "\"lix_sdk\"";
    };
    readonly type: "object";
    readonly properties: {
        readonly id: {
            readonly type: "string";
            readonly "x-lix-default": "lix_uuid_v7()";
        };
        readonly directory_id: {
            readonly type: "string";
            readonly nullable: true;
            readonly description: "Identifier of the directory containing the file. Null indicates the virtual root directory.";
        };
        readonly name: {
            readonly type: "string";
            readonly pattern: "^[^/\\\\]+$";
            readonly description: "File name without directory segments.";
        };
        readonly extension: {
            readonly type: "string";
            readonly nullable: true;
            readonly pattern: "^[^./\\\\]+$";
            readonly description: "File extension without the leading dot. Null when no extension is present.";
        };
        readonly metadata: {
            readonly type: "object";
            readonly nullable: true;
        };
        readonly hidden: {
            readonly type: "boolean";
            readonly "x-lix-default": "false";
        };
    };
    readonly required: readonly ["id", "directory_id", "name", "extension"];
    readonly additionalProperties: false;
};
//# sourceMappingURL=schema-definition.d.ts.map