{"version":3,"file":"MdocError.mjs","names":[],"sources":["../../../src/modules/mdoc/MdocError.ts"],"sourcesContent":["import { CredoError } from '../../error'\nimport type { MdocDeviceRequestMatch } from './MdocOptions'\n\nexport class MdocError extends CredoError {}\n\n/**\n * Thrown when a device response is valid, but does not disclose what the device request asked for.\n *\n * Carries the full match, so callers can see per doc request and per element what is missing.\n */\nexport class MdocDeviceRequestNotSatisfiedError extends MdocError {\n  public constructor(\n    public readonly deviceRequestMatch: MdocDeviceRequestMatch,\n    message = 'Device response does not satisfy the device request.'\n  ) {\n    super(message)\n  }\n}\n\n/**\n * Thrown when a response is received for an mdoc verification session that has expired.\n *\n * Separate from {@link MdocError} so callers can distinguish an expired session (the wallet took\n * too long, and the session can be retried with a new request) from an actual verification failure.\n */\nexport class MdocVerificationSessionExpiredError extends MdocError {\n  public constructor(\n    public readonly expiresAt: Date,\n    message = `The mdoc DC API verification session has expired at ${expiresAt.toISOString()}`\n  ) {\n    super(message)\n  }\n}\n"],"mappings":";;;AAGA,IAAa,YAAb,cAA+B,WAAW,CAAC;;;;;;AAO3C,IAAa,qCAAb,cAAwD,UAAU;CAChE,YACE,oBACA,UAAU,wDACV;EACA,MAAM,OAAO;EAHG,KAAA,qBAAA;CAIlB;AACF;;;;;;;AAQA,IAAa,sCAAb,cAAyD,UAAU;CACjE,YACE,WACA,UAAU,uDAAuD,UAAU,YAAY,KACvF;EACA,MAAM,OAAO;EAHG,KAAA,YAAA;CAIlB;AACF"}