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";
export declare const Currency: {
    readonly Usd: "usd";
};
export type Currency = ClosedEnum<typeof Currency>;
export declare const Period: {
    readonly Hour: "hour";
    readonly Day: "day";
    readonly Week: "week";
    readonly Month: "month";
};
export type Period = ClosedEnum<typeof Period>;
export type BudgetLimit = {
    amount: number;
    currency: Currency;
    period: Period;
};
/** @internal */
export declare const Currency$inboundSchema: z.ZodNativeEnum<typeof Currency>;
/** @internal */
export declare const Currency$outboundSchema: z.ZodNativeEnum<typeof Currency>;
/** @internal */
export declare const Period$inboundSchema: z.ZodNativeEnum<typeof Period>;
/** @internal */
export declare const Period$outboundSchema: z.ZodNativeEnum<typeof Period>;
/** @internal */
export declare const BudgetLimit$inboundSchema: z.ZodType<BudgetLimit, z.ZodTypeDef, unknown>;
/** @internal */
export type BudgetLimit$Outbound = {
    amount: number;
    currency: string;
    period: string;
};
/** @internal */
export declare const BudgetLimit$outboundSchema: z.ZodType<BudgetLimit$Outbound, z.ZodTypeDef, BudgetLimit>;
export declare function budgetLimitToJSON(budgetLimit: BudgetLimit): string;
export declare function budgetLimitFromJSON(jsonString: string): SafeParseResult<BudgetLimit, SDKValidationError>;
//# sourceMappingURL=budgetlimit.d.ts.map