import { Metadata } from "@polkadot/types"; import { BytesLike, ethers } from "ethers"; type Client = { calls: { session: { buildSetKeysCallH: any; }; darwiniaStaking: { buildNominateCall: any; buildStakeCall: any; buildCollectCall: any; }; utility: { batchAll: any; }; }; storages: { system: { events: Function; }; }; metadata: Metadata; provider: ethers.providers.BaseProvider; }; /** * @param client: client from clientBuilder * @param signer: a signer with a provider inside * @param target: the account which you want to nominate * @param ringAmount: RINGs to stake * @param ktonAmount: KTONs to stake * @param deposits: deposit ids to stake */ export declare function nominateAndStake(client: Client, signer: ethers.Signer, target: BytesLike, ringAmount: number, ktonAmount: number, deposits: number[]): Promise; /** * @param client: client from clientBuilder * @param signer: a signer with a provider inside * @param keys: session keys bytes * @param commission: integer >= 0 and <= 100 */ export declare function setSessionKeysAndCommission(client: Client, signer: ethers.Signer, keys: BytesLike, commission: number): Promise; /** * TODO: cache meta */ export declare function getSystemEvents(client: Client2): Promise; type Client2 = { storages: { system: { events: Function; }; }; metadata: Metadata; provider: ethers.providers.BaseProvider; }; export type EventData = { palletName: string; eventName: string; data: Map; }; /** * Track specified events. * * @param client: client from clientBuilder * @param eventsToTrack: [PalletName, EventName] array * @param cb: callback */ export declare function trackSystemEvents(client: Client2, eventsToTrack: [string, string][], cb: (event: EventData) => Promise): Promise; export {};