import { BaseRepository } from "./BaseRepository";
import { Constructor, Model } from "@decaf-ts/decorator-validation";
export declare abstract class Repository<M extends Model> extends BaseRepository<M> {
    protected constructor(clazz?: Constructor<M>);
    protected createPrefix(model: M, ...args: any[]): Promise<[M, ...any[]]>;
    protected createAllPrefix(models: M[], ...args: any[]): Promise<any[]>;
    protected updatePrefix(model: M, ...args: any[]): Promise<[M, ...args: any[]]>;
    protected updateAllPrefix(models: M[], ...args: any[]): Promise<any[]>;
    static key(key: string): string;
}
