@neo-one/server-plugin-network
Version:
NEO•ONE Server network plugin.
30 lines (29 loc) • 1.27 kB
TypeScript
import { CRUD, DescribeTable, ListTable, MasterResourceAdapter, MasterResourceAdapterOptions, ResourceState, ResourceType } from '@neo-one/server-plugin';
import { NetworkPlugin } from './NetworkPlugin';
import { Node } from './node';
import { NetworkType } from './types';
export interface Network {
readonly plugin: string;
readonly resourceType: string;
readonly name: string;
readonly baseName: string;
readonly state: ResourceState;
readonly type: NetworkType;
readonly height: number | undefined;
readonly peers: number | undefined;
readonly nodes: readonly Node[];
readonly live: () => Promise<void>;
readonly ready: () => Promise<void>;
}
export interface NetworkResourceOptions {
readonly type?: 'neo-one';
}
export declare class NetworkResourceType extends ResourceType<Network, NetworkResourceOptions> {
constructor({ plugin }: {
readonly plugin: NetworkPlugin;
});
createMasterResourceAdapter({ binary, portAllocator, }: MasterResourceAdapterOptions): Promise<MasterResourceAdapter<Network, NetworkResourceOptions>>;
getCRUD(): CRUD<Network, NetworkResourceOptions>;
getListTable(resources: readonly Network[]): ListTable;
getDescribeTable(resource: Network): DescribeTable;
}