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 { ApiStatus } from "./apistatus.js";
import { ResourceStatus } from "./resourcestatus.js";
/**
 * Indicates whether the API is a Unified API. If unified_api is false, the API is a Platform API.
 */
export declare const ApiType: {
    readonly Platform: "platform";
    readonly Unified: "unified";
};
/**
 * Indicates whether the API is a Unified API. If unified_api is false, the API is a Platform API.
 */
export type ApiType = ClosedEnum<typeof ApiType>;
export type Resources = {
    /**
     * ID of the resource, typically a lowercased version of its name.
     */
    id?: string | undefined;
    /**
     * Name of the resource (plural)
     */
    name?: string | undefined;
    /**
     * Status of the resource. Resources with status live or beta are callable.
     */
    status?: ResourceStatus | undefined;
    /**
     * Exclude from mapping coverage
     */
    excludedFromCoverage?: boolean | undefined;
};
export type Api = {
    /**
     * ID of the API.
     */
    id?: string | undefined;
    /**
     * Indicates whether the API is a Unified API. If unified_api is false, the API is a Platform API.
     */
    type?: ApiType | undefined;
    /**
     * Name of the API.
     */
    name?: string | undefined;
    /**
     * Description of the API.
     */
    description?: string | null | undefined;
    /**
     * Status of the API. APIs with status live or beta are callable.
     */
    status?: ApiStatus | undefined;
    /**
     * Link to the latest OpenAPI specification of the API.
     */
    specUrl?: string | undefined;
    /**
     * Link to the API reference of the API.
     */
    apiReferenceUrl?: string | undefined;
    /**
     * ID of the Postman collection of the API.
     */
    postmanCollectionId?: string | null | undefined;
    /**
     * List of categories the API belongs to.
     */
    categories?: Array<string> | undefined;
    /**
     * List of resources supported in this API.
     */
    resources?: Array<Resources> | undefined;
    /**
     * List of event types this API supports.
     */
    events?: Array<string> | undefined;
};
/** @internal */
export declare const ApiType$inboundSchema: z.ZodNativeEnum<typeof ApiType>;
/** @internal */
export declare const Resources$inboundSchema: z.ZodType<Resources, z.ZodTypeDef, unknown>;
export declare function resourcesFromJSON(jsonString: string): SafeParseResult<Resources, SDKValidationError>;
/** @internal */
export declare const Api$inboundSchema: z.ZodType<Api, z.ZodTypeDef, unknown>;
export declare function apiFromJSON(jsonString: string): SafeParseResult<Api, SDKValidationError>;
//# sourceMappingURL=api.d.ts.map