Skip to content

sdk-contracts-ts 0.5.0-pr-675-cb2a7342.0

Install from the command line:
Learn more about npm packages
$ npm install @cowprotocol/sdk-contracts-ts@0.5.0-pr-675-cb2a7342.0
Install via package.json:
"@cowprotocol/sdk-contracts-ts": "0.5.0-pr-675-cb2a7342.0"

About this version

SDK Contracts

This package provides TypeScript contract interfaces and utilities for interacting with CoW Protocol smart contracts. It includes type-safe contract wrappers and helper functions for all CoW Protocol contracts.

Package Origin

This package represents a migration and modularization of the TypeScript utilities that were previously located in the contracts repository. The contract interaction logic has been extracted from the main contracts repository and reorganized into this dedicated SDK package to:

  • Improve modularity - Separate smart contract deployment code from client-side interaction utilities
  • Enable independent versioning - Allow contract interfaces to evolve independently from contract deployments
  • Better developer experience - Provide a focused package specifically for TypeScript developers
  • SDK integration - Seamlessly integrate with the broader CoW Protocol SDK ecosystem

What's included

  • Contract Interfaces - TypeScript interfaces for all CoW Protocol smart contracts
  • Contract Utilities - Helper functions for contract interactions
  • Type Safety - Full TypeScript support with proper typing
  • Multi-Chain Support - Contract addresses and interfaces for all supported chains

Installation

npm install @cowprotocol/sdk-contracts-ts

Usage

import { ContractsTs } from '@cowprotocol/sdk-contracts-ts'
import { EthersV6Adapter } from '@cowprotocol/sdk-ethers-v6-adapter'
import { JsonRpcProvider, Wallet } from 'ethers'

// Configure the adapter
const provider = new JsonRpcProvider('YOUR_RPC_URL')
const wallet = new Wallet('YOUR_PRIVATE_KEY', provider)
const adapter = new EthersV6Adapter({ provider, signer: wallet })

// Initialize contracts with adapter
const contracts = new ContractsTs(adapter)

// Use contract interfaces
const settlementContract = contracts.settlement()
const vaultRelayerContract = contracts.vaultRelayer()

Usage with CoW SDK

When using the CoW SDK, contract utilities are automatically available:

import {
  CowSdk,
} from '@cowprotocol/cow-sdk'
import { EthersV6Adapter } from '@cowprotocol/sdk-ethers-v6-adapter'
import { JsonRpcProvider, Wallet } from 'ethers'

// Configure the adapter
const provider = new JsonRpcProvider('YOUR_RPC_URL')
const wallet = new Wallet('YOUR_PRIVATE_KEY', provider)
const adapter = new EthersV6Adapter({ provider, signer: wallet })

// Initialize the unified SDK
const sdk = new CowSdk({
  chainId: SupportedChainId.SEPOLIA,
  adapter,
})

// Access contracts through the SDK
const settlementContract = sdk.contracts.settlement()
const vaultRelayerContract = sdk.contracts.vaultRelayer()

Available Contracts

  • Settlement Contract - Main CoW Protocol settlement contract
  • Vault Relayer - Contract for handling vault interactions
  • Composable CoW - Contract for conditional orders
  • Extensible Fallback Handler - Safe fallback handler for smart contract wallets

Note: This package is primarily designed to provide contract interfaces and is rarely used standalone. Most developers should use @cowprotocol/cow-sdk package which includes all contract utilities with proper adapter configuration.

Details


Assets

  • sdk-contracts-ts-0.5.0-pr-675-cb2a7342.0.tgz

Download activity

  • Total downloads 0
  • Last 30 days 0
  • Last week 0
  • Today 0