gen-jhipster
Version:
VHipster - Spring Boot + Angular/React/Vue in one handy generator
54 lines (49 loc) • 2.51 kB
TypeScript
/**
* Copyright 2013-2026 the original author or authors from the JHipster project.
*
* This file is part of the JHipster project, see https://www.jhipster.tech/
* for more information.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import type { Merge } from 'type-fest';
import type { TaskParamWithControl, TaskParamWithSource, TaskTypes, TaskTypes as BaseTaskTypes } from '../base/tasks.ts';
import type { Source as BaseSource } from '../base/types.d.ts';
import type { Application as BaseSimpleApplicationApplication } from '../base-simple-application/types.d.ts';
import type { Deployment as BaseWorkspacesDeployment } from './types.d.ts';
export type TaskParamWithApplications<
D extends BaseWorkspacesDeployment,
A extends BaseSimpleApplicationApplication = BaseSimpleApplicationApplication,
> = TaskParamWithControl & {
applications: A[];
deployment: D;
};
export type Tasks<
D extends BaseWorkspacesDeployment = BaseWorkspacesDeployment,
S extends BaseSource = BaseSource,
A extends BaseSimpleApplicationApplication = BaseSimpleApplicationApplication,
> = Merge<
BaseTaskTypes<S>,
{
PromptingWorkspacesTaskParam: TaskParamWithControl & TaskParamWithApplications<D, A>;
ConfiguringWorkspacesTaskParam: TaskParamWithControl & TaskParamWithApplications<D, A>;
LoadingWorkspacesTaskParam: TaskParamWithControl & TaskParamWithApplications<D, A>;
PreparingWorkspacesTaskParam: TaskParamWithControl & TaskParamWithApplications<D, A>;
DefaultTaskParam: TaskTypes['DefaultTaskParam'] & TaskParamWithApplications<D, A>;
WritingTaskParam: TaskParamWithControl & TaskParamWithApplications<D, A>;
PostWritingTaskParam: TaskParamWithSource<S> & TaskParamWithApplications<D, A>;
InstallTaskParam: TaskTypes['InstallTaskParam'] & TaskParamWithApplications<D, A>;
PostInstallTaskParam: TaskTypes['PostInstallTaskParam'] & TaskParamWithApplications<D, A>;
EndTaskParam: TaskTypes['EndTaskParam'] & TaskParamWithApplications<D, A>;
}
>;