import { GraphiQLAppContext, TokenProvider } from './server.js'; import { AbortSignal } from '../abort.js'; import { OutputMessage } from '../output.js'; import { Writable } from 'stream'; export interface BuildGraphiQLUrlOptions { port: number; key: string; query?: string; variables?: string; apiVersion?: string; } export interface RunGraphiQLSessionOptions { storeFqdn: string; tokenProvider: TokenProvider; key: string; port?: number; query?: string; variables?: string; apiVersion?: string; appContext?: GraphiQLAppContext; protectMutations?: boolean; additionalReadyMessages?: OutputMessage[]; abortSignal?: AbortSignal; stdout?: Writable; } /** * Generates a random key suitable for authenticating a single local GraphiQL session. * * @returns A 64-character hex string. */ export declare function generateRandomGraphiQLKey(): string; /** * Builds the browser URL for a local GraphiQL session. * * @param options - The local port, key, and optional query string fields to prefill. * @returns The fully-qualified local GraphiQL URL. */ export declare function buildGraphiQLUrl(options: BuildGraphiQLUrlOptions): string; /** * Runs a local GraphiQL session until the user interrupts it or the supplied abort signal fires. * * @param options - The server, authentication, URL prefill, and output options for the session. */ export declare function runGraphiQLSession(options: RunGraphiQLSessionOptions): Promise; /** * Resolves when the process receives SIGINT or when the supplied abort signal fires. * * @param externalSignal - Optional signal used by tests or callers to stop the session. */ export declare function waitForGraphiQLAbort(externalSignal?: AbortSignal): Promise;