joshua | Flow (2024-01-02)
In Cadence 1.0, how do I get a storage capability that is typed as the type that I set it as? details in 
/title <new title> let tokenManagerCapability = sharedAccount
.capabilities.storage.issue<auth(FungibleToken.Withdrawable) &LockedTokens.LockedTokenManager>(
LockedTokens.LockedTokenManagerStoragePath)Capability<auth(FungibleToken.Withdrawable) &LockedTokens.LockedTokenManager> let tokenManagerCapabilityController = signer.capabilities.storage.getControllers(forPath: LockedTokens.LockedTokenManagerStoragePath)[0]!
let tokenManagerCapability = tokenManagerCapabilityController.capabilityCapabilitylet tokenManagerCapability = tokenManagerCapabilityController.capability as Capability<auth(FungibleToken.Withdrawable) &LockedTokens.LockedTokenManager>error: mismatched types
--> 7f4a4e497420d88303fad3865d0a37d3be56ea0a1645b4e91d6a52f9dd8581d3:26:37
|
26 | let tokenManagerCapability = tokenManagerCapabilityController.capability as Capability<auth(FungibleToken.Withdrawable) &LockedTokens.LockedTokenManager>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Capability<auth(FungibleToken.Withdrawable) &LockedTokens.LockedTokenManager>`, got `Capability`