/** * Builds a class-centric Schema model from parsed Turtle quads. * Simplified from the VS Code extension's schemaModel.ts; retains the * same structural output (SchemaModel) without editing support. */ import type { Quad } from "n3"; export type PropertyType = "string" | "integer" | "decimal" | "double" | "date" | "datetime" | "boolean" | "enum" | "other"; export type Cardinality = "one-to-one" | "one-to-many" | "many-to-one" | "many-to-many" | "unspecified"; export type EntityOrigin = "owlClass" | "rdfsClass" | "skosConcept" | "inferred"; export type RelationKind = "objectProperty" | "subClassOf" | "skosBroader"; export type Provenance = "declared" | "inferred-union" | "inferred-inverse" | "inferred-restriction" | "inferred-usage" | "default"; export interface SchemaProperty { iri: string; name: string; type: PropertyType; datatypeIri?: string; isIdentifier?: boolean; unit?: string; enumValues?: string[]; description?: string; provenance: Provenance; } export interface SchemaEntity { id: string; name: string; description?: string; origin: EntityOrigin; properties: SchemaProperty[]; instanceCount: number; icon: string; colorIndex: number; connectionGroup: { index: number; count: number; size: number; }; colorOverride?: string; } export interface SchemaRelation { id: string; iri?: string; name: string; source: string; target: string; kind: RelationKind; cardinality: Cardinality; description?: string; inverseOfIri?: string; provenance: Provenance; } export interface SchemaModel { title?: string; description?: string; entities: SchemaEntity[]; relations: SchemaRelation[]; isEmpty: boolean; } /** * Builds the schema model from quads. This is a simplified version * that handles common OWL/RDFS/SKOS patterns for the read-only viewer. */ export declare function buildSchemaModel(quads: Quad[]): SchemaModel; //# sourceMappingURL=schemaModel.d.ts.map