export interface PireonConfig { /** e.g. https://oauth.pireon.dev */ baseUrl: string; /** Seconds a resolved token is trusted before asking Pireon again. */ sessionTtlSeconds: number; requestTimeoutMs: number; /** * Pireon OAuth client with grant type `authorization_code` ("Sign in with * Pireon", Swagger UI). Pireon clients allow a single grant type, so email + * password uses its own client below. */ clientId?: string; /** Kept server-side: browsers sign in through /api/auth/token. */ clientSecret?: string; /** Pireon OAuth client with grant type `password`; defaults to the one above. */ passwordClientId?: string; passwordClientSecret?: string; scopes: string[]; passwordGrant: boolean; } export const PIREON_CONFIG = Symbol('PIREON_CONFIG');