@paydock/client-sdk
Version:
Paydock client sdk
30 lines • 1.21 kB
TypeScript
import type { OpenWalletMeta } from './open-wallet-meta.interface';
/**
* Internal contract for wallet-specific service providers (Apple Pay, Google Pay, etc.).
*
* This interface defines the operations that the wallet-specific button classes
* ({@link ApplePayOpenWalletButton}, {@link GooglePayOpenWalletButton}) delegate
* to the resolved wallet service after fetching the service configuration.
*
* **Note:** This is NOT the merchant-facing API. Merchants interact with
* {@link ApplePayOpenWalletButton} or {@link GooglePayOpenWalletButton} directly,
* which orchestrate these providers internally.
*/
export interface IOpenWalletProvider {
/**
* Loads the wallet SDK, checks availability, and renders the wallet button.
* If the wallet is not available, emits the `unavailable` event instead.
*/
load(): Promise<void>;
/**
* Removes the wallet button from the DOM and releases resources.
*/
destroy(): void;
/**
* Updates the wallet metadata (e.g. when order amount or currency changes).
*
* @param meta - The updated metadata.
*/
setMeta(meta: OpenWalletMeta): void;
}
//# sourceMappingURL=payment-source.interface.d.ts.map