import * as z from "zod/v3";
import { ClosedEnum } from "../../types/enums.js";
import { Result as SafeParseResult } from "../../types/fp.js";
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
import { Currency } from "./currency.js";
import { PaymentFrequency } from "./paymentfrequency.js";
import { PaymentUnit } from "./paymentunit.js";
/**
 * The FLSA status for this compensation.
 */
export declare const FlsaStatus: {
    readonly Exempt: "exempt";
    readonly SalariedNonexempt: "salaried-nonexempt";
    readonly Nonexempt: "nonexempt";
    readonly Owner: "owner";
    readonly Other: "other";
};
/**
 * The FLSA status for this compensation.
 */
export type FlsaStatus = ClosedEnum<typeof FlsaStatus>;
export type EmployeeCompensation = {
    /**
     * A unique identifier for an object.
     */
    id?: string | null | undefined;
    /**
     * The ID of the job to which the compensation belongs.
     */
    jobId?: string | null | undefined;
    /**
     * The amount paid per payment unit.
     */
    rate?: number | null | undefined;
    /**
     * Unit of measurement for employee compensation.
     */
    paymentUnit?: PaymentUnit | null | undefined;
    /**
     * Indicates the associated currency for an amount of money. Values correspond to [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217).
     */
    currency?: Currency | null | undefined;
    /**
     * The FLSA status for this compensation.
     */
    flsaStatus?: FlsaStatus | null | undefined;
    /**
     * The date on which a change to an employee's compensation takes effect.
     */
    effectiveDate?: string | null | undefined;
    /**
     * Frequency of employee compensation.
     */
    paymentFrequency?: PaymentFrequency | null | undefined;
};
export type EmployeeCompensationInput = {
    /**
     * The amount paid per payment unit.
     */
    rate?: number | null | undefined;
    /**
     * Unit of measurement for employee compensation.
     */
    paymentUnit?: PaymentUnit | null | undefined;
    /**
     * Indicates the associated currency for an amount of money. Values correspond to [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217).
     */
    currency?: Currency | null | undefined;
    /**
     * The FLSA status for this compensation.
     */
    flsaStatus?: FlsaStatus | null | undefined;
    /**
     * The date on which a change to an employee's compensation takes effect.
     */
    effectiveDate?: string | null | undefined;
    /**
     * Frequency of employee compensation.
     */
    paymentFrequency?: PaymentFrequency | null | undefined;
};
/** @internal */
export declare const FlsaStatus$inboundSchema: z.ZodNativeEnum<typeof FlsaStatus>;
/** @internal */
export declare const FlsaStatus$outboundSchema: z.ZodNativeEnum<typeof FlsaStatus>;
/** @internal */
export declare const EmployeeCompensation$inboundSchema: z.ZodType<EmployeeCompensation, z.ZodTypeDef, unknown>;
export declare function employeeCompensationFromJSON(jsonString: string): SafeParseResult<EmployeeCompensation, SDKValidationError>;
/** @internal */
export type EmployeeCompensationInput$Outbound = {
    rate?: number | null | undefined;
    payment_unit?: string | null | undefined;
    currency?: string | null | undefined;
    flsa_status?: string | null | undefined;
    effective_date?: string | null | undefined;
    payment_frequency?: string | null | undefined;
};
/** @internal */
export declare const EmployeeCompensationInput$outboundSchema: z.ZodType<EmployeeCompensationInput$Outbound, z.ZodTypeDef, EmployeeCompensationInput>;
export declare function employeeCompensationInputToJSON(employeeCompensationInput: EmployeeCompensationInput): string;
//# sourceMappingURL=employeecompensation.d.ts.map