@effectai/effect-js
Version:
Effect Network Javscript/Typescript SDK (for [https://effect.network](https://effect.network))
63 lines (62 loc) • 2.17 kB
TypeScript
import { ClientConfig } from './types/config';
import { IpfsService } from './services/ipfs';
import { TasksService } from './services/tasks';
import { VAccountService } from './services/vaccount';
import { TokenService } from './services/token';
import { APIClient, FetchProvider, FetchProviderOptions } from '@wharfkit/antelope';
import { Name, Session } from "@wharfkit/session";
import { ActionService } from './services/actions';
import { AtomicAssetsService } from './services/atomic';
import { DaoService } from './services/dao';
export declare class Client {
static __classname: string;
readonly config: ClientConfig;
readonly fetchProvider: FetchProvider;
readonly eos: APIClient;
session: Session;
/**
* Create a new Effect Network Client instance
* @param {string} environment Which network you would like to connect to, defaults to 'jungle4'
*/
constructor(environment?: string, fetchProviderOptions?: FetchProviderOptions);
tasks: TasksService;
ipfs: IpfsService;
vaccount: VAccountService;
efx: TokenService;
action: ActionService;
atomic: AtomicAssetsService;
dao: DaoService;
/**
* Login to the Effect Network with a session
* @param session Session object
*/
loginWithSession(session: Session): void;
/**
* Login to the Effect Network with a private key
* @param actor EOS account name of the user
* @param permission EOS permission of the user
* @param privateKey EOS private key of the user
*/
login(actor: string, permission: string, privateKey: string): void;
/**
* Logout from the Effect Network
*/
logout(): void;
/**
* Check if the user is logged in
* @returns {boolean} Whether or not the user is logged in
*/
isLoggedIn(): boolean;
/**
* Require a session to be set (make sure user is logged in), otherwise throw an error.
*/
requireSession(): void;
/**
* Retrieve the actor and permission from the session
* @returns [{ actor: Name; permission: Name }]
*/
sessionAuth: () => {
actor: Name;
permission: Name;
}[];
}