import { StrictStreamrClientConfig } from '../Config';
import { Identity } from './Identity';
/**
 * This is where config keyTypes are connected to Identity implementations.
 *
 * How to configure new Identity types:
 * 1. Add a new SignatureType entry to NetworkRpc.proto in network package
 * 2. Add the needed SigningUtil to signingUtils.ts
 * 3. Create the Identity implementation itself (eg. extend KeyPairIdentity)
 * 4. Wire everything together below
 */
export declare const validKeyTypeValues: readonly ["ECDSA_SECP256K1_EVM", "ML_DSA_87"];
export type KeyType = typeof validKeyTypeValues[number];
export declare const DEFAULT_KEY_TYPE: KeyType;
/**
 * Creates an Identity instance based on what's in the StreamrClient config
 */
export declare const createIdentityFromConfig: (config: Pick<StrictStreamrClientConfig, "auth" | "contracts">) => Identity;
