import type { IncomingMessage } from "node:http";
export type WebSocketListenerAuth = {
    readonly kind: "off";
} | {
    readonly kind: "token-file";
    readonly path: string;
} | {
    readonly kind: "token-value";
    readonly token: string;
};
export type ResolvedWebSocketListenerAuth = {
    readonly kind: "off";
} | {
    readonly kind: "bearer";
    readonly token: string;
    readonly path?: string;
};
export declare function resolveWebSocketListenerAuth(options: {
    readonly auth?: WebSocketListenerAuth;
    readonly stderr: Pick<NodeJS.WriteStream, "write">;
    readonly defaultTokenPath?: string;
    readonly tokenLogLabel: string;
}): Promise<ResolvedWebSocketListenerAuth>;
export declare function isWebSocketRequestAuthorized(request: IncomingMessage, auth: ResolvedWebSocketListenerAuth): boolean;
//# sourceMappingURL=websocket-auth.d.ts.map