Usage
Returns
DeferredTokenIntentWithSignature
Parameters
channelAddress (intent creation)
- type:
string
uri (intent creation)
- type:
string
maxSupply (intent creation)
- type:
bigint
intent (signing)
- type:
DeferredTokenIntent
Documentation Index
Fetch the complete documentation index at: /llms.txt
Use this file to discover all available pages before exploring further.
Create a signed EIP-712 token intent. This intent can later be sponsored onchain by another user to create a new token in the channel.
import { uplinkClient } from './config'
// create the EIP-712 token intent
const intent = uplinkClient.createDeferredTokenIntent({
channelAddress: '0x1234567890123456789012345678901234567890',
uri: 'new token uri',
maxSupply: 100n
})
// sign the intent
const signedIntent = await uplinkClient.signDeferredTokenIntent(intent)
import { TransmissionsClient } from '@tx-kit/sdk'
import { CreatePublicClient, CreateWalletClient } from 'viem'
import { base } from 'viem/chains'
const publicClient = createPublicClient({
chain: base,
transport: http()
})
const walletClient = createWalletClient({
account, // from local private key or browser wallet
chain: base,
transport: http()
})
export const { uplinkClient } = new TransmissionsClient({
publicClient,
walletClient,
chain: base
})
DeferredTokenIntentWithSignature
{
author: Address,
signature: Hex,
intent: {
domain: {
name: 'Transmissions'
version: '1'
chainId: number
verifyingContract: Address
}
types: {
DeferredTokenPermission: [
{ name: 'uri'; type: 'string' },
{ name: 'maxSupply'; type: 'uint256' },
{ name: 'deadline'; type: 'uint256' },
{ name: 'nonce'; type: 'bytes32' },
]
}
primaryType: 'DeferredTokenPermission'
message: {
uri: string
maxSupply: bigint
deadline: bigint
nonce: Hex
}
}
}
stringconst intent = uplinkClient.createDeferredTokenIntent({
channelAddress: '0x1234567890123456789012345678901234567890',
...
})
stringconst intent = uplinkClient.createDeferredTokenIntent({
uri: 'new token uri',
...
})
bigintconst intent = uplinkClient.createDeferredTokenIntent({
maxSupply: 100n,
...
})
DeferredTokenIntentconst signedIntent = uplinkClient.signDeferredTokenIntent(intent)