@sphereon/oid4vci-issuer
Version:
OpenID 4 Verifiable Credential Issuance issuer REST endpoints
41 lines • 1.91 kB
TypeScript
import { JWK } from '@sphereon/oid4vc-common';
import { AccessTokenRequest, AccessTokenResponse, Alg, CNonceState, CredentialOfferSession, IStateManager, JWTSignerCallback, JWTVerifyCallback } from '@sphereon/oid4vci-common';
export interface ITokenEndpointOpts {
tokenEndpointDisabled?: boolean;
tokenPath?: string;
interval?: number;
cNonceExpiresIn?: number;
tokenExpiresIn?: number;
preAuthorizedCodeExpirationDuration?: number;
accessTokenSignerCallback?: JWTSignerCallback;
accessTokenVerificationCallback?: JWTVerifyCallback;
accessTokenIssuer?: string;
accessTokenProvider?: AccessTokenProvider;
}
export type AccessTokenProvider = 'internal' | 'oidc' | 'oauth2';
export declare const generateAccessToken: (opts: Required<Pick<ITokenEndpointOpts, 'accessTokenSignerCallback' | 'tokenExpiresIn' | 'accessTokenIssuer' | 'accessTokenProvider'>> & {
additionalClaims?: Record<string, unknown>;
preAuthorizedCode?: string;
alg?: Alg;
dPoPJwk?: JWK;
}) => Promise<string>;
export declare const isValidGrant: (assertedState: CredentialOfferSession, grantType: string) => boolean;
export declare const assertValidAccessTokenRequest: (request: AccessTokenRequest, opts: {
credentialOfferSessions: IStateManager<CredentialOfferSession>;
expirationDuration: number;
}) => Promise<{
preAuthSession: CredentialOfferSession;
}>;
export declare const createAccessTokenResponse: (request: AccessTokenRequest, opts: {
credentialOfferSessions: IStateManager<CredentialOfferSession>;
cNonces: IStateManager<CNonceState>;
cNonce?: string;
cNonceExpiresIn?: number;
tokenExpiresIn: number;
accessTokenSignerCallback: JWTSignerCallback;
accessTokenIssuer: string;
accessTokenProvider?: AccessTokenProvider;
interval?: number;
dPoPJwk?: JWK;
}) => Promise<AccessTokenResponse>;
//# sourceMappingURL=index.d.ts.map