import { Dictionary } from './common'; import { Cell, CellContents } from './cell'; import { SendMessage, NetworkMessage } from './network'; export interface ConductorContents { agentIds: string[]; cells: Dictionary; redundancyFactor: number; } export declare type ConductorOptions = { seed: string; } | { agentIds: string[]; }; export declare class Conductor { protected redundancyFactor: number; protected options?: ConductorOptions; agentIds: string[]; readonly cells: Dictionary; sendMessage: SendMessage; readyPromise: Promise; constructor(redundancyFactor: number, options?: ConductorOptions); static from(contents: ConductorContents): Conductor; ready(): Promise; toContents(): ConductorContents; installDna(dna: string, peers: string[]): Cell; initDna(dna: string): void; inboundNetworkMessage(dna: string, fromAgentId: string, message: NetworkMessage): any; }