import { ConnectorClient as _ConnectorClientBase } from "./connector_client";
import { types } from "./generated/proto";
export declare class CustomerClient extends _ConnectorClientBase {
    /** CustomerService.Create — Create customer record in the payment processor system. Stores customer details for future payment operations without re-sending personal information. */
    create(requestMsg: types.ICustomerServiceCreateRequest, options?: types.IRequestConfig | null): Promise<types.CustomerServiceCreateResponse>;
}
export declare class DisputeClient extends _ConnectorClientBase {
    /** DisputeService.Accept — Concede dispute and accepts chargeback loss. Acknowledges liability and stops dispute defense process when evidence is insufficient. */
    accept(requestMsg: types.IDisputeServiceAcceptRequest, options?: types.IRequestConfig | null): Promise<types.DisputeServiceAcceptResponse>;
    /** DisputeService.Defend — Submit defense with reason code for dispute. Presents formal argument against customer's chargeback claim with supporting documentation. */
    defend(requestMsg: types.IDisputeServiceDefendRequest, options?: types.IRequestConfig | null): Promise<types.DisputeServiceDefendResponse>;
    /** DisputeService.SubmitEvidence — Upload evidence to dispute customer chargeback. Provides documentation like receipts and delivery proof to contest fraudulent transaction claims. */
    submitEvidence(requestMsg: types.IDisputeServiceSubmitEvidenceRequest, options?: types.IRequestConfig | null): Promise<types.DisputeServiceSubmitEvidenceResponse>;
}
export declare class EventClient extends _ConnectorClientBase {
    /** EventService.HandleEvent — Verify webhook source and return a unified typed response. Response mirrors PaymentService.Get / RefundService.Get / DisputeService.Get. */
    handleEvent(requestMsg: types.IEventServiceHandleRequest, options?: types.IRequestConfig | null): Promise<types.EventServiceHandleResponse>;
    /** EventService.ParseEvent — Parse a raw webhook payload without credentials. Returns resource reference and event type — sufficient to resolve secrets or early-exit. */
    parseEvent(requestMsg: types.IEventServiceParseRequest, options?: types.IRequestConfig | null): Promise<types.EventServiceParseResponse>;
}
export declare class MerchantAuthenticationClient extends _ConnectorClientBase {
    /** MerchantAuthenticationService.CreateClientAuthenticationToken — Initialize client-facing SDK sessions for wallets, device fingerprinting, etc. Returns structured data the client SDK needs to render payment/verification UI. */
    createClientAuthenticationToken(requestMsg: types.IMerchantAuthenticationServiceCreateClientAuthenticationTokenRequest, options?: types.IRequestConfig | null): Promise<types.MerchantAuthenticationServiceCreateClientAuthenticationTokenResponse>;
    /** MerchantAuthenticationService.CreateServerAuthenticationToken — Generate short-lived connector authentication token. Provides secure credentials for connector API access without storing secrets client-side. */
    createServerAuthenticationToken(requestMsg: types.IMerchantAuthenticationServiceCreateServerAuthenticationTokenRequest, options?: types.IRequestConfig | null): Promise<types.MerchantAuthenticationServiceCreateServerAuthenticationTokenResponse>;
    /** MerchantAuthenticationService.CreateServerSessionAuthenticationToken — Create a server-side session with the connector. Establishes session state for multi-step operations like 3DS verification or wallet authorization. */
    createServerSessionAuthenticationToken(requestMsg: types.IMerchantAuthenticationServiceCreateServerSessionAuthenticationTokenRequest, options?: types.IRequestConfig | null): Promise<types.MerchantAuthenticationServiceCreateServerSessionAuthenticationTokenResponse>;
}
export declare class PaymentMethodAuthenticationClient extends _ConnectorClientBase {
    /** PaymentMethodAuthenticationService.Authenticate — Execute 3DS challenge or frictionless verification. Authenticates customer via bank challenge or behind-the-scenes verification for fraud prevention. */
    authenticate(requestMsg: types.IPaymentMethodAuthenticationServiceAuthenticateRequest, options?: types.IRequestConfig | null): Promise<types.PaymentMethodAuthenticationServiceAuthenticateResponse>;
    /** PaymentMethodAuthenticationService.PostAuthenticate — Validate authentication results with the issuing bank. Processes bank's authentication decision to determine if payment can proceed. */
    postAuthenticate(requestMsg: types.IPaymentMethodAuthenticationServicePostAuthenticateRequest, options?: types.IRequestConfig | null): Promise<types.PaymentMethodAuthenticationServicePostAuthenticateResponse>;
    /** PaymentMethodAuthenticationService.PreAuthenticate — Initiate 3DS flow before payment authorization. Collects device data and prepares authentication context for frictionless or challenge-based verification. */
    preAuthenticate(requestMsg: types.IPaymentMethodAuthenticationServicePreAuthenticateRequest, options?: types.IRequestConfig | null): Promise<types.PaymentMethodAuthenticationServicePreAuthenticateResponse>;
}
export declare class PaymentMethodClient extends _ConnectorClientBase {
    /** PaymentMethodService.Tokenize — Tokenize payment method for secure storage. Replaces raw card details with secure token for one-click payments and recurring billing. */
    tokenize(requestMsg: types.IPaymentMethodServiceTokenizeRequest, options?: types.IRequestConfig | null): Promise<types.PaymentMethodServiceTokenizeResponse>;
}
export declare class PaymentClient extends _ConnectorClientBase {
    /** PaymentService.Authorize — Authorize a payment amount on a payment method. This reserves funds without capturing them, essential for verifying availability before finalizing. */
    authorize(requestMsg: types.IPaymentServiceAuthorizeRequest, options?: types.IRequestConfig | null): Promise<types.PaymentServiceAuthorizeResponse>;
    /** PaymentService.Capture — Finalize an authorized payment by transferring funds. Captures the authorized amount to complete the transaction and move funds to your merchant account. */
    capture(requestMsg: types.IPaymentServiceCaptureRequest, options?: types.IRequestConfig | null): Promise<types.PaymentServiceCaptureResponse>;
    /** PaymentService.CreateOrder — Create a payment order for later processing. Establishes a transaction context that can be authorized or captured in subsequent API calls. */
    createOrder(requestMsg: types.IPaymentServiceCreateOrderRequest, options?: types.IRequestConfig | null): Promise<types.PaymentServiceCreateOrderResponse>;
    /** PaymentService.Get — Retrieve current payment status from the payment processor. Enables synchronization between your system and payment processors for accurate state tracking. */
    get(requestMsg: types.IPaymentServiceGetRequest, options?: types.IRequestConfig | null): Promise<types.PaymentServiceGetResponse>;
    /** PaymentService.IncrementalAuthorization — Increase the authorized amount for an existing payment. Enables you to capture additional funds when the transaction amount changes after initial authorization. */
    incrementalAuthorization(requestMsg: types.IPaymentServiceIncrementalAuthorizationRequest, options?: types.IRequestConfig | null): Promise<types.PaymentServiceIncrementalAuthorizationResponse>;
    /** PaymentService.ProxyAuthorize — Authorize using vault-aliased card data. Proxy substitutes before connector. */
    proxyAuthorize(requestMsg: types.IPaymentServiceProxyAuthorizeRequest, options?: types.IRequestConfig | null): Promise<types.PaymentServiceAuthorizeResponse>;
    /** PaymentService.ProxySetupRecurring — Setup recurring mandate using vault-aliased card data. */
    proxySetupRecurring(requestMsg: types.IPaymentServiceProxySetupRecurringRequest, options?: types.IRequestConfig | null): Promise<types.PaymentServiceSetupRecurringResponse>;
    /** PaymentService.Refund — Process a partial or full refund for a captured payment. Returns funds to the customer when goods are returned or services are cancelled. */
    refund(requestMsg: types.IPaymentServiceRefundRequest, options?: types.IRequestConfig | null): Promise<types.RefundResponse>;
    /** PaymentService.Reverse — Reverse a captured payment in full. Initiates a complete refund when you need to cancel a settled transaction rather than just an authorization. */
    reverse(requestMsg: types.IPaymentServiceReverseRequest, options?: types.IRequestConfig | null): Promise<types.PaymentServiceReverseResponse>;
    /** PaymentService.SetupRecurring — Configure a payment method for recurring billing. Sets up the mandate and payment details needed for future automated charges. */
    setupRecurring(requestMsg: types.IPaymentServiceSetupRecurringRequest, options?: types.IRequestConfig | null): Promise<types.PaymentServiceSetupRecurringResponse>;
    /** PaymentService.TokenAuthorize — Authorize using a connector-issued payment method token. */
    tokenAuthorize(requestMsg: types.IPaymentServiceTokenAuthorizeRequest, options?: types.IRequestConfig | null): Promise<types.PaymentServiceAuthorizeResponse>;
    /** PaymentService.TokenSetupRecurring — Setup a recurring mandate using a connector token. */
    tokenSetupRecurring(requestMsg: types.IPaymentServiceTokenSetupRecurringRequest, options?: types.IRequestConfig | null): Promise<types.PaymentServiceSetupRecurringResponse>;
    /** PaymentService.Void — Cancel an authorized payment that has not been captured. Releases held funds back to the customer's payment method when a transaction cannot be completed. */
    void(requestMsg: types.IPaymentServiceVoidRequest, options?: types.IRequestConfig | null): Promise<types.PaymentServiceVoidResponse>;
    /** PaymentService.VerifyRedirectResponse — Verify and process redirect responses from 3D Secure or other external flows. Validates authentication results and updates payment state accordingly. */
    verifyRedirectResponse(requestMsg: types.IPaymentServiceVerifyRedirectResponseRequest, options?: types.IRequestConfig | null): Promise<types.PaymentServiceVerifyRedirectResponseResponse>;
}
export declare class PayoutClient extends _ConnectorClientBase {
    /** PayoutService.Create — Creates a payout. */
    payoutCreate(requestMsg: types.IPayoutServiceCreateRequest, options?: types.IRequestConfig | null): Promise<types.PayoutServiceCreateResponse>;
    /** PayoutService.CreateLink — Creates a link between the recipient and the payout. */
    payoutCreateLink(requestMsg: types.IPayoutServiceCreateLinkRequest, options?: types.IRequestConfig | null): Promise<types.PayoutServiceCreateLinkResponse>;
    /** PayoutService.CreateRecipient — Create payout recipient. */
    payoutCreateRecipient(requestMsg: types.IPayoutServiceCreateRecipientRequest, options?: types.IRequestConfig | null): Promise<types.PayoutServiceCreateRecipientResponse>;
    /** PayoutService.EnrollDisburseAccount — Enroll disburse account. */
    payoutEnrollDisburseAccount(requestMsg: types.IPayoutServiceEnrollDisburseAccountRequest, options?: types.IRequestConfig | null): Promise<types.PayoutServiceEnrollDisburseAccountResponse>;
    /** PayoutService.Get — Retrieve payout details. */
    payoutGet(requestMsg: types.IPayoutServiceGetRequest, options?: types.IRequestConfig | null): Promise<types.PayoutServiceGetResponse>;
    /** PayoutService.Stage — Stage the payout. */
    payoutStage(requestMsg: types.IPayoutServiceStageRequest, options?: types.IRequestConfig | null): Promise<types.PayoutServiceStageResponse>;
    /** PayoutService.Transfer — Creates a payout fund transfer. */
    payoutTransfer(requestMsg: types.IPayoutServiceTransferRequest, options?: types.IRequestConfig | null): Promise<types.PayoutServiceTransferResponse>;
    /** PayoutService.Void — Void a payout. */
    payoutVoid(requestMsg: types.IPayoutServiceVoidRequest, options?: types.IRequestConfig | null): Promise<types.PayoutServiceVoidResponse>;
}
export declare class RecurringPaymentClient extends _ConnectorClientBase {
    /** RecurringPaymentService.Charge — Charge using an existing stored recurring payment instruction. Processes repeat payments for subscriptions or recurring billing without collecting payment details. */
    charge(requestMsg: types.IRecurringPaymentServiceChargeRequest, options?: types.IRequestConfig | null): Promise<types.RecurringPaymentServiceChargeResponse>;
    /** RecurringPaymentService.Revoke — Cancel an existing recurring payment mandate. Stops future automatic charges on customer's stored consent for subscription cancellations. */
    recurringRevoke(requestMsg: types.IRecurringPaymentServiceRevokeRequest, options?: types.IRequestConfig | null): Promise<types.RecurringPaymentServiceRevokeResponse>;
}
export declare class RefundClient extends _ConnectorClientBase {
    /** RefundService.Get — Retrieve refund status from the payment processor. Tracks refund progress through processor settlement for accurate customer communication. */
    refundGet(requestMsg: types.IRefundServiceGetRequest, options?: types.IRequestConfig | null): Promise<types.RefundResponse>;
}
