1#![allow(clippy::used_underscore_binding)]
2
3use defuse_core::{
4 intents::{DefuseIntents, Intent},
5 payload::{DefusePayload, nep413::Nep413DefuseMessage},
6};
7use near_sdk::near;
8use serde::{Deserialize, Serialize};
9
10use super::{Contract, ContractExt};
11
12#[near]
13impl Contract {
14 pub fn __abi_helper(_types: AbiHelper) {}
15}
16
17#[cfg_attr(feature = "abi", derive(::schemars::JsonSchema))]
18#[derive(Serialize, Deserialize)]
19pub struct AbiHelper {
20 pub intent: Intent,
21 pub payload: AbiPayloadHelper,
22}
23
24#[cfg_attr(feature = "abi", derive(::schemars::JsonSchema))]
25#[derive(Serialize, Deserialize)]
26pub struct AbiPayloadHelper {
27 pub nep413: Nep413DefuseMessage<DefuseIntents>,
28 pub defuse: DefusePayload<DefuseIntents>,
29}