{"version":3,"file":"index.cjs","sources":["../../../../../src/libs/copiable/index.ts"],"sourcesContent":["export type BytesOrCopiable<T extends Uint8Array = Uint8Array> =\n  | T\n  | Copiable<T>\n\nexport interface Copiable<T extends Uint8Array = Uint8Array> extends Disposable {\n  readonly bytes: T\n}\n\nexport class Copied<T extends Uint8Array = Uint8Array> implements Copiable<T> {\n\n  constructor(\n    readonly bytes: T\n  ) { }\n\n  [Symbol.dispose]() { }\n\n}\n\nexport namespace Copiable {\n\n  export function copyAndDispose(copiable: Copiable): Uint8Array {\n    using _ = copiable\n\n    return copiable.bytes.slice()\n  }\n\n}"],"names":["Copiable","__addDisposableResource"],"mappings":";;;;MAQa,MAAM,CAAA;AAGN,IAAA,KAAA;AADX,IAAA,WAAA,CACW,KAAQ,EAAA;QAAR,IAAK,CAAA,KAAA,GAAL,KAAK;;AAGhB,IAAA,CAAC,MAAM,CAAC,OAAO,CAAC;AAEjB;AAEgBA;AAAjB,CAAA,UAAiB,QAAQ,EAAA;IAEvB,SAAgB,cAAc,CAAC,QAAkB,EAAA;;;AAC/C,YAAA,MAAM,CAAC,GAAAC,iCAAA,CAAA,KAAA,EAAG,QAAQ,EAAA,KAAA,CAAA;AAElB,YAAA,OAAO,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE;;;;;;;;;AAC9B;AAJe,IAAA,QAAA,CAAA,cAAc,iBAI7B;AAEH,CAAC,EARgBD,gBAAQ,KAARA,gBAAQ,GAQxB,EAAA,CAAA,CAAA;;;;"}