import { ClientsService } from './clients.service';
import { CreateClientDto } from './dto/create-client.dto';
import { UpdateClientDto } from './dto/update-client.dto';
export declare class ClientsController {
    private readonly clientsService;
    constructor(clientsService: ClientsService);
    create(createClientDto: CreateClientDto): Promise<{
        id: number;
        name: string;
        createdAt: Date;
        updatedAt: Date;
        notes: string;
        email: string;
        phone: string;
        address1: string;
        address2: string;
        city: string;
        state: string;
        postcode: string;
        country: string;
    }>;
    findAll(page: number, limit: number, sortBy: string, sortOrder: string, search: string): Promise<[({
        id: number;
        name: string;
        createdAt: Date;
        updatedAt: Date;
        notes: string;
        email: string;
        phone: string;
        address1: string;
        address2: string;
        city: string;
        state: string;
        postcode: string;
        country: string;
    } | {
        id: number;
        name: string;
        createdAt: Date;
        updatedAt: Date;
        notes: string;
        email: string;
        phone: string;
        address1: string;
        address2: string;
        city: string;
        state: string;
        postcode: string;
        country: string;
    })[][], number, number]>;
    findAllSimple(): Promise<{
        id: number;
        name: string;
    }[]>;
    findOneSimple(id: string): Promise<{
        id: number;
        name: string;
    } | null>;
    findOne(id: string): Promise<({
        jobs: {
            id: number;
            createdAt: Date;
            updatedAt: Date;
            clientId: number;
            title: string;
            description: string;
            status: string;
            poNumber: string;
            invoiceDate: Date;
            productionDate: Date | null;
            productionPriority: number;
            productionNotes: string | null;
            shippingOption: string;
            shippingName: string;
            shippingAddress1: string;
            shippingAddress2: string;
            shippingCity: string;
            shippingState: string;
            shippingPostcode: string;
            shippingCountry: string;
            shippingPhone: string;
            shippingEmail: string;
            shippingNotes: string;
            createdById: number;
            quoteKey: string | null;
            published: boolean;
            invoiceNumber: string;
            generalNotes: string;
            assignedToId: number | null;
        }[];
        users: {
            id: number;
            name: string;
            email: string;
            phone: string;
            address1: string;
            address2: string;
            city: string;
            state: string;
            postcode: string;
            country: string;
            role: string;
            favourite: boolean;
        }[];
    } & {
        id: number;
        name: string;
        createdAt: Date;
        updatedAt: Date;
        notes: string;
        email: string;
        phone: string;
        address1: string;
        address2: string;
        city: string;
        state: string;
        postcode: string;
        country: string;
    }) | null>;
    update(id: string, updateClientDto: UpdateClientDto): Promise<{
        id: number;
        name: string;
        createdAt: Date;
        updatedAt: Date;
        notes: string;
        email: string;
        phone: string;
        address1: string;
        address2: string;
        city: string;
        state: string;
        postcode: string;
        country: string;
    }>;
    remove(id: string): Promise<{
        id: number;
        name: string;
        createdAt: Date;
        updatedAt: Date;
        notes: string;
        email: string;
        phone: string;
        address1: string;
        address2: string;
        city: string;
        state: string;
        postcode: string;
        country: string;
    }>;
}
