Files
onebox/ts_interfaces/requests/appstore.ts
T

159 lines
4.1 KiB
TypeScript
Raw Normal View History

2026-05-25 03:10:18 +00:00
import type * as servezoneInterfaces from '@serve.zone/interfaces';
import * as plugins from '../plugins.ts';
import * as data from '../data/index.ts';
2026-05-25 03:10:18 +00:00
export type IAppStoreApp = servezoneInterfaces.appstore.IAppStoreApp;
export type IAppStoreVersionConfig = servezoneInterfaces.appstore.IAppStoreVersionConfig;
export type IAppStoreAppMeta = servezoneInterfaces.appstore.IAppStoreAppMeta;
export type IUpgradeableAppStoreService = servezoneInterfaces.appstore.IUpgradeableAppStoreService;
2026-05-25 03:10:18 +00:00
export interface IAppStoreInstallOptions extends servezoneInterfaces.appstore.IAppStoreInstallRequest {
autoDNS?: boolean;
}
export type TAppStoreUpgradeStatus = 'running' | 'success' | 'failed';
export type TAppStoreUpgradeStep =
| 'queued'
| 'validating'
| 'migration'
| 'applying'
| 'stopping'
| 'pulling-image'
| 'updating-record'
| 'removing-container'
| 'creating-container'
| 'starting'
| 'restoring-route'
| 'syncing-gateway'
| 'complete'
| 'failed';
export interface IAppStoreUpgradeOperation {
id: string;
serviceName: string;
appTemplateId: string;
fromVersion: string;
targetVersion: string;
status: TAppStoreUpgradeStatus;
step: TAppStoreUpgradeStep;
progressLines: string[];
warnings: string[];
error?: string;
startedAt: number;
updatedAt: number;
completedAt?: number;
service?: data.IService;
}
2026-05-25 03:10:18 +00:00
export interface IReq_GetAppStoreTemplates extends plugins.typedrequestInterfaces.implementsTR<
plugins.typedrequestInterfaces.ITypedRequest,
2026-05-25 03:10:18 +00:00
IReq_GetAppStoreTemplates
> {
2026-05-25 03:10:18 +00:00
method: 'getAppStoreTemplates';
request: {
identity: data.IIdentity;
};
response: {
2026-05-25 03:10:18 +00:00
apps: IAppStoreApp[];
};
}
2026-05-25 03:10:18 +00:00
export interface IReq_GetAppStoreConfig extends plugins.typedrequestInterfaces.implementsTR<
plugins.typedrequestInterfaces.ITypedRequest,
2026-05-25 03:10:18 +00:00
IReq_GetAppStoreConfig
> {
2026-05-25 03:10:18 +00:00
method: 'getAppStoreConfig';
request: {
identity: data.IIdentity;
appId: string;
version: string;
};
response: {
2026-05-25 03:10:18 +00:00
config: IAppStoreVersionConfig;
appMeta: IAppStoreAppMeta;
};
}
2026-05-25 03:10:18 +00:00
export interface IReq_InstallAppStoreApp extends plugins.typedrequestInterfaces.implementsTR<
plugins.typedrequestInterfaces.ITypedRequest,
2026-05-25 03:10:18 +00:00
IReq_InstallAppStoreApp
> {
2026-05-25 03:10:18 +00:00
method: 'installAppStoreApp';
request: {
identity: data.IIdentity;
2026-05-25 03:10:18 +00:00
install: IAppStoreInstallOptions;
};
response: {
service: data.IService;
};
}
2026-05-25 03:10:18 +00:00
export interface IReq_GetUpgradeableAppStoreServices extends plugins.typedrequestInterfaces.implementsTR<
plugins.typedrequestInterfaces.ITypedRequest,
2026-05-25 03:10:18 +00:00
IReq_GetUpgradeableAppStoreServices
> {
2026-05-25 03:10:18 +00:00
method: 'getUpgradeableAppStoreServices';
request: {
identity: data.IIdentity;
};
response: {
2026-05-25 03:10:18 +00:00
services: IUpgradeableAppStoreService[];
};
}
2026-05-25 03:10:18 +00:00
export interface IReq_UpgradeAppStoreService extends plugins.typedrequestInterfaces.implementsTR<
plugins.typedrequestInterfaces.ITypedRequest,
2026-05-25 03:10:18 +00:00
IReq_UpgradeAppStoreService
> {
2026-05-25 03:10:18 +00:00
method: 'upgradeAppStoreService';
request: {
identity: data.IIdentity;
serviceName: string;
targetVersion: string;
};
response: {
service: data.IService;
warnings: string[];
};
}
export interface IReq_StartAppStoreServiceUpgrade extends plugins.typedrequestInterfaces.implementsTR<
plugins.typedrequestInterfaces.ITypedRequest,
IReq_StartAppStoreServiceUpgrade
> {
method: 'startAppStoreServiceUpgrade';
request: {
identity: data.IIdentity;
serviceName: string;
targetVersion: string;
};
response: {
operation: IAppStoreUpgradeOperation;
};
}
export interface IReq_GetAppStoreUpgradeOperations extends plugins.typedrequestInterfaces.implementsTR<
plugins.typedrequestInterfaces.ITypedRequest,
IReq_GetAppStoreUpgradeOperations
> {
method: 'getAppStoreUpgradeOperations';
request: {
identity: data.IIdentity;
};
response: {
operations: IAppStoreUpgradeOperation[];
};
}
export interface IReq_PushAppStoreUpgradeProgress extends plugins.typedrequestInterfaces.implementsTR<
plugins.typedrequestInterfaces.ITypedRequest,
IReq_PushAppStoreUpgradeProgress
> {
method: 'pushAppStoreUpgradeProgress';
request: {
operation: IAppStoreUpgradeOperation;
};
response: {};
}