import { IService } from 'loopback4-billing';
import { InvoiceDto } from '../models/dto/invoice-dto.model';
import { TransactionDto } from '../models/dto/transaction-dto.model';
import { BillingInvoiceService } from '../services/billing-invoice.service';
export declare class BillingInvoiceController {
    private readonly billingProvider;
    private readonly billingInvoiceService;
    constructor(billingProvider: IService, billingInvoiceService: BillingInvoiceService);
    create(invoiceDto: Omit<InvoiceDto, 'id' | 'status'>): Promise<InvoiceDto>;
    getInvoice(invoiceId: string): Promise<InvoiceDto>;
    updateById(invoiceId: string, invoiceDto: Partial<InvoiceDto>): Promise<void>;
    applyPaymentForInvoice(invoiceId: string, transactionDto: TransactionDto): Promise<void>;
    deleteById(invoiceId: string): Promise<void>;
}
