import * as z from "zod/v4-mini";
import { Result as SafeParseResult } from "../../types/fp.js";
import { ListResourcePayment } from "../components/listresourcepayment.js";
import { PaymentSortProperty } from "../components/paymentsortproperty.js";
import { PaymentStatus } from "../components/paymentstatus.js";
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
/**
 * Filter by organization ID.
 */
export type PaymentsListQueryParamOrganizationIDFilter = string | Array<string>;
/**
 * Filter by checkout ID.
 */
export type PaymentsListQueryParamCheckoutIDFilter = string | Array<string>;
/**
 * Filter by order ID.
 */
export type PaymentsListQueryParamOrderIDFilter = string | Array<string>;
/**
 * Filter by customer ID.
 */
export type PaymentsListQueryParamCustomerIDFilter = string | Array<string>;
/**
 * Filter by payment status.
 */
export type PaymentsListQueryParamStatusFilter = PaymentStatus | Array<PaymentStatus>;
/**
 * Filter by payment method.
 */
export type MethodFilter = string | Array<string>;
/**
 * Filter by customer email.
 */
export type CustomerEmailFilter = string | Array<string>;
export type PaymentsListRequest = {
    /**
     * Filter by organization ID.
     */
    organizationId?: string | Array<string> | null | undefined;
    /**
     * Filter by checkout ID.
     */
    checkoutId?: string | Array<string> | null | undefined;
    /**
     * Filter by order ID.
     */
    orderId?: string | Array<string> | null | undefined;
    /**
     * Filter by customer ID.
     */
    customerId?: string | Array<string> | null | undefined;
    /**
     * Filter by payment status.
     */
    status?: PaymentStatus | Array<PaymentStatus> | null | undefined;
    /**
     * Filter by payment method.
     */
    method?: string | Array<string> | null | undefined;
    /**
     * Filter by customer email.
     */
    customerEmail?: string | Array<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<PaymentSortProperty> | null | undefined;
};
export type PaymentsListResponse = {
    result: ListResourcePayment;
};
/** @internal */
export type PaymentsListQueryParamOrganizationIDFilter$Outbound = string | Array<string>;
/** @internal */
export declare const PaymentsListQueryParamOrganizationIDFilter$outboundSchema: z.ZodMiniType<PaymentsListQueryParamOrganizationIDFilter$Outbound, PaymentsListQueryParamOrganizationIDFilter>;
export declare function paymentsListQueryParamOrganizationIDFilterToJSON(paymentsListQueryParamOrganizationIDFilter: PaymentsListQueryParamOrganizationIDFilter): string;
/** @internal */
export type PaymentsListQueryParamCheckoutIDFilter$Outbound = string | Array<string>;
/** @internal */
export declare const PaymentsListQueryParamCheckoutIDFilter$outboundSchema: z.ZodMiniType<PaymentsListQueryParamCheckoutIDFilter$Outbound, PaymentsListQueryParamCheckoutIDFilter>;
export declare function paymentsListQueryParamCheckoutIDFilterToJSON(paymentsListQueryParamCheckoutIDFilter: PaymentsListQueryParamCheckoutIDFilter): string;
/** @internal */
export type PaymentsListQueryParamOrderIDFilter$Outbound = string | Array<string>;
/** @internal */
export declare const PaymentsListQueryParamOrderIDFilter$outboundSchema: z.ZodMiniType<PaymentsListQueryParamOrderIDFilter$Outbound, PaymentsListQueryParamOrderIDFilter>;
export declare function paymentsListQueryParamOrderIDFilterToJSON(paymentsListQueryParamOrderIDFilter: PaymentsListQueryParamOrderIDFilter): string;
/** @internal */
export type PaymentsListQueryParamCustomerIDFilter$Outbound = string | Array<string>;
/** @internal */
export declare const PaymentsListQueryParamCustomerIDFilter$outboundSchema: z.ZodMiniType<PaymentsListQueryParamCustomerIDFilter$Outbound, PaymentsListQueryParamCustomerIDFilter>;
export declare function paymentsListQueryParamCustomerIDFilterToJSON(paymentsListQueryParamCustomerIDFilter: PaymentsListQueryParamCustomerIDFilter): string;
/** @internal */
export type PaymentsListQueryParamStatusFilter$Outbound = string | Array<string>;
/** @internal */
export declare const PaymentsListQueryParamStatusFilter$outboundSchema: z.ZodMiniType<PaymentsListQueryParamStatusFilter$Outbound, PaymentsListQueryParamStatusFilter>;
export declare function paymentsListQueryParamStatusFilterToJSON(paymentsListQueryParamStatusFilter: PaymentsListQueryParamStatusFilter): string;
/** @internal */
export type MethodFilter$Outbound = string | Array<string>;
/** @internal */
export declare const MethodFilter$outboundSchema: z.ZodMiniType<MethodFilter$Outbound, MethodFilter>;
export declare function methodFilterToJSON(methodFilter: MethodFilter): string;
/** @internal */
export type CustomerEmailFilter$Outbound = string | Array<string>;
/** @internal */
export declare const CustomerEmailFilter$outboundSchema: z.ZodMiniType<CustomerEmailFilter$Outbound, CustomerEmailFilter>;
export declare function customerEmailFilterToJSON(customerEmailFilter: CustomerEmailFilter): string;
/** @internal */
export type PaymentsListRequest$Outbound = {
    organization_id?: string | Array<string> | null | undefined;
    checkout_id?: string | Array<string> | null | undefined;
    order_id?: string | Array<string> | null | undefined;
    customer_id?: string | Array<string> | null | undefined;
    status?: string | Array<string> | null | undefined;
    method?: string | Array<string> | null | undefined;
    customer_email?: string | Array<string> | null | undefined;
    page: number;
    limit: number;
    sorting?: Array<string> | null | undefined;
};
/** @internal */
export declare const PaymentsListRequest$outboundSchema: z.ZodMiniType<PaymentsListRequest$Outbound, PaymentsListRequest>;
export declare function paymentsListRequestToJSON(paymentsListRequest: PaymentsListRequest): string;
/** @internal */
export declare const PaymentsListResponse$inboundSchema: z.ZodMiniType<PaymentsListResponse, unknown>;
export declare function paymentsListResponseFromJSON(jsonString: string): SafeParseResult<PaymentsListResponse, SDKValidationError>;
//# sourceMappingURL=paymentslist.d.ts.map