import type { AuthUser } from '../middlewares/verifyFirebaseToken.js';
import type { SessionUserRecord } from '../models/session.model.js';

// Set by tenantAccess(): the caller's organization, resolved from their account.
export interface TenantContext {
  organizationId: number;
  user: SessionUserRecord;
  permissions: string[];
}

declare global {
  namespace Express {
    interface Request {
      user?: AuthUser;
      tenant?: TenantContext;
      id?: string;
    }
  }
}

export {};
