import { PublicKey, SignatureScheme } from "@mysten/sui/cryptography";
import { Signer } from "@mysten/sui/cryptography";
export declare class KmsSigner extends Signer {
    private kmsKeyId;
    private KmsClient;
    private publicKey;
    private compressedPublicKey;
    constructor(kmsKeyId: string, options?: {
        region: string;
        accessKeyId?: string;
        sessionToken?: string;
        secretAccessKey?: string;
    });
    private loadPublicKey;
    init(): Promise<void>;
    assertInitialized(throwError?: boolean): boolean;
    getPublicKey(): PublicKey;
    signData(_: Uint8Array): Uint8Array;
    sign(data: Uint8Array): Promise<Uint8Array>;
    getKeyScheme(): SignatureScheme;
}
export declare function getSignerFromKmsId(kmsId: string, options?: {
    region: string;
    accessKeyId?: string;
    sessionToken?: string;
    secretAccessKey?: string;
}): Promise<KmsSigner>;
