import BitSet from 'bitset';
/**
 * Encode a BitSet into a more compact representation
 *
 * @param bitset the BitSet to encode
 * @returns the encoded representation
 */
export declare function encodeBitSet(bitset: BitSet): any;
/**
 * Decode a BitSet from a compact representation
 *
 * @param encoded the encoded representation
 * @returns the decoded BitSet
 */
export declare function decodeBitSet(encoded: any): BitSet;
/**
 * Compress a hexadecimal string by replacing runs of zeros with a compact representation
 *
 * @param rawHex the original hexadecimal string
 * @returns the compressed hexadecimal string
 */
export declare function compressHex(rawHex: string): string;
/**
 * Decompress a hexadecimal string
 *
 * @param compressedHex the compressed hexadecimal string
 * @returns the decompressed hexadecimal string
 */
export declare function decompressHex(compressedHex: string): string;
/**
 * Compress a principal string for storage
 *
 * @param principalString the full principal string
 * @returns the compressed principal string
 */
export declare function compressPrincipalString(principalString: string): string;
/**
 * Decompress a principal string
 *
 * @param compressedString the compressed principal string
 * @param prefix the ARN prefix to use
 * @returns the decompressed principal string
 */
export declare function decompressPrincipalString(compressedString: string, prefix?: string): string;
//# sourceMappingURL=bitset.d.ts.map