import { BaseEntity } from '@utilarium/overcontext'; import { Person, Project, Company, Term, IgnoredTerm, RedaksjonEntity, RedaksjonEntityType } from '../types'; /** * Entity filename strategy: first 8 chars of UUID + slug. * Produces filenames like `d00acdc4-gerald-corson.yaml`. * Falls back to entity.id when no slug is present. */ export declare const redaksjonFilenameStrategy: (entity: BaseEntity) => string; export type { Person, Project, Company, Term, IgnoredTerm, RedaksjonEntity }; export type EntityType = RedaksjonEntityType; export type Entity = RedaksjonEntity; /** * StorageInstance interface - matches protokoll's current API. */ export interface StorageInstance { load(contextDirs: string[]): Promise; save(entity: Entity, targetDir: string, allowUpdate?: boolean): Promise; delete(type: EntityType, id: string, targetDir: string): Promise; get(type: EntityType, id: string): T | undefined; getAll(type: EntityType): T[]; search(query: string): Entity[]; findBySoundsLike(phonetic: string): Entity | undefined; clear(): void; getEntityFilePath(type: EntityType, id: string, contextDirs: string[]): string | undefined; } export interface GcsStorageOptions { bucketName: string; basePath: string; projectId?: string; credentialsFile?: string; } export interface AdapterCreateOptions { gcs?: GcsStorageOptions; } export declare const create: (options?: AdapterCreateOptions) => StorageInstance; //# sourceMappingURL=adapter.d.ts.map