UNPKG

@wristband/express-auth

Version:

SDK for integrating your ExpressJS application with Wristband. Handles user authentication and token management.

41 lines (40 loc) 1.67 kB
import { Request, Response } from 'express'; /** * Parses cookies from an Express request without relying on cookie-parser middleware * * Extracts and parses the Cookie header from the request, handling edge cases such as: * - Missing Cookie header * - Cookie values containing equals signs * - URL encoded values * - Whitespace around separators * * @param req - Express Request object * @returns An object containing all cookies as key-value pairs * @example * // Returns { token: "abc123", session: "xyz789" } * const cookies = parseCookies(req); * const sessionId = cookies.session; */ export declare const parseCookies: (req: Request) => Record<string, string>; /** * Sets a cookie using direct header manipulation instead of cookie-parser middleware * * @param res - Express Response object * @param name - Name of the cookie * @param value - Value to store in the cookie (will be encoded) * @param options - Cookie options * @param options.maxAge - Cookie lifetime in milliseconds * @param options.dangerouslyDisableSecureCookies - Whether to omit the Secure flag */ export declare function setCookie(res: Response, name: string, value: string, options?: { maxAge?: number; dangerouslyDisableSecureCookies?: boolean; }): void; /** * Clears a cookie by setting its Max-Age to 0 and maintaining security properties * * @param res - Express Response object * @param cookieName - Name of the cookie to clear * @param dangerouslyDisableSecureCookies - Whether to omit the Secure flag (defaults to false) */ export declare function clearCookie(res: Response, cookieName: string, dangerouslyDisableSecureCookies?: boolean): void;