/** * This code was AUTOGENERATED using the kinobi library. * Please DO NOT EDIT THIS FILE, instead use visitors * to add features, then rerun kinobi to update it. * * @see https://github.com/kinobi-so/kinobi */ import { Program, ProgramError } from '@metaplex-foundation/umi'; type ProgramErrorConstructor = new ( program: Program, cause?: Error ) => ProgramError; const codeToErrorMap: Map = new Map(); const nameToErrorMap: Map = new Map(); /** PermissionDenied */ export class PermissionDeniedError extends ProgramError { override readonly name: string = 'PermissionDenied'; readonly code: number = 0x1770; // 6000 constructor(program: Program, cause?: Error) { super('', program, cause); } } codeToErrorMap.set(0x1770, PermissionDeniedError); nameToErrorMap.set('PermissionDenied', PermissionDeniedError); /** InvalidSize */ export class InvalidSizeError extends ProgramError { override readonly name: string = 'InvalidSize'; readonly code: number = 0x1771; // 6001 constructor(program: Program, cause?: Error) { super('', program, cause); } } codeToErrorMap.set(0x1771, InvalidSizeError); nameToErrorMap.set('InvalidSize', InvalidSizeError); /** * Attempts to resolve a custom program error from the provided error code. * @category Errors */ export function getWorkerInterfaceErrorFromCode( code: number, program: Program, cause?: Error ): ProgramError | null { const constructor = codeToErrorMap.get(code); return constructor ? new constructor(program, cause) : null; } /** * Attempts to resolve a custom program error from the provided error name, i.e. 'Unauthorized'. * @category Errors */ export function getWorkerInterfaceErrorFromName( name: string, program: Program, cause?: Error ): ProgramError | null { const constructor = nameToErrorMap.get(name); return constructor ? new constructor(program, cause) : null; }