import type { CompanyClient } from './company.js';
/**
 * Builds the browser assertion of section 5 for the current Session, after checking that
 * `return_to` is an HTTPS URL on `organization.domain` or a subdomain of it.
 */
export declare function createBrowserAssertion(company: CompanyClient, returnTo: string): Promise<{
    endpoint: string;
    assertion: string;
    sessionId: string;
}>;
/** A page whose form POSTs the assertion as a top-level navigation. Never in the URL (5). */
export declare function autoSubmitFormHtml(endpoint: string, assertion: string): string;
/**
 * Serves the auto-submitting page once, on 127.0.0.1 at an unguessable path, so a local
 * browser can load it. The page is gone after the first load (the assertion lives 60s anyway).
 */
export declare function serveOneShotPage(html: string, opts?: {
    timeoutMs?: number | undefined;
}): Promise<{
    url: string;
    served: Promise<void>;
    close: () => void;
}>;
//# sourceMappingURL=browser.d.ts.map