/**
 * CWMS Data API
 * CWMS REST API for Data Retrieval
 *
 * The version of the OpenAPI document: 2.4.0-2026.3.16
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
import * as runtime from '../runtime';
import { DeleteMethod, Lock } from '../models';
export interface DeleteProjectsLocksWithNameRequest {
    name: string;
    office: string;
    method?: DeleteMethod;
}
export interface GetProjectsLocksRequest {
    office: string;
    projectId: string;
}
export interface GetProjectsLocksWithNameRequest {
    name: string;
    office: string;
    unit?: string;
}
export interface PatchProjectsLocksWithNameRequest {
    name: string;
    name2: string;
    office: string;
}
export interface PostProjectsLocksRequest {
    lock: Lock;
    failIfExists?: boolean;
}
/**
 *
 */
export declare class LocksApi extends runtime.BaseAPI {
    /**
     * Delete CWMS Lock
     * Delete projects locks with name
     */
    deleteProjectsLocksWithNameRaw(requestParameters: DeleteProjectsLocksWithNameRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<void>>;
    /**
     * Delete CWMS Lock
     * Delete projects locks with name
     */
    deleteProjectsLocksWithName(requestParameters: DeleteProjectsLocksWithNameRequest, initOverrides?: RequestInit): Promise<void>;
    /**
     * Returns matching CWMS Lock Data for a Reservoir Project.
     * Get projects locks
     */
    getProjectsLocksRaw(requestParameters: GetProjectsLocksRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<Array<Lock>>>;
    /**
     * Returns matching CWMS Lock Data for a Reservoir Project.
     * Get projects locks
     */
    getProjectsLocks(requestParameters: GetProjectsLocksRequest, initOverrides?: RequestInit): Promise<Array<Lock>>;
    /**
     * Returns CWMS Lock Data
     * Get projects locks with name
     */
    getProjectsLocksWithNameRaw(requestParameters: GetProjectsLocksWithNameRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<Array<Lock>>>;
    /**
     * Returns CWMS Lock Data
     * Get projects locks with name
     */
    getProjectsLocksWithName(requestParameters: GetProjectsLocksWithNameRequest, initOverrides?: RequestInit): Promise<Array<Lock>>;
    /**
     * Rename CWMS Lock
     * Patch projects locks with name
     */
    patchProjectsLocksWithNameRaw(requestParameters: PatchProjectsLocksWithNameRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<void>>;
    /**
     * Rename CWMS Lock
     * Patch projects locks with name
     */
    patchProjectsLocksWithName(requestParameters: PatchProjectsLocksWithNameRequest, initOverrides?: RequestInit): Promise<void>;
    /**
     * Create CWMS Lock
     * Post projects locks
     */
    postProjectsLocksRaw(requestParameters: PostProjectsLocksRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<void>>;
    /**
     * Create CWMS Lock
     * Post projects locks
     */
    postProjectsLocks(requestParameters: PostProjectsLocksRequest, initOverrides?: RequestInit): Promise<void>;
}
