UNPKG

@ddunigma/node

Version:
76 lines (72 loc) 4.03 kB
import { D as Ddu64Core, a as DduSecureConstructorOptions, b as DduOptions, c as DduEncodeStats } from './core-ihIEWmI5.js'; export { C as CharSetConfig, d as CharSetInfo, e as CharsetBuilder, f as Ddu64AdapterError, g as Ddu64CharsetError, h as Ddu64ChecksumError, i as Ddu64CompressionError, j as Ddu64DecodeError, k as Ddu64DecompressionError, l as Ddu64DecryptionError, m as Ddu64EncodeError, n as Ddu64EncryptionError, o as Ddu64Error, p as Ddu64ErrorCode, q as Ddu64ErrorOptions, r as Ddu64InvalidInputError, s as Ddu64LimitError, t as Ddu64ObfuscationError, u as Ddu64Operation, v as Ddu64StreamError, w as DduBaseConstructorOptions, x as DduBaseOptions, y as DduProgressInfo, z as DduSetSymbol, A as DduSetSymbolInput, E as EncodingProfile, O as ObfuscationLayer, B as isDdu64Error } from './core-ihIEWmI5.js'; export { H as HangulObfuscationLayer, c as createEncoderObfuscationLayer, d as detectRuntime } from './ObfuscationLayer-CotTuQ5X.js'; /** * Node.js 전용 기본 Ddu64 래퍼. * * Ddu64Core를 확장하여 인코딩 + 한글 난독화(라이브러리 주목적: 재미 + 시각적 난독화)와 * Node.js Buffer 디코드를 제공합니다: * - HangulObfuscationLayer 자동 주입 → 키 없는 한글 난독화 사용 가능 * - Node.js Buffer를 반환하는 `decodeToBuffer` 및 `decodeToBufferAsync` 제공 * - encode()에 Buffer 입력 허용 (Buffer는 Uint8Array를 확장) * * 기본 경로는 어댑터(zlib/crypto)를 주입하지 않습니다. 압축/암호화가 명시된 비동기 호출만 * secure 래퍼를 동적 import하여 NodeAdapter를 지연 주입합니다. 동기 secure 작업이 필요하면 * secure 진입점(`@ddunigma/node/secure`)의 `Ddu64Secure`를 사용하세요. * * @module Ddu64Node */ /** * Node.js 전용 기본 Ddu64 인코더/디코더. * * Ddu64Core를 래핑하여 한글 난독화 레이어를 자동 주입하고, * 하위 호환성을 위한 Buffer 반환 디코드 메서드를 제공합니다. * * @example * ```ts * import { Ddu64 } from '@ddunigma/node'; * * const encoder = new Ddu64(); * const encoded = encoder.encode(Buffer.from('Hello'), { obfuscate: true }); * const decoded = encoder.decodeToBuffer(encoded); // Buffer 반환 * ``` */ declare class Ddu64Node extends Ddu64Core { #private; constructor(dduChar?: string[] | string | DduSecureConstructorOptions, paddingChar?: string, dduOptions?: DduSecureConstructorOptions); /** @group Sync */ encode(input: Uint8Array | string, options?: DduOptions): string; /** * @group Sync * `decode`/`decodeToBuffer`는 코어에서 `this.decodeToUint8Array`를 경유하므로 이 가드 하나가 * sync 디코드 3종을 모두 덮습니다(중복 override 불필요). */ decodeToUint8Array(input: string, options?: DduOptions): Uint8Array; /** @group Async */ encodeAsync(input: Uint8Array | string, options?: DduOptions): Promise<string>; /** @group Async */ decodeToUint8ArrayAsync(input: string, options?: DduOptions): Promise<Uint8Array>; /** @group Introspection */ getStats(input: Uint8Array | string, options?: DduOptions): DduEncodeStats; /** @group Introspection */ getStatsAsync(input: Uint8Array | string, options?: DduOptions): Promise<DduEncodeStats>; /** * 인코딩된 문자열을 Node.js Buffer로 디코딩합니다. * * @param input - 디코딩할 인코딩된 문자열 * @param options - 디코딩 옵션 * @returns 디코딩된 Buffer * @group Sync */ decodeToBuffer(input: string, options?: DduOptions): Buffer; /** * 비동기적으로 Node.js Buffer로 디코딩합니다. * * @param input - 디코딩할 인코딩된 문자열 * @param options - 디코딩 옵션 * @returns 디코딩된 Buffer로 resolve되는 Promise * @group Async */ decodeToBufferAsync(input: string, options?: DduOptions): Promise<Buffer>; } export { Ddu64Node as Ddu64, Ddu64Core, Ddu64Node, DduEncodeStats };