/**
 * Common base for serialization/deserialization methods
 *
 */
declare abstract class AbstractStruct {
    abstract TYPE: string;
    /**
     * Packs structure into serialized format
     * @param mixed $data
     * @return string
     */
    pack(data: string | Buffer): string | Buffer;
    /**
     * Unpacks structure from serialized format
     * @param string $data
     * @return mixed
     */
    unpack(data: Buffer): string | object;
}

export { AbstractStruct as A };
