@nekoproject/swap
Version:
Cross-chain Swap Token
38 lines (31 loc) • 1.05 kB
text/typescript
/* eslint-disable @typescript-eslint/no-unused-vars */
/* eslint-disable @typescript-eslint/no-explicit-any */
import { Network } from '@nekoproject/networks';
import { Wallet } from '@nekoproject/wallets';
import type { CreateOrder, SwapOrderRequest } from './types';
export abstract class Swap {
protected _network: Network;
protected _endpoint: string;
constructor(network: Network, endpoint: string, version?: string) {
this._network = network;
this._endpoint = endpoint;
}
get network() {
return this._network;
}
get endpoint() {
throw new Error('Abstract Method has no implementation');
}
set endpoint(endpoint: string) {
throw new Error('Abstract Method has no implementation');
}
async createSwapOrder(swapRequest: CreateOrder): Promise<SwapOrderRequest> {
throw new Error('Abstract Method has no implementation');
}
async swapToken(
swapRequest: SwapOrderRequest,
wallet: Wallet
): Promise<any | null> {
throw new Error('Abstract Method has no implementation');
}
}