import type { Stream } from "@dxos/codec-protobuf"; import substitutions from "../../substitutions"; import * as dxos_registry from "./registry"; import * as google_protobuf from "../google/protobuf"; export interface Repo { name?: string; url?: string; version?: string; } export interface App { /** * Optional **semver 2.0** compliant record version. * Should conform to the semver regex (see https://semver.org/). */ version?: string; license?: string; repos?: Repo[]; /** * App bundle content Id in the CID v0 format (https://docs.ipfs.io/concepts/content-addressing/#identifier-formats). */ bundle?: Uint8Array; web?: App.Web; extension?: dxos_registry.Record.Extension; } export namespace App { export interface Web { /** * Optional relative path in resource to entrypoint, defaults to index.html. */ indexFile?: string; /** * Optional relative path in resource to entrypoint, defaults to main.js. */ entryPoint?: string; } } export interface Bot { /** * Optional **semver 2.0** compliant record version. * Should conform to the semver regex (see https://semver.org/). */ version?: string; license?: string; repos?: Repo[]; /** * Bot bundle content Id in the CID v0 format (https://docs.ipfs.io/concepts/content-addressing/#identifier-formats). */ bundle?: Uint8Array; /** * This would be the path to the bot executable in bot-factory's file-system. */ localPath?: string; extension?: dxos_registry.Record.Extension; } export interface StateMachine { /** * Set of protobuf messages encoded in JSON. */ mutationProtobufDefs?: string; /** * Set of protobuf messages encoded in JSON. */ snapshotProtobufDefs?: string; codeIpfsCid?: Uint8Array; } export interface File { contentType?: string; fileName?: string; /** * File content Id in the CID v0 format (https://docs.ipfs.io/concepts/content-addressing/#identifier-formats). */ bundle?: Uint8Array; extension?: dxos_registry.Record.Extension; } export interface KUBE { url?: string; extension?: dxos_registry.Record.Extension; } export interface Service { type?: string; kube?: Uint8Array; extension?: dxos_registry.Record.Extension; } export interface IPFS { protocol?: string; addresses?: string[]; extension?: dxos_registry.Record.Extension; } export interface BotFactory { topic?: string; extension?: dxos_registry.Record.Extension; } export interface Signal { bootstrap?: string; url?: string; extension?: dxos_registry.Record.Extension; } export interface AppServer { url?: string; extension?: dxos_registry.Record.Extension; }