export type ApplicationErrorCode< Code extends string, Details = undefined > = Details extends undefined ? { code: Code } : { code: Code; details: Details };