interface JWERecipient {
    encrypted_key?: string;
    header?: Record<string, any>;
}
export interface DagJWE {
    aad?: string;
    ciphertext: string;
    iv: string;
    protected: string;
    recipients?: Array<JWERecipient>;
    tag: string;
    unprotected?: Record<string, any>;
}
interface EncodedRecipient {
    encrypted_key?: Uint8Array;
    header?: Record<string, any>;
}
export interface EncodedJWE {
    aad?: Uint8Array;
    ciphertext: Uint8Array;
    iv: Uint8Array;
    protected: Uint8Array;
    recipients?: Array<EncodedRecipient>;
    tag: Uint8Array;
    unprotected?: Record<string, any>;
}
declare function fromSplit(split: Array<string>): DagJWE;
declare function encode(jwe: DagJWE): EncodedJWE;
declare function decode(encoded: EncodedJWE): DagJWE;
declare const _default: {
    fromSplit: typeof fromSplit;
    decode: typeof decode;
    encode: typeof encode;
};
export default _default;
