import * as z from "zod/v4-mini";
import { Result as SafeParseResult } from "../../types/fp.js";
import { DiscountSortProperty } from "../components/discountsortproperty.js";
import { ListResourceDiscount } from "../components/listresourcediscount.js";
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
/**
 * Filter by organization ID.
 */
export type DiscountsListQueryParamOrganizationIDFilter = string | Array<string>;
export type DiscountsListRequest = {
    /**
     * Filter by organization ID.
     */
    organizationId?: string | Array<string> | null | undefined;
    /**
     * Filter by name.
     */
    query?: string | 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<DiscountSortProperty> | null | undefined;
};
export type DiscountsListResponse = {
    result: ListResourceDiscount;
};
/** @internal */
export type DiscountsListQueryParamOrganizationIDFilter$Outbound = string | Array<string>;
/** @internal */
export declare const DiscountsListQueryParamOrganizationIDFilter$outboundSchema: z.ZodMiniType<DiscountsListQueryParamOrganizationIDFilter$Outbound, DiscountsListQueryParamOrganizationIDFilter>;
export declare function discountsListQueryParamOrganizationIDFilterToJSON(discountsListQueryParamOrganizationIDFilter: DiscountsListQueryParamOrganizationIDFilter): string;
/** @internal */
export type DiscountsListRequest$Outbound = {
    organization_id?: string | Array<string> | null | undefined;
    query?: string | null | undefined;
    page: number;
    limit: number;
    sorting?: Array<string> | null | undefined;
};
/** @internal */
export declare const DiscountsListRequest$outboundSchema: z.ZodMiniType<DiscountsListRequest$Outbound, DiscountsListRequest>;
export declare function discountsListRequestToJSON(discountsListRequest: DiscountsListRequest): string;
/** @internal */
export declare const DiscountsListResponse$inboundSchema: z.ZodMiniType<DiscountsListResponse, unknown>;
export declare function discountsListResponseFromJSON(jsonString: string): SafeParseResult<DiscountsListResponse, SDKValidationError>;
//# sourceMappingURL=discountslist.d.ts.map