import * as z from "zod/v4-mini";
import { Result as SafeParseResult } from "../../types/fp.js";
import { CustomFieldSortProperty } from "../components/customfieldsortproperty.js";
import { CustomFieldType } from "../components/customfieldtype.js";
import { ListResourceCustomField } from "../components/listresourcecustomfield.js";
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
/**
 * Filter by organization ID.
 */
export type CustomFieldsListQueryParamOrganizationIDFilter = string | Array<string>;
/**
 * Filter by custom field type.
 */
export type CustomFieldTypeFilter = CustomFieldType | Array<CustomFieldType>;
export type CustomFieldsListRequest = {
    /**
     * Filter by organization ID.
     */
    organizationId?: string | Array<string> | null | undefined;
    /**
     * Filter by custom field name or slug.
     */
    query?: string | null | undefined;
    /**
     * Filter by custom field type.
     */
    typeFilter?: CustomFieldType | Array<CustomFieldType> | null | undefined;
    /**
     * Page number, defaults to 1.
     */
    page?: number | undefined;
    /**
     * Size of a page, defaults to 10. Maximum is 100.
     */
    limit?: number | undefined;
    /**
     * Sorting criterion. Several criteria can be used simultaneously and will be applied in order. Add a minus sign `-` before the criteria name to sort by descending order.
     */
    sorting?: Array<CustomFieldSortProperty> | null | undefined;
};
export type CustomFieldsListResponse = {
    result: ListResourceCustomField;
};
/** @internal */
export type CustomFieldsListQueryParamOrganizationIDFilter$Outbound = string | Array<string>;
/** @internal */
export declare const CustomFieldsListQueryParamOrganizationIDFilter$outboundSchema: z.ZodMiniType<CustomFieldsListQueryParamOrganizationIDFilter$Outbound, CustomFieldsListQueryParamOrganizationIDFilter>;
export declare function customFieldsListQueryParamOrganizationIDFilterToJSON(customFieldsListQueryParamOrganizationIDFilter: CustomFieldsListQueryParamOrganizationIDFilter): string;
/** @internal */
export type CustomFieldTypeFilter$Outbound = string | Array<string>;
/** @internal */
export declare const CustomFieldTypeFilter$outboundSchema: z.ZodMiniType<CustomFieldTypeFilter$Outbound, CustomFieldTypeFilter>;
export declare function customFieldTypeFilterToJSON(customFieldTypeFilter: CustomFieldTypeFilter): string;
/** @internal */
export type CustomFieldsListRequest$Outbound = {
    organization_id?: string | Array<string> | null | undefined;
    query?: string | null | undefined;
    type_filter?: string | Array<string> | null | undefined;
    page: number;
    limit: number;
    sorting?: Array<string> | null | undefined;
};
/** @internal */
export declare const CustomFieldsListRequest$outboundSchema: z.ZodMiniType<CustomFieldsListRequest$Outbound, CustomFieldsListRequest>;
export declare function customFieldsListRequestToJSON(customFieldsListRequest: CustomFieldsListRequest): string;
/** @internal */
export declare const CustomFieldsListResponse$inboundSchema: z.ZodMiniType<CustomFieldsListResponse, unknown>;
export declare function customFieldsListResponseFromJSON(jsonString: string): SafeParseResult<CustomFieldsListResponse, SDKValidationError>;
//# sourceMappingURL=customfieldslist.d.ts.map