import type { Dependencies } from "./dependencies.js"; import type { BrowserLaunchFlowContext, ElectronLaunchFlowContext, FlowContextFor, LegacyFlowContext, TestContext } from "./flowContext.js"; import type { WebBrowserFlowOptions, WebElectronFlowOptions, WebFlowApiReturnValue, WebFlowDefinition, WebFlowTarget, WebFlowTargetInput, WebLegacyFlowDefinition, WebLegacyFlowOptions } from "./flowTypes.js"; export { expect } from "./expect/index.js"; export { testContextDependencies } from "./flowContext.js"; export { type AnonymousLaunchResult, type ElectronLaunchResult, type LaunchOptions, type LaunchResult, type PersistentLaunchResult, isAnonymous, isElectron, isPersistent, launch, } from "./launch.js"; export type { BrowserLaunchFlowContext, Dependencies, ElectronLaunchFlowContext, FlowContextFor, LegacyFlowContext, TestContext, WebFlowApiReturnValue, WebFlowDefinition, WebFlowTarget, WebFlowTargetInput, WebLegacyFlowDefinition, }; type FlowApi = { (flowName: string, target: WebFlowTarget | WebLegacyFlowOptions, flowCallback: (context: LegacyFlowContext) => Promise): WebFlowDefinition; (flowName: string, target: WebBrowserFlowOptions, flowCallback: (context: LegacyFlowContext & BrowserLaunchFlowContext) => Promise): WebFlowDefinition; (flowName: string, target: WebElectronFlowOptions, flowCallback: (context: LegacyFlowContext & ElectronLaunchFlowContext) => Promise): WebFlowDefinition; }; /** * Defines a web flow. * * Use `flow(...)` for the common path where the callback works with injected * flow context. Pair it with `launch()` when the flow needs explicit control * over browser or Electron startup. * * @example * export default flow("Sign in", "Web - Chrome", async ({ page }) => { * await page.goto("https://example.com"); * }); */ export declare const flow: FlowApi; //# sourceMappingURL=index.d.ts.map