import type { Request } from 'express';
import { AuthRequestUser } from '../auth/interfaces/auth-request-user.interface';
import { CreateClientDto } from './dto/create-client.dto';
import { ListClientsQueryDto } from './dto/list-clients-query.dto';
import { UpdateClientDto } from './dto/update-client.dto';
import { ClientsService } from './clients.service';
export declare class ClientsController {
    private readonly clientsService;
    constructor(clientsService: ClientsService);
    listClients(query: ListClientsQueryDto, request: Request & {
        user: AuthRequestUser;
    }): Promise<import("./clients.service").AdminClientsListResponse>;
    getPublicClient(dashboardSlug: string): Promise<import("./clients.service").AdminClientRecord>;
    listMyClients(request: Request & {
        user: AuthRequestUser;
    }): Promise<import("./clients.service").AdminClientRecord[]>;
    getClient(clientId: string, request: Request & {
        user: AuthRequestUser;
    }): Promise<import("./clients.service").AdminClientRecord>;
    createClient(dto: CreateClientDto, request: Request & {
        user: AuthRequestUser;
    }): Promise<any>;
    updateClient(clientId: string, dto: UpdateClientDto, request: Request & {
        user: AuthRequestUser;
    }): Promise<any>;
    deleteClient(clientId: string, request: Request & {
        user: AuthRequestUser;
    }): Promise<any>;
    restoreClient(clientId: string, request: Request & {
        user: AuthRequestUser;
    }): Promise<any>;
}
