@stable-io/cctp-sdk-definitions
Version:
Definitions for the CCTP SDK
108 lines • 4.53 kB
TypeScript
import type { ProperLayout, CustomizableBytes, Item } from "binary-layout";
import { rawDomainItem, domainItem } from "./layoutItems.js";
import { domains } from "./constants/chains/index.js";
type DomainItem<R extends boolean> = R extends true ? typeof rawDomainItem : ReturnType<typeof domainItem<typeof domains>>;
export declare const messageLayoutTemplate: <const V extends number, const N extends Item, const E extends ProperLayout, const B extends CustomizableBytes = undefined, const R extends boolean = false, const O extends boolean = true>(version: V, nonceItem: N, extraFields: E, messageBody?: B, useRawDomains?: R, omitVersion?: O) => readonly [{
readonly binary: "uint";
readonly size: 4;
readonly custom: V;
readonly omit: O;
readonly name: "version";
}, {
readonly name: "sourceDomain";
} & DomainItem<R>, {
readonly name: "destinationDomain";
} & DomainItem<R>, {
readonly name: "nonce";
} & N, {
readonly binary: "bytes";
readonly size: import("@stable-io/utils").Size;
readonly custom: {
to: (encoded: Uint8Array) => import("./address.js").UniversalAddress;
from: (addr: import("./address.js").UniversalAddress) => Uint8Array<ArrayBufferLike>;
};
readonly name: "sender";
}, {
readonly binary: "bytes";
readonly size: import("@stable-io/utils").Size;
readonly custom: {
to: (encoded: Uint8Array) => import("./address.js").UniversalAddress;
from: (addr: import("./address.js").UniversalAddress) => Uint8Array<ArrayBufferLike>;
};
readonly name: "recipient";
}, {
readonly binary: "bytes";
readonly size: import("@stable-io/utils").Size;
readonly custom: {
to: (encoded: Uint8Array) => import("./address.js").UniversalAddress;
from: (addr: import("./address.js").UniversalAddress) => Uint8Array<ArrayBufferLike>;
};
readonly name: "destinationCaller";
}, ...E, import("binary-layout").CustomizableBytesReturn<{
readonly name: "messageBody";
}, B>];
export declare const burnMessageLayoutTemplate: <const V extends number, const O extends boolean>(version: V, omitVersion?: O) => readonly [{
readonly binary: "uint";
readonly size: 4;
readonly custom: V;
readonly omit: O;
readonly name: "messageBodyVersion";
}, {
readonly binary: "bytes";
readonly size: import("@stable-io/utils").Size;
readonly custom: {
to: (encoded: Uint8Array) => import("./address.js").UniversalAddress;
from: (addr: import("./address.js").UniversalAddress) => Uint8Array<ArrayBufferLike>;
};
readonly name: "burnToken";
}, {
readonly binary: "bytes";
readonly size: import("@stable-io/utils").Size;
readonly custom: {
to: (encoded: Uint8Array) => import("./address.js").UniversalAddress;
from: (addr: import("./address.js").UniversalAddress) => Uint8Array<ArrayBufferLike>;
};
readonly name: "mintRecipient";
}, {
readonly binary: "uint";
readonly size: 32;
readonly custom: {
to: (val: bigint) => import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "µUSDC";
readonly scale: bigint | import("@stable-io/amount").Rational;
}];
readonly human: "USDC";
readonly atomic: "µUSDC";
readonly stringify: (val: import("@stable-io/amount").Rational) => string;
}>;
from: (amount: import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "µUSDC";
readonly scale: bigint | import("@stable-io/amount").Rational;
}];
readonly human: "USDC";
readonly atomic: "µUSDC";
readonly stringify: (val: import("@stable-io/amount").Rational) => string;
}>) => bigint;
};
readonly name: "amount";
}, {
readonly binary: "bytes";
readonly size: import("@stable-io/utils").Size;
readonly custom: {
to: (encoded: Uint8Array) => import("./address.js").UniversalAddress;
from: (addr: import("./address.js").UniversalAddress) => Uint8Array<ArrayBufferLike>;
};
readonly name: "messageSender";
}];
export {};
//# sourceMappingURL=messages.d.ts.map