import { CollectCheckoutParam } from '../model';
/**
 * Service for handling Collect App checkout functionality
 */
export declare class CollectCheckoutService {
    private clientConfiguration;
    private readonly hostUrl;
    private readonly hostKey;
    private readonly collectAppID;
    private readonly collectAppLoader;
    private readonly collectAppWidget;
    private readonly _handleMessageAddEventListener;
    /**
     * Creates a new instance of the CollectCheckoutService
     * @param clientConfiguration Configuration for the checkout
     */
    constructor(clientConfiguration: CollectCheckoutParam);
    /**
     * Setup collect checkout UI elements
     */
    setup(): void;
    /**
     * Open collect checkout
     */
    open(): void;
    /**
     * Close collect checkout
     */
    close(): Promise<void>;
    /**
     * Handle messages from the checkout iframe
     */
    private handleMessageAddEventListener;
    /**
     * Validate the client configuration
     * @param clientConfiguration Configuration to validate
     * @returns Array of error messages or undefined if valid
     */
    private validateConfiguration;
}
