/**
 * CWMS Data API
 * CWMS REST API for Data Retrieval
 *
 * The version of the OpenAPI document: 2.3.2-2025.03.19
 *
 *
 * 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 type { LocationGroup } from '../models/index';
export interface DeleteLocationGroupWithGroupIdRequest {
    groupId: string;
    categoryId: string;
    office: string;
    cascadeDelete?: boolean;
}
export interface GetLocationGroupRequest {
    office?: string;
    includeAssigned?: boolean;
    locationCategoryLike?: string;
}
export interface GetLocationGroupWithGroupIdRequest {
    groupId: string;
    office: string;
    categoryId: string;
}
export interface PatchLocationGroupWithGroupIdRequest {
    groupId: string;
    office: string;
    locationGroup: LocationGroup;
    replaceAssignedLocs?: boolean;
}
export interface PostLocationGroupRequest {
    locationGroup: LocationGroup;
}
/**
 *
 */
export declare class LocationGroupsApi extends runtime.BaseAPI {
    /**
     * Deletes requested location group
     * Delete cwmsData location group with groupId
     */
    deleteLocationGroupWithGroupIdRaw(requestParameters: DeleteLocationGroupWithGroupIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>>;
    /**
     * Deletes requested location group
     * Delete cwmsData location group with groupId
     */
    deleteLocationGroupWithGroupId(requestParameters: DeleteLocationGroupWithGroupIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void>;
    /**
     * Returns CWMS Location Groups Data
     * Get cwmsData location group
     */
    getLocationGroupRaw(requestParameters: GetLocationGroupRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<LocationGroup>>>;
    /**
     * Returns CWMS Location Groups Data
     * Get cwmsData location group
     */
    getLocationGroup(requestParameters?: GetLocationGroupRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<LocationGroup>>;
    /**
     * Retrieves requested Location Group
     * Get cwmsData location group with groupId
     */
    getLocationGroupWithGroupIdRaw(requestParameters: GetLocationGroupWithGroupIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<LocationGroup>>;
    /**
     * Retrieves requested Location Group
     * Get cwmsData location group with groupId
     */
    getLocationGroupWithGroupId(requestParameters: GetLocationGroupWithGroupIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<LocationGroup>;
    /**
     * Update existing LocationGroup. Allows for renaming group, assigning new locations, and unassigning all locations from the group.
     * Patch cwmsData location group with groupId
     */
    patchLocationGroupWithGroupIdRaw(requestParameters: PatchLocationGroupWithGroupIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>>;
    /**
     * Update existing LocationGroup. Allows for renaming group, assigning new locations, and unassigning all locations from the group.
     * Patch cwmsData location group with groupId
     */
    patchLocationGroupWithGroupId(requestParameters: PatchLocationGroupWithGroupIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void>;
    /**
     * Create new LocationGroup
     * Post cwmsData location group
     */
    postLocationGroupRaw(requestParameters: PostLocationGroupRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>>;
    /**
     * Create new LocationGroup
     * Post cwmsData location group
     */
    postLocationGroup(requestParameters: PostLocationGroupRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void>;
}
