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>
|
||
|
}
|