import { PaymentContext, SdkResponse } from "../../../model/index.js"; import { ErrorResponse, GetPaymentProductsResponse, PaymentProduct, PaymentProductNetworksResponse, PaymentProductSessionRequest, PaymentProductSessionResponse, ProductDirectory } from "../domain/index.js"; export interface ProductsClient { /** * Resource /v2/{merchantId}/products - Get payment products */ getPaymentProducts(merchantId: string, params: GetPaymentProductsParams): Promise>; /** * Resource /v2/{merchantId}/products/{paymentProductId} - Get payment product */ getPaymentProduct(merchantId: string, paymentProductId: number, params: GetPaymentProductParams): Promise>; /** * Resource /v2/{merchantId}/products/{paymentProductId}/networks - Get payment product networks */ getPaymentProductNetworks(merchantId: string, paymentProductId: number, params: GetPaymentProductNetworksParams): Promise>; /** * Resource /v2/{merchantId}/products/{paymentProductId}/directory - Get payment product directory */ getProductDirectory(merchantId: string, paymentProductId: number, params: GetProductDirectoryParams): Promise>; /** * Resource /v2/{merchantId}/products/{paymentProductId}/sessions - Create a session for a payment product */ createPaymentProductSession(merchantId: string, paymentProductId: number, body: PaymentProductSessionRequest, paymentContext?: PaymentContext | null): Promise>; } export interface GetPaymentProductsParams extends PaymentContext { countryCode?: string; currencyCode?: string; locale?: string; amount?: number; isRecurring?: boolean; hide?: string[]; operationType?: string; } export interface GetPaymentProductParams extends PaymentContext { countryCode?: string; currencyCode?: string; locale?: string; amount?: number; isRecurring?: boolean; hide?: string[]; operationType?: string; } export interface GetPaymentProductNetworksParams extends PaymentContext { countryCode?: string; currencyCode?: string; amount?: number; isRecurring?: boolean; } export interface GetProductDirectoryParams extends PaymentContext { countryCode?: string; currencyCode?: string; }