import { RawMap } from './map';
import { Key, type Encryptor } from './key';
export declare class AesGcmKey extends Key implements Encryptor {
    static fromBytes(data: Uint8Array): AesGcmKey;
    static generate<T>(alg: number, kid?: T): AesGcmKey;
    static fromSecret<T>(secret: Uint8Array, kid?: T): AesGcmKey;
    constructor(kv?: RawMap);
    nonceSize(): number;
    getSecretKey(): Uint8Array;
    encrypt(plaintext: Uint8Array, nonce: Uint8Array, aad?: Uint8Array): Promise<Uint8Array>;
    decrypt(ciphertext: Uint8Array, nonce: Uint8Array, aad?: Uint8Array): Promise<Uint8Array>;
}
