import type { StarSchedAPIProtocols } from '../../../common/types/common';
import type { HttpClientProtocols } from '../../../http/protocols/client.protocols';
import type { CompanyInvite } from './company-invite';
export declare namespace ListCompanyInvites {
    type Input = {
        company_id: string;
        sort_by?: 'email' | 'role' | 'status' | 'created_at';
        order_by?: 'asc' | 'desc';
        limit?: number;
        offset?: number;
    };
    type Options = Pick<HttpClientProtocols.GetOptions, 'abortSignal'>;
    type Success = {
        total_items_count: number;
        items: CompanyInvite[];
    };
    type ErrorCodes = 'validation' | 'token.not.provided' | 'token.invalid' | 'token.expired' | 'access.denied' | 'user.not.exists' | 'company.not.exists' | 'internal';
    type Failure = {
        code: "validation";
        message: string;
        validation: {
            field: "company_id";
            type: "required";
            value?: number;
            message: string;
        };
    } | {
        code: "validation";
        message: string;
        validation: {
            field: "company_id";
            type: "type";
            value?: number;
            message: string;
        };
    } | {
        code: "validation";
        message: string;
        validation: {
            field: "company_id";
            type: "invalid";
            value?: number;
            message: string;
        };
    } | {
        code: "validation";
        message: string;
        validation: {
            field: "order_by";
            type: "invalid";
            value?: number;
            message: string;
        };
    } | {
        code: "validation";
        message: string;
        validation: {
            field: "sort_by";
            type: "invalid";
            value?: number;
            message: string;
        };
    } | {
        code: "validation";
        message: string;
        validation: {
            field: "limit";
            type: "number";
            value?: number;
            message: string;
        };
    } | {
        code: "validation";
        message: string;
        validation: {
            field: "limit";
            type: "min";
            value?: number;
            message: string;
        };
    } | {
        code: "validation";
        message: string;
        validation: {
            field: "limit";
            type: "max";
            value?: number;
            message: string;
        };
    } | {
        code: "validation";
        message: string;
        validation: {
            field: "offset";
            type: "number";
            value?: number;
            message: string;
        };
    } | {
        code: "validation";
        message: string;
        validation: {
            field: "offset";
            type: "min";
            value?: number;
            message: string;
        };
    } | {
        code: "token.not.provided";
        message: string;
    } | {
        code: "token.invalid";
        message: string;
    } | {
        code: "token.expired";
        message: string;
    } | {
        code: "access.denied";
        message: string;
    } | {
        code: "user.not.exists";
        message: string;
    } | {
        code: "company.not.exists";
        message: string;
    } | {
        code: "internal";
        message: string;
    };
    type Output = Success | Failure;
    type Response = StarSchedAPIProtocols.Response<Success, Failure>;
}
//# sourceMappingURL=list.protocols.d.ts.map