import { BrowserContext, Page, Frame } from 'playwright';
/**
 * Extends the Playwright BindingCall functionality to include a name property.
 * This enables a well-defined mapping between the name and associated callback
 * when using BrowserContext.exposeBinding().
 *
 * @see https://playwright.dev/docs/api/class-browsercontext#browser-context-expose-binding
 */
export interface NamedBindingCallback {
    /**
     * The name of the method as it should be called in Javascript
     * (i.e., as it should be passed to the `name` parameter of BrowserContext.exposeBinding)
     */
    name(): string;
    /**
     * The callback function that will be invoked when the binding is called from the page
     */
    call(source: {
        context: BrowserContext;
        page: Page;
        frame: Frame;
    }, ...args: any[]): any;
}
//# sourceMappingURL=NamedBindingCallback.d.ts.map