/** ascii */
export declare const ASCII = 0;
/** 16 bit integer, or java short */
export declare const SHORT = 1;
/** 24 bit integer */
export declare const INT24 = 2;
/** 32 bit integer, or java int */
export declare const INTEGER = 3;
/** ieee float */
export declare const FLOAT = 4;
/** ieee double*/
export declare const DOUBLE = 5;
/** Steim1 compression */
export declare const STEIM1 = 10;
/** Steim2 compression */
export declare const STEIM2 = 11;
/** CDSN 16 bit gain ranged */
export declare const CDSN = 16;
/** (A)SRO */
export declare const SRO = 30;
/** DWWSSN 16 bit */
export declare const DWWSSN = 32;
export declare class CodecException extends Error {
    constructor(message: string);
}
export declare class UnsupportedCompressionType extends Error {
    constructor(message: string);
}
export declare function isFloatCompression(compressionType: number): boolean;
/**
 * A holder for compressed data independent of the file format.
 */
export declare class EncodedDataSegment {
    compressionType: number;
    dataView: DataView;
    numSamples: number;
    littleEndian: boolean;
    constructor(compressionType: number, dataView: DataView, numSamples: number, littleEndian: boolean);
    isFloatCompression(): boolean;
    decode(): Int32Array | Float32Array | Float64Array;
}
/**
 *  Decompress the samples from the provided DataView and
 *  return an array of the decompressed values.
 *  Only 16 bit short, 32 bit int, 32 bit float and 64 bit double
 *  along with Steim1 and Steim2 are supported.
 *
 *  @param compressionType compression format as defined in SEED blockette 1000
 *  @param dataView input DataView to be decoded
 *  @param numSamples the number of samples that can be decoded from array
 *  <b>b</b>
 *  @param littleEndian if true, dataView is little-endian (intel byte order) <b>b</b>.
 *  @returns array of length <b>numSamples</b>.
 *  @throws CodecException fail to decompress.
 *  @throws UnsupportedCompressionType unsupported compression type
 */
export declare function decompress(compressionType: number, dataView: DataView, numSamples: number, littleEndian: boolean): Int32Array | Float32Array | Float64Array;
/**
 *  Decode the indicated number of samples from the provided byte array and
 *  return an integer array of the decompressed values.  Being differencing
 *  compression, there may be an offset carried over from a previous data
 *  record.  This offset value can be placed in <b>bias</b>, otherwise leave
 *  the value as 0.
 *
 *  @param dataView input DataView to be decoded
 *  @param numSamples the number of samples that can be decoded from array
 *  <b>b</b>
 *  @param littleEndian if true, dataView is little-endian (intel byte order) <b>b</b>.
 *  @param bias the first difference value will be computed from this value.
 *  If set to 0, the method will attempt to use the X(0) constant instead.
 *  @returns int array of length <b>numSamples</b>.
 *  @throws CodecException - encoded data length is not multiple of 64
 *  bytes.
 */
export declare function decodeSteim1(dataView: DataView, numSamples: number, littleEndian: boolean, bias: number): Int32Array;
/**
 *  Decode the indicated number of samples from the provided byte array and
 *  return an integer array of the decompressed values.  Being differencing
 *  compression, there may be an offset carried over from a previous data
 *  record.  This offset value can be placed in <b>bias</b>, otherwise leave
 *  the value as 0.
 *
 *  @param dataView input byte array to be decoded
 *  @param numSamples the number of samples that can be decoded from array
 *  @param swapBytes if true, swap reverse the endian-ness of the elements of
 *  dataview
 *  @param bias the first difference value will be computed from this value.
 *  If set to 0, the method will attempt to use the X(0) constant instead.
 *  @returns int array of length <b>numSamples</b>.
 *  @throws SteimException - encoded data length is not multiple of 64
 *  bytes.
 */
export declare function decodeSteim2(dataView: DataView, numSamples: number, swapBytes: boolean, bias: number): Int32Array;
