import { FastifyReply } from "fastify"; import { ClsService } from "nestjs-cls"; import { OAuthAuthorizeQueryDto, OAuthConsentDecisionDto, OAuthConsentInfoQueryDto } from "../dtos/oauth.authorize.dto"; import { ConsentInfoResponse, OAuthService } from "../services/oauth.service"; /** * OAuth Authorization Controller * * Handles the authorization endpoint (RFC 6749 Section 3.1). * Requires user authentication - user must be logged in before authorizing. */ export declare class OAuthAuthorizeController { private readonly oauthService; private readonly cls; constructor(oauthService: OAuthService, cls: ClsService); /** * Authorization Endpoint * * GET /oauth/authorize * * Initiates the authorization code flow. User must be authenticated. * On success, redirects to redirect_uri with authorization code. * On error, redirects to redirect_uri with error details. */ authorize(query: OAuthAuthorizeQueryDto, reply: FastifyReply): Promise; /** * Authorization Info Endpoint * * GET /oauth/authorize/info * * Returns client information for the consent screen. * User must be authenticated to view consent screen. */ getAuthorizationInfo(query: OAuthConsentInfoQueryDto): Promise; /** * Authorization Approve Endpoint * * POST /oauth/authorize/approve * * Called when the user approves the authorization request. * Issues an authorization code and returns a redirect URL. */ approveAuthorization(body: OAuthConsentDecisionDto): Promise<{ meta: { redirectUrl: string; }; }>; /** * Authorization Deny Endpoint * * POST /oauth/authorize/deny * * Called when the user denies the authorization request. * Returns a redirect URL with error=access_denied. */ denyAuthorization(body: OAuthConsentDecisionDto): Promise<{ meta: { redirectUrl: string; }; }>; } //# sourceMappingURL=oauth.authorize.controller.d.ts.map