everything-dev
Version:
A consolidated product package for building Module Federation apps with oRPC APIs.
732 lines (730 loc) • 25.5 kB
JavaScript
import { BosConfigInputSchema, BosConfigSchema, SourceModeSchema, StarterLevelSchema } from "./types.mjs";
import { isValidImageDigest } from "./image-deploy.mjs";
import { oc } from "./sdk.mjs";
import * as z$1 from "zod";
import "@orpc/openapi/extensions/route";
//#region src/contract.ts
const PhaseTimingSchema = z$1.object({
name: z$1.string(),
durationMs: z$1.number()
});
const DevOptionsSchema = z$1.object({
host: SourceModeSchema.default("local"),
ui: SourceModeSchema.default("local"),
api: SourceModeSchema.default("local"),
auth: SourceModeSchema.default("local"),
remotePlugins: z$1.array(z$1.string()).optional(),
proxy: z$1.boolean().default(false),
ssr: z$1.boolean().default(false),
port: z$1.number().optional(),
apiPort: z$1.number().optional(),
uiPort: z$1.number().optional(),
authPort: z$1.number().optional(),
pluginPortStart: z$1.number().optional(),
interactive: z$1.boolean().optional(),
logLevel: z$1.enum([
"error",
"warn",
"info",
"debug"
]).optional()
});
const DevResultSchema = z$1.object({
status: z$1.enum(["started", "error"]),
description: z$1.string(),
processes: z$1.array(z$1.string()),
timings: z$1.array(PhaseTimingSchema).optional(),
session: z$1.custom().optional()
});
const StartOptionsSchema = z$1.object({
port: z$1.number().optional(),
interactive: z$1.boolean().optional(),
account: z$1.string().optional(),
domain: z$1.string().optional(),
env: z$1.enum(["production", "staging"]).default("production"),
registry: z$1.string().optional(),
configPath: z$1.string().optional()
});
const StartResultSchema = z$1.object({
status: z$1.enum(["running", "error"]),
url: z$1.string(),
error: z$1.string().optional(),
session: z$1.custom().optional(),
summary: z$1.custom().optional()
});
const BuildOptionsSchema = z$1.object({
packages: z$1.string().default("all").describe("Comma-separated keys, 'all' (default), or 'local' (only this repo's local plugins hosted via 'local:…')"),
force: z$1.boolean().default(false)
});
const BuildResultSchema = z$1.object({
status: z$1.enum(["success", "error"]),
error: z$1.string().optional(),
built: z$1.array(z$1.string()),
skipped: z$1.array(z$1.string()).optional()
});
const ConfigOptionsSchema = z$1.object({ full: z$1.boolean().default(false) });
const ConfigResultSchema = z$1.object({
config: z$1.union([BosConfigInputSchema, BosConfigSchema]).nullable(),
packages: z$1.array(z$1.string()),
remotes: z$1.array(z$1.string()),
full: z$1.boolean().default(false)
});
const RegistryUseOptionsSchema = z$1.object({
from: z$1.string().describe("Published runtime to compose from (account/gateway or bos:// URL)"),
sections: z$1.array(z$1.string()).min(1).describe("Sections to compose: app.ui, app.host, app.api, app.auth, plugins.<key>"),
dryRun: z$1.boolean().default(false)
});
const RegistryUseResultSchema = z$1.object({
status: z$1.enum([
"updated",
"dry-run",
"error"
]),
from: z$1.string(),
applied: z$1.array(z$1.string()),
configPath: z$1.string().optional(),
error: z$1.string().optional()
});
const PluginAddOptionsSchema = z$1.object({
source: z$1.string(),
as: z$1.string().optional(),
production: z$1.string().optional()
});
const PluginAddResultSchema = z$1.object({
status: z$1.enum(["added", "error"]),
key: z$1.string(),
development: z$1.string().optional(),
production: z$1.string().optional(),
integrity: z$1.string().optional(),
version: z$1.string().optional(),
error: z$1.string().optional()
});
const PluginRemoveOptionsSchema = z$1.object({ key: z$1.string() });
const PluginRemoveResultSchema = z$1.object({
status: z$1.enum(["removed", "error"]),
key: z$1.string(),
error: z$1.string().optional()
});
const PluginListResultSchema = z$1.object({
status: z$1.enum(["listed", "error"]),
plugins: z$1.array(z$1.object({
key: z$1.string(),
development: z$1.string().optional(),
production: z$1.string().optional(),
localPath: z$1.string().optional(),
source: z$1.enum(["local", "remote"]),
integrity: z$1.string().optional(),
version: z$1.string().optional(),
name: z$1.string().optional()
})),
error: z$1.string().optional()
});
const PluginPublishOptionsSchema = z$1.object({ key: z$1.string() });
const PluginPublishResultSchema = z$1.object({
status: z$1.enum(["published", "error"]),
key: z$1.string(),
path: z$1.string().optional(),
production: z$1.string().optional(),
version: z$1.string().optional(),
fingerprint: z$1.string().optional(),
error: z$1.string().optional()
});
const WorkspaceDeployResultSchema = z$1.object({
key: z$1.string(),
kind: z$1.enum(["app", "plugin"]),
success: z$1.boolean(),
error: z$1.string().optional(),
durationMs: z$1.number().optional()
});
const PublishOptionsSchema = z$1.object({
dryRun: z$1.boolean().default(false),
verbose: z$1.boolean().default(false),
network: z$1.enum(["mainnet", "testnet"]).optional(),
privateKey: z$1.string().optional(),
wallet: z$1.boolean().default(false),
env: z$1.enum(["production", "staging"]).default("production"),
registry: z$1.string().optional()
});
const RollbackOptionsSchema = z$1.object({
listOnly: z$1.boolean().default(false),
version: z$1.string().optional(),
previous: z$1.boolean().default(false),
force: z$1.boolean().default(false),
limit: z$1.number().int().min(1).max(200).default(20),
dryRun: z$1.boolean().default(false),
verbose: z$1.boolean().default(false),
network: z$1.enum(["mainnet", "testnet"]).optional(),
privateKey: z$1.string().optional(),
wallet: z$1.boolean().default(false),
env: z$1.enum(["production", "staging"]).default("production"),
registry: z$1.string().optional()
});
const RollbackHistoryEntrySchema = z$1.object({
blockHeight: z$1.number(),
blockTimestamp: z$1.string(),
txHash: z$1.string().optional(),
summary: z$1.string()
});
const RollbackSlotCheckSchema = z$1.object({
slot: z$1.string(),
ok: z$1.boolean(),
reason: z$1.string().optional()
});
const RollbackResultSchema = z$1.object({
status: z$1.enum([
"published",
"error",
"dry-run",
"list"
]),
registryUrl: z$1.string(),
txHash: z$1.string().optional(),
error: z$1.string().optional(),
history: z$1.array(RollbackHistoryEntrySchema).optional(),
verification: z$1.array(RollbackSlotCheckSchema).optional()
});
const PublishResultSchema = z$1.object({
status: z$1.enum([
"published",
"error",
"dry-run"
]),
registryUrl: z$1.string(),
txHash: z$1.string().optional(),
fingerprint: z$1.string().optional(),
slotPins: z$1.record(z$1.string(), z$1.string()).optional(),
error: z$1.string().optional(),
built: z$1.array(z$1.string()).optional(),
skipped: z$1.array(z$1.string()).optional(),
deployResults: z$1.array(WorkspaceDeployResultSchema).optional()
});
const DeployOptionsSchema = z$1.object({
statusList: z$1.boolean().default(false),
env: z$1.enum(["production", "staging"]).default("production"),
build: z$1.boolean().default(true),
dryRun: z$1.boolean().default(false),
verbose: z$1.boolean().default(false),
packages: z$1.string().default("all").describe("Comma-separated keys, 'all' (default), or 'local' (only this repo's local plugins hosted via 'local:…')"),
network: z$1.enum(["mainnet", "testnet"]).optional(),
privateKey: z$1.string().optional(),
service: z$1.string().optional(),
registry: z$1.string().optional(),
imageDigest: z$1.string().optional().refine((digest) => digest === void 0 || isValidImageDigest(digest), { message: "image digest must be sha256:<64 hex characters>" }).describe("Digest (sha256:…) of a pre-pushed runtime image — skips the image build/push leg and pins Railway to this digest"),
fullUpload: z$1.boolean().default(false).describe("Re-upload every dist file instead of diffing unchanged files against the previous deploy")
});
const DeployManifestListEntrySchema = z$1.object({
key: z$1.string(),
blockHeight: z$1.number(),
blockTimestamp: z$1.string(),
txHash: z$1.string().optional(),
publishedAt: z$1.string().optional()
});
const DeployResultSchema = z$1.object({
status: z$1.enum([
"deployed",
"published",
"error",
"dry-run",
"list"
]),
registryUrl: z$1.string(),
txHash: z$1.string().optional(),
fingerprint: z$1.string().optional(),
slotPins: z$1.record(z$1.string(), z$1.string()).optional(),
history: z$1.array(DeployManifestListEntrySchema).optional(),
built: z$1.array(z$1.string()).optional(),
skipped: z$1.array(z$1.string()).optional(),
image: z$1.string().optional(),
service: z$1.string().optional(),
error: z$1.string().optional(),
deployResults: z$1.array(WorkspaceDeployResultSchema).optional()
});
function parseNearAmount(value) {
const match = value.replace(/[\s_,]/g, "").match(/^(\d+(?:\.\d+)?)near$/i);
if (!match) return NaN;
return Number.parseFloat(match[1]);
}
const MIN_PUBLISH_ALLOWANCE_NEAR = .3;
const KeyPublishOptionsSchema = z$1.object({
allowance: z$1.string().default("1NEAR").refine((val) => {
const amount = parseNearAmount(val);
return !Number.isNaN(amount) && amount >= MIN_PUBLISH_ALLOWANCE_NEAR;
}, { message: `Allowance must be at least ${MIN_PUBLISH_ALLOWANCE_NEAR} NEAR to cover the transaction cost` }),
env: z$1.enum(["production", "staging"]).default("production"),
registry: z$1.string().optional(),
removeOldKeys: z$1.boolean().optional()
});
const KeyPublishResultSchema = z$1.object({
status: z$1.enum(["published", "error"]),
account: z$1.string(),
network: z$1.enum(["mainnet", "testnet"]),
env: z$1.enum(["production", "staging"]),
contract: z$1.string(),
allowance: z$1.string(),
functionNames: z$1.array(z$1.string()),
publicKey: z$1.string().optional(),
privateKey: z$1.string().optional(),
error: z$1.string().optional()
});
const OverrideSectionSchema = z$1.enum([
"ui",
"api",
"host",
"plugins"
]);
const DEFAULT_LOGIN_EXPIRES_IN_SECONDS = 7776e3;
const LoginOptionsSchema = z$1.object({
key: z$1.boolean().default(false),
site: z$1.string().optional(),
expiresIn: z$1.number().int().positive().default(DEFAULT_LOGIN_EXPIRES_IN_SECONDS),
device: z$1.string().optional(),
env: z$1.enum(["production", "staging"]).default("production"),
registry: z$1.string().optional()
});
const LoginResultSchema = z$1.object({
status: z$1.enum(["logged-in", "error"]),
siteUrl: z$1.string(),
accountId: z$1.string().nullish(),
expiresAt: z$1.string().nullish(),
loginUrl: z$1.string().nullish(),
publishKey: z$1.object({
publicKey: z$1.string(),
network: z$1.enum(["mainnet", "testnet"]),
contract: z$1.string(),
exportedTo: z$1.string()
}).nullish(),
warning: z$1.string().nullish(),
error: z$1.string().optional()
});
const LogoutOptionsSchema = z$1.object({ configDir: z$1.string().optional() });
const LogoutResultSchema = z$1.object({
status: z$1.enum(["logged-out", "error"]),
revokedApiKey: z$1.boolean(),
removedPublishKey: z$1.boolean(),
warning: z$1.string().nullish(),
error: z$1.string().optional()
});
const RuntimeOverrideTargetBaseSchema = z$1.enum([
"ui",
"api",
"plugins"
]);
const RuntimeOverrideTargetSchema = z$1.union([RuntimeOverrideTargetBaseSchema, z$1.string().regex(/^plugins\.(\*|[a-z0-9_-]+)$/)]);
const InitOptionsSchema = z$1.object({
extends: z$1.string().optional(),
directory: z$1.string().optional(),
account: z$1.string().optional(),
domain: z$1.string().optional(),
source: z$1.string().optional(),
plugins: z$1.array(z$1.string()).optional(),
overrides: z$1.array(OverrideSectionSchema).optional(),
level: StarterLevelSchema.optional(),
noInteractive: z$1.boolean().default(false),
noInstall: z$1.boolean().default(false)
});
const InitResultSchema = z$1.object({
status: z$1.enum(["initialized", "error"]),
directory: z$1.string(),
extendsRef: z$1.string(),
account: z$1.string().optional(),
domain: z$1.string().optional(),
extends: z$1.string(),
plugins: z$1.array(z$1.string()).optional(),
overrides: z$1.array(OverrideSectionSchema).optional(),
filesCopied: z$1.number(),
timings: z$1.array(PhaseTimingSchema).optional(),
targetDir: z$1.string().optional(),
error: z$1.string().optional()
});
const SyncOptionsSchema = z$1.object({
dryRun: z$1.boolean().default(false),
noInstall: z$1.boolean().default(false),
json: z$1.boolean().default(false)
});
const SyncResultSchema = z$1.object({
status: z$1.enum([
"synced",
"dry-run",
"error"
]),
updated: z$1.array(z$1.string()),
skipped: z$1.array(z$1.string()),
added: z$1.array(z$1.string()),
conflicted: z$1.array(z$1.string()).default([]),
/** retired stub files deleted silently (unmodified) — ADR 0023 migration */
retired: z$1.array(z$1.string()).optional(),
/** retired stub files that were hand-modified — backed up, then deleted */
retiredConflicted: z$1.array(z$1.string()).optional(),
/** where the retired hand-modified copies were backed up */
retiredBackupDir: z$1.string().optional(),
backupDir: z$1.string().optional(),
error: z$1.string().optional()
});
const UpgradeOptionsSchema = z$1.object({
dryRun: z$1.boolean().default(false),
noInstall: z$1.boolean().default(false),
noSync: z$1.boolean().default(false),
json: z$1.boolean().default(false),
migrationsOnly: z$1.boolean().default(false)
});
const UpgradeResultSchema = z$1.object({
status: z$1.enum([
"upgraded",
"dry-run",
"error"
]),
packages: z$1.array(z$1.object({
name: z$1.string(),
from: z$1.string().optional(),
to: z$1.string()
})),
sync: SyncResultSchema.optional(),
migrated: z$1.array(z$1.string()).optional(),
availablePlugins: z$1.array(z$1.string()).optional(),
selectedPlugins: z$1.array(z$1.string()).optional(),
timings: z$1.array(PhaseTimingSchema).optional(),
changelogUrl: z$1.string().optional(),
error: z$1.string().optional()
});
const DeployedVersionStatusSchema = z$1.object({
publishedFingerprint: z$1.string(),
servedFingerprint: z$1.string().optional(),
inSync: z$1.boolean(),
error: z$1.string().optional()
});
const StatusResultSchema = z$1.object({
status: z$1.enum(["ok", "error"]),
deployedVersion: DeployedVersionStatusSchema.optional(),
extends: z$1.string().optional(),
account: z$1.string().optional(),
domain: z$1.string().optional(),
packages: z$1.array(z$1.object({
name: z$1.string(),
installed: z$1.string().optional(),
latest: z$1.string().optional(),
isLinked: z$1.boolean().optional(),
specifier: z$1.string().optional()
})),
lastSync: z$1.string().optional(),
envFile: z$1.enum([
"found",
"missing",
"example-only"
]),
parentReachable: z$1.boolean().optional(),
error: z$1.string().optional()
});
const TypesGenOptionsSchema = z$1.object({
env: z$1.enum(["development", "production"]).optional(),
dryRun: z$1.boolean().default(false),
remotePlugins: z$1.array(z$1.string()).optional()
});
const TypesGenResultSchema = z$1.object({
status: z$1.enum(["success", "error"]),
generated: z$1.array(z$1.string()),
fetched: z$1.array(z$1.string()),
skipped: z$1.array(z$1.string()),
failed: z$1.array(z$1.string()),
error: z$1.string().optional()
});
const DbStudioOptionsSchema = z$1.object({ plugin: z$1.string().default("api") });
const DbStudioResultSchema = z$1.object({
status: z$1.enum(["success", "error"]),
plugin: z$1.string(),
source: z$1.enum(["local", "remote"]),
section: z$1.string(),
databaseSecret: z$1.string().optional(),
databaseUrl: z$1.string().optional(),
workspaceDir: z$1.string().optional(),
error: z$1.string().optional()
});
const DbDoctorOptionsSchema = z$1.object({ plugin: z$1.string() });
const DbDoctorResultSchema = z$1.object({
status: z$1.enum(["success", "error"]),
plugin: z$1.string(),
slug: z$1.string(),
journalTable: z$1.string(),
journalSchema: z$1.string(),
diagnosis: z$1.string(),
localMigrationCount: z$1.number(),
appliedHashCount: z$1.number(),
expectedTables: z$1.array(z$1.string()),
missingTables: z$1.array(z$1.string()),
workspaceDir: z$1.string().optional(),
dbSecret: z$1.string().optional(),
dbUrl: z$1.string().optional(),
error: z$1.string().optional()
});
const DbRepairOptionsSchema = z$1.object({
plugin: z$1.string(),
mode: z$1.enum(["history-reset", "recreate"]).default("history-reset"),
yes: z$1.boolean().optional()
});
const DbRepairResultSchema = z$1.object({
status: z$1.enum([
"repaired",
"refused",
"error"
]),
message: z$1.string(),
diagnosis: z$1.any(),
error: z$1.string().optional()
});
const ProcessRoleSchema = z$1.enum([
"standalone",
"workspace-parent",
"workspace-child"
]);
const PidEntrySchema = z$1.object({
pid: z$1.number(),
configDir: z$1.string(),
parentPid: z$1.number().optional(),
role: ProcessRoleSchema,
ports: z$1.object({
host: z$1.number().optional(),
api: z$1.number().optional(),
ui: z$1.number().optional(),
auth: z$1.number().optional()
}).default({}),
budget: z$1.object({
min: z$1.number(),
max: z$1.number()
}).optional(),
startedAt: z$1.number(),
description: z$1.string()
});
const PsResultSchema = z$1.object({
status: z$1.enum(["ok", "error"]),
entries: z$1.array(PidEntrySchema),
error: z$1.string().optional()
});
const LogsOptionsSchema = z$1.object({
service: z$1.string().optional(),
tail: z$1.number().int().positive().max(1e5).optional(),
follow: z$1.boolean().optional()
});
const LogsResultSchema = z$1.object({
logFile: z$1.string(),
lines: z$1.array(z$1.string())
});
const KillOptionsSchema = z$1.object({
configDir: z$1.string().optional(),
signal: z$1.enum(["SIGTERM", "SIGKILL"]).default("SIGTERM"),
all: z$1.boolean().default(false)
});
const KillResultSchema = z$1.object({
status: z$1.enum(["killed", "error"]),
killed: z$1.array(z$1.object({
pid: z$1.number(),
configDir: z$1.string()
})),
skipped: z$1.array(z$1.object({
pid: z$1.number(),
reason: z$1.string()
})),
error: z$1.string().optional()
});
const TypecheckOptionsSchema = z$1.object({ packages: z$1.string().default("all") });
const TypecheckWorkspaceResultSchema = z$1.object({
workspace: z$1.string(),
passed: z$1.boolean(),
output: z$1.string().optional(),
error: z$1.string().optional()
});
const TypecheckResultSchema = z$1.object({
status: z$1.enum(["success", "error"]),
checked: z$1.array(z$1.string()),
skipped: z$1.array(z$1.string()),
results: z$1.array(TypecheckWorkspaceResultSchema),
error: z$1.string().optional()
});
const InfraExportServiceSchema = z$1.object({
key: z$1.string(),
image: z$1.string(),
env: z$1.record(z$1.string(), z$1.string()).default({}),
ports: z$1.array(z$1.string()),
healthcheck: z$1.object({
test: z$1.array(z$1.string()),
interval: z$1.string(),
timeout: z$1.string(),
retries: z$1.number()
}).optional(),
volumes: z$1.array(z$1.string()).default([])
});
const InfraExportOptionsSchema = z$1.object({
target: z$1.enum(["ci", "local"]).default("ci"),
network: z$1.enum(["mainnet", "testnet"]).optional(),
configDir: z$1.string().optional()
});
const InfraExportResultSchema = z$1.object({
env: z$1.record(z$1.string(), z$1.string()),
services: z$1.array(InfraExportServiceSchema),
generatedAt: z$1.string(),
project: z$1.string(),
account: z$1.string(),
gateway: z$1.string()
});
const MfCheckOptionsSchema = z$1.object({ timeoutMs: z$1.number().default(15e3) });
const MfCheckRemoteResultSchema = z$1.object({
role: z$1.string(),
url: z$1.string(),
reachable: z$1.boolean(),
pluginVersion: z$1.string().nullable(),
ok: z$1.boolean(),
reason: z$1.string().optional()
});
const MfCheckResultSchema = z$1.object({
status: z$1.enum(["ok", "fail"]),
hostVersion: z$1.string().nullable(),
hostReachable: z$1.boolean(),
hostReason: z$1.string().optional(),
remotes: z$1.array(MfCheckRemoteResultSchema)
});
const commandOptionSchemas = {
dev: DevOptionsSchema,
start: StartOptionsSchema,
build: BuildOptionsSchema,
config: ConfigOptionsSchema,
registryUse: RegistryUseOptionsSchema,
pluginAdd: PluginAddOptionsSchema,
pluginRemove: PluginRemoveOptionsSchema,
pluginPublish: PluginPublishOptionsSchema,
publish: PublishOptionsSchema,
rollback: RollbackOptionsSchema,
deploy: DeployOptionsSchema,
keyPublish: KeyPublishOptionsSchema,
login: LoginOptionsSchema,
logout: LogoutOptionsSchema,
init: InitOptionsSchema,
sync: SyncOptionsSchema,
upgrade: UpgradeOptionsSchema,
typecheck: TypecheckOptionsSchema,
mfCheck: MfCheckOptionsSchema,
infraExport: InfraExportOptionsSchema,
dbStudio: DbStudioOptionsSchema,
dbDoctor: DbDoctorOptionsSchema,
dbRepair: DbRepairOptionsSchema,
logs: LogsOptionsSchema,
kill: KillOptionsSchema
};
const bosContract = oc.router({
dev: oc.route({
method: "POST",
path: "/dev"
}).input(DevOptionsSchema).output(DevResultSchema),
start: oc.route({
method: "POST",
path: "/start"
}).input(StartOptionsSchema).output(StartResultSchema),
build: oc.route({
method: "POST",
path: "/build"
}).input(BuildOptionsSchema).output(BuildResultSchema),
config: oc.route({
method: "GET",
path: "/config"
}).input(ConfigOptionsSchema).output(ConfigResultSchema),
registryUse: oc.route({
method: "POST",
path: "/registry/use"
}).input(RegistryUseOptionsSchema).output(RegistryUseResultSchema),
pluginAdd: oc.route({
method: "POST",
path: "/plugin/add"
}).input(PluginAddOptionsSchema).output(PluginAddResultSchema),
pluginRemove: oc.route({
method: "POST",
path: "/plugin/remove"
}).input(PluginRemoveOptionsSchema).output(PluginRemoveResultSchema),
pluginList: oc.route({
method: "GET",
path: "/plugin/list"
}).output(PluginListResultSchema),
pluginPublish: oc.route({
method: "POST",
path: "/plugin/publish"
}).input(PluginPublishOptionsSchema).output(PluginPublishResultSchema),
publish: oc.route({
method: "POST",
path: "/publish"
}).input(PublishOptionsSchema).output(PublishResultSchema),
rollback: oc.route({
method: "POST",
path: "/rollback"
}).input(RollbackOptionsSchema).output(RollbackResultSchema),
deploy: oc.route({
method: "POST",
path: "/deploy"
}).input(DeployOptionsSchema).output(DeployResultSchema),
keyPublish: oc.route({
method: "POST",
path: "/key/publish"
}).input(KeyPublishOptionsSchema).output(KeyPublishResultSchema),
login: oc.route({
method: "POST",
path: "/login"
}).input(LoginOptionsSchema).output(LoginResultSchema),
logout: oc.route({
method: "POST",
path: "/logout"
}).input(LogoutOptionsSchema).output(LogoutResultSchema),
init: oc.route({
method: "POST",
path: "/init"
}).input(InitOptionsSchema).output(InitResultSchema),
sync: oc.route({
method: "POST",
path: "/sync"
}).input(SyncOptionsSchema).output(SyncResultSchema),
upgrade: oc.route({
method: "POST",
path: "/upgrade"
}).input(UpgradeOptionsSchema).output(UpgradeResultSchema),
status: oc.route({
method: "GET",
path: "/status"
}).output(StatusResultSchema),
typesGen: oc.route({
method: "POST",
path: "/types/gen"
}).input(TypesGenOptionsSchema).output(TypesGenResultSchema),
dbStudio: oc.route({
method: "POST",
path: "/db/studio"
}).input(DbStudioOptionsSchema).output(DbStudioResultSchema),
dbDoctor: oc.route({
method: "POST",
path: "/db/doctor"
}).input(DbDoctorOptionsSchema).output(DbDoctorResultSchema),
dbRepair: oc.route({
method: "POST",
path: "/db/repair"
}).input(DbRepairOptionsSchema).output(DbRepairResultSchema),
ps: oc.route({
method: "GET",
path: "/ps"
}).output(PsResultSchema),
logs: oc.route({
method: "GET",
path: "/logs"
}).input(LogsOptionsSchema).output(LogsResultSchema),
kill: oc.route({
method: "POST",
path: "/kill"
}).input(KillOptionsSchema).output(KillResultSchema),
typecheck: oc.route({
method: "POST",
path: "/typecheck"
}).input(TypecheckOptionsSchema).output(TypecheckResultSchema),
mfCheck: oc.route({
method: "POST",
path: "/mf/check"
}).input(MfCheckOptionsSchema).output(MfCheckResultSchema),
infraExport: oc.route({
method: "POST",
path: "/infra/export"
}).input(InfraExportOptionsSchema).output(InfraExportResultSchema)
});
//#endregion
export { BuildOptionsSchema, BuildResultSchema, ConfigOptionsSchema, ConfigResultSchema, DbDoctorOptionsSchema, DbDoctorResultSchema, DbRepairOptionsSchema, DbRepairResultSchema, DbStudioOptionsSchema, DbStudioResultSchema, DeployManifestListEntrySchema, DeployOptionsSchema, DeployResultSchema, DeployedVersionStatusSchema, DevOptionsSchema, DevResultSchema, InfraExportOptionsSchema, InfraExportResultSchema, InfraExportServiceSchema, InitOptionsSchema, InitResultSchema, KeyPublishOptionsSchema, KeyPublishResultSchema, KillOptionsSchema, KillResultSchema, LoginOptionsSchema, LoginResultSchema, LogoutOptionsSchema, LogoutResultSchema, LogsOptionsSchema, LogsResultSchema, MfCheckOptionsSchema, MfCheckRemoteResultSchema, MfCheckResultSchema, OverrideSectionSchema, PhaseTimingSchema, PidEntrySchema, PluginAddOptionsSchema, PluginAddResultSchema, PluginListResultSchema, PluginPublishOptionsSchema, PluginPublishResultSchema, PluginRemoveOptionsSchema, PluginRemoveResultSchema, ProcessRoleSchema, PsResultSchema, PublishOptionsSchema, PublishResultSchema, RegistryUseOptionsSchema, RegistryUseResultSchema, RollbackHistoryEntrySchema, RollbackOptionsSchema, RollbackResultSchema, RollbackSlotCheckSchema, RuntimeOverrideTargetBaseSchema, RuntimeOverrideTargetSchema, StartOptionsSchema, StartResultSchema, StatusResultSchema, SyncOptionsSchema, SyncResultSchema, TypecheckOptionsSchema, TypecheckResultSchema, TypecheckWorkspaceResultSchema, TypesGenOptionsSchema, TypesGenResultSchema, UpgradeOptionsSchema, UpgradeResultSchema, WorkspaceDeployResultSchema, bosContract, commandOptionSchemas };
//# sourceMappingURL=contract.mjs.map