UNPKG

pickleparser

Version:

A pure Javascript implemented parser for Python pickle format

33 lines (32 loc) 1.16 kB
import { IReader } from './reader'; export type UnpicklingTypeOfSet = 'array' | 'Set'; export type UnpicklingTypeOfDictionary = 'object' | 'Map'; export interface NameResolver { resolve(module: string, name: string): (new (...args: any[]) => any) | ((...args: any[]) => any); } export interface PersistentResolver { resolve(pid: string): any; } export interface ExtensionResolver { resolve(extCode: number): any; } export interface ParserOptions { nameResolver: NameResolver; persistentResolver: PersistentResolver; extensionResolver: ExtensionResolver; unpicklingTypeOfSet: UnpicklingTypeOfSet; unpicklingTypeOfDictionary: UnpicklingTypeOfDictionary; buffers?: Iterator<any>; } export declare class Parser { private readonly _options; private readonly _nameResolver; private readonly _persistentResolver; private readonly _extensionResolver; private readonly _setProvider; private readonly _dictionaryProvider; private readonly _buffers?; constructor(options?: Partial<ParserOptions>); parse<T>(buffer: Uint8Array | Int8Array | Uint8ClampedArray): T; read<T>(reader: IReader): T; }