import type { FromSchema } from 'json-schema-to-ts';
export declare const entityRelationDatabaseSchema: {
    readonly type: "object";
    readonly properties: {
        readonly id: {
            readonly type: "string";
        };
        readonly organization_id: {
            readonly type: "string";
        };
        readonly project_id: {
            readonly type: "string";
        };
        readonly source_key: {
            readonly type: "string";
        };
        readonly source_id: {
            readonly type: readonly ["string", "null"];
        };
        readonly source_to_target_relation: {
            readonly type: "string";
        };
        readonly target_key: {
            readonly type: "string";
        };
        readonly target_id: {
            readonly type: readonly ["string", "null"];
        };
        readonly target_to_source_relation: {
            readonly type: "string";
        };
        readonly created_at: {
            readonly type: "string";
        };
        readonly updated_at: {
            readonly type: "string";
        };
        readonly schema_version: {
            readonly type: "number";
        };
    };
    readonly required: readonly ["id", "organization_id", "project_id", "source_key", "source_to_target_relation", "target_key", "target_to_source_relation", "created_at", "updated_at", "schema_version"];
    readonly additionalProperties: false;
};
export declare const entityDatabaseSchema: {
    readonly type: "object";
    readonly properties: {
        readonly id: {
            readonly type: "string";
        };
        readonly organization_id: {
            readonly type: "string";
        };
        readonly project_id: {
            readonly type: "string";
        };
        readonly key: {
            readonly type: "string";
        };
        readonly type: {
            readonly type: "string";
        };
        readonly title: {
            readonly type: "string";
        };
        readonly summary: {
            readonly type: readonly ["string", "null"];
        };
        readonly tags: {
            readonly type: readonly ["string", "null"];
        };
        readonly metadata: {
            readonly type: readonly ["string", "null"];
        };
        readonly git: {
            readonly type: readonly ["string", "null"];
        };
        readonly contact: {
            readonly type: readonly ["string", "null"];
        };
        readonly links: {
            readonly type: readonly ["string", "null"];
        };
        readonly created_at: {
            readonly type: "string";
        };
        readonly updated_at: {
            readonly type: "string";
        };
        readonly source: {
            readonly type: "string";
        };
        readonly source_file: {
            readonly type: readonly ["string", "null"];
        };
        readonly file_hash: {
            readonly type: readonly ["string", "null"];
        };
        readonly schema_version: {
            readonly type: "number";
        };
    };
    readonly required: readonly ["id", "organization_id", "project_id", "key", "type", "title", "created_at", "updated_at", "source", "schema_version"];
    readonly additionalProperties: false;
};
export declare const relatedEntityDatabaseSchema: {
    readonly type: "object";
    readonly properties: {
        readonly id: {
            readonly type: "string";
        };
        readonly key: {
            readonly type: "string";
        };
        readonly title: {
            readonly type: "string";
        };
        readonly type: {
            readonly type: "string";
        };
        readonly summary: {
            readonly type: readonly ["string", "null"];
        };
        readonly source: {
            readonly type: "string";
        };
        readonly relation_role: {
            readonly type: readonly ["string", "null"];
        };
        readonly relation_type: {
            readonly type: readonly ["string", "null"];
            readonly enum: readonly ["partOf", "hasParts", "creates", "createdBy", "owns", "ownedBy", "implements", "implementedBy", "dependsOn", "dependencyOf", "uses", "usedBy", "produces", "consumes", "linksTo", "supersedes", "supersededBy", "compatibleWith", "extends", "extendedBy", "relatesTo", "hasMember", "memberOf", "triggers", "triggeredBy", "returns", "returnedBy"];
        };
        readonly source_file: {
            readonly type: readonly ["string", "null"];
        };
        readonly created_at: {
            readonly type: readonly ["string", "null"];
        };
        readonly updated_at: {
            readonly type: readonly ["string", "null"];
        };
        readonly metadata: {
            readonly type: readonly ["string", "null"];
        };
    };
    readonly required: readonly ["id", "key", "title", "type", "source"];
    readonly additionalProperties: false;
};
export type EntityRelationDto = FromSchema<typeof entityRelationDatabaseSchema>;
export type EntityDto = FromSchema<typeof entityDatabaseSchema>;
export type RelatedEntityDto = FromSchema<typeof relatedEntityDatabaseSchema>;
//# sourceMappingURL=database-schemas.d.ts.map