import BaseEntity from "./BaseEntity";
import DataSource from "./DataSource";
import CouchRepository from "./CouchRepository";
type RepoConfig = {
    methods?: Record<string, Function>;
    ajvOptions?: any;
};
type EntityClass = {
    fieldMap: Record<string, string>;
    new (data: Record<string, any>): BaseEntity;
    schemaOrSchemaId: string | object;
    type: string;
    [key: string]: any;
};
export default function createRepository(entityClass: EntityClass, ds: DataSource, config: RepoConfig): CouchRepository;
export {};
