wcz-layout
Version:
29 lines • 1.48 kB
text/typescript
import { scopes } from "virtual:wcz-layout";
//#region src/lib/auth/authHandlers.d.ts
/**
* GET /auth/login — start the flow: stash PKCE + state + provider, redirect to the IdP.
* Without `?provider=` and with more than one provider registered, sends the user to
* the chooser at `/login` instead; a single provider (whichever it is) starts right away.
*/
export declare function handleLogin(): Promise<Response>;
/** GET /auth/callback — finish the flow: validate state, exchange code, set session. */
export declare function handleCallback(): Promise<Response>;
/** GET /auth/logout — clear the local session and sign out of the provider's session. */
export declare function handleLogout(): Promise<Response>;
//#endregion
//#region src/lib/auth/tokens.d.ts
type ScopeKey = keyof typeof scopes;
/**
* Delegated access token for the signed-in user, minted from the session refresh
* token. Providers that rotate the refresh token return a new one, which is
* persisted back. Server-only — stripped from the client bundle.
*/
export declare const getAccessToken: (scopeKey: ScopeKey) => Promise<string>;
/**
* Client-credentials (app-only) token, for background jobs with no user.
* Entra-only: the AWS population signs in interactively, so a Cognito app client
* for M2M has no caller yet (and Cognito bills M2M per token request).
*/
export declare const getAppToken: (scopeKey: ScopeKey) => Promise<string>;
//#endregion
//# sourceMappingURL=auth.d.mts.map