UNPKG

@sphereon/ssi-sdk-qr-react

Version:
83 lines 2.89 kB
/// <reference types="react" /> import { IAgentContext, IPluginMethodMap } from '@veramo/core'; export interface IQRCodeGenerator extends IPluginMethodMap { didCommOobInvitationElement(args: CreateElementArgs<QRType.DIDCOMM_V2_OOB_INVITATION, DIDCommV2OOBInvitationData>, context: IRequiredContext): Promise<JSX.Element>; didCommOobInvitationValue(args: CreateValueArgs<QRType.DIDCOMM_V2_OOB_INVITATION, DIDCommV2OOBInvitationData>, context: IRequiredContext): Promise<string>; siopv2Element(args: CreateElementArgs<QRType.SIOPV2, SIOPv2DataWithScheme>, context: IRequiredContext): Promise<JSX.Element>; siopv2Value(args: CreateValueArgs<QRType.SIOPV2, SIOPv2DataWithScheme>, context: IRequiredContext): Promise<string>; uriElement(args: CreateElementArgs<QRType.URI, URIData>, context: IRequiredContext): Promise<JSX.Element>; } 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" } export type SIOPv2Scheme = 'openid' | 'openid-vc' | string; export interface SIOPv2DataWithScheme { scheme?: SIOPv2Scheme; requestUri: 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