znapi
Version:
Better TS/JS API for zeronet-conservancy (WIP)
49 lines (48 loc) • 2.17 kB
TypeScript
export interface ZNAPI {
connect(): void;
getServerInfo(): Promise<ServerInfo>;
requestPermission(permission: string): Promise<void>;
getSignerList(): Promise<any>;
getSiteList(): Promise<any>;
getSizeLimitRules(): Promise<any>;
getSiteDetails(address: string): Promise<any>;
addPrivateSizeLimitRule(address: string, rule: string, value: number, priority: number): Promise<void>;
removePrivateSizeLimitRule(rule_id: number): Promise<void>;
siteFavorite(address: string): Promise<any>;
siteUnfavorite(address: string): Promise<any>;
siteLimitsUnsubscribe(address: string): Promise<string>;
siteLimitsSubscribe(address: string, priority: number): Promise<string>;
}
type Callback = (msg: any) => void;
export declare abstract class ZNAPIGeneric implements ZNAPI {
abstract connect(): void;
abstract send(message: any, cb: any): void;
private callbacks;
setCallback(msg: string, cback: Callback): void;
processCallback(cmd: string, message: any): void;
sendWithResp(message: any): Promise<any>;
ping(): Promise<string>;
getServerInfo(): Promise<any>;
getSignerList(): Promise<any>;
getSiteList(): Promise<any>;
getSiteDetails(address: string): Promise<any>;
getSizeLimitRules(): Promise<any>;
requestPermission(permission: string): Promise<void>;
addPrivateSizeLimitRule(address: string, rule: string, value: number, priority: number): Promise<void>;
removePrivateSizeLimitRule(rule_id: number): Promise<void>;
siteFavorite(address: string): Promise<any>;
siteUnfavorite(address: string): Promise<any>;
siteLimitsUnsubscribe(address: string): Promise<string>;
siteLimitsSubscribe(address: string, priority: number): Promise<string>;
siteDiagnose(address: string): Promise<any>;
siteFixUserPermissions(address: string, content_path: string, user_addresses: string[]): Promise<any>;
remoteConnectionList(): Promise<any>;
connectionSiteList(conn_id: number): Promise<any>;
msgSubscribe(cback: Callback): Promise<any>;
}
export interface Config {
useWS?: boolean;
wsUrl?: string;
}
export type ServerInfo = {};
export {};