import type { SetHubProtocols } from '../../../common/types/common';
import type { HttpClientProtocols } from '../../../http/protocols/client.protocols';
import type { Application } from './application';
type ListProjectApplicationsFailure = {
    code: 'internal';
    message: string;
};
export declare namespace ListProjectApplications {
    type Input = {
        projectSlug: string;
        search?: string;
        createdByMemberId?: string;
        page?: number;
        size?: number;
        sortBy?: 'name' | 'update_sets_count' | 'created_at';
        orderBy?: 'asc' | 'desc';
    };
    type Options = Pick<HttpClientProtocols.PostOptions, 'abortSignal'>;
    type APIResponse = {
        metadata: {
            page: number;
            pages: number;
            size: number;
            sort_by: 'name' | 'update_sets_count' | 'created_at';
            order_by: 'asc' | 'desc';
            total_count: number;
            search: string | null;
            created_by_member_id: string | null;
        };
        items: {
            id: string;
            name: string;
            update_sets_count: number;
            created_at: string;
            created_by_member: {
                id: string;
                user: {
                    id: string;
                    name: string;
                    email: string;
                };
            };
        }[];
    };
    type APIQueryParams = {
        search?: string;
        created_by_member_id?: string;
        page?: number;
        size?: number;
        sort_by?: 'name' | 'update_sets_count' | 'created_at';
        order_by?: 'asc' | 'desc';
    };
    type Metadata = {
        page: number;
        pages: number;
        size: number;
        sortBy: 'name' | 'update_sets_count' | 'created_at';
        orderBy: 'asc' | 'desc';
        totalCount: number;
        search: string | null;
        createdByMemberId: string | null;
    };
    type ProjectApplication = Application;
    type Success = {
        metadata: Metadata;
        items: ProjectApplication[];
    };
    type ErrorCodes = 'internal';
    type Failure = ListProjectApplicationsFailure;
    type Output = APIResponse | Failure;
    type Response = SetHubProtocols.Response<Success, Failure>;
}
export {};
