407 lines
15 KiB
TypeScript
407 lines
15 KiB
TypeScript
/* eslint-disable prettier/prettier */
|
|
/// <reference path="../manifest.d.ts" />
|
|
|
|
import type { ExtractBody, ExtractErrorResponse, ExtractQuery, ExtractQueryForGet, ExtractResponse } from '@tuyau/core/types'
|
|
import type { InferInput, SimpleError } from '@vinejs/vine/types'
|
|
|
|
export type ParamValue = string | number | bigint | boolean
|
|
|
|
export interface Registry {
|
|
'auth.login': {
|
|
methods: ["POST"]
|
|
pattern: '/api/auth/login'
|
|
types: {
|
|
body: {}
|
|
paramsTuple: []
|
|
params: {}
|
|
query: {}
|
|
response: ExtractResponse<Awaited<ReturnType<import('#controllers/auth_controller').default['login']>>>
|
|
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/auth_controller').default['login']>>>
|
|
}
|
|
}
|
|
'auth.logout': {
|
|
methods: ["POST"]
|
|
pattern: '/api/auth/logout'
|
|
types: {
|
|
body: {}
|
|
paramsTuple: []
|
|
params: {}
|
|
query: {}
|
|
response: ExtractResponse<Awaited<ReturnType<import('#controllers/auth_controller').default['logout']>>>
|
|
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/auth_controller').default['logout']>>>
|
|
}
|
|
}
|
|
'auth.me': {
|
|
methods: ["GET","HEAD"]
|
|
pattern: '/api/auth/me'
|
|
types: {
|
|
body: {}
|
|
paramsTuple: []
|
|
params: {}
|
|
query: {}
|
|
response: ExtractResponse<Awaited<ReturnType<import('#controllers/auth_controller').default['me']>>>
|
|
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/auth_controller').default['me']>>>
|
|
}
|
|
}
|
|
'overview.index': {
|
|
methods: ["GET","HEAD"]
|
|
pattern: '/api/overview'
|
|
types: {
|
|
body: {}
|
|
paramsTuple: []
|
|
params: {}
|
|
query: {}
|
|
response: ExtractResponse<Awaited<ReturnType<import('#controllers/overview_controller').default['index']>>>
|
|
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/overview_controller').default['index']>>>
|
|
}
|
|
}
|
|
'metrics.live': {
|
|
methods: ["GET","HEAD"]
|
|
pattern: '/api/metrics/live'
|
|
types: {
|
|
body: {}
|
|
paramsTuple: []
|
|
params: {}
|
|
query: {}
|
|
response: ExtractResponse<Awaited<ReturnType<import('#controllers/metrics_controller').default['live']>>>
|
|
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/metrics_controller').default['live']>>>
|
|
}
|
|
}
|
|
'metrics.history': {
|
|
methods: ["GET","HEAD"]
|
|
pattern: '/api/metrics/history'
|
|
types: {
|
|
body: {}
|
|
paramsTuple: []
|
|
params: {}
|
|
query: {}
|
|
response: ExtractResponse<Awaited<ReturnType<import('#controllers/metrics_controller').default['history']>>>
|
|
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/metrics_controller').default['history']>>>
|
|
}
|
|
}
|
|
'containers.index': {
|
|
methods: ["GET","HEAD"]
|
|
pattern: '/api/containers'
|
|
types: {
|
|
body: {}
|
|
paramsTuple: []
|
|
params: {}
|
|
query: {}
|
|
response: ExtractResponse<Awaited<ReturnType<import('#controllers/containers_controller').default['index']>>>
|
|
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/containers_controller').default['index']>>>
|
|
}
|
|
}
|
|
'containers.show': {
|
|
methods: ["GET","HEAD"]
|
|
pattern: '/api/containers/:id'
|
|
types: {
|
|
body: {}
|
|
paramsTuple: [ParamValue]
|
|
params: { id: ParamValue }
|
|
query: {}
|
|
response: ExtractResponse<Awaited<ReturnType<import('#controllers/containers_controller').default['show']>>>
|
|
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/containers_controller').default['show']>>>
|
|
}
|
|
}
|
|
'containers.logs': {
|
|
methods: ["GET","HEAD"]
|
|
pattern: '/api/containers/:id/logs'
|
|
types: {
|
|
body: {}
|
|
paramsTuple: [ParamValue]
|
|
params: { id: ParamValue }
|
|
query: {}
|
|
response: ExtractResponse<Awaited<ReturnType<import('#controllers/containers_controller').default['logs']>>>
|
|
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/containers_controller').default['logs']>>>
|
|
}
|
|
}
|
|
'containers.action': {
|
|
methods: ["POST"]
|
|
pattern: '/api/containers/:id/:action'
|
|
types: {
|
|
body: {}
|
|
paramsTuple: [ParamValue, ParamValue]
|
|
params: { id: ParamValue; action: ParamValue }
|
|
query: {}
|
|
response: ExtractResponse<Awaited<ReturnType<import('#controllers/containers_controller').default['action']>>>
|
|
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/containers_controller').default['action']>>>
|
|
}
|
|
}
|
|
'sites.index': {
|
|
methods: ["GET","HEAD"]
|
|
pattern: '/api/sites'
|
|
types: {
|
|
body: {}
|
|
paramsTuple: []
|
|
params: {}
|
|
query: {}
|
|
response: ExtractResponse<Awaited<ReturnType<import('#controllers/sites_controller').default['index']>>>
|
|
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/sites_controller').default['index']>>>
|
|
}
|
|
}
|
|
'sites.check': {
|
|
methods: ["POST"]
|
|
pattern: '/api/sites/check'
|
|
types: {
|
|
body: {}
|
|
paramsTuple: []
|
|
params: {}
|
|
query: {}
|
|
response: ExtractResponse<Awaited<ReturnType<import('#controllers/sites_controller').default['check']>>>
|
|
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/sites_controller').default['check']>>>
|
|
}
|
|
}
|
|
'sites.show': {
|
|
methods: ["GET","HEAD"]
|
|
pattern: '/api/sites/:id'
|
|
types: {
|
|
body: {}
|
|
paramsTuple: [ParamValue]
|
|
params: { id: ParamValue }
|
|
query: {}
|
|
response: ExtractResponse<Awaited<ReturnType<import('#controllers/sites_controller').default['show']>>>
|
|
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/sites_controller').default['show']>>>
|
|
}
|
|
}
|
|
'projects.index': {
|
|
methods: ["GET","HEAD"]
|
|
pattern: '/api/projects'
|
|
types: {
|
|
body: {}
|
|
paramsTuple: []
|
|
params: {}
|
|
query: {}
|
|
response: ExtractResponse<Awaited<ReturnType<import('#controllers/projects_controller').default['index']>>>
|
|
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/projects_controller').default['index']>>>
|
|
}
|
|
}
|
|
'projects.store': {
|
|
methods: ["POST"]
|
|
pattern: '/api/projects'
|
|
types: {
|
|
body: ExtractBody<InferInput<(typeof import('#validators/project').createProjectValidator)>>
|
|
paramsTuple: []
|
|
params: {}
|
|
query: ExtractQuery<InferInput<(typeof import('#validators/project').createProjectValidator)>>
|
|
response: ExtractResponse<Awaited<ReturnType<import('#controllers/projects_controller').default['store']>>>
|
|
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/projects_controller').default['store']>>> | { status: 422; response: { errors: SimpleError[] } }
|
|
}
|
|
}
|
|
'projects.options': {
|
|
methods: ["GET","HEAD"]
|
|
pattern: '/api/projects/options'
|
|
types: {
|
|
body: {}
|
|
paramsTuple: []
|
|
params: {}
|
|
query: {}
|
|
response: ExtractResponse<Awaited<ReturnType<import('#controllers/projects_controller').default['options']>>>
|
|
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/projects_controller').default['options']>>>
|
|
}
|
|
}
|
|
'projects.show': {
|
|
methods: ["GET","HEAD"]
|
|
pattern: '/api/projects/:category/:name'
|
|
types: {
|
|
body: {}
|
|
paramsTuple: [ParamValue, ParamValue]
|
|
params: { category: ParamValue; name: ParamValue }
|
|
query: {}
|
|
response: ExtractResponse<Awaited<ReturnType<import('#controllers/projects_controller').default['show']>>>
|
|
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/projects_controller').default['show']>>>
|
|
}
|
|
}
|
|
'projects.fetch': {
|
|
methods: ["POST"]
|
|
pattern: '/api/projects/:category/:name/fetch'
|
|
types: {
|
|
body: {}
|
|
paramsTuple: [ParamValue, ParamValue]
|
|
params: { category: ParamValue; name: ParamValue }
|
|
query: {}
|
|
response: ExtractResponse<Awaited<ReturnType<import('#controllers/projects_controller').default['fetch']>>>
|
|
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/projects_controller').default['fetch']>>>
|
|
}
|
|
}
|
|
'projects.action': {
|
|
methods: ["POST"]
|
|
pattern: '/api/projects/:category/:name/actions/:action'
|
|
types: {
|
|
body: ExtractBody<InferInput<(typeof import('#validators/project').projectActionValidator)>>
|
|
paramsTuple: [ParamValue, ParamValue, ParamValue]
|
|
params: { category: ParamValue; name: ParamValue; action: ParamValue }
|
|
query: ExtractQuery<InferInput<(typeof import('#validators/project').projectActionValidator)>>
|
|
response: ExtractResponse<Awaited<ReturnType<import('#controllers/projects_controller').default['action']>>>
|
|
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/projects_controller').default['action']>>> | { status: 422; response: { errors: SimpleError[] } }
|
|
}
|
|
}
|
|
'caddy.show': {
|
|
methods: ["GET","HEAD"]
|
|
pattern: '/api/caddy'
|
|
types: {
|
|
body: {}
|
|
paramsTuple: []
|
|
params: {}
|
|
query: {}
|
|
response: ExtractResponse<Awaited<ReturnType<import('#controllers/caddy_controller').default['show']>>>
|
|
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/caddy_controller').default['show']>>>
|
|
}
|
|
}
|
|
'caddy.update': {
|
|
methods: ["PUT"]
|
|
pattern: '/api/caddy'
|
|
types: {
|
|
body: ExtractBody<InferInput<(typeof import('#validators/caddy').updateCaddyfileValidator)>>
|
|
paramsTuple: []
|
|
params: {}
|
|
query: ExtractQuery<InferInput<(typeof import('#validators/caddy').updateCaddyfileValidator)>>
|
|
response: ExtractResponse<Awaited<ReturnType<import('#controllers/caddy_controller').default['update']>>>
|
|
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/caddy_controller').default['update']>>> | { status: 422; response: { errors: SimpleError[] } }
|
|
}
|
|
}
|
|
'caddy.reload': {
|
|
methods: ["POST"]
|
|
pattern: '/api/caddy/reload'
|
|
types: {
|
|
body: {}
|
|
paramsTuple: []
|
|
params: {}
|
|
query: {}
|
|
response: ExtractResponse<Awaited<ReturnType<import('#controllers/caddy_controller').default['reload']>>>
|
|
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/caddy_controller').default['reload']>>>
|
|
}
|
|
}
|
|
'caddy.versions': {
|
|
methods: ["GET","HEAD"]
|
|
pattern: '/api/caddy/versions'
|
|
types: {
|
|
body: {}
|
|
paramsTuple: []
|
|
params: {}
|
|
query: {}
|
|
response: ExtractResponse<Awaited<ReturnType<import('#controllers/caddy_controller').default['versions']>>>
|
|
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/caddy_controller').default['versions']>>>
|
|
}
|
|
}
|
|
'caddy.version': {
|
|
methods: ["GET","HEAD"]
|
|
pattern: '/api/caddy/versions/:id'
|
|
types: {
|
|
body: {}
|
|
paramsTuple: [ParamValue]
|
|
params: { id: ParamValue }
|
|
query: {}
|
|
response: ExtractResponse<Awaited<ReturnType<import('#controllers/caddy_controller').default['version']>>>
|
|
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/caddy_controller').default['version']>>>
|
|
}
|
|
}
|
|
'caddy.restore': {
|
|
methods: ["POST"]
|
|
pattern: '/api/caddy/versions/:id/restore'
|
|
types: {
|
|
body: {}
|
|
paramsTuple: [ParamValue]
|
|
params: { id: ParamValue }
|
|
query: {}
|
|
response: ExtractResponse<Awaited<ReturnType<import('#controllers/caddy_controller').default['restore']>>>
|
|
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/caddy_controller').default['restore']>>>
|
|
}
|
|
}
|
|
'backups.index': {
|
|
methods: ["GET","HEAD"]
|
|
pattern: '/api/backups'
|
|
types: {
|
|
body: {}
|
|
paramsTuple: []
|
|
params: {}
|
|
query: {}
|
|
response: ExtractResponse<Awaited<ReturnType<import('#controllers/backups_controller').default['index']>>>
|
|
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/backups_controller').default['index']>>>
|
|
}
|
|
}
|
|
'backups.store': {
|
|
methods: ["POST"]
|
|
pattern: '/api/backups'
|
|
types: {
|
|
body: {}
|
|
paramsTuple: []
|
|
params: {}
|
|
query: {}
|
|
response: ExtractResponse<Awaited<ReturnType<import('#controllers/backups_controller').default['store']>>>
|
|
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/backups_controller').default['store']>>>
|
|
}
|
|
}
|
|
'backups.download': {
|
|
methods: ["GET","HEAD"]
|
|
pattern: '/api/backups/:name'
|
|
types: {
|
|
body: {}
|
|
paramsTuple: [ParamValue]
|
|
params: { name: ParamValue }
|
|
query: {}
|
|
response: ExtractResponse<Awaited<ReturnType<import('#controllers/backups_controller').default['download']>>>
|
|
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/backups_controller').default['download']>>>
|
|
}
|
|
}
|
|
'backups.destroy': {
|
|
methods: ["DELETE"]
|
|
pattern: '/api/backups/:name'
|
|
types: {
|
|
body: {}
|
|
paramsTuple: [ParamValue]
|
|
params: { name: ParamValue }
|
|
query: {}
|
|
response: ExtractResponse<Awaited<ReturnType<import('#controllers/backups_controller').default['destroy']>>>
|
|
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/backups_controller').default['destroy']>>>
|
|
}
|
|
}
|
|
'jobs.stream': {
|
|
methods: ["GET","HEAD"]
|
|
pattern: '/api/jobs/:id/stream'
|
|
types: {
|
|
body: {}
|
|
paramsTuple: [ParamValue]
|
|
params: { id: ParamValue }
|
|
query: {}
|
|
response: ExtractResponse<Awaited<ReturnType<import('#controllers/jobs_controller').default['stream']>>>
|
|
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/jobs_controller').default['stream']>>>
|
|
}
|
|
}
|
|
'audit.index': {
|
|
methods: ["GET","HEAD"]
|
|
pattern: '/api/audit'
|
|
types: {
|
|
body: {}
|
|
paramsTuple: []
|
|
params: {}
|
|
query: {}
|
|
response: ExtractResponse<Awaited<ReturnType<import('#controllers/audit_controller').default['index']>>>
|
|
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/audit_controller').default['index']>>>
|
|
}
|
|
}
|
|
'audit.show': {
|
|
methods: ["GET","HEAD"]
|
|
pattern: '/api/audit/:id'
|
|
types: {
|
|
body: {}
|
|
paramsTuple: [ParamValue]
|
|
params: { id: ParamValue }
|
|
query: {}
|
|
response: ExtractResponse<Awaited<ReturnType<import('#controllers/audit_controller').default['show']>>>
|
|
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/audit_controller').default['show']>>>
|
|
}
|
|
}
|
|
'spa.index': {
|
|
methods: ["GET","HEAD"]
|
|
pattern: '/*'
|
|
types: {
|
|
body: {}
|
|
paramsTuple: [ParamValue]
|
|
params: { '*': ParamValue[] }
|
|
query: {}
|
|
response: ExtractResponse<Awaited<ReturnType<import('#controllers/spa_controller').default['index']>>>
|
|
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/spa_controller').default['index']>>>
|
|
}
|
|
}
|
|
}
|