import { Getter } from '@loopback/core';
import { Entity } from '@loopback/repository';
import { IAuthUserWithPermissions } from '@sourceloop/core';
import { Invoice } from '../../models';
import { SequelizeDataSource } from '@loopback/sequelize';
import { SequelizeUserModifyCrudRepository } from '@sourceloop/core/sequelize';
export declare class InvoiceRepository<T extends Invoice = Invoice> extends SequelizeUserModifyCrudRepository<T, typeof Invoice.prototype.id, {}> {
    readonly getCurrentUser: Getter<IAuthUserWithPermissions>;
    private readonly invoice;
    constructor(dataSource: SequelizeDataSource, getCurrentUser: Getter<IAuthUserWithPermissions>, invoice: typeof Entity & {
        prototype: T;
    });
}
