/**
 * ProjectManager API for TypeScript
 *
 * (c) ProjectManager.com, Inc.
 *
 * For the full copyright and license information, please view the LICENSE
 * file that was distributed with this source code.
 *
 * @author     ProjectManager.com <support@projectmanager.com>
 * @copyright  ProjectManager.com, Inc.
 * @link       https://github.com/projectmgr/projectmanager-sdk-typescript
 */
import { ProjectManagerClient } from "../index.js";
import { AstroResult } from "../index.js";
import { HourlyRateDto } from "../index.js";
import { HourlyRateCreateDto } from "../index.js";
import { HourlyRateValueDto } from "../index.js";
import { HourlyRateValueUpdateDto } from "../index.js";
import { HourlyRateDetailsDto } from "../index.js";
export declare class HourlyRateClient {
    private readonly client;
    /**
     * Internal constructor for this client library
     */
    constructor(client: ProjectManagerClient);
    /**
     * Create a hourly rate
     *
     * @param body The rate data.
     */
    createHourlyRate(body: HourlyRateCreateDto): Promise<AstroResult<HourlyRateDto>>;
    /**
     * All hourly rates including Inactive rates
     *
     */
    getHourlyRates(): Promise<AstroResult<HourlyRateDto[]>>;
    /**
     * Update Hourly Rate Value
     *
     * @param rateValueId The rate valueId
     * @param body The rate value data
     */
    updateHourlyRateValue(rateValueId: string, body: HourlyRateValueUpdateDto): Promise<AstroResult<HourlyRateValueDto>>;
    /**
     * Get Hourly Rate
     *
     * @param rateId The unique identifier for the rate
     */
    getHourlyRate(rateId: string): Promise<AstroResult<HourlyRateDetailsDto>>;
    /**
     * Delete a hourly rate
     *
     * @param rateId The rate Id.
     */
    deleteHourlyRate(rateId: string): Promise<AstroResult<object>>;
}
