/**
 * Google Workspace Token Controller
 *
 * Provides a token-serving endpoint for agents to obtain short-lived
 * Google access tokens for Workspace operations (Gmail, Drive, Calendar, Docs).
 *
 * Tokens are stored encrypted via UserIdentityService. This controller
 * exchanges stored refresh tokens for fresh access tokens via Google's
 * token endpoint, never exposing refresh tokens to callers.
 *
 * @module controllers/workspace/workspace.controller
 */
import { Request, Response, NextFunction } from 'express';
/**
 * GET /api/workspace/token — Provide a fresh Google access token.
 *
 * Looks up the authenticated user's stored Google refresh token,
 * exchanges it for a short-lived access token, and returns it.
 * The refresh token is never exposed to the caller.
 *
 * Query params:
 * - userId (required): The user ID whose Google token to fetch
 *
 * @param req - Express request with query.userId
 * @param res - Express response
 * @param next - Express next function
 */
export declare function getWorkspaceToken(req: Request, res: Response, next: NextFunction): Promise<void>;
/**
 * GET /api/workspace/scopes — List available Workspace scopes.
 *
 * Returns the configured WORKSPACE_SCOPES from constants.
 * Agents can use this to know which Google APIs are available.
 *
 * @param _req - Express request (unused)
 * @param res - Express response
 */
export declare function listWorkspaceScopes(_req: Request, res: Response): void;
//# sourceMappingURL=workspace.controller.d.ts.map