import type { AuthenticationStrategy, Host as SDKHost } from '@wix/sdk-types'; export type WixNamespace = string; export interface ClientSDK { invoke(args: { applicationId: string; namespace: WixNamespace; method: string; args: Args; accessToken?: string; }): Promise; } export type SDK = {}; export type SDKOptions = { applicationId: string; clientSdk?: ClientSDK; }; export interface Channel { observeState(callback: (props: unknown, environment: Environment) => unknown): { disconnect: () => void; } | Promise<{ disconnect: () => void; }>; } export interface WebsiteChannel extends Channel { invoke: (args: { namespace: WixNamespace; method: string; args: unknown[]; }) => Promise; getAccessToken: () => Promise; } export type Host = Omit & { channel: WebsiteChannel; }; export type AccessTokenFn = () => Promise; export type CreateWebsiteHost = (options?: SDKOptions) => Host; export type CreateAuthStrategy = (getAccessTokenFn?: () => Promise) => AuthenticationStrategy & { getAccessTokenInjector(): (getAccessTokenFn: AccessTokenFn) => void; }; export interface WixEmbedsAPI { getAccessTokenFunction?(): (() => Promise) | undefined; getExternalBaseUrl?: () => string; getMetaSiteId?: () => string; getEssentials: () => { language: string; locale: string; }; getMonitoringClientFunction: (appId?: string) => Host['getMonitoringClient']; } //# sourceMappingURL=types.d.ts.map