UNPKG

@mochabug/adapt-plugin-builder

Version:

This encapsulate the building an bundling logic for mochabug adapt plugins

224 lines 7.79 kB
import type { GenEnum, GenFile, GenMessage } from "@bufbuild/protobuf/codegenv1"; import type { ServiceBinding, ServiceBindingJson } from "./service_binding_pb"; import type { Message } from "@bufbuild/protobuf"; /** * Describes the file mochabugapis/adapt/plugins/v1/vertex.proto. */ export declare const file_mochabugapis_adapt_plugins_v1_vertex: GenFile; /** * Vertex represents a graph vertex that defines a plugin. * Note: Be aware of potential security implications when dealing with * user-provided data, such as file paths, and ensure proper input validation * and sanitization. * * @generated from message mochabugapis.adapt.plugins.v1.Vertex */ export type Vertex = Message<"mochabugapis.adapt.plugins.v1.Vertex"> & { /** * 'name' represents the vertex name. * * @generated from field: string name = 1; */ name: string; /** * 'label' is a human-friendly label displayed in the UI. * * @generated from field: string label = 2; */ label: string; /** * 'description' is a human-friendly short description of the vertex displayed * in UI. * * @generated from field: optional string description = 3; */ description?: string; /** * 'logo' is the file path to the vertex logo, which will be resized to a * maximum of 40x40 pixels. Ensure that the logo files are from trusted * sources to avoid security risks. * - Supported file formats: * - GIF: .gif * - JPEG: .jpg, .jpeg, .jfif, .pjpeg, .pjp * - PNG: .png * - SVG: .svg * - WEBP: .webp * - AVIF: .avif * * @generated from field: optional string logo = 4; */ logo?: string; /** * 'capabilities' specifies the capabilities of the vertex * * @generated from field: repeated mochabugapis.adapt.plugins.v1.Capability capabilities = 5; */ capabilities: Capability[]; /** * 'config' is an field that contains a Unix file path. * This can be any type of file, this is only intepreted for the vertex itself * Restrictions: * * * @generated from field: optional string config = 6; */ config?: string; /** * 'metadata' is an field that contains a Unix file path. * This determines which receivers, transmitters etc... the vertex has to begin with * Restrictions: * * * @generated from field: string metadata = 7; */ metadata: string; /** * 'user_services' are the services that the user is defining * and consumed by a particular instance of the vertex * * @generated from field: repeated mochabugapis.adapt.plugins.v1.ServiceBinding user_services = 8; */ userServices: ServiceBinding[]; }; /** * Vertex represents a graph vertex that defines a plugin. * Note: Be aware of potential security implications when dealing with * user-provided data, such as file paths, and ensure proper input validation * and sanitization. * * @generated from message mochabugapis.adapt.plugins.v1.Vertex */ export type VertexJson = { /** * 'name' represents the vertex name. * * @generated from field: string name = 1; */ name?: string; /** * 'label' is a human-friendly label displayed in the UI. * * @generated from field: string label = 2; */ label?: string; /** * 'description' is a human-friendly short description of the vertex displayed * in UI. * * @generated from field: optional string description = 3; */ description?: string; /** * 'logo' is the file path to the vertex logo, which will be resized to a * maximum of 40x40 pixels. Ensure that the logo files are from trusted * sources to avoid security risks. * - Supported file formats: * - GIF: .gif * - JPEG: .jpg, .jpeg, .jfif, .pjpeg, .pjp * - PNG: .png * - SVG: .svg * - WEBP: .webp * - AVIF: .avif * * @generated from field: optional string logo = 4; */ logo?: string; /** * 'capabilities' specifies the capabilities of the vertex * * @generated from field: repeated mochabugapis.adapt.plugins.v1.Capability capabilities = 5; */ capabilities?: CapabilityJson[]; /** * 'config' is an field that contains a Unix file path. * This can be any type of file, this is only intepreted for the vertex itself * Restrictions: * * * @generated from field: optional string config = 6; */ config?: string; /** * 'metadata' is an field that contains a Unix file path. * This determines which receivers, transmitters etc... the vertex has to begin with * Restrictions: * * * @generated from field: string metadata = 7; */ metadata?: string; /** * 'user_services' are the services that the user is defining * and consumed by a particular instance of the vertex * * @generated from field: repeated mochabugapis.adapt.plugins.v1.ServiceBinding user_services = 8; */ userServices?: ServiceBindingJson[]; }; /** * Describes the message mochabugapis.adapt.plugins.v1.Vertex. * Use `create(VertexSchema)` to create a new message. */ export declare const VertexSchema: GenMessage<Vertex, VertexJson>; /** * The capabilities of a vertex defines how the vertex is interracted with * If the vertex has the cron capabilitiy, then a cron-scheduler will call the * cron endpoint periodically until the vertex has finished or stopped * If the vertex has external browser capabiltity, there will be an external endpoint * where a third-party can communicate with the vertex * If the vertex has a configurator, then the vertex will be able to be configured dynamically * * @generated from enum mochabugapis.adapt.plugins.v1.Capability */ export declare enum Capability { /** * Unspecified capability (default value, should not be used). * * @generated from enum value: CAPABILITY_UNSPECIFIED = 0; */ UNSPECIFIED = 0, /** * Cron capability, indicating that the vertex can be triggered at specific * intervals. * * @generated from enum value: CAPABILITY_CRON = 1; */ CRON = 1, /** * The external capability, indicating that the vertex can be accessed via a * publicly routable address. * * @generated from enum value: CAPABILITY_EXTERNAL = 2; */ EXTERNAL = 2, /** * Configurator capability, indicating that the vertex can be configured * dynamically by a vertex-defined interface. * * @generated from enum value: CAPABILITY_CONFIGURATOR = 3; */ CONFIGURATOR = 3, /** * Browser capability, indicating that the vertex can be accessed via a * browser context. * * @generated from enum value: CAPABILITY_BROWSER = 4; */ BROWSER = 4 } /** * The capabilities of a vertex defines how the vertex is interracted with * If the vertex has the cron capabilitiy, then a cron-scheduler will call the * cron endpoint periodically until the vertex has finished or stopped * If the vertex has external browser capabiltity, there will be an external endpoint * where a third-party can communicate with the vertex * If the vertex has a configurator, then the vertex will be able to be configured dynamically * * @generated from enum mochabugapis.adapt.plugins.v1.Capability */ export type CapabilityJson = "CAPABILITY_UNSPECIFIED" | "CAPABILITY_CRON" | "CAPABILITY_EXTERNAL" | "CAPABILITY_CONFIGURATOR" | "CAPABILITY_BROWSER"; /** * Describes the enum mochabugapis.adapt.plugins.v1.Capability. */ export declare const CapabilitySchema: GenEnum<Capability, CapabilityJson>; //# sourceMappingURL=vertex_pb.d.ts.map