import { Getter } from '@loopback/core';
import { Resource, ResourceRelations } from '../models';
import { DefaultUserModifyCrudRepository, IAuthUserWithPermissions } from '@sourceloop/core';
import { Entity, juggler } from '@loopback/repository';
export declare class ResourceRepository<T extends Resource = Resource> extends DefaultUserModifyCrudRepository<T, typeof Resource.prototype.id, ResourceRelations> {
    readonly getCurrentUser: Getter<IAuthUserWithPermissions>;
    private readonly resource;
    constructor(dataSource: juggler.DataSource, getCurrentUser: Getter<IAuthUserWithPermissions>, resource: typeof Entity & {
        prototype: T;
    });
}
