SMART CONTRACTS
← コントラクト一覧MarketManager
出品・購入・手数料を伴うトークン取引を扱う。
役割と使いどころ
許可された決済トークンと参加者条件を使い、出品型または署名付きバウチャー型の取引を構成できます。
接続・設定のポイント出品資産の承認、決済トークン、手数料と送付先を設定します。注文状態と確定イベントを対応づけます。
主要なSDK操作
@hazbase/kit@0.9.0のMarketManagerHelperから利用する操作です。以下はメソッドの型定義です。引数の構造と全操作はSDKリファレンスで確認できます。
typescript
import { MarketManagerHelper } from '@hazbase/kit';createAsk
typescript
async createAsk(
asset: Asset,
price: bigint,
paymentToken: string,
quantity: bigint,
params?: {
maxPerWallet?: number;
startTime?: number;
endTime?: number;
royaltyReceiver?: string;
royaltyBps?: number;
agreement?: string;
offerId?: string;
}
): Promise<{ askId: bigint; receipt: ethers.TransactionReceipt }>fillAsk
typescript
async fillAsk(
askId: BigNumberish,
qty: BigNumberish,
opts?: { permit?: PermitData; investorSig?: BytesLike; value?: bigint }
): Promise<{ receipt: TransactionReceipt; totals?: { totalPaid: bigint; fee: bigint; royalty: bigint; net: bigint } }>cancelAsk
typescript
async cancelAsk(askId: BigNumberish): Promise<TransactionReceipt>ask
typescript
async ask(id: BigNumberish): Promise<Ask>組み合わせるコントラクト
実装につなげる
物理資産・在庫
データの持ち方、処理の順序、SDKコードを通じて、アプリケーションへの組み込み方を確認できます。
実装パターンを読む仕様とソースコード
掲載するSolidityソースは下記のリビジョンを参照しています。SDKの対応バージョンと、接続先ネットワークの実装アドレス・ABIを合わせて参照できます。
market-manager/contracts/MarketManager.solソースリビジョン: b53a5b5