# Structures

The following structures are available globally.

- `EnhancementStreamProgress`

  Undocumented

  See more

  #### Declaration

  Swift

      public struct EnhancementStreamProgress : EnhancementProgress

- `WalletBirthday`

  Represents the wallet’s birthday which can be thought of as a checkpoint at the earliest moment in history where transactions related to this wallet could exist. Ideally, this would correspond to the latest block height at the time the wallet key was created. Worst case, the height of Sapling activation could be used (280000).

  Knowing a wallet’s birthday can significantly reduce the amount of data that it needs to download because none of the data before that height needs to be scanned for transactions. However, we do need the Sapling tree data in order to construct valid transactions from that point forward. This birthday contains that tree data, allowing us to avoid downloading all the compact blocks required in order to generate it.

  New wallets can ignore any blocks created before their birthday.

  See more

  #### Declaration

  Swift

      public struct WalletBirthday

  #### Parameters

  `height` | the height at the time the wallet was born
  `hash` | the block hash corresponding to the given height
  `time` | the time the wallet was born, in seconds
  `tree` | the sapling tree corresponding to the given height. This takes around 15 minutes of processing to generate from scratch because all blocks since activation need to be considered. So when it is calculated in advance it can save the user a lot of time.

- `LightWalletEndpoint`

  Represents a lightwallet instance endpoint to connect to

  See more

  #### Declaration

  Swift

      public struct LightWalletEndpoint

- `DefaultResourceProvider`

  Convenience provider for a data db and cache db resources.

  See more

  #### Declaration

  Swift

      public struct DefaultResourceProvider : ResourceProvider

- `ZcashCompactBlock`

  A Zcash compact block to store on cache DB

  See more

  #### Declaration

  Swift

      public struct ZcashCompactBlock : CompactBlockEntity

      extension ZcashCompactBlock: Encodable

      extension ZcashCompactBlock: Equatable

      extension ZcashCompactBlock: Hashable

- `BlockProgress`

  Undocumented

  See more

  #### Declaration

  Swift

      public struct BlockProgress : Equatable

© 2022 Francisco Gindre and Jack Grigg. All rights reserved. (Last updated: 2022-04-07)

Generated by jazzy ♪♫ v0.14.2, a Realm project.