@magiceden/magiceden-sdk
Version:
A TypeScript SDK for interacting with Magic Eden's API across multiple chains.
198 lines (197 loc) • 7.62 kB
TypeScript
import { z } from 'zod';
/**
* Parameters for transferring an NFT
*/
export declare const BaseTransferParamsSchema: z.ZodObject<{
/**
* The NFT token
*
* - For EVM, the token is in the format of contractAddress:tokenId
* - For Solana, the token is the mint address
*/
token: z.ZodString;
}, "strip", z.ZodTypeAny, {
token: string;
}, {
token: string;
}>;
export declare const EvmTransferParamsSchema: z.ZodObject<z.objectUtil.extendShape<{
/**
* The NFT token
*
* - For EVM, the token is in the format of contractAddress:tokenId
* - For Solana, the token is the mint address
*/
token: z.ZodString;
}, {
/**
* The number of NFTs to transfer
*/
quantity: z.ZodOptional<z.ZodNumber>;
}>, "strip", z.ZodTypeAny, {
token: string;
quantity?: number | undefined;
}, {
token: string;
quantity?: number | undefined;
}>;
export declare const EvmMultipleTransferParamsSchema: z.ZodObject<{
/**
* The EVM chain to transfer the NFT on
*/
chain: z.ZodEnum<[import("../../chains").Blockchain.ETHEREUM, import("../../chains").Blockchain.BASE, import("../../chains").Blockchain.POLYGON, import("../../chains").Blockchain.SEI, import("../../chains").Blockchain.ARBITRUM, import("../../chains").Blockchain.APECHAIN, import("../../chains").Blockchain.BERACHAIN, import("../../chains").Blockchain.MONAD_TESTNET, import("../../chains").Blockchain.BSC, import("../../chains").Blockchain.ABSTRACT]>;
/**
* The recipient's wallet address
*/
to: z.ZodString;
/**
* The items (NFTs) to transfer
*/
items: z.ZodArray<z.ZodObject<z.objectUtil.extendShape<{
/**
* The NFT token
*
* - For EVM, the token is in the format of contractAddress:tokenId
* - For Solana, the token is the mint address
*/
token: z.ZodString;
}, {
/**
* The number of NFTs to transfer
*/
quantity: z.ZodOptional<z.ZodNumber>;
}>, "strip", z.ZodTypeAny, {
token: string;
quantity?: number | undefined;
}, {
token: string;
quantity?: number | undefined;
}>, "many">;
}, "strip", z.ZodTypeAny, {
chain: import("../../chains").Blockchain.ETHEREUM | import("../../chains").Blockchain.POLYGON | import("../../chains").Blockchain.BASE | import("../../chains").Blockchain.SEI | import("../../chains").Blockchain.ARBITRUM | import("../../chains").Blockchain.APECHAIN | import("../../chains").Blockchain.BERACHAIN | import("../../chains").Blockchain.MONAD_TESTNET | import("../../chains").Blockchain.BSC | import("../../chains").Blockchain.ABSTRACT;
to: string;
items: {
token: string;
quantity?: number | undefined;
}[];
}, {
chain: import("../../chains").Blockchain.ETHEREUM | import("../../chains").Blockchain.POLYGON | import("../../chains").Blockchain.BASE | import("../../chains").Blockchain.SEI | import("../../chains").Blockchain.ARBITRUM | import("../../chains").Blockchain.APECHAIN | import("../../chains").Blockchain.BERACHAIN | import("../../chains").Blockchain.MONAD_TESTNET | import("../../chains").Blockchain.BSC | import("../../chains").Blockchain.ABSTRACT;
to: string;
items: {
token: string;
quantity?: number | undefined;
}[];
}>;
export declare const SolanaTransferParamsSchema: z.ZodObject<z.objectUtil.extendShape<{
/**
* The NFT token
*
* - For EVM, the token is in the format of contractAddress:tokenId
* - For Solana, the token is the mint address
*/
token: z.ZodString;
}, {
/**
* The recipient's wallet address
*/
to: z.ZodString;
/**
* Whether the NFT is a compressed NFT
*/
isCompressed: z.ZodOptional<z.ZodBoolean>;
/**
* The priority fee in micro lamports
*/
priorityFee: z.ZodOptional<z.ZodNumber>;
}>, "strip", z.ZodTypeAny, {
to: string;
token: string;
isCompressed?: boolean | undefined;
priorityFee?: number | undefined;
}, {
to: string;
token: string;
isCompressed?: boolean | undefined;
priorityFee?: number | undefined;
}>;
export type EvmTransferParams = z.infer<typeof EvmMultipleTransferParamsSchema>;
export type SolanaTransferParams = z.infer<typeof SolanaTransferParamsSchema>;
export declare const TransferParams: z.ZodUnion<[z.ZodObject<{
/**
* The EVM chain to transfer the NFT on
*/
chain: z.ZodEnum<[import("../../chains").Blockchain.ETHEREUM, import("../../chains").Blockchain.BASE, import("../../chains").Blockchain.POLYGON, import("../../chains").Blockchain.SEI, import("../../chains").Blockchain.ARBITRUM, import("../../chains").Blockchain.APECHAIN, import("../../chains").Blockchain.BERACHAIN, import("../../chains").Blockchain.MONAD_TESTNET, import("../../chains").Blockchain.BSC, import("../../chains").Blockchain.ABSTRACT]>;
/**
* The recipient's wallet address
*/
to: z.ZodString;
/**
* The items (NFTs) to transfer
*/
items: z.ZodArray<z.ZodObject<z.objectUtil.extendShape<{
/**
* The NFT token
*
* - For EVM, the token is in the format of contractAddress:tokenId
* - For Solana, the token is the mint address
*/
token: z.ZodString;
}, {
/**
* The number of NFTs to transfer
*/
quantity: z.ZodOptional<z.ZodNumber>;
}>, "strip", z.ZodTypeAny, {
token: string;
quantity?: number | undefined;
}, {
token: string;
quantity?: number | undefined;
}>, "many">;
}, "strip", z.ZodTypeAny, {
chain: import("../../chains").Blockchain.ETHEREUM | import("../../chains").Blockchain.POLYGON | import("../../chains").Blockchain.BASE | import("../../chains").Blockchain.SEI | import("../../chains").Blockchain.ARBITRUM | import("../../chains").Blockchain.APECHAIN | import("../../chains").Blockchain.BERACHAIN | import("../../chains").Blockchain.MONAD_TESTNET | import("../../chains").Blockchain.BSC | import("../../chains").Blockchain.ABSTRACT;
to: string;
items: {
token: string;
quantity?: number | undefined;
}[];
}, {
chain: import("../../chains").Blockchain.ETHEREUM | import("../../chains").Blockchain.POLYGON | import("../../chains").Blockchain.BASE | import("../../chains").Blockchain.SEI | import("../../chains").Blockchain.ARBITRUM | import("../../chains").Blockchain.APECHAIN | import("../../chains").Blockchain.BERACHAIN | import("../../chains").Blockchain.MONAD_TESTNET | import("../../chains").Blockchain.BSC | import("../../chains").Blockchain.ABSTRACT;
to: string;
items: {
token: string;
quantity?: number | undefined;
}[];
}>, z.ZodObject<z.objectUtil.extendShape<{
/**
* The NFT token
*
* - For EVM, the token is in the format of contractAddress:tokenId
* - For Solana, the token is the mint address
*/
token: z.ZodString;
}, {
/**
* The recipient's wallet address
*/
to: z.ZodString;
/**
* Whether the NFT is a compressed NFT
*/
isCompressed: z.ZodOptional<z.ZodBoolean>;
/**
* The priority fee in micro lamports
*/
priorityFee: z.ZodOptional<z.ZodNumber>;
}>, "strip", z.ZodTypeAny, {
to: string;
token: string;
isCompressed?: boolean | undefined;
priorityFee?: number | undefined;
}, {
to: string;
token: string;
isCompressed?: boolean | undefined;
priorityFee?: number | undefined;
}>]>;
export type TransferParams = z.infer<typeof TransferParams>;