import { ControlledNavigationAdapter } from '../../adapters/navigation/controlled-navigation-adapter'; import { ControlledAutomationAdapter } from '../../adapters/automation/controlled-automation-adapter'; import { NavigationAdapter, AutomationAdapter } from '../../types'; /** * Shopify Navigation Adapter * * Handles cross-tab navigation for Shopify stores. * Extends the generic ControlledNavigationAdapter with Shopify-specific configuration. * * @example * ```ts * const navigationAdapter = new ShopifyNavigationAdapter({ * storeUrl: 'https://mystore.com' * }); * * // Navigate to collections page * await navigationAdapter.navigate('/collections/all'); * ``` */ export declare class ShopifyNavigationAdapter extends ControlledNavigationAdapter { constructor(options?: { storeUrl?: string; channelName?: string; }); } /** * Shopify Automation Adapter * * Handles cross-tab DOM automation for Shopify stores. * Extends the generic ControlledAutomationAdapter with Shopify-specific configuration. * * @example * ```ts * const automationAdapter = new ShopifyAutomationAdapter(); * * // Search for add to cart button * const results = await automationAdapter.searchElements('add to cart button'); * * // Click the button * await automationAdapter.clickElement(results.elements[0].id); * ``` */ export declare class ShopifyAutomationAdapter extends ControlledAutomationAdapter { constructor(options?: { channelName?: string; }); } /** * Initialize Shopify dual adapters * * Creates and configures both navigation and automation adapters for Shopify. * This is the recommended way to set up Shopify integration with the dual adapter pattern. * * @param config - Configuration options * @returns Initialized navigation and automation adapters * * @example * ```ts * import { initializeShopifyAdapters } from '@vowel.to/client/platforms/shopify'; * import { Vowel } from '@vowel.to/client'; * * const { navigationAdapter, automationAdapter } = initializeShopifyAdapters({ * storeUrl: 'https://mystore.com' * }); * * const vowel = new Vowel({ * appId: 'your-app-id', * navigationAdapter, * automationAdapter * }); * ``` */ export declare function initializeShopifyAdapters(config?: { storeUrl?: string; navigationChannelName?: string; automationChannelName?: string; }): { navigationAdapter: NavigationAdapter; automationAdapter: AutomationAdapter; }; //# sourceMappingURL=adapters.d.ts.map