@xlink-network/xlink-sdk
Version:
1,102 lines (1,094 loc) • 64 kB
JavaScript
import {
stxContractDeployers,
stxTokenContractAddresses
} from "./chunk-6UKYXMCX.mjs";
import {
decodeHex,
encodeHex,
encodeZeroPrefixedHex
} from "./chunk-UZKY7HXV.mjs";
import {
StacksAddressVersionNotSupportedError
} from "./chunk-KTUPNUM5.mjs";
import {
STACKS_MAINNET,
STACKS_TESTNET
} from "./chunk-KW3PGVXY.mjs";
import {
KnownChainId
} from "./chunk-GZDQGY7B.mjs";
import {
checkNever
} from "./chunk-E5Y3FGR6.mjs";
import {
addressToScriptPubKey,
scriptPubKeyToAddress
} from "./chunk-VA3HOX5B.mjs";
import {
BigNumber
} from "./chunk-KHTJNOQE.mjs";
import {
__reExport
} from "./chunk-ZLTA3V7U.mjs";
// src/stacksUtils/xlinkContractHelpers.ts
import { NETWORK, TEST_NETWORK } from "@scure/btc-signer";
import {
c32address,
c32addressDecode,
versions as c32addressVersions
} from "c32check";
import {
composeTxOptionsFactory,
executeReadonlyCallFactory
} from "clarity-codegen";
// generated/smartContractHelpers/codegenImport.ts
var codegenImport_exports = {};
__reExport(codegenImport_exports, clarity_codegen_star);
import * as clarity_codegen_star from "clarity-codegen";
// generated/smartContract/contract_xlink_btc-peg-in-endpoint-v2-05.ts
var btcPegInEndpointV205 = (0, codegenImport_exports.defineContract)({
"btc-peg-in-endpoint-v2-05": {
callback: {
input: [
{ name: "sender", type: codegenImport_exports.principalT },
{ name: "payload", type: codegenImport_exports.bufferT }
],
output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.booleanT),
mode: "public"
},
"finalize-peg-in-cross": {
input: [
{ name: "tx", type: codegenImport_exports.bufferT },
{
name: "block",
type: (0, codegenImport_exports.tupleT)({ header: codegenImport_exports.bufferT, height: codegenImport_exports.uintT })
},
{
name: "proof",
type: (0, codegenImport_exports.tupleT)({ hashes: (0, codegenImport_exports.listT)(codegenImport_exports.bufferT), "tree-depth": codegenImport_exports.uintT, "tx-index": codegenImport_exports.uintT })
},
{ name: "output-idx", type: codegenImport_exports.uintT },
{
name: "reveal-tx",
type: (0, codegenImport_exports.tupleT)({ "order-idx": codegenImport_exports.uintT, tx: codegenImport_exports.bufferT })
},
{
name: "reveal-block",
type: (0, codegenImport_exports.tupleT)({ header: codegenImport_exports.bufferT, height: codegenImport_exports.uintT })
},
{
name: "reveal-proof",
type: (0, codegenImport_exports.tupleT)({ hashes: (0, codegenImport_exports.listT)(codegenImport_exports.bufferT), "tree-depth": codegenImport_exports.uintT, "tx-index": codegenImport_exports.uintT })
},
{ name: "token-out-trait", type: codegenImport_exports.traitT }
],
output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.booleanT),
mode: "public"
},
"pause-peg-in": {
input: [{ name: "paused", type: codegenImport_exports.booleanT }],
output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.booleanT),
mode: "public"
},
"set-fee-to-address": {
input: [{ name: "new-fee-to-address", type: codegenImport_exports.principalT }],
output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.booleanT),
mode: "public"
},
"set-peg-in-fee": {
input: [{ name: "fee", type: codegenImport_exports.uintT }],
output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.booleanT),
mode: "public"
},
"set-peg-in-min-fee": {
input: [{ name: "fee", type: codegenImport_exports.uintT }],
output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.booleanT),
mode: "public"
},
"construct-principal": {
input: [{ name: "hash-bytes", type: codegenImport_exports.bufferT }],
output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.principalT),
mode: "readonly"
},
"create-order-cross-or-fail": {
input: [
{
name: "order",
type: (0, codegenImport_exports.tupleT)({
"chain-id": (0, codegenImport_exports.optionalT)(codegenImport_exports.uintT),
from: codegenImport_exports.bufferT,
to: codegenImport_exports.bufferT,
token: codegenImport_exports.principalT,
"token-out": codegenImport_exports.principalT
})
}
],
output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.bufferT),
mode: "readonly"
},
"decode-from-reveal-tx-or-fail": {
input: [
{ name: "tx", type: codegenImport_exports.bufferT },
{ name: "order-idx", type: codegenImport_exports.uintT }
],
output: (0, codegenImport_exports.responseSimpleT)((0, codegenImport_exports.tupleT)({ "commit-txid": codegenImport_exports.bufferT, "order-script": codegenImport_exports.bufferT })),
mode: "readonly"
},
"decode-order-cross-from-reveal-tx-or-fail": {
input: [
{ name: "tx", type: codegenImport_exports.bufferT },
{ name: "order-idx", type: codegenImport_exports.uintT }
],
output: (0, codegenImport_exports.responseSimpleT)((0, codegenImport_exports.tupleT)({
"commit-txid": codegenImport_exports.bufferT,
"order-details": (0, codegenImport_exports.tupleT)({
"chain-id": (0, codegenImport_exports.optionalT)(codegenImport_exports.uintT),
from: codegenImport_exports.bufferT,
to: codegenImport_exports.bufferT,
token: codegenImport_exports.principalT,
"token-out": codegenImport_exports.principalT
})
})),
mode: "readonly"
},
"decode-order-cross-or-fail": {
input: [{ name: "order-script", type: codegenImport_exports.bufferT }],
output: (0, codegenImport_exports.responseSimpleT)((0, codegenImport_exports.tupleT)({
"chain-id": (0, codegenImport_exports.optionalT)(codegenImport_exports.uintT),
from: codegenImport_exports.bufferT,
to: codegenImport_exports.bufferT,
token: codegenImport_exports.principalT,
"token-out": codegenImport_exports.principalT
})),
mode: "readonly"
},
"destruct-principal": {
input: [{ name: "address", type: codegenImport_exports.principalT }],
output: (0, codegenImport_exports.responseSimpleT)((0, codegenImport_exports.tupleT)({
"hash-bytes": codegenImport_exports.bufferT,
name: (0, codegenImport_exports.optionalT)(codegenImport_exports.stringAsciiT),
version: codegenImport_exports.bufferT
})),
mode: "readonly"
},
"extract-tx-ins-outs": {
input: [{ name: "tx", type: codegenImport_exports.bufferT }],
output: (0, codegenImport_exports.responseSimpleT)((0, codegenImport_exports.tupleT)({
ins: (0, codegenImport_exports.listT)((0, codegenImport_exports.tupleT)({
outpoint: (0, codegenImport_exports.tupleT)({ hash: codegenImport_exports.bufferT, index: codegenImport_exports.uintT }),
scriptSig: codegenImport_exports.bufferT,
sequence: codegenImport_exports.uintT
})),
outs: (0, codegenImport_exports.listT)((0, codegenImport_exports.tupleT)({ scriptPubKey: codegenImport_exports.bufferT, value: codegenImport_exports.uintT }))
})),
mode: "readonly"
},
"get-fee-to-address": { input: [], output: codegenImport_exports.principalT, mode: "readonly" },
"get-peg-in-fee": { input: [], output: codegenImport_exports.uintT, mode: "readonly" },
"get-peg-in-min-fee": { input: [], output: codegenImport_exports.uintT, mode: "readonly" },
"get-peg-in-sent-or-default": {
input: [{ name: "tx", type: codegenImport_exports.bufferT }, { name: "output", type: codegenImport_exports.uintT }],
output: codegenImport_exports.booleanT,
mode: "readonly"
},
"get-txid": {
input: [{ name: "tx", type: codegenImport_exports.bufferT }],
output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.bufferT),
mode: "readonly"
},
"is-dao-or-extension": { input: [], output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.booleanT), mode: "readonly" },
"is-peg-in-address-approved": {
input: [{ name: "address", type: codegenImport_exports.bufferT }],
output: codegenImport_exports.booleanT,
mode: "readonly"
},
"is-peg-in-paused": { input: [], output: codegenImport_exports.booleanT, mode: "readonly" },
"validate-tx-cross": {
input: [
{
name: "commit-tx",
type: (0, codegenImport_exports.tupleT)({ "output-idx": codegenImport_exports.uintT, tx: codegenImport_exports.bufferT })
},
{
name: "reveal-tx",
type: (0, codegenImport_exports.tupleT)({ "order-idx": codegenImport_exports.uintT, tx: codegenImport_exports.bufferT })
},
{ name: "token-out-trait", type: codegenImport_exports.traitT }
],
output: (0, codegenImport_exports.responseSimpleT)((0, codegenImport_exports.tupleT)({
"amount-net": codegenImport_exports.uintT,
fee: codegenImport_exports.uintT,
"order-details": (0, codegenImport_exports.tupleT)({
"chain-id": (0, codegenImport_exports.optionalT)(codegenImport_exports.uintT),
from: codegenImport_exports.bufferT,
to: codegenImport_exports.bufferT,
token: codegenImport_exports.principalT,
"token-out": codegenImport_exports.principalT
})
})),
mode: "readonly"
},
"verify-mined": {
input: [
{ name: "tx", type: codegenImport_exports.bufferT },
{
name: "block",
type: (0, codegenImport_exports.tupleT)({ header: codegenImport_exports.bufferT, height: codegenImport_exports.uintT })
},
{
name: "proof",
type: (0, codegenImport_exports.tupleT)({ hashes: (0, codegenImport_exports.listT)(codegenImport_exports.bufferT), "tree-depth": codegenImport_exports.uintT, "tx-index": codegenImport_exports.uintT })
}
],
output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.booleanT),
mode: "readonly"
},
"fee-to-address": { input: codegenImport_exports.noneT, output: codegenImport_exports.principalT, mode: "variable" },
"peg-in-fee": { input: codegenImport_exports.noneT, output: codegenImport_exports.uintT, mode: "variable" },
"peg-in-min-fee": { input: codegenImport_exports.noneT, output: codegenImport_exports.uintT, mode: "variable" },
"peg-in-paused": { input: codegenImport_exports.noneT, output: codegenImport_exports.booleanT, mode: "variable" }
}
});
// generated/smartContract/contract_xlink_btc-peg-out-endpoint-v2-01.ts
var btcPegOutEndpointV201 = (0, codegenImport_exports.defineContract)({
"btc-peg-out-endpoint-v2-01": {
callback: {
input: [
{ name: "sender", type: codegenImport_exports.principalT },
{ name: "payload", type: codegenImport_exports.bufferT }
],
output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.booleanT),
mode: "public"
},
"claim-peg-out": {
input: [
{ name: "request-id", type: codegenImport_exports.uintT },
{ name: "fulfilled-by", type: codegenImport_exports.bufferT }
],
output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.booleanT),
mode: "public"
},
"finalize-peg-out": {
input: [
{ name: "request-id", type: codegenImport_exports.uintT },
{ name: "tx", type: codegenImport_exports.bufferT },
{
name: "block",
type: (0, codegenImport_exports.tupleT)({ header: codegenImport_exports.bufferT, height: codegenImport_exports.uintT })
},
{
name: "proof",
type: (0, codegenImport_exports.tupleT)({ hashes: (0, codegenImport_exports.listT)(codegenImport_exports.bufferT), "tree-depth": codegenImport_exports.uintT, "tx-index": codegenImport_exports.uintT })
},
{ name: "output-idx", type: codegenImport_exports.uintT },
{ name: "fulfilled-by-idx", type: codegenImport_exports.uintT }
],
output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.booleanT),
mode: "public"
},
"pause-peg-out": {
input: [{ name: "paused", type: codegenImport_exports.booleanT }],
output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.booleanT),
mode: "public"
},
"request-peg-out-0": {
input: [
{ name: "peg-out-address", type: codegenImport_exports.bufferT },
{ name: "amount", type: codegenImport_exports.uintT }
],
output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.uintT),
mode: "public"
},
"revoke-peg-out": {
input: [{ name: "request-id", type: codegenImport_exports.uintT }],
output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.booleanT),
mode: "public"
},
"set-fee-to-address": {
input: [{ name: "new-fee-to-address", type: codegenImport_exports.principalT }],
output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.booleanT),
mode: "public"
},
"set-peg-out-fee": {
input: [{ name: "fee", type: codegenImport_exports.uintT }],
output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.booleanT),
mode: "public"
},
"set-peg-out-min-fee": {
input: [{ name: "fee", type: codegenImport_exports.uintT }],
output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.booleanT),
mode: "public"
},
"extract-tx-ins-outs": {
input: [{ name: "tx", type: codegenImport_exports.bufferT }],
output: (0, codegenImport_exports.responseSimpleT)((0, codegenImport_exports.tupleT)({
ins: (0, codegenImport_exports.listT)((0, codegenImport_exports.tupleT)({
outpoint: (0, codegenImport_exports.tupleT)({ hash: codegenImport_exports.bufferT, index: codegenImport_exports.uintT }),
scriptSig: codegenImport_exports.bufferT,
sequence: codegenImport_exports.uintT
})),
outs: (0, codegenImport_exports.listT)((0, codegenImport_exports.tupleT)({ scriptPubKey: codegenImport_exports.bufferT, value: codegenImport_exports.uintT }))
})),
mode: "readonly"
},
"get-fee-to-address": { input: [], output: codegenImport_exports.principalT, mode: "readonly" },
"get-peg-in-sent-or-default": {
input: [{ name: "tx", type: codegenImport_exports.bufferT }, { name: "output", type: codegenImport_exports.uintT }],
output: codegenImport_exports.booleanT,
mode: "readonly"
},
"get-peg-out-fee": { input: [], output: codegenImport_exports.uintT, mode: "readonly" },
"get-peg-out-min-fee": { input: [], output: codegenImport_exports.uintT, mode: "readonly" },
"get-request-claim-grace-period": { input: [], output: codegenImport_exports.uintT, mode: "readonly" },
"get-request-or-fail": {
input: [{ name: "request-id", type: codegenImport_exports.uintT }],
output: (0, codegenImport_exports.responseSimpleT)((0, codegenImport_exports.tupleT)({
"amount-net": codegenImport_exports.uintT,
claimed: codegenImport_exports.uintT,
"claimed-by": codegenImport_exports.principalT,
fee: codegenImport_exports.uintT,
finalized: codegenImport_exports.booleanT,
"fulfilled-by": codegenImport_exports.bufferT,
"gas-fee": codegenImport_exports.uintT,
"peg-out-address": codegenImport_exports.bufferT,
"requested-at": codegenImport_exports.uintT,
"requested-at-burn-height": codegenImport_exports.uintT,
"requested-by": codegenImport_exports.principalT,
revoked: codegenImport_exports.booleanT
})),
mode: "readonly"
},
"get-request-revoke-grace-period": { input: [], output: codegenImport_exports.uintT, mode: "readonly" },
"get-txid": {
input: [{ name: "tx", type: codegenImport_exports.bufferT }],
output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.bufferT),
mode: "readonly"
},
"is-dao-or-extension": { input: [], output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.booleanT), mode: "readonly" },
"is-peg-in-address-approved": {
input: [{ name: "address", type: codegenImport_exports.bufferT }],
output: codegenImport_exports.booleanT,
mode: "readonly"
},
"is-peg-out-paused": { input: [], output: codegenImport_exports.booleanT, mode: "readonly" },
"validate-peg-out-0": {
input: [{ name: "amount", type: codegenImport_exports.uintT }],
output: (0, codegenImport_exports.responseSimpleT)((0, codegenImport_exports.tupleT)({ amount: codegenImport_exports.uintT, fee: codegenImport_exports.uintT, "gas-fee": codegenImport_exports.uintT })),
mode: "readonly"
},
"verify-mined": {
input: [
{ name: "tx", type: codegenImport_exports.bufferT },
{
name: "block",
type: (0, codegenImport_exports.tupleT)({ header: codegenImport_exports.bufferT, height: codegenImport_exports.uintT })
},
{
name: "proof",
type: (0, codegenImport_exports.tupleT)({ hashes: (0, codegenImport_exports.listT)(codegenImport_exports.bufferT), "tree-depth": codegenImport_exports.uintT, "tx-index": codegenImport_exports.uintT })
}
],
output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.booleanT),
mode: "readonly"
},
"fee-to-address": { input: codegenImport_exports.noneT, output: codegenImport_exports.principalT, mode: "variable" },
"peg-out-fee": { input: codegenImport_exports.noneT, output: codegenImport_exports.uintT, mode: "variable" },
"peg-out-min-fee": { input: codegenImport_exports.noneT, output: codegenImport_exports.uintT, mode: "variable" },
"peg-out-paused": { input: codegenImport_exports.noneT, output: codegenImport_exports.booleanT, mode: "variable" }
}
});
// generated/smartContract/contract_xlink_cross-peg-in-endpoint-v2-04.ts
var crossPegInEndpointV204 = (0, codegenImport_exports.defineContract)({
"cross-peg-in-endpoint-v2-04": {
"apply-whitelist": {
input: [{ name: "new-use-whitelist", type: codegenImport_exports.booleanT }],
output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.booleanT),
mode: "public"
},
callback: {
input: [
{ name: "sender", type: codegenImport_exports.principalT },
{ name: "payload", type: codegenImport_exports.bufferT }
],
output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.booleanT),
mode: "public"
},
execute: {
input: [{ name: "sender", type: codegenImport_exports.principalT }],
output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.booleanT),
mode: "public"
},
"set-paused": {
input: [{ name: "paused", type: codegenImport_exports.booleanT }],
output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.booleanT),
mode: "public"
},
"transfer-to-cross": {
input: [
{
name: "order",
type: (0, codegenImport_exports.tupleT)({
"amount-in-fixed": codegenImport_exports.uintT,
"dest-chain-id": (0, codegenImport_exports.optionalT)(codegenImport_exports.uintT),
from: codegenImport_exports.bufferT,
salt: codegenImport_exports.bufferT,
"src-chain-id": codegenImport_exports.uintT,
to: codegenImport_exports.bufferT,
"token-in": codegenImport_exports.principalT,
"token-out": codegenImport_exports.principalT
})
},
{ name: "token-in-trait", type: codegenImport_exports.traitT },
{ name: "token-out-trait", type: codegenImport_exports.traitT },
{
name: "signature-packs",
type: (0, codegenImport_exports.listT)((0, codegenImport_exports.tupleT)({ "order-hash": codegenImport_exports.bufferT, signature: codegenImport_exports.bufferT, signer: codegenImport_exports.principalT }))
}
],
output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.booleanT),
mode: "public"
},
whitelist: {
input: [
{ name: "user", type: codegenImport_exports.principalT },
{ name: "whitelisted", type: codegenImport_exports.booleanT }
],
output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.booleanT),
mode: "public"
},
"whitelist-many": {
input: [
{ name: "users", type: (0, codegenImport_exports.listT)(codegenImport_exports.principalT) },
{ name: "whitelisted", type: (0, codegenImport_exports.listT)(codegenImport_exports.booleanT) }
],
output: (0, codegenImport_exports.responseSimpleT)((0, codegenImport_exports.listT)((0, codegenImport_exports.responseSimpleT)(codegenImport_exports.booleanT))),
mode: "public"
},
"create-cross-order": {
input: [
{
name: "order",
type: (0, codegenImport_exports.tupleT)({
"amount-in-fixed": codegenImport_exports.uintT,
"dest-chain-id": (0, codegenImport_exports.optionalT)(codegenImport_exports.uintT),
from: codegenImport_exports.bufferT,
salt: codegenImport_exports.bufferT,
"src-chain-id": codegenImport_exports.uintT,
to: codegenImport_exports.bufferT,
"token-in": codegenImport_exports.principalT,
"token-out": codegenImport_exports.principalT
})
}
],
output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.bufferT),
mode: "readonly"
},
"decode-cross-order": {
input: [{ name: "order-buff", type: codegenImport_exports.bufferT }],
output: (0, codegenImport_exports.responseSimpleT)((0, codegenImport_exports.tupleT)({
"amount-in-fixed": codegenImport_exports.uintT,
"dest-chain-id": (0, codegenImport_exports.optionalT)(codegenImport_exports.uintT),
from: codegenImport_exports.bufferT,
salt: codegenImport_exports.bufferT,
"src-chain-id": codegenImport_exports.uintT,
to: codegenImport_exports.bufferT,
"token-in": codegenImport_exports.principalT,
"token-out": codegenImport_exports.principalT
})),
mode: "readonly"
},
"get-approved-chain-or-fail": {
input: [{ name: "src-chain-id", type: codegenImport_exports.uintT }],
output: (0, codegenImport_exports.responseSimpleT)((0, codegenImport_exports.tupleT)({ "buff-length": codegenImport_exports.uintT, name: codegenImport_exports.stringT })),
mode: "readonly"
},
"get-approved-pair-or-fail": {
input: [
{
name: "pair",
type: (0, codegenImport_exports.tupleT)({ "chain-id": codegenImport_exports.uintT, token: codegenImport_exports.principalT })
}
],
output: (0, codegenImport_exports.responseSimpleT)((0, codegenImport_exports.tupleT)({
approved: codegenImport_exports.booleanT,
burnable: codegenImport_exports.booleanT,
fee: codegenImport_exports.uintT,
"max-amount": codegenImport_exports.uintT,
"min-amount": codegenImport_exports.uintT,
"min-fee": codegenImport_exports.uintT,
reserve: codegenImport_exports.uintT
})),
mode: "readonly"
},
"get-min-fee-or-default": {
input: [
{
name: "pair",
type: (0, codegenImport_exports.tupleT)({ "chain-id": codegenImport_exports.uintT, token: codegenImport_exports.principalT })
}
],
output: codegenImport_exports.uintT,
mode: "readonly"
},
"get-paused": { input: [], output: codegenImport_exports.booleanT, mode: "readonly" },
"get-required-validators": { input: [], output: codegenImport_exports.uintT, mode: "readonly" },
"get-token-reserve-or-default": {
input: [
{
name: "pair",
type: (0, codegenImport_exports.tupleT)({ "chain-id": codegenImport_exports.uintT, token: codegenImport_exports.principalT })
}
],
output: codegenImport_exports.uintT,
mode: "readonly"
},
"get-use-whitelist": { input: [], output: codegenImport_exports.booleanT, mode: "readonly" },
"get-validator-or-fail": {
input: [{ name: "validator", type: codegenImport_exports.principalT }],
output: (0, codegenImport_exports.responseSimpleT)((0, codegenImport_exports.tupleT)({ "chain-id": codegenImport_exports.uintT, pubkey: codegenImport_exports.bufferT })),
mode: "readonly"
},
"hash-cross-order": {
input: [
{
name: "order",
type: (0, codegenImport_exports.tupleT)({
"amount-in-fixed": codegenImport_exports.uintT,
"dest-chain-id": (0, codegenImport_exports.optionalT)(codegenImport_exports.uintT),
from: codegenImport_exports.bufferT,
salt: codegenImport_exports.bufferT,
"src-chain-id": codegenImport_exports.uintT,
to: codegenImport_exports.bufferT,
"token-in": codegenImport_exports.principalT,
"token-out": codegenImport_exports.principalT
})
}
],
output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.bufferT),
mode: "readonly"
},
"is-approved-relayer-or-default": {
input: [{ name: "relayer", type: codegenImport_exports.principalT }],
output: codegenImport_exports.booleanT,
mode: "readonly"
},
"is-dao-or-extension": { input: [], output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.booleanT), mode: "readonly" },
"is-order-sent-or-default": {
input: [{ name: "order-hash", type: codegenImport_exports.bufferT }],
output: codegenImport_exports.booleanT,
mode: "readonly"
},
"is-order-validated-by-or-default": {
input: [
{ name: "order-hash", type: codegenImport_exports.bufferT },
{ name: "validator", type: codegenImport_exports.principalT }
],
output: codegenImport_exports.booleanT,
mode: "readonly"
},
"is-whitelisted": {
input: [{ name: "user", type: codegenImport_exports.principalT }],
output: codegenImport_exports.booleanT,
mode: "readonly"
},
"message-domain": { input: [], output: codegenImport_exports.bufferT, mode: "readonly" },
"validate-cross-order": {
input: [
{
name: "order",
type: (0, codegenImport_exports.tupleT)({
"amount-in-fixed": codegenImport_exports.uintT,
"dest-chain-id": (0, codegenImport_exports.optionalT)(codegenImport_exports.uintT),
from: codegenImport_exports.bufferT,
salt: codegenImport_exports.bufferT,
"src-chain-id": codegenImport_exports.uintT,
to: codegenImport_exports.bufferT,
"token-in": codegenImport_exports.principalT,
"token-out": codegenImport_exports.principalT
})
},
{ name: "token-in-trait", type: codegenImport_exports.traitT },
{ name: "token-out-trait", type: codegenImport_exports.traitT }
],
output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.booleanT),
mode: "readonly"
},
"whitelisted-users": {
input: codegenImport_exports.principalT,
output: (0, codegenImport_exports.optionalT)(codegenImport_exports.booleanT),
mode: "mapEntry"
},
"is-paused": { input: codegenImport_exports.noneT, output: codegenImport_exports.booleanT, mode: "variable" },
"use-whitelist": { input: codegenImport_exports.noneT, output: codegenImport_exports.booleanT, mode: "variable" }
}
});
// generated/smartContract/contract_xlink_cross-peg-out-endpoint-v2-01.ts
var crossPegOutEndpointV201 = (0, codegenImport_exports.defineContract)({
"cross-peg-out-endpoint-v2-01": {
"apply-whitelist": {
input: [{ name: "new-use-whitelist", type: codegenImport_exports.booleanT }],
output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.booleanT),
mode: "public"
},
callback: {
input: [
{ name: "sender", type: codegenImport_exports.principalT },
{ name: "payload", type: codegenImport_exports.bufferT }
],
output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.booleanT),
mode: "public"
},
"set-paused": {
input: [{ name: "paused", type: codegenImport_exports.booleanT }],
output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.booleanT),
mode: "public"
},
"transfer-to-unwrap": {
input: [
{ name: "token-trait", type: codegenImport_exports.traitT },
{ name: "amount-in-fixed", type: codegenImport_exports.uintT },
{ name: "dest-chain-id", type: codegenImport_exports.uintT },
{ name: "settle-address", type: codegenImport_exports.bufferT }
],
output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.booleanT),
mode: "public"
},
whitelist: {
input: [
{ name: "user", type: codegenImport_exports.principalT },
{ name: "whitelisted", type: codegenImport_exports.booleanT }
],
output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.booleanT),
mode: "public"
},
"whitelist-many": {
input: [
{ name: "users", type: (0, codegenImport_exports.listT)(codegenImport_exports.principalT) },
{ name: "whitelisted", type: (0, codegenImport_exports.listT)(codegenImport_exports.booleanT) }
],
output: (0, codegenImport_exports.responseSimpleT)((0, codegenImport_exports.listT)((0, codegenImport_exports.responseSimpleT)(codegenImport_exports.booleanT))),
mode: "public"
},
"get-approved-chain-or-fail": {
input: [{ name: "dest-chain-id", type: codegenImport_exports.uintT }],
output: (0, codegenImport_exports.responseSimpleT)((0, codegenImport_exports.tupleT)({ "buff-length": codegenImport_exports.uintT, name: codegenImport_exports.stringT })),
mode: "readonly"
},
"get-approved-pair-or-fail": {
input: [
{
name: "pair",
type: (0, codegenImport_exports.tupleT)({ "chain-id": codegenImport_exports.uintT, token: codegenImport_exports.principalT })
}
],
output: (0, codegenImport_exports.responseSimpleT)((0, codegenImport_exports.tupleT)({
approved: codegenImport_exports.booleanT,
burnable: codegenImport_exports.booleanT,
fee: codegenImport_exports.uintT,
"max-amount": codegenImport_exports.uintT,
"min-amount": codegenImport_exports.uintT,
"min-fee": codegenImport_exports.uintT,
reserve: codegenImport_exports.uintT
})),
mode: "readonly"
},
"get-min-fee-or-default": {
input: [
{
name: "pair",
type: (0, codegenImport_exports.tupleT)({ "chain-id": codegenImport_exports.uintT, token: codegenImport_exports.principalT })
}
],
output: codegenImport_exports.uintT,
mode: "readonly"
},
"get-paused": { input: [], output: codegenImport_exports.booleanT, mode: "readonly" },
"get-token-reserve-or-default": {
input: [
{
name: "pair",
type: (0, codegenImport_exports.tupleT)({ "chain-id": codegenImport_exports.uintT, token: codegenImport_exports.principalT })
}
],
output: codegenImport_exports.uintT,
mode: "readonly"
},
"get-use-whitelist": { input: [], output: codegenImport_exports.booleanT, mode: "readonly" },
"is-dao-or-extension": { input: [], output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.booleanT), mode: "readonly" },
"is-whitelisted": {
input: [{ name: "user", type: codegenImport_exports.principalT }],
output: codegenImport_exports.booleanT,
mode: "readonly"
},
"validate-transfer-to-unwrap": {
input: [
{ name: "sender", type: codegenImport_exports.principalT },
{ name: "token", type: codegenImport_exports.principalT },
{ name: "amount-in-fixed", type: codegenImport_exports.uintT },
{ name: "dest-chain-id", type: codegenImport_exports.uintT }
],
output: (0, codegenImport_exports.responseSimpleT)((0, codegenImport_exports.tupleT)({
amount: codegenImport_exports.uintT,
"chain-details": (0, codegenImport_exports.tupleT)({ "buff-length": codegenImport_exports.uintT, name: codegenImport_exports.stringT }),
token: codegenImport_exports.principalT,
"token-details": (0, codegenImport_exports.tupleT)({
approved: codegenImport_exports.booleanT,
burnable: codegenImport_exports.booleanT,
fee: codegenImport_exports.uintT,
"max-amount": codegenImport_exports.uintT,
"min-amount": codegenImport_exports.uintT,
"min-fee": codegenImport_exports.uintT,
reserve: codegenImport_exports.uintT
})
})),
mode: "readonly"
},
"whitelisted-users": {
input: codegenImport_exports.principalT,
output: (0, codegenImport_exports.optionalT)(codegenImport_exports.booleanT),
mode: "mapEntry"
},
"is-paused": { input: codegenImport_exports.noneT, output: codegenImport_exports.booleanT, mode: "variable" },
"use-whitelist": { input: codegenImport_exports.noneT, output: codegenImport_exports.booleanT, mode: "variable" }
}
});
// generated/smartContract/contract_xlink_meta-peg-in-endpoint-v2-04.ts
var metaPegInEndpointV204 = (0, codegenImport_exports.defineContract)({
"meta-peg-in-endpoint-v2-04": {
"finalize-peg-in-cross": {
input: [
{
name: "commit-tx",
type: (0, codegenImport_exports.tupleT)({ "fee-idx": (0, codegenImport_exports.optionalT)(codegenImport_exports.uintT), "output-idx": codegenImport_exports.uintT, tx: codegenImport_exports.bufferT })
},
{
name: "reveal-tx",
type: (0, codegenImport_exports.tupleT)({ "order-idx": codegenImport_exports.uintT, tx: codegenImport_exports.bufferT })
},
{
name: "reveal-block",
type: (0, codegenImport_exports.tupleT)({ header: codegenImport_exports.bufferT, height: codegenImport_exports.uintT })
},
{
name: "reveal-proof",
type: (0, codegenImport_exports.tupleT)({ hashes: (0, codegenImport_exports.listT)(codegenImport_exports.bufferT), "tree-depth": codegenImport_exports.uintT, "tx-index": codegenImport_exports.uintT })
},
{ name: "token-trait", type: codegenImport_exports.traitT },
{ name: "token-out-trait", type: codegenImport_exports.traitT }
],
output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.booleanT),
mode: "public"
},
"finalize-peg-in-cross-on-index": {
input: [
{
name: "tx",
type: (0, codegenImport_exports.tupleT)({
amt: codegenImport_exports.uintT,
"bitcoin-tx": codegenImport_exports.bufferT,
decimals: codegenImport_exports.uintT,
from: codegenImport_exports.bufferT,
"from-bal": codegenImport_exports.uintT,
output: codegenImport_exports.uintT,
tick: codegenImport_exports.stringT,
to: codegenImport_exports.bufferT,
"to-bal": codegenImport_exports.uintT
})
},
{
name: "block",
type: (0, codegenImport_exports.tupleT)({ header: codegenImport_exports.bufferT, height: codegenImport_exports.uintT })
},
{
name: "proof",
type: (0, codegenImport_exports.tupleT)({ hashes: (0, codegenImport_exports.listT)(codegenImport_exports.bufferT), "tree-depth": codegenImport_exports.uintT, "tx-index": codegenImport_exports.uintT })
},
{
name: "signature-packs",
type: (0, codegenImport_exports.listT)((0, codegenImport_exports.tupleT)({ signature: codegenImport_exports.bufferT, signer: codegenImport_exports.principalT, "tx-hash": codegenImport_exports.bufferT }))
},
{
name: "reveal-tx",
type: (0, codegenImport_exports.tupleT)({ "order-idx": codegenImport_exports.uintT, tx: codegenImport_exports.bufferT })
},
{
name: "reveal-block",
type: (0, codegenImport_exports.tupleT)({ header: codegenImport_exports.bufferT, height: codegenImport_exports.uintT })
},
{
name: "reveal-proof",
type: (0, codegenImport_exports.tupleT)({ hashes: (0, codegenImport_exports.listT)(codegenImport_exports.bufferT), "tree-depth": codegenImport_exports.uintT, "tx-index": codegenImport_exports.uintT })
},
{ name: "fee-idx", type: (0, codegenImport_exports.optionalT)(codegenImport_exports.uintT) },
{ name: "token-trait", type: codegenImport_exports.traitT },
{ name: "token-out-trait", type: codegenImport_exports.traitT }
],
output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.booleanT),
mode: "public"
},
pause: {
input: [{ name: "new-paused", type: codegenImport_exports.booleanT }],
output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.booleanT),
mode: "public"
},
"set-fee-to-address": {
input: [{ name: "new-fee-to-address", type: codegenImport_exports.principalT }],
output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.booleanT),
mode: "public"
},
"set-peg-in-fee": {
input: [{ name: "fee", type: codegenImport_exports.uintT }],
output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.booleanT),
mode: "public"
},
"transfer-all-to": {
input: [
{ name: "new-owner", type: codegenImport_exports.principalT },
{ name: "token-trait", type: codegenImport_exports.traitT }
],
output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.booleanT),
mode: "public"
},
"transfer-all-to-many": {
input: [
{ name: "new-owner", type: codegenImport_exports.principalT },
{ name: "token-traits", type: (0, codegenImport_exports.listT)(codegenImport_exports.traitT) }
],
output: (0, codegenImport_exports.responseSimpleT)((0, codegenImport_exports.listT)((0, codegenImport_exports.responseSimpleT)(codegenImport_exports.booleanT))),
mode: "public"
},
"create-order-cross-or-fail": {
input: [
{
name: "order",
type: (0, codegenImport_exports.tupleT)({
"chain-id": (0, codegenImport_exports.optionalT)(codegenImport_exports.uintT),
from: codegenImport_exports.bufferT,
to: codegenImport_exports.bufferT,
token: codegenImport_exports.principalT,
"token-out": codegenImport_exports.principalT
})
}
],
output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.bufferT),
mode: "readonly"
},
"decode-order-cross-from-reveal-tx-or-fail": {
input: [
{ name: "tx", type: codegenImport_exports.bufferT },
{ name: "order-idx", type: codegenImport_exports.uintT }
],
output: (0, codegenImport_exports.responseSimpleT)((0, codegenImport_exports.tupleT)({
"commit-txid": codegenImport_exports.bufferT,
"order-details": (0, codegenImport_exports.tupleT)({
"chain-id": (0, codegenImport_exports.optionalT)(codegenImport_exports.uintT),
from: codegenImport_exports.bufferT,
to: codegenImport_exports.bufferT,
token: codegenImport_exports.principalT,
"token-out": codegenImport_exports.principalT
})
})),
mode: "readonly"
},
"decode-order-cross-or-fail": {
input: [{ name: "order-script", type: codegenImport_exports.bufferT }],
output: (0, codegenImport_exports.responseSimpleT)((0, codegenImport_exports.tupleT)({
"chain-id": (0, codegenImport_exports.optionalT)(codegenImport_exports.uintT),
from: codegenImport_exports.bufferT,
to: codegenImport_exports.bufferT,
token: codegenImport_exports.principalT,
"token-out": codegenImport_exports.principalT
})),
mode: "readonly"
},
"get-fee-to-address": { input: [], output: codegenImport_exports.principalT, mode: "readonly" },
"get-pair-details": {
input: [
{
name: "pair",
type: (0, codegenImport_exports.tupleT)({ "chain-id": codegenImport_exports.uintT, token: codegenImport_exports.principalT })
}
],
output: (0, codegenImport_exports.optionalT)((0, codegenImport_exports.tupleT)({
approved: codegenImport_exports.booleanT,
"no-burn": codegenImport_exports.booleanT,
"peg-in-fee": codegenImport_exports.uintT,
"peg-in-paused": codegenImport_exports.booleanT,
"peg-out-fee": codegenImport_exports.uintT,
"peg-out-gas-fee": codegenImport_exports.uintT,
"peg-out-paused": codegenImport_exports.booleanT,
tick: codegenImport_exports.stringT
})),
mode: "readonly"
},
"get-pair-details-many": {
input: [
{
name: "pairs",
type: (0, codegenImport_exports.listT)((0, codegenImport_exports.tupleT)({ "chain-id": codegenImport_exports.uintT, token: codegenImport_exports.principalT }))
}
],
output: (0, codegenImport_exports.listT)((0, codegenImport_exports.optionalT)((0, codegenImport_exports.tupleT)({
approved: codegenImport_exports.booleanT,
"no-burn": codegenImport_exports.booleanT,
"peg-in-fee": codegenImport_exports.uintT,
"peg-in-paused": codegenImport_exports.booleanT,
"peg-out-fee": codegenImport_exports.uintT,
"peg-out-gas-fee": codegenImport_exports.uintT,
"peg-out-paused": codegenImport_exports.booleanT,
tick: codegenImport_exports.stringT
}))),
mode: "readonly"
},
"get-pair-details-or-fail": {
input: [
{
name: "pair",
type: (0, codegenImport_exports.tupleT)({ "chain-id": codegenImport_exports.uintT, token: codegenImport_exports.principalT })
}
],
output: (0, codegenImport_exports.responseSimpleT)((0, codegenImport_exports.tupleT)({
approved: codegenImport_exports.booleanT,
"no-burn": codegenImport_exports.booleanT,
"peg-in-fee": codegenImport_exports.uintT,
"peg-in-paused": codegenImport_exports.booleanT,
"peg-out-fee": codegenImport_exports.uintT,
"peg-out-gas-fee": codegenImport_exports.uintT,
"peg-out-paused": codegenImport_exports.booleanT,
tick: codegenImport_exports.stringT
})),
mode: "readonly"
},
"get-peg-in-fee": { input: [], output: codegenImport_exports.uintT, mode: "readonly" },
"get-peg-in-sent-or-default": {
input: [
{ name: "bitcoin-tx", type: codegenImport_exports.bufferT },
{ name: "output", type: codegenImport_exports.uintT },
{ name: "offset", type: codegenImport_exports.uintT }
],
output: codegenImport_exports.booleanT,
mode: "readonly"
},
"get-tick-to-pair-or-fail": {
input: [{ name: "tick", type: codegenImport_exports.stringT }],
output: (0, codegenImport_exports.responseSimpleT)((0, codegenImport_exports.tupleT)({ "chain-id": codegenImport_exports.uintT, token: codegenImport_exports.principalT })),
mode: "readonly"
},
"is-approved-pair": {
input: [
{
name: "pair",
type: (0, codegenImport_exports.tupleT)({ "chain-id": codegenImport_exports.uintT, token: codegenImport_exports.principalT })
}
],
output: codegenImport_exports.booleanT,
mode: "readonly"
},
"is-dao-or-extension": { input: [], output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.booleanT), mode: "readonly" },
"is-paused": { input: [], output: codegenImport_exports.booleanT, mode: "readonly" },
"is-peg-in-address-approved": {
input: [{ name: "address", type: codegenImport_exports.bufferT }],
output: codegenImport_exports.booleanT,
mode: "readonly"
},
"validate-tx-cross": {
input: [
{
name: "commit-tx",
type: (0, codegenImport_exports.tupleT)({ "fee-idx": (0, codegenImport_exports.optionalT)(codegenImport_exports.uintT), "output-idx": codegenImport_exports.uintT, tx: codegenImport_exports.bufferT })
},
{
name: "reveal-tx",
type: (0, codegenImport_exports.tupleT)({ "order-idx": codegenImport_exports.uintT, tx: codegenImport_exports.bufferT })
},
{ name: "token-out-trait", type: codegenImport_exports.traitT }
],
output: (0, codegenImport_exports.responseSimpleT)((0, codegenImport_exports.tupleT)({
"amt-net": codegenImport_exports.uintT,
fee: codegenImport_exports.uintT,
"order-details": (0, codegenImport_exports.tupleT)({
"chain-id": (0, codegenImport_exports.optionalT)(codegenImport_exports.uintT),
from: codegenImport_exports.bufferT,
to: codegenImport_exports.bufferT,
token: codegenImport_exports.principalT,
"token-out": codegenImport_exports.principalT
}),
"pair-details": (0, codegenImport_exports.tupleT)({ "chain-id": codegenImport_exports.uintT, token: codegenImport_exports.principalT }),
"token-details": (0, codegenImport_exports.tupleT)({
approved: codegenImport_exports.booleanT,
"no-burn": codegenImport_exports.booleanT,
"peg-in-fee": codegenImport_exports.uintT,
"peg-in-paused": codegenImport_exports.booleanT,
"peg-out-fee": codegenImport_exports.uintT,
"peg-out-gas-fee": codegenImport_exports.uintT,
"peg-out-paused": codegenImport_exports.booleanT,
tick: codegenImport_exports.stringT
}),
"tx-idxed": (0, codegenImport_exports.tupleT)({ amt: codegenImport_exports.uintT, from: codegenImport_exports.bufferT, tick: codegenImport_exports.stringT, to: codegenImport_exports.bufferT })
})),
mode: "readonly"
},
"fee-to-address": { input: codegenImport_exports.noneT, output: codegenImport_exports.principalT, mode: "variable" },
paused: { input: codegenImport_exports.noneT, output: codegenImport_exports.booleanT, mode: "variable" },
"peg-in-fee": { input: codegenImport_exports.noneT, output: codegenImport_exports.uintT, mode: "variable" }
}
});
// generated/smartContract/contract_xlink_meta-peg-out-endpoint-v2-04.ts
var metaPegOutEndpointV204 = (0, codegenImport_exports.defineContract)({
"meta-peg-out-endpoint-v2-04": {
"claim-peg-out": {
input: [
{ name: "request-id", type: codegenImport_exports.uintT },
{ name: "fulfilled-by", type: codegenImport_exports.bufferT }
],
output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.booleanT),
mode: "public"
},
"finalize-peg-out": {
input: [
{ name: "request-id", type: codegenImport_exports.uintT },
{ name: "tx", type: codegenImport_exports.bufferT },
{ name: "output-idx", type: codegenImport_exports.uintT },
{ name: "offset-idx", type: codegenImport_exports.uintT },
{ name: "token-trait", type: codegenImport_exports.traitT }
],
output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.booleanT),
mode: "public"
},
"finalize-peg-out-on-index": {
input: [
{ name: "request-id", type: codegenImport_exports.uintT },
{
name: "tx",
type: (0, codegenImport_exports.tupleT)({
amt: codegenImport_exports.uintT,
"bitcoin-tx": codegenImport_exports.bufferT,
decimals: codegenImport_exports.uintT,
from: codegenImport_exports.bufferT,
"from-bal": codegenImport_exports.uintT,
offset: codegenImport_exports.uintT,
output: codegenImport_exports.uintT,
tick: codegenImport_exports.stringT,
to: codegenImport_exports.bufferT,
"to-bal": codegenImport_exports.uintT
})
},
{
name: "block",
type: (0, codegenImport_exports.tupleT)({ header: codegenImport_exports.bufferT, height: codegenImport_exports.uintT })
},
{
name: "proof",
type: (0, codegenImport_exports.tupleT)({ hashes: (0, codegenImport_exports.listT)(codegenImport_exports.bufferT), "tree-depth": codegenImport_exports.uintT, "tx-index": codegenImport_exports.uintT })
},
{
name: "signature-packs",
type: (0, codegenImport_exports.listT)((0, codegenImport_exports.tupleT)({ signature: codegenImport_exports.bufferT, signer: codegenImport_exports.principalT, "tx-hash": codegenImport_exports.bufferT }))
},
{ name: "token-trait", type: codegenImport_exports.traitT }
],
output: (0, codegenImport_exports.responseSimpleT)(codegenImport_exports.booleanT),
mode: "public"
},
pause: {
inp