## Description
In this PR:
- (breaking) Change signature of `purchaseAndResolvePolicies` to a)
support environments (e.g. mainnet, testnet) and b) accept `extraParams`
(_to support kiosk_lock_rule_).
- Support for `kiosk_lock_rule`, enabling the SDK to fully support
`strong royalties enforcement`.
- (breaking) Change return of `purchaseAndResolvePolicies` to include
the item + `canTransfer` flag (whether it can be transferred or not,
based on the ruleset).
- Isolate the Types of the Kiosk SDK and export them all properly (from
`./types` directory).
- Reuse types in bcs definitions.
- Convert functions to plain format (instead of arrow fns) for
consistency.
- Fixes `withdrawFromKiosk` and `withdrawFromPolicy` call amount params.
## Test Plan
How did you test the new or updated feature?
Right now the changes are tested on the Demo Kiosk dapp that is being
developed in parallel. We'll need to start creating a testing suite for
the SDK, as we start finalizing our requirements.
---
If your changes are not user-facing and not a breaking change, you can
skip the following section. Otherwise, please indicate what changed, and
then add to the Release Notes section as highlighted during the release
process.
### Type of Change (Check all that apply)
- [ ] protocol change
- [ ] user-visible impact
- [x] breaking change for a client SDKs
- [ ] breaking change for FNs (FN binary must upgrade)
- [ ] breaking change for validators or node operators (must upgrade
binaries)
- [ ] breaking change for on-chain data layout
- [ ] necessitate either a data wipe or data migration
### Release notes