useContract


Signature #1

function useContract<TContractAddress extends string>(
  contractAddress: RequiredParam<TContractAddress>,
): UseContractResult<
  TContractAddress extends GeneratedContractAddress
    ? SmartContract<BaseContractForAddress<TContractAddress>>
    : SmartContract
>;

Parameters


Returns

type ReturnType = UseContractResult<
  TContractAddress extends GeneratedContractAddress
    ? SmartContract<BaseContractForAddress<TContractAddress>>
    : SmartContract
>;

Signature #2

Use this resolve a contract address to a smart contract instance.

function useContract(
  contractAddress: RequiredParam<string>,
): UseContractResult<SmartContract>;

Parameters


Returns

a response object that includes the contract once it is resolved

type ReturnType = UseContractResult<SmartContract>;

Example

const { contract, isLoading, error } = useContract(
  "{{contract_address}}",
);

Signature #3

Use this resolve a contract address to a smart contract instance.

function useContract<
  TContractType extends
    | "split"
    | "edition-drop"
    | "edition"
    | "marketplace"
    | "marketplace-v3"
    | "multiwrap"
    | "nft-collection"
    | "nft-drop"
    | "pack"
    | "signature-drop"
    | "token-drop"
    | "token"
    | "vote"
    | "custom",
>(
  contractAddress: RequiredParam<string>,
  _contractType: TContractType,
): UseContractResult<
  TContractType extends PrebuiltContractType
    ? ContractForPrebuiltContractType<TContractType>
    : SmartContract
>;

Parameters


Returns

a response object that includes the contract once it is resolved

type ReturnType = UseContractResult<
  TContractType extends PrebuiltContractType
    ? ContractForPrebuiltContractType<TContractType>
    : SmartContract
>;

Example

const { contract, isLoading, error } = useContract(
  "{{contract_address}}",
  "nft-drop",
);

Signature #4

Use this resolve a contract address to a smart contract instance.

function useContract(
  contractAddress: RequiredParam<string>,
  _abi: ContractInterface,
): UseContractResult<SmartContract>;

Parameters


Returns

a response object that includes the contract once it is resolved

type ReturnType = UseContractResult<SmartContract>;

Example

const { contract, isLoading, error } = useContract(
  "{{contract_address}}",
  ABI,
);