import type { SwishApp } from "../swish"; export type CustomiserLoadOptions = { /** CDN root, e.g. `https://swish.app/cdn`. The customiser bundle is loaded * from `${baseUrl}/customiser@/`. Defaults to the production CDN. */ baseUrl?: string; /** Shop identifier forwarded to the customiser (scopes its persistence). * Typically `context.myshopifyDomain`. */ shop?: string; }; export type CustomiserSdkModule = { mountCustomiser(swish: SwishApp, opts: { shop?: string; themeId?: string; /** Storefront theme display name, forwarded alongside `themeId` so the * iframe can persist the setup's theme link on save (SWI-2269). */ themeName?: string; appUrl: string; /** One-time OAuth bootstrap code read from the launch URL fragment, * forwarded to the iframe to redeem for an access token. */ bootstrapCode?: string; /** Setup the admin deep-linked to edit, read from the launch URL fragment * and forwarded to the iframe. Fresh launch only. */ setupId?: string; onClose: () => void; }): void; }; export declare const isCustomiserRequested: () => boolean; export declare const loadCustomiserIfRequested: (swish: SwishApp, opts?: CustomiserLoadOptions) => void;