@atomiqlabs/sdk-lib
Version:
Basic SDK functionality library for atomiq
43 lines (42 loc) • 1.46 kB
TypeScript
import { ISwap } from "./ISwap";
import { IStorageManager } from "@atomiqlabs/base";
import { ISwapWrapper } from "./ISwapWrapper";
export declare class SwapWrapperStorage<T extends ISwap<any>> {
storage: IStorageManager<T>;
constructor(storage: IStorageManager<T>);
/**
* Initializes the underlying storage manager, needs to be called before any other action is taken
*/
init(): Promise<void>;
/**
* Removes the swap data from the underlying storage manager
*
* @param swapData Swap to remove
*/
removeSwapData(swapData: T): Promise<boolean>;
/**
* Removes an array of swap data from the underlying storage manager
*
* @param arr Array of swaps to remove
*/
removeSwapDataArr(arr: T[]): Promise<void>;
/**
* Saves the swap to the underlying storage manager
*
* @param swapData Swap to save
*/
saveSwapData(swapData: T): Promise<void>;
/**
* Saves an array of swaps to the underlying storage manager
*
* @param arr Array of swaps to save
*/
saveSwapDataArr(arr: T[]): Promise<void>;
/**
* Loads all the swaps from the underlying storage manager
*
* @param wrapper Swap wrapper
* @param type Constructor for the swap
*/
loadSwapData(wrapper: ISwapWrapper<any, T>, type: new (wrapper: ISwapWrapper<any, T>, data: any) => T): Promise<Map<string, T>>;
}