UNPKG

@sphereon/ssi-sdk.qr-code-generator

Version:

QR Code provider (react)

92 lines 3.43 kB
import { IAgentContext, IPluginMethodMap } from '@veramo/core'; export interface IQRCodeGenerator extends IPluginMethodMap { qrDIDCommOobInvitationElement(args: CreateElementArgs<QRType.DIDCOMM_V2_OOB_INVITATION, DIDCommV2OOBInvitationData>, context: IRequiredContext): Promise<JSX.Element>; qrDIDCommOobInvitationValue(args: CreateValueArgs<QRType.DIDCOMM_V2_OOB_INVITATION, DIDCommV2OOBInvitationData>, context: IRequiredContext): Promise<string>; qrSIOPv2Element(args: CreateElementArgs<QRType.SIOPV2, SIOPv2DataWithScheme>, context: IRequiredContext): Promise<JSX.Element>; qrSIOPv2Value(args: CreateValueArgs<QRType.SIOPV2, SIOPv2DataWithScheme>, context: IRequiredContext): Promise<string>; qrURIElement(args: CreateElementArgs<QRType.URI, URIData>, context: IRequiredContext): Promise<JSX.Element>; qrOpenID4VCIElement(args: CreateElementArgs<QRType.OpenID4VCI, OpenID4VCIDataWithScheme>, context: IRequiredContext): Promise<JSX.Element>; qrOpenID4VCIValue(args: CreateValueArgs<QRType.OpenID4VCI, OpenID4VCIDataWithScheme>, context: IRequiredContext): Promise<string>; } export interface CreateValueArgs<T extends QRType, D> { onGenerate?: (result: ValueResult<T, D>) => void; data: QRData<T, D>; } export interface CreateElementArgs<T extends QRType, D> extends CreateValueArgs<T, D> { renderingProps: QRRenderingProps; } export interface ValueResult<T extends QRType, D> { id: string; value: string; data: QRData<T, D>; renderingProps?: QRRenderingProps; context?: IRequiredContext; } export declare enum QRType { URI = "uri", SIOPV2 = "openid-vc", DIDCOMM_V2_OOB_INVITATION = "https://didcomm.org/out-of-band/2.0/invitation", OpenID4VCI = "openid-credential-offer" } export type SIOPv2Scheme = 'openid' | 'openid-vc' | string; export interface SIOPv2DataWithScheme { scheme?: SIOPv2Scheme; requestUri: string; } export type OpenID4VCIScheme = 'openid-credential-offer' | 'https' | string; export interface OpenID4VCIDataWithScheme { scheme?: OpenID4VCIScheme; baseUri?: string; credentialOfferUri?: string; credentialOffer?: string; } export interface DIDCommV2OOBInvitationData { baseURI: string; oobInvitation: DIDCommV2OOBInvitation; } /** * { * "type": "https://didcomm.org/out-of-band/2.0/invitation", * "id": "599f3638-b563-4937-9487-dfe55099d900", * "from": "did:example:verifier", * "body": { * "goal_code": "streamlined-vp", * "accept": ['didcomm/v2'] * } * } */ export interface DIDCommV2OOBInvitation { type: 'https://didcomm.org/out-of-band/2.0/invitation'; id: string; from: DID; body: Body; } export type URIData = string; export type DID = string; export interface Body { goal_code: GoalCode; accept: [AcceptMode]; } export type GoalCode = 'streamlined-vp' | 'streamlined-vc'; export type AcceptMode = 'didcomm/v2' | string; export declare enum StatusCode { OK = "OK", CREATED = "CREATED" } export interface QRData<T extends QRType, D> { id: string; type: T; object: D; } export interface QRRenderingProps { bgColor?: string; fgColor?: string; level?: 'L' | 'M' | 'Q' | 'H'; size?: number; title?: string; } export declare enum events { QR_CODE_CODE_CREATED = "QrCodeCreated" } export type IRequiredContext = IAgentContext<Record<string, never>>; //# sourceMappingURL=IQRCodeGenerator.d.ts.map