/**
 * 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 AbstractSession } from "@zowe/imperative";
import type { ICMCIApiResponse, ILocalFileParms } from "../doc";
/**
 * Close a local file in CICS
 * @param {AbstractSession} session - the session to connect to CMCI with
 * @param {ILocalFileParms} parms - parameters for closing the local file
 * @param {string} parms.name - the name of the local file to close (1-8 characters)
 * @param {string} parms.regionName - the CICS region name
 * @param {string} [parms.cicsPlex] - the CICSPlex name (optional)
 * @param {string} [parms.busy] - busy condition option: "WAIT", "NOWAIT", or "FORCE" (case-insensitive, optional, default: "WAIT")
 * @returns {Promise<ICMCIApiResponse>} promise that resolves to the response
 * @throws {ImperativeError} CICS local file name not defined, blank, or exceeds maximum length
 * @throws {ImperativeError} CICS region name not defined or blank
 * @throws {ImperativeError} Invalid BUSY parameter value
 * @throws {ImperativeError} CicsCmciRestClient request fails
 */
export declare function closeLocalFile(session: AbstractSession, parms: ILocalFileParms): Promise<ICMCIApiResponse>;
/**
 * Open a local file in CICS
 * @param {AbstractSession} session - the session to connect to CMCI with
 * @param {ILocalFileParms} parms - parameters for opening the local file
 * @param {string} parms.name - the name of the local file to open (1-8 characters)
 * @param {string} parms.regionName - the CICS region name
 * @param {string} [parms.cicsPlex] - the CICSPlex name (optional)
 * @returns {Promise<ICMCIApiResponse>} promise that resolves to the response
 * @throws {ImperativeError} CICS local file name not defined, blank, or exceeds maximum length
 * @throws {ImperativeError} CICS region name not defined or blank
 * @throws {ImperativeError} CicsCmciRestClient request fails
 */
export declare function openLocalFile(session: AbstractSession, parms: ILocalFileParms): Promise<ICMCIApiResponse>;
/**
 * Enable a local file in CICS (future implementation)
 * @param {AbstractSession} session - the session to connect to CMCI with
 * @param {ILocalFileParms} parms - parameters for enabling the local file
 * @returns {Promise<ICMCIApiResponse>} promise that resolves to the response
 * @throws {ImperativeError} Feature not yet implemented
 */
export declare function enableLocalFile(session: AbstractSession, parms: ILocalFileParms): Promise<ICMCIApiResponse>;
/**
 * Disable a local file in CICS (future implementation)
 * @param {AbstractSession} session - the session to connect to CMCI with
 * @param {ILocalFileParms} parms - parameters for disabling the local file
 * @returns {Promise<ICMCIApiResponse>} promise that resolves to the response
 * @throws {ImperativeError} Feature not yet implemented
 */
export declare function disableLocalFile(session: AbstractSession, parms: ILocalFileParms): Promise<ICMCIApiResponse>;
