/**
 * 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 { WaterSupplyAccounting } from '../models';
export interface GetProjectsWithOfficeWithProjectIdWaterUserWithWaterUserContractsWithContractNameAccountingRequest {
    office: string;
    projectId: string;
    waterUser: string;
    contractName: string;
    start: string;
    end: string;
    timezone?: string;
    unit?: string;
    startTimeInclusive?: boolean;
    endTimeInclusive?: boolean;
    ascending?: boolean;
    rowLimit?: number;
}
export interface PostProjectsWithOfficeWithProjectIdWaterUserWithWaterUserContractsWithContractNameAccountingRequest {
    office: string;
    projectId: string;
    waterUser: string;
    contractName: string;
    waterSupplyAccounting: WaterSupplyAccounting;
}
/**
 *
 */
export declare class PumpAccountingApi extends runtime.BaseAPI {
    /**
     * Get pump accounting entries associated with a water supply contract.
     * Get projects with office with projectId waterUser with waterUser contracts with contractName accounting
     */
    getProjectsWithOfficeWithProjectIdWaterUserWithWaterUserContractsWithContractNameAccountingRaw(requestParameters: GetProjectsWithOfficeWithProjectIdWaterUserWithWaterUserContractsWithContractNameAccountingRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<Array<WaterSupplyAccounting>>>;
    /**
     * Get pump accounting entries associated with a water supply contract.
     * Get projects with office with projectId waterUser with waterUser contracts with contractName accounting
     */
    getProjectsWithOfficeWithProjectIdWaterUserWithWaterUserContractsWithContractNameAccounting(requestParameters: GetProjectsWithOfficeWithProjectIdWaterUserWithWaterUserContractsWithContractNameAccountingRequest, initOverrides?: RequestInit): Promise<Array<WaterSupplyAccounting>>;
    /**
     * Create a new pump accounting entry associated with a water supply contract.
     * Post projects with office with projectId waterUser with waterUser contracts with contractName accounting
     */
    postProjectsWithOfficeWithProjectIdWaterUserWithWaterUserContractsWithContractNameAccountingRaw(requestParameters: PostProjectsWithOfficeWithProjectIdWaterUserWithWaterUserContractsWithContractNameAccountingRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<void>>;
    /**
     * Create a new pump accounting entry associated with a water supply contract.
     * Post projects with office with projectId waterUser with waterUser contracts with contractName accounting
     */
    postProjectsWithOfficeWithProjectIdWaterUserWithWaterUserContractsWithContractNameAccounting(requestParameters: PostProjectsWithOfficeWithProjectIdWaterUserWithWaterUserContractsWithContractNameAccountingRequest, initOverrides?: RequestInit): Promise<void>;
}
