import type { Stream, RequestOptions } from "@dxos/codec-protobuf"; import substitutions from "../../substitutions.js"; import * as dxos_agent_dashboard from "./agent/dashboard.js"; import * as dxos_agent_echoproxy from "./agent/echoproxy.js"; import * as dxos_agent_epoch from "./agent/epoch.js"; import * as dxos_agent_functions from "./agent/functions.js"; import * as dxos_client_services from "./client/services.js"; import * as dxos_config from "./config.js"; import * as dxos_devtools_host from "./devtools/host.js"; import * as dxos_devtools_swarm from "./devtools/swarm.js"; import * as dxos_echo_blob from "./echo/blob.js"; import * as dxos_echo_feed from "./echo/feed.js"; import * as dxos_echo_filter from "./echo/filter.js"; import * as dxos_echo_indexing from "./echo/indexing.js"; import * as dxos_echo_metadata from "./echo/metadata.js"; import * as dxos_echo_model_document from "./echo/model/document.js"; import * as dxos_echo_model_messenger from "./echo/model/messenger.js"; import * as dxos_echo_model_text from "./echo/model/text.js"; import * as dxos_echo_object from "./echo/object.js"; import * as dxos_echo_query from "./echo/query.js"; import * as dxos_echo_service from "./echo/service.js"; import * as dxos_echo_snapshot from "./echo/snapshot.js"; import * as dxos_echo_timeframe from "./echo/timeframe.js"; import * as dxos_edge_calls from "./edge/calls.js"; import * as dxos_edge_messenger from "./edge/messenger.js"; import * as dxos_edge_signal from "./edge/signal.js"; import * as dxos_error from "./error.js"; import * as dxos_gravity from "./gravity.js"; import * as dxos_halo_credentials from "./halo/credentials.js"; import * as dxos_halo_credentials_auth from "./halo/credentials/auth.js"; import * as dxos_halo_credentials_greet from "./halo/credentials/greet.js"; import * as dxos_halo_credentials_identity from "./halo/credentials/identity.js"; import * as dxos_halo_invitations from "./halo/invitations.js"; import * as dxos_halo_keyring from "./halo/keyring.js"; import * as dxos_halo_keys from "./halo/keys.js"; import * as dxos_halo_signed from "./halo/signed.js"; import * as dxos_iframe from "./iframe.js"; import * as dxos_keys from "./keys.js"; import * as dxos_mesh_bridge from "./mesh/bridge.js"; import * as dxos_mesh_broadcast from "./mesh/broadcast.js"; import * as dxos_mesh_messaging from "./mesh/messaging.js"; import * as dxos_mesh_muxer from "./mesh/muxer.js"; import * as dxos_mesh_presence from "./mesh/presence.js"; import * as dxos_mesh_protocol from "./mesh/protocol.js"; import * as dxos_mesh_replicator from "./mesh/replicator.js"; import * as dxos_mesh_signal from "./mesh/signal.js"; import * as dxos_mesh_swarm from "./mesh/swarm.js"; import * as dxos_mesh_teleport from "./mesh/teleport.js"; import * as dxos_mesh_teleport_auth from "./mesh/teleport/auth.js"; import * as dxos_mesh_teleport_automerge from "./mesh/teleport/automerge.js"; import * as dxos_mesh_teleport_blobsync from "./mesh/teleport/blobsync.js"; import * as dxos_mesh_teleport_control from "./mesh/teleport/control.js"; import * as dxos_mesh_teleport_gossip from "./mesh/teleport/gossip.js"; import * as dxos_mesh_teleport_notarization from "./mesh/teleport/notarization.js"; import * as dxos_mesh_teleport_replicator from "./mesh/teleport/replicator.js"; import * as dxos_registry from "./registry.js"; import * as dxos_rpc from "./rpc.js"; import * as dxos_service_agentmanager from "./service/agentmanager.js"; import * as dxos_service_publisher from "./service/publisher.js"; import * as dxos_service_supervisor from "./service/supervisor.js"; import * as dxos_service_tunnel from "./service/tunnel.js"; import * as dxos_tracing from "./tracing.js"; import * as dxos_type from "./type.js"; import * as dxos_value from "./value.js"; import * as example_testing_data from "../example/testing/data.js"; import * as example_testing_rpc from "../example/testing/rpc.js"; import * as google_protobuf from "../google/protobuf.js"; /** * Defined in: * {@link file://./../../dxos/bot.proto} */ export interface BotPackageSpecifier { /** * DXN of the bot in the DXNS registry. */ name?: string; ipfsCid?: string; localPath?: string; } /** * Defined in: * {@link file://./../../dxos/bot.proto} */ export interface Bot { id: string; /** * Options: * - proto3_optional = true */ status?: Bot.Status; /** * The state that the bot aims to be in. Can be only either RUNNING or STOPPED. * * Options: * - proto3_optional = true */ desiredState?: Bot.Status; /** * Options: * - proto3_optional = true */ attemptsToAchieveDesiredState?: number; /** * Options: * - proto3_optional = true */ packageSpecifier?: BotPackageSpecifier; /** * Options: * - proto3_optional = true */ lastStart?: ReturnType<(typeof substitutions)["google.protobuf.Timestamp"]["decode"]>; /** * Options: * - proto3_optional = true */ spaceKey?: ReturnType<(typeof substitutions)["dxos.keys.PublicKey"]["decode"]>; /** * Options: * - proto3_optional = true */ runtime?: Bot.Runtime; /** * Options: * - proto3_optional = true */ report?: BotReport; } export namespace Bot { /** * Defined in: * {@link file://./../../dxos/bot.proto} */ export enum Status { STOPPED = 0, STARTING = 1, RUNNING = 2, STOPPING = 3, SPAWNING = 4 } /** * Defined in: * {@link file://./../../dxos/bot.proto} */ export interface Runtime { /** * Options: * - proto3_optional = true */ exitCode?: number; /** * Options: * - proto3_optional = true */ exitSignal?: string; /** * Options: * - proto3_optional = true */ error?: string; } } /** * Defined in: * {@link file://./../../dxos/bot.proto} */ export interface GetBotsResponse { bots?: Bot[]; } /** * Defined in: * {@link file://./../../dxos/bot.proto} */ export interface SpawnBotRequest { /** * Options: * - proto3_optional = true */ package?: BotPackageSpecifier; /** * Invitation for the bot to join the target space. * * Options: * - proto3_optional = true */ invitation?: dxos_client_services.Invitation; /** * Key of the space bot is invited to. * * Options: * - proto3_optional = true */ spaceKey?: ReturnType<(typeof substitutions)["dxos.keys.PublicKey"]["decode"]>; } /** * Defined in: * {@link file://./../../dxos/bot.proto} */ export interface SendCommandRequest { /** * Options: * - proto3_optional = true */ botId?: string; /** * Options: * - proto3_optional = true */ command?: Uint8Array; } /** * Defined in: * {@link file://./../../dxos/bot.proto} */ export interface SendCommandResponse { /** * Options: * - proto3_optional = true */ response?: Uint8Array; } /** * Defined in: * {@link file://./../../dxos/bot.proto} */ export interface GetLogsResponse { chunk: Uint8Array; } /** * Defined in: * {@link file://./../../dxos/bot.proto} */ export interface GetLogsRequest { botId: string; } /** * Defined in: * {@link file://./../../dxos/bot.proto} */ export interface BotReport { /** * Details of the space the bot was spawned for. * * Options: * - proto3_optional = true */ processedTimeframe?: ReturnType<(typeof substitutions)["dxos.echo.timeframe.TimeframeVector"]["decode"]>; } /** * Service that is used by clients to communicate with bot factory. * * Defined in: * {@link file://./../../dxos/bot.proto} */ export interface BotFactoryService { getBots: (request: void, options?: RequestOptions) => Promise; spawnBot: (request: SpawnBotRequest, options?: RequestOptions) => Promise; start: (request: Bot, options?: RequestOptions) => Promise; stop: (request: Bot, options?: RequestOptions) => Promise; remove: (request: Bot, options?: RequestOptions) => Promise; getLogs: (request: GetLogsRequest, options?: RequestOptions) => Stream; sendCommand: (request: SendCommandRequest, options?: RequestOptions) => Promise; removeAll: (request: void, options?: RequestOptions) => Promise; } /** * Defined in: * {@link file://./../../dxos/bot.proto} */ export interface InitializeRequest { /** * Bot runtime configuration. * * Options: * - proto3_optional = true */ config?: dxos_config.Config; /** * Invitation for the bot to join the target space. * * Options: * - proto3_optional = true */ invitation?: dxos_client_services.Invitation; /** * ID of the bot. * * Options: * - proto3_optional = true */ id?: string; } /** * Defined in: * {@link file://./../../dxos/bot.proto} */ export interface StartRequest { /** * Bot runtime configuration. */ config: dxos_config.Config; } /** * Service that is used by bots communicating with bot factory. * * Defined in: * {@link file://./../../dxos/bot.proto} */ export interface BotService { /** * Initialize Client, create profile, and join a space. */ initialize: (request: InitializeRequest, options?: RequestOptions) => Promise; /** * Start an initialized bot. */ start: (request: StartRequest, options?: RequestOptions) => Promise; /** * Custom commands sent to the bot factory. */ command: (request: SendCommandRequest, options?: RequestOptions) => Promise; /** * Stop the bot. */ stop: (request: void, options?: RequestOptions) => Promise; /** * Send periodic reports of the bot's state. */ startReporting: (request: void, options?: RequestOptions) => Stream; }