export declare type CryptoAlgorithm = 'ed25519' | 'sr25519' | 'secp256k1' | /* | 'secp256r1' */ 'sapling'; export declare type CryptoSecretType = 'secret' | 'miniSecretXor'; interface BaseCryptoConfiguration<_Algorithm extends CryptoAlgorithm> { algorithm: _Algorithm; } export interface Ed25519CryptoConfiguration<_SecretType extends CryptoSecretType = CryptoSecretType> extends BaseCryptoConfiguration<'ed25519'> { key?: string; secretType?: _SecretType; } export interface Sr25519CryptoConfiguration extends BaseCryptoConfiguration<'sr25519'> { compatibility: 'substrate'; } export interface Secp256K1CryptoConfiguration<_SecretType extends CryptoSecretType = CryptoSecretType> extends BaseCryptoConfiguration<'secp256k1'> { key?: string; secretType?: _SecretType; } export interface SaplingCryptoConfiguration<_SecretType extends CryptoSecretType = CryptoSecretType> extends BaseCryptoConfiguration<'sapling'> { secretType?: _SecretType; } export declare type CryptoConfiguration = Ed25519CryptoConfiguration | Sr25519CryptoConfiguration | Secp256K1CryptoConfiguration | SaplingCryptoConfiguration; export interface CryptoDerivative { depth: number; parentFingerprint: number; index: number; chainCode: string; secretKey: string; publicKey: string; } export {};