import { identityEmbeddedTypeEncode } from "./encoder"; import { genericEmbeddedTypeDecode, ReaderStateOptions } from "./reader"; import { genericEmbeddedTypeEncode, neverEmbeddedTypeEncode } from "./writer"; import { Value } from "./values"; import { DecoderState, neverEmbeddedTypeDecode } from "./decoder"; import type { GenericEmbedded, EmbeddedType, EmbeddedTypeDecode } from "./embedded"; export const genericEmbeddedType: EmbeddedType = Object.assign({}, genericEmbeddedTypeDecode, genericEmbeddedTypeEncode); export const neverEmbeddedType: EmbeddedType = Object.assign({}, neverEmbeddedTypeDecode, neverEmbeddedTypeEncode); export const identityEmbeddedTypeDecode: EmbeddedTypeDecode = { decode(_s: DecoderState): any { throw new Error("Cannot decode identityEmbeddedType"); }, fromValue(_v: Value, _options: ReaderStateOptions): any { throw new Error("Cannot decode identityEmbeddedType"); }, }; export const identityEmbeddedType: EmbeddedType = Object.assign({}, identityEmbeddedTypeDecode, identityEmbeddedTypeEncode);