[feature request] Contract custom type definition generation support #81
Open
Description
Given a storage which has a custom type definition as below.
#[derive(....)]
struct CustomType {
name: String
}
#[ink(storage)]
struct Store {
members: ink_storage::collections::HashMap<AccountId, CustomType>
}
When a contract developer executes npx redspot compile. it generates three files as below
- artificats/store.contract :: the contract itself.
- artificats/store.json :: the contract metadata.
- artificats/store.ts.d :: the Typescript definiton of the custom types of the contract.(new)
So that a contract developer could import TS types to make ts-lint happy.
import { CustomType } from artificates.contract;
const contractFactory = await getContractFactory('contract', creator);
const contract = await contractFactory.deploy('new');
const member: CustomType = await contract.members(account_id).output;
Dependencies
- Generate type definitions for contract abi, just like generating type definitions for metadata (Generate type definitions for contract abi, just like generating type definitions for metadata. polkadot-js/api#3337)
Metadata
Assignees
Labels
No labels