@dossierhq/sqlite-core
Version:
A library used by concrete SQLite adapters for Dossier.
106 lines (105 loc) • 2.96 kB
TypeScript
import type { EventType } from '@dossierhq/core';
export interface AdvisoryLocksTable {
id: number;
name: string;
acquired_at: string;
renewed_at: string;
expires_at: number;
lease_duration: number;
}
export declare const ENTITY_DIRTY_FLAG_VALIDATE_LATEST = 1;
export declare const ENTITY_DIRTY_FLAG_VALIDATE_PUBLISHED = 2;
export declare const ENTITY_DIRTY_FLAG_INDEX_LATEST = 4;
export declare const ENTITY_DIRTY_FLAG_INDEX_PUBLISHED = 8;
export interface EntitiesTable {
id: number;
uuid: string | null;
uuid_before_delete: string | null;
name: string | null;
name_before_delete: string | null;
published_name: string | null;
type: string;
auth_key: string;
resolved_auth_key: string;
status: 'draft' | 'published' | 'modified' | 'withdrawn' | 'archived';
never_published: number;
dirty: number;
invalid: number;
created_at: string;
updated_at: string;
updated_seq: number;
deleted_at: string | null;
latest_entity_versions_id: number | null;
published_entity_versions_id: number | null;
}
export interface EntityLatestReferencesTable {
id: number;
from_entities_id: number;
to_entities_id: number;
}
export interface EntityVersionsTable {
id: number;
entities_id: number;
type: string;
name: string;
version: number;
created_at: string;
created_by: number;
schema_version: number;
encode_version: number;
fields: string;
}
export interface EventsTable {
id: number;
uuid: string;
type: keyof typeof EventType;
created_by: number;
created_at: string;
principals_id: number | null;
schema_versions_id: number | null;
}
export interface EventEntityVersionsTable {
id: number;
events_id: number;
entity_versions_id: number;
published_name: string | null;
}
export interface SequencesTable {
name: string;
value: number;
}
export interface SubjectsTable {
id: number;
uuid: string;
created_at: string;
}
export interface PrincipalsTable {
id: number;
provider: string;
identifier: string;
subjects_id: number;
}
export interface SchemaVersionsTable {
id: number;
version: number;
updated_at: string;
specification: string;
}
export interface UniqueIndexValuesTable {
id: number;
entities_id: number;
index_name: string;
value: string;
latest: number;
published: number;
}
export interface UniqueConstraint {
table: string;
columns: string[];
}
export declare const AdvisoryLocksUniqueNameConstraint: UniqueConstraint;
export declare const EntitiesUniqueNameConstraint: UniqueConstraint;
export declare const EntitiesUniquePublishedNameConstraint: UniqueConstraint;
export declare const EntitiesUniqueUuidConstraint: UniqueConstraint;
export declare const PrincipalsUniqueProviderIdentifierConstraint: UniqueConstraint;
export declare const UniqueIndexValueConstraint: UniqueConstraint;