@stable-io/cctp-sdk-cctpr-evm
Version:
EVM support for the CCTPR corridor of the CCTP SDK
741 lines • 33.5 kB
TypeScript
import type { DeriveType } from "binary-layout";
import type { RoArray } from "@stable-io/map-utils";
import { Rational } from "@stable-io/amount";
declare const feeAdjustmentLayout: readonly [{
readonly binary: "int";
readonly size: 2;
readonly custom: {
to: (val: number) => import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>;
from: (amount: import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>) => number;
};
readonly name: "absoluteUsdc";
}, {
readonly binary: "uint";
readonly size: 1;
readonly name: "relativePercent";
}];
export type FeeAdjustment = DeriveType<typeof feeAdjustmentLayout>;
export declare const feeAdjustmentsPerSlot = 10;
export declare const feeAdjustmentsSlotItem: {
readonly binary: "bytes";
readonly layout: {
readonly binary: "bytes";
readonly layout: readonly [{
readonly name: "padding";
readonly binary: "bytes";
readonly custom: Uint8Array<ArrayBuffer>;
readonly omit: true;
}, {
readonly name: "item";
} & {
readonly binary: "array";
readonly length: 10;
readonly layout: readonly [{
readonly binary: "int";
readonly size: 2;
readonly custom: {
to: (val: number) => import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>;
from: (amount: import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>) => number;
};
readonly name: "absoluteUsdc";
}, {
readonly binary: "uint";
readonly size: 1;
readonly name: "relativePercent";
}];
}];
readonly custom: {
readonly to: (raw: {
item: readonly [{
readonly absoluteUsdc: import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>;
readonly relativePercent: number;
}, {
readonly absoluteUsdc: import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>;
readonly relativePercent: number;
}, {
readonly absoluteUsdc: import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>;
readonly relativePercent: number;
}, {
readonly absoluteUsdc: import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>;
readonly relativePercent: number;
}, {
readonly absoluteUsdc: import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>;
readonly relativePercent: number;
}, {
readonly absoluteUsdc: import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>;
readonly relativePercent: number;
}, {
readonly absoluteUsdc: import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>;
readonly relativePercent: number;
}, {
readonly absoluteUsdc: import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>;
readonly relativePercent: number;
}, {
readonly absoluteUsdc: import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>;
readonly relativePercent: number;
}, {
readonly absoluteUsdc: import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>;
readonly relativePercent: number;
}];
}) => readonly [{
readonly absoluteUsdc: import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>;
readonly relativePercent: number;
}, {
readonly absoluteUsdc: import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>;
readonly relativePercent: number;
}, {
readonly absoluteUsdc: import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>;
readonly relativePercent: number;
}, {
readonly absoluteUsdc: import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>;
readonly relativePercent: number;
}, {
readonly absoluteUsdc: import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>;
readonly relativePercent: number;
}, {
readonly absoluteUsdc: import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>;
readonly relativePercent: number;
}, {
readonly absoluteUsdc: import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>;
readonly relativePercent: number;
}, {
readonly absoluteUsdc: import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>;
readonly relativePercent: number;
}, {
readonly absoluteUsdc: import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>;
readonly relativePercent: number;
}, {
readonly absoluteUsdc: import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>;
readonly relativePercent: number;
}];
readonly from: (item: readonly [{
readonly absoluteUsdc: import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>;
readonly relativePercent: number;
}, {
readonly absoluteUsdc: import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>;
readonly relativePercent: number;
}, {
readonly absoluteUsdc: import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>;
readonly relativePercent: number;
}, {
readonly absoluteUsdc: import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>;
readonly relativePercent: number;
}, {
readonly absoluteUsdc: import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>;
readonly relativePercent: number;
}, {
readonly absoluteUsdc: import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>;
readonly relativePercent: number;
}, {
readonly absoluteUsdc: import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>;
readonly relativePercent: number;
}, {
readonly absoluteUsdc: import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>;
readonly relativePercent: number;
}, {
readonly absoluteUsdc: import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>;
readonly relativePercent: number;
}, {
readonly absoluteUsdc: import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>;
readonly relativePercent: number;
}]) => {
item: readonly [{
readonly absoluteUsdc: import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>;
readonly relativePercent: number;
}, {
readonly absoluteUsdc: import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>;
readonly relativePercent: number;
}, {
readonly absoluteUsdc: import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>;
readonly relativePercent: number;
}, {
readonly absoluteUsdc: import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>;
readonly relativePercent: number;
}, {
readonly absoluteUsdc: import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>;
readonly relativePercent: number;
}, {
readonly absoluteUsdc: import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>;
readonly relativePercent: number;
}, {
readonly absoluteUsdc: import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>;
readonly relativePercent: number;
}, {
readonly absoluteUsdc: import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>;
readonly relativePercent: number;
}, {
readonly absoluteUsdc: import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>;
readonly relativePercent: number;
}, {
readonly absoluteUsdc: import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>;
readonly relativePercent: number;
}];
};
};
};
readonly custom: {
readonly to: (fa: RoArray<FeeAdjustment>) => {
readonly absoluteUsdc: import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>;
readonly relativePercent: number;
}[];
readonly from: (fa: RoArray<FeeAdjustment>) => {
readonly absoluteUsdc: import("@stable-io/amount").Amount<{
readonly name: "Usdc";
readonly units: readonly [{
readonly symbol: "USDC";
readonly scale: 1;
}, {
readonly symbol: "\u00B5USDC";
readonly scale: bigint | Rational;
}];
readonly human: "USDC";
readonly atomic: "\u00B5USDC";
readonly stringify: (val: Rational) => string;
}>;
readonly relativePercent: number;
}[];
};
};
export type FeeAdjustmentsSlot = DeriveType<typeof feeAdjustmentsSlotItem>;
export {};
//# sourceMappingURL=feeAdjustments.d.ts.map