///
import { KeyringNode, NodeEncryptionMaterial, NodeDecryptionMaterial, EncryptedDataKey, AwsEsdkKeyObject, NodeAlgorithmSuite } from '@aws-crypto/material-management-node';
import { WrapKey, UnwrapKey } from '@aws-crypto/raw-keyring';
interface RsaKey {
publicKey?: string | Buffer | AwsEsdkKeyObject;
privateKey?: string | Buffer | AwsEsdkKeyObject;
}
export type OaepHash = 'sha1' | 'sha256' | 'sha384' | 'sha512' | undefined;
export type RawRsaKeyringNodeInput = {
keyNamespace: string;
keyName: string;
rsaKey: RsaKey;
padding?: number;
oaepHash?: OaepHash;
};
export declare class RawRsaKeyringNode extends KeyringNode {
keyNamespace: string;
keyName: string;
_wrapKey: WrapKey;
_unwrapKey: UnwrapKey;
constructor(input: RawRsaKeyringNodeInput);
_filter({ providerId, providerInfo }: EncryptedDataKey): boolean;
_onEncrypt: (this: RawRsaKeyringNode, material: NodeEncryptionMaterial) => Promise;
_onDecrypt: (this: RawRsaKeyringNode, material: NodeDecryptionMaterial, encryptedDataKeys: EncryptedDataKey[]) => Promise;
}
export {};
//# sourceMappingURL=raw_rsa_keyring_node.d.ts.map