import * as z from "zod/v3";
import { ClosedEnum } from "../types/enums.js";
import { Result as SafeParseResult } from "../types/fp.js";
import { SDKValidationError } from "./sdkvalidationerror.js";
export type GetRollingReleaseBillingStatusRequest = {
    /**
     * Project ID or project name (URL-encoded)
     */
    idOrName: string;
    /**
     * The Team identifier to perform the request on behalf of.
     */
    teamId?: string | undefined;
    /**
     * The Team slug to perform the request on behalf of.
     */
    slug?: string | undefined;
};
export type GetRollingReleaseBillingStatusResponseBody4 = {
    availableSlots: number;
    reason: "available_slots";
    message: string;
};
export type GetRollingReleaseBillingStatusResponseBody3 = {
    availableSlots: number;
    reason: "no_available_slots";
    message: string;
    enabledProjects: Array<string>;
};
export declare const AvailableSlots: {
    readonly Unlimited: "unlimited";
};
export type AvailableSlots = ClosedEnum<typeof AvailableSlots>;
export type GetRollingReleaseBillingStatusResponseBody2 = {
    availableSlots: AvailableSlots;
    reason: "unlimited_slots";
    message: string;
};
export type GetRollingReleaseBillingStatusResponseBody1 = {
    availableSlots: number;
    reason: "plan_not_supported";
    message: string;
};
export type GetRollingReleaseBillingStatusResponseBody = GetRollingReleaseBillingStatusResponseBody1 | GetRollingReleaseBillingStatusResponseBody2 | GetRollingReleaseBillingStatusResponseBody3 | GetRollingReleaseBillingStatusResponseBody4;
/** @internal */
export type GetRollingReleaseBillingStatusRequest$Outbound = {
    idOrName: string;
    teamId?: string | undefined;
    slug?: string | undefined;
};
/** @internal */
export declare const GetRollingReleaseBillingStatusRequest$outboundSchema: z.ZodType<GetRollingReleaseBillingStatusRequest$Outbound, z.ZodTypeDef, GetRollingReleaseBillingStatusRequest>;
export declare function getRollingReleaseBillingStatusRequestToJSON(getRollingReleaseBillingStatusRequest: GetRollingReleaseBillingStatusRequest): string;
/** @internal */
export declare const GetRollingReleaseBillingStatusResponseBody4$inboundSchema: z.ZodType<GetRollingReleaseBillingStatusResponseBody4, z.ZodTypeDef, unknown>;
export declare function getRollingReleaseBillingStatusResponseBody4FromJSON(jsonString: string): SafeParseResult<GetRollingReleaseBillingStatusResponseBody4, SDKValidationError>;
/** @internal */
export declare const GetRollingReleaseBillingStatusResponseBody3$inboundSchema: z.ZodType<GetRollingReleaseBillingStatusResponseBody3, z.ZodTypeDef, unknown>;
export declare function getRollingReleaseBillingStatusResponseBody3FromJSON(jsonString: string): SafeParseResult<GetRollingReleaseBillingStatusResponseBody3, SDKValidationError>;
/** @internal */
export declare const AvailableSlots$inboundSchema: z.ZodNativeEnum<typeof AvailableSlots>;
/** @internal */
export declare const GetRollingReleaseBillingStatusResponseBody2$inboundSchema: z.ZodType<GetRollingReleaseBillingStatusResponseBody2, z.ZodTypeDef, unknown>;
export declare function getRollingReleaseBillingStatusResponseBody2FromJSON(jsonString: string): SafeParseResult<GetRollingReleaseBillingStatusResponseBody2, SDKValidationError>;
/** @internal */
export declare const GetRollingReleaseBillingStatusResponseBody1$inboundSchema: z.ZodType<GetRollingReleaseBillingStatusResponseBody1, z.ZodTypeDef, unknown>;
export declare function getRollingReleaseBillingStatusResponseBody1FromJSON(jsonString: string): SafeParseResult<GetRollingReleaseBillingStatusResponseBody1, SDKValidationError>;
/** @internal */
export declare const GetRollingReleaseBillingStatusResponseBody$inboundSchema: z.ZodType<GetRollingReleaseBillingStatusResponseBody, z.ZodTypeDef, unknown>;
export declare function getRollingReleaseBillingStatusResponseBodyFromJSON(jsonString: string): SafeParseResult<GetRollingReleaseBillingStatusResponseBody, SDKValidationError>;
//# sourceMappingURL=getrollingreleasebillingstatusop.d.ts.map