38 lines
1008 B
Kotlin
38 lines
1008 B
Kotlin
package cash.z.ecc.android.sdk.jni
|
|
|
|
import cash.z.ecc.android.sdk.model.Account
|
|
import cash.z.ecc.android.sdk.model.UnifiedFullViewingKey
|
|
import cash.z.ecc.android.sdk.model.UnifiedSpendingKey
|
|
import cash.z.ecc.android.sdk.model.ZcashNetwork
|
|
|
|
// Implemented by `DerivationTool`
|
|
interface Derivation {
|
|
suspend fun deriveUnifiedAddress(
|
|
viewingKey: String,
|
|
network: ZcashNetwork
|
|
): String
|
|
|
|
suspend fun deriveUnifiedAddress(
|
|
seed: ByteArray,
|
|
network: ZcashNetwork,
|
|
account: Account
|
|
): String
|
|
|
|
suspend fun deriveUnifiedSpendingKey(
|
|
seed: ByteArray,
|
|
network: ZcashNetwork,
|
|
account: Account
|
|
): UnifiedSpendingKey
|
|
|
|
suspend fun deriveUnifiedFullViewingKey(
|
|
usk: UnifiedSpendingKey,
|
|
network: ZcashNetwork
|
|
): UnifiedFullViewingKey
|
|
|
|
suspend fun deriveUnifiedFullViewingKeys(
|
|
seed: ByteArray,
|
|
network: ZcashNetwork,
|
|
numberOfAccounts: Int = 1
|
|
): Array<UnifiedFullViewingKey>
|
|
}
|