import { Getter } from '@loopback/core';
import { BelongsToAccessor, Entity, juggler } from '@loopback/repository';
import { DefaultTransactionalUserModifyRepository, IAuthUserWithPermissions } from '@sourceloop/core';
import { Address, Tenant } from '../models';
export declare class AddressRepository<T extends Address = Address> extends DefaultTransactionalUserModifyRepository<T, typeof Address.prototype.id, {}> {
    readonly getCurrentUser: Getter<IAuthUserWithPermissions>;
    private readonly address;
    readonly tenant: BelongsToAccessor<Tenant, typeof Address.prototype.id>;
    constructor(getCurrentUser: Getter<IAuthUserWithPermissions>, dataSource: juggler.DataSource, address: typeof Entity & {
        prototype: T;
    });
}
