@ln-markets/sdk
Version:
TypeScript SDK for LNMarkets API
256 lines • 9.58 kB
TypeScript
import type { Options } from './instance.js';
export declare const createHttpClient: (options?: Options) => {
ping: () => Promise<string>;
time: () => Promise<number>;
futures: {
addMargin: (body: {
amount: number;
id: string;
}) => Promise<import("./routes/futures/types.js").FuturesRunningTrade>;
cancelAllTrades: () => Promise<{
trades: import("./routes/futures/types.js").FuturesCanceledTrade[];
}>;
cancelTrade: (body: {
id: string;
}) => Promise<import("./routes/futures/types.js").FuturesCanceledTrade>;
cashIn: (body: {
amount: number;
id: string;
}) => Promise<import("./routes/futures/types.js").FuturesRunningTrade>;
closeAllTrades: () => Promise<{
trades: import("./routes/futures/types.js").FuturesClosedTrade[];
}>;
closeTrade: (searchParams: {
id: string;
}) => Promise<import("./routes/futures/types.js").FuturesClosedTrade>;
getCarryFeesHistory: (searchParams?: {
from: number;
limit?: number;
to: number;
}) => Promise<{
fee: number;
fixingId: string;
id: string;
ts: number;
}[]>;
getFixingHistory: (searchParams?: {
from: number;
limit?: number;
to: number;
}) => Promise<{
feeRate: number;
id: string;
price: number;
time: number;
}[]>;
getIndexHistory: (searchParams?: {
from: number;
limit?: number;
to: number;
}) => Promise<{
time: number;
value: number;
}[]>;
getLeaderboard: () => Promise<import("./routes/user/types.js").Leaderboard>;
getMarketDetails: () => Promise<import("./routes/futures/types.js").FuturesMarketDetails>;
getOHLCHistory: (searchParams: {
from: number;
limit?: number;
range: import("./routes/futures/types.js").OHLCRange;
to: number;
}) => Promise<import("./routes/futures/types.js").OHLC[]>;
getPriceHistory: (searchParams?: {
from: number;
limit?: number;
to: number;
}) => Promise<{
time: number;
value: number;
}[]>;
getTicker: () => Promise<import("./routes/futures/types.js").FuturesTicker>;
getTrade: (params: {
id: string;
}) => Promise<import("./routes/futures/types.js").FuturesTrade>;
getTrades: (searchParams: {
from?: number;
limit?: number;
to?: number;
type: import("./routes/futures/types.js").FuturesTradeStatus;
}) => Promise<import("./routes/futures/types.js").FuturesTrade[]>;
newTrade: (body: {
leverage: number;
margin?: number;
price?: number;
quantity?: number;
side: import("./routes/futures/types.js").FuturesTradeSide;
stoploss?: number;
takeprofit?: number;
type: import("./routes/futures/types.js").FuturesTradeType;
}) => Promise<import("./routes/futures/types.js").FuturesOpenOrRunningTrade>;
updateTrade: (body: {
id: string;
type: "stoploss" | "takeprofit";
value: number;
}) => Promise<import("./routes/futures/types.js").FuturesOpenOrRunningTrade>;
};
notifications: {
getAll: () => Promise<import("./routes/notifications/types.js").Notification[]>;
markAllAsRead: () => Promise<unknown>;
};
options: {
closeAllTrades: () => Promise<import("./routes/options/types.js").OptionsTradeClosed[]>;
closeTrade: (searchParams: {
id: string;
}) => Promise<import("./routes/options/types.js").OptionsTradeClosed>;
getInstrument: (body: {
instrumentName: string;
}) => Promise<import("./routes/options/types.js").OptionsInstrument>;
getInstruments: () => Promise<{
instruments: string[];
}>;
getMarketDetails: () => Promise<import("./routes/options/types.js").OptionsMarketDetails>;
getTrade: (params: {
id: string;
}) => Promise<import("./routes/options/types.js").OptionsTrade>;
getTrades: (searchParams?: {
from: number;
limit?: number;
status: import("./routes/options/types.js").OptionsTradeStatus;
to: number;
}) => Promise<import("./routes/options/types.js").OptionsTrade[]>;
getVolatilityIndex: () => Promise<import("./routes/options/types.js").OptionsVolatilityIndex>;
newTrade: (body: {
instrumentName: string;
quantity: number;
settlement: import("./routes/options/types.js").OptionsSettlement;
side: import("./routes/options/types.js").OptionsSide;
}) => Promise<import("./routes/options/types.js").OptionsTradeRunning>;
updateTrade: (body: {
id: string;
settlement: import("./routes/options/types.js").OptionsSettlement;
}) => Promise<import("./routes/options/types.js").OptionsTradeRunningWithDelta>;
};
oracle: {
getIndex: (searchParams?: {
from: number;
limit?: number;
to: number;
}) => Promise<{
index: number;
time: number;
}[]>;
getLastPrice: (searchParams?: {
from: number;
limit?: number;
to: number;
}) => Promise<{
lastPrice: number;
time: number;
}>;
};
swaps: {
getSwap: (params: {
swapId: string;
}) => Promise<import("./routes/swaps/types.js").Swap>;
getSwapBySourceId: (params: {
sourceId: string;
}, searchParams: {
source: import("./routes/swaps/types.js").SwapSource;
}) => Promise<import("./routes/swaps/types.js").Swap>;
getSwaps: (searchParams?: {
from?: number;
limit?: number;
to?: number;
}) => Promise<import("./routes/swaps/types.js").Swap[]>;
newSwap: (body: {
inAmount: number;
inAsset: import("./routes/swaps/types.js").SwapAsset;
outAsset: import("./routes/swaps/types.js").SwapAsset;
}) => Promise<import("./routes/swaps/types.js").Swap>;
};
user: {
deposit: (body: {
amount: number;
}) => Promise<{
depositId: string;
expiry: number;
paymentRequest: string;
}>;
depositSyntheticUsd: (body: {
amount: number;
currency: import("./routes/user/types.js").Currency;
}) => Promise<{
depositId: string;
expiry: number;
paymentRequest: string;
syntheticUsdAmount: number;
}>;
get: () => Promise<import("./routes/user/types.js").User>;
getBitcoinAddresses: (searchParams: {
current: boolean;
}) => Promise<{
address: string;
creationTs: number;
isUsed: boolean;
}[]>;
getDeposit: (params: {
depositId: string;
}) => Promise<import("./routes/user/types.js").Deposit>;
getDeposits: (searchParams?: {
type: import("./routes/user/types.js").DepositType;
}) => Promise<import("./routes/user/types.js").Deposit[]>;
getWithdrawal: (params: {
id: string;
}) => Promise<import("./routes/user/types.js").WithdrawalCondensed>;
getWithdrawals: () => Promise<import("./routes/user/types.js").WithdrawalCondensed[]>;
newBitcoinAddress: (body: {
format: "p2tr" | "p2wpkh";
}) => Promise<{
address: string;
creationTs: number;
}>;
transfer: (body: {
amount: number;
toUsername: string;
}) => Promise<{
amount: number;
to: string;
}>;
update: (body: {
autoWithdrawEnabled?: boolean;
autoWithdrawLightningAddress?: boolean;
nostrPubkey?: string;
showLeaderboard?: boolean;
username?: string;
useTaprootAddresses?: boolean;
}) => Promise<import("./routes/user/types.js").User>;
withdraw: (body: {
invoice: string;
quoteId?: string;
}) => Promise<{
amount?: number;
fee?: number;
id: string;
paymentHash?: string;
successTime?: number;
}>;
withdrawSyntheticUsd: (body: {
amount: number;
currency: import("./routes/user/types.js").Currency;
}) => Promise<{
amount: number;
currency: import("./routes/user/types.js").Currency;
feeReserve: number;
minBalanceAfter: number;
quoteId: string;
validUntil: number;
}>;
};
};
export type HttpClient = ReturnType<typeof createHttpClient>;
export type * from './routes/futures/types.js';
export type * from './routes/notifications/types.js';
export type * from './routes/options/types.js';
export type * from './routes/swaps/types.js';
export type * from './routes/user/types.js';
//# sourceMappingURL=index.d.ts.map