UNPKG

@zowe/cics-for-zowe-explorer-api

Version:
55 lines (54 loc) 2.51 kB
/** * This program and the accompanying materials are made available under the terms of the * Eclipse Public License v2.0 which accompanies this distribution, and is available at * https://www.eclipse.org/legal/epl-v20.html * * SPDX-License-Identifier: EPL-2.0 * * Copyright Contributors to the Zowe Project. * */ import type { ResourceTypes } from "../resources"; import type { IResourceContext } from "./IResourceContext"; import type { IBundle, IJVMServer, ILibrary, ILocalFile, IPipeline, IProgram, IRemoteFile, ISharedTSQueue, ITCPIP, ITSQueue, ITask, ITransaction, IURIMap, IWebService, IManagedRegion, IRegion } from "./resources"; export interface ResourceTypeMap { [ResourceTypes.CICSProgram]: IProgram; [ResourceTypes.CICSLocalFile]: ILocalFile; [ResourceTypes.CICSRemoteFile]: IRemoteFile; [ResourceTypes.CICSLocalTransaction]: ITransaction; [ResourceTypes.CICSTCPIPService]: ITCPIP; [ResourceTypes.CICSLibrary]: ILibrary; [ResourceTypes.CICSURIMap]: IURIMap; [ResourceTypes.CICSTask]: ITask; [ResourceTypes.CICSPipeline]: IPipeline; [ResourceTypes.CICSWebService]: IWebService; [ResourceTypes.CICSJVMServer]: IJVMServer; [ResourceTypes.CICSBundle]: IBundle; [ResourceTypes.CICSTSQueue]: ITSQueue; [ResourceTypes.CICSSharedTSQueue]: ISharedTSQueue; [ResourceTypes.CICSManagedRegion]: IManagedRegion; [ResourceTypes.CICSRegion]: IRegion; } export interface ResourceActionOptions<TType extends keyof ResourceTypeMap> { id: string; name: string; resourceType: TType; action: string | ((resource: ResourceTypeMap[TType], ctx: IResourceContext) => void | Promise<void>); visibleWhen?: (resource: ResourceTypeMap[TType], ctx: IResourceContext) => boolean | Promise<boolean>; refreshResourceInspector?: boolean; } export declare class ResourceAction<TType extends keyof ResourceTypeMap> { private _id; private _name; private _resourceType; private _action; private _visibleWhen; private _refreshResourceInspector; constructor({ id, name, resourceType, action, visibleWhen, refreshResourceInspector }: ResourceActionOptions<TType>); get id(): string; get name(): string; get resourceType(): TType; get visibleWhen(): (resource: ResourceTypeMap[TType], ctx: IResourceContext) => boolean | Promise<boolean>; get action(): string | ((resource: ResourceTypeMap[TType], ctx: IResourceContext) => void | Promise<void>); get refreshResourceInspector(): boolean; }