import { IService } from 'loopback4-billing';
import { Filter } from '@loopback/repository';
import { BillingCustomer } from '../models/billing-customer.model';
import { CustomerDto } from '../models/dto/customer-dto.model';
import { InvoiceRepository } from '../repositories';
import { BillingCustomerRepository } from '../repositories/billing-customer.repository';
export declare class BillingCustomerController {
    billingCustomerRepository: BillingCustomerRepository;
    invoiceRepository: InvoiceRepository;
    private readonly billingProvider;
    constructor(billingCustomerRepository: BillingCustomerRepository, invoiceRepository: InvoiceRepository, billingProvider: IService);
    create(customerDto: Omit<CustomerDto, 'id'>, tenantId: string): Promise<CustomerDto>;
    getCustomer(filter?: Filter<BillingCustomer>): Promise<{
        customerDetails: CustomerDto;
        info: BillingCustomer;
    }>;
    updateById(tenantId: string, customerDto: Partial<CustomerDto>): Promise<void>;
    deleteById(tenantId: string): Promise<void>;
}
