import { EntityStatus, type ErrorType, type PromiseResult } from '@dossierhq/core';
import { type PublishedReadOnly, type ReadOnly } from '../SchemaTypes.js';
import type { DossierClientProvider } from './TestClients.js';
export declare class ReadOnlyEntityRepository {
    private readonly mainEntities;
    private readonly secondaryEntities;
    constructor(main: ReadOnly[], secondary: ReadOnly[]);
    getMainPrincipalAdminEntities({ authKeys, status, }?: {
        authKeys?: string[];
        status?: EntityStatus[];
    }): ReadOnly[];
    getMainPrincipalPublishedEntities(authKeys?: string[]): PublishedReadOnly[];
}
export declare function createReadOnlyEntityRepository(clientProvider: DossierClientProvider, databaseName?: string): PromiseResult<ReadOnlyEntityRepository, typeof ErrorType.BadRequest | typeof ErrorType.NotFound | typeof ErrorType.Generic>;
