@lcap/nasl
Version:
NetEase Application Specific Language
642 lines • 17.3 kB
TypeScript
import type { Frontend } from '../../concepts';
export interface ServerValidationData {
rules: object[];
failureRules: object[];
uuid: string;
}
export type InputServerValidationData = {
[key in string]: ServerValidationData[];
};
export interface Asset {
name: string;
type: string;
subType: string;
fileUrl: string;
contentType: string;
fileKey: string;
}
/** @internal */
export interface InternalReleaseData {
env: string;
envTag: string;
debug: boolean;
branchId: string;
replicas: number;
realRelease: boolean;
ignoreFiles?: boolean;
isIncremental: boolean;
isExport: boolean;
isPreviewFe?: boolean;
previewVersion?: string;
version: string;
fullVersion: string;
isBackendValidation?: boolean;
appInfo: {
tenant: string;
nuimsDomain: string;
envNuimsDomain: string;
STATIC_URL: string;
USER_STATIC_URL: string;
extendedConfig: string;
lowcodeDomain: string;
envLcpDomain: string;
tenantType: string;
tenantLabel: string;
};
staticUrl?: string;
frontends: Array<Frontend>;
validations: {
validationRules: InputServerValidationData;
downloadFileTasks: InputServerValidationData;
};
logPublishFunc: Function;
appSpecification?: number;
assets: Array<Asset>;
assetsMap: Map<string, Asset>;
extensionConfigMap?: Record<string, any>;
}
/** @internal */
export interface HttpData<D = any> {
code: number;
msg: string;
result: D;
success: boolean;
}
/**
* 版本详情
* @internal
*/
export interface VersionDetail {
id: number;
platformVersionId: any;
version: string;
mainVersion: number;
miniVersion: number;
subVersion: number;
updateMode: string;
changeDate: number;
defaultVersion: boolean;
createdBy: string;
createdTime: string;
updatedBy: string;
updatedTime: string;
changeLog: string;
dependencies: {
BackendGenerator: {
id: number;
version: string;
mainVersion: number;
miniVersion: number;
subVersion: number;
type: string;
changeDate: number;
createdBy: string;
createdTime: string;
updatedBy: string;
updatedTime: string;
changeLog: any;
};
FrontendComponentLibraryPC: {
id: number;
version: string;
mainVersion: number;
miniVersion: number;
subVersion: number;
type: string;
changeDate: number;
createdBy: string;
createdTime: string;
updatedBy: string;
updatedTime: string;
changeLog: any;
};
FrontendArchH5: {
id: number;
version: string;
mainVersion: number;
miniVersion: number;
subVersion: number;
type: string;
changeDate: number;
createdBy: string;
createdTime: string;
updatedBy: string;
updatedTime: string;
changeLog: any;
};
FrontendArchPC: {
id: number;
version: string;
mainVersion: number;
miniVersion: number;
subVersion: number;
type: string;
changeDate: number;
createdBy: string;
createdTime: string;
updatedBy: string;
updatedTime: string;
changeLog: any;
};
IdeBundle: {
id: number;
version: string;
mainVersion: number;
miniVersion: number;
subVersion: number;
type: string;
changeDate: number;
createdBy: string;
createdTime: string;
updatedBy: string;
updatedTime: string;
changeLog: any;
};
FrontendComponentLibraryH5: {
id: number;
version: string;
mainVersion: number;
miniVersion: number;
subVersion: number;
type: string;
changeDate: number;
createdBy: string;
createdTime: string;
updatedBy: string;
updatedTime: string;
changeLog: any;
};
FrontendGenerator: {
id: number;
version: string;
mainVersion: number;
miniVersion: number;
subVersion: number;
type: string;
changeDate: number;
createdBy: string;
createdTime: string;
updatedBy: string;
updatedTime: string;
changeLog: any;
};
};
assetDependencies: Array<{
id: number;
symbol: string;
name: string;
version: string;
category: string;
}>;
}
/** @internal */
interface DependencyData {
name: string;
version: string;
scope: string;
}
/** @internal */
export interface MaterialData {
framework: {
version: string;
core: string;
pc: string;
h5: string;
};
ui: {
pc: Omit<DependencyData, 'scope'>;
h5: Omit<DependencyData, 'scope'>;
};
}
/** @internal */
export interface PackageInfoData {
template: DependencyData;
ui: DependencyData;
scope: string;
}
/**
* 环境数据
* @internal
*/
export interface EnvData {
nuimsDomain: string;
kubeInsightAppCluster: string;
officialTenantId: string;
enableOpenAiCompletionForLogic: boolean;
pwdSecurity: {
pwdCategory: string;
};
tenantAndAppMaxLength: number;
platformCreateDatabaseOpen: boolean;
documentCenter: {
isLocalDeployment: boolean;
deliveryMode: string;
url: string;
};
lcpRedirectSwitch: boolean;
kubeInsightAddress: string;
gatewayType: string;
STATIC_URL: string;
traceSwitch: boolean;
resourceAssignStrategy: string;
creatorIsManager: boolean;
websqlSwitch: string;
enableCodeWaveMarket: boolean;
platformEnv: string;
IDE_STATIC_URL: string;
isPrivatized: string;
clientToken: string;
biConfig: boolean;
platformExtraAbilityDetail: {
configFrontSupport: {
open: boolean;
expiringDays: number;
smsNotificationOpen: boolean;
popupNotificationOpen: boolean;
};
exportSourceSupport: {
open: boolean;
expiringDays: number;
smsNotificationOpen: boolean;
popupNotificationOpen: boolean;
};
appPublishOnlineSupport: {
open: boolean;
expiringDays: number;
smsNotificationOpen: boolean;
popupNotificationOpen: boolean;
};
};
USER_STATIC_URL: string;
kubeInsightServiceName: string;
consoleDomain: string;
enableOpenAiForLogic: boolean;
lowcodeDomain: string;
name: string;
tenantIntegrationSwitch: boolean;
envNuimsDomain: {
dev: string;
online: string;
};
envLcpDomain: {
dev: {
lcpDomain: string;
};
online: {
lcpDomain: string;
};
};
kubeClientApplicationKey: string;
}
/**
* 租户信息
* @internal
*/
export interface TenantData {
companyIdentifier: string;
lastCompletelyRecycleTime: string;
companyName: any;
trialStatus: number;
status: any;
trialTime: number;
multiEnvEnable: boolean;
tenantType: number;
tenantLevel: number;
tenantLevelDetail: {
onlineReplicasLimit: string;
aiJavaLogicCompletionDisplay: string;
releaseDevAppCountLimit: string;
customPackageSupport: string;
aiNl2sqlSupport: string;
aiNextComponentSupport: string;
productAppSpecification: string;
configDatabaseSupport: string;
aiJavaLogicDisplay: string;
appPublishOnlineSupport: string;
rdsMode: string;
assetsLibraryExportSupport: string;
assignDeveloperSupport: string;
cpuLimit: string;
mavenConfigEditSupport: string;
aiCodeAnalyzeSupport: string;
aiNl2LogicSupport: string;
onboardingSupport: string;
storageLimit: string;
releaseAppCountLimit: string;
configFrontSupport: string;
configFileStorageSupport: string;
aiNl2sqlDisplay: string;
teamDeveloperSupport: string;
accountLimit: string;
aiD2CSupport: string;
exportSourceSupport: string;
customDomainSupport: string;
reportFormsEditSupport: string;
aiNl2LogicDisplay: string;
memoryLimit: string;
aiJavaLogicCompletionSupport: string;
assetsArchetypeSupport: string;
appCreateLimit: string;
configImageRepoSupport: string;
configSourceSupport: string;
aiJavaLogicSupport: string;
assetsTemplateExportSupport: string;
};
tenantExtraAbilityDetail: {
aiNextComponentSupport: {
id: number;
name: string;
tenantName: string;
startTime: number;
expireTime: number;
smsSendTime: any;
createdTime: any;
updatedTime: any;
};
aiNl2sqlDisplay: {
id: number;
name: string;
tenantName: string;
startTime: number;
expireTime: number;
smsSendTime: any;
createdTime: any;
updatedTime: any;
};
aiD2CSupport: {
id: number;
name: string;
tenantName: string;
startTime: number;
expireTime: number;
smsSendTime: any;
createdTime: any;
updatedTime: any;
};
aiJavaLogicCompletionDisplay: {
id: number;
name: string;
tenantName: string;
startTime: number;
expireTime: number;
smsSendTime: any;
createdTime: any;
updatedTime: any;
};
aiJavaLogicDisplay: {
id: number;
name: string;
tenantName: string;
startTime: number;
expireTime: number;
smsSendTime: any;
createdTime: any;
updatedTime: any;
};
aiCodeAnalyzeSupport: {
id: number;
name: string;
tenantName: string;
startTime: number;
expireTime: number;
smsSendTime: any;
createdTime: any;
updatedTime: any;
};
aiNl2LogicDisplay: {
id: number;
name: string;
tenantName: string;
startTime: number;
expireTime: number;
smsSendTime: any;
createdTime: any;
updatedTime: any;
};
aiNl2LogicSupport: {
id: number;
name: string;
tenantName: string;
startTime: number;
expireTime: number;
smsSendTime: any;
createdTime: any;
updatedTime: any;
};
aiJavaLogicCompletionSupport: {
id: number;
name: string;
tenantName: string;
startTime: number;
expireTime: number;
smsSendTime: any;
createdTime: any;
updatedTime: any;
};
appPublishOnlineSupport: {
id: number;
name: string;
tenantName: string;
startTime: number;
expireTime: number;
smsSendTime: any;
createdTime: any;
updatedTime: any;
};
aiNl2sqlSupport: {
id: number;
name: string;
tenantName: string;
startTime: number;
expireTime: number;
smsSendTime: any;
createdTime: any;
updatedTime: any;
};
aiJavaLogicSupport: {
id: number;
name: string;
tenantName: string;
startTime: number;
expireTime: number;
smsSendTime: any;
createdTime: any;
updatedTime: any;
};
};
expireTime: number;
expireTimeStr: string;
isOfficial: boolean;
configs: {
htmlTitle: string;
favicon: string;
icon: string;
onDutyAccount: string;
tel: string;
platformName: string;
onDutyEmail: string;
navigationBackgroundColour: string;
onDutyPhone: string;
fontColour: string;
};
}
/**
* 应用相关配置信息
* @internal
*/
export interface AppDetailData {
id: any;
appId: string;
userGroupId: string;
name: string;
title: string;
ideVersion: string;
scope: string;
createdTime: string;
createdBy: string;
updatedTime: string;
updatedBy: string;
officialType: string;
templateId: any;
envs: string;
deploymentId: number;
hasAuth: boolean;
hasUserCenter: boolean;
extendedConfig: any;
baseVersion: any;
status: string;
versionChangedTime: any;
versionChangedNote: any;
isCopy: boolean;
mainAppId: string;
mergedTime: any;
pushedTime: any;
mergeSnapshootUrl: any;
lastExportTime: any;
icon: string;
desc: string;
packageName: string;
tenantId: string;
projectId: string;
services: Array<{
id?: string;
lcpAppId: string;
name: string;
branchName: any;
description: string;
pages: any;
templateId?: string;
repositoryType: string;
repoRemoteAddr: string;
credentialId: number;
credentialType: string;
dockerRegistryId: any;
envIds: any;
status: string;
createdTime: string;
createdBy: string;
updatedTime: string;
updatedBy: string;
devUserAccount?: string;
devUserAccountPwd?: string;
officialType: string;
cicdInfo: Array<{
id: string;
appId: string;
envId: string;
branch: string;
dockerRegistryId: number;
cicdPipelineId: number;
createdTime: string;
updatedTime: string;
}>;
needRetry: boolean;
envList?: Array<{
env: string;
replicas: number;
url: string;
appDatabaseInfo: {
id: any;
appId: any;
envId?: string;
type?: string;
databaseType?: string;
dataBaseHost?: string;
dataBasePort?: string;
dataBaseUsername?: string;
dataBasePassword?: string;
dataBaseName?: string;
dataBaseMode?: string;
createdTime: any;
updatedTime: any;
dataBaseDriverType: any;
dataBaseSchemaName: any;
configId: any;
configName: any;
rdsInstanceName?: string;
status: any;
backupUrl: any;
customConfigs?: string;
whiteIps: any;
};
appCicdInfo: {
id: string;
appId: string;
envId: string;
branch: string;
dockerRegistryId: number;
cicdPipelineId: number;
createdTime: string;
updatedTime: string;
};
appFrontends: Array<{
name: string;
basePath: string;
scope: string;
url: string;
title: string;
}>;
contextPath: string;
}>;
defaultDSEnvList: any;
appId?: string;
packageName?: string;
serverPort?: number;
dbConfigName: any;
databaseType: any;
dataBaseName: any;
dataBaseMode: any;
prodDatabaseType: any;
sourceCodeRepoRemoteAddr: any;
repoGroup?: string;
mavenSettingId?: number;
dataBaseHost: any;
dataBasePort: any;
dataBaseUsername: any;
dataBasePassword: any;
userGroupId?: string;
type?: string;
devDomain: any;
onlineDomain: any;
ideVersion: any;
}>;
deploying: boolean;
deploymentEnv: string;
dnsAddr: string;
devDnsAddr: string;
copyApps: any;
appPermissionList: any;
branches: any;
canCreateCopyApp: any;
mainAppName: any;
expectPodsNum: number;
archetypeAssetsSymbol: any;
archetypeAssetsVersion: any;
}
export interface ReleaseHook {
info(name: string, msg: string): void;
error(name: string, err: string): void;
setAppInfo(info: any): void;
}
export {};
//# sourceMappingURL=internal.d.ts.map