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 GetIntegrationResourcesRequest = {
    integrationConfigurationId: string;
};
/**
 * The current status of the resource
 */
export declare const GetIntegrationResourcesStatus: {
    readonly Error: "error";
    readonly Onboarding: "onboarding";
    readonly Pending: "pending";
    readonly Ready: "ready";
    readonly Resumed: "resumed";
    readonly Suspended: "suspended";
    readonly Uninstalled: "uninstalled";
};
/**
 * The current status of the resource
 */
export type GetIntegrationResourcesStatus = ClosedEnum<typeof GetIntegrationResourcesStatus>;
export type GetIntegrationResourcesExperimentation = {
    edgeConfigSyncingEnabled?: boolean | undefined;
    edgeConfigId?: string | undefined;
    edgeConfigTokenId?: string | undefined;
};
/**
 * Any settings provided for the resource to support its product's protocols
 */
export type GetIntegrationResourcesProtocolSettings = {
    experimentation?: GetIntegrationResourcesExperimentation | undefined;
};
export declare const GetIntegrationResourcesLevel: {
    readonly Error: "error";
    readonly Info: "info";
    readonly Warn: "warn";
};
export type GetIntegrationResourcesLevel = ClosedEnum<typeof GetIntegrationResourcesLevel>;
/**
 * The notification, if set, displayed to the user when viewing the resource in Vercel
 */
export type GetIntegrationResourcesNotification = {
    level: GetIntegrationResourcesLevel;
    title: string;
    message?: string | undefined;
    href?: string | undefined;
};
export type GetIntegrationResourcesMetadata = string | number | Array<string> | Array<number> | boolean;
export type GetIntegrationResourcesResources = {
    /**
     * The ID provided by the partner for the given resource
     */
    partnerId: string;
    /**
     * The ID assigned by Vercel for the given resource
     */
    internalId: string;
    /**
     * The name of the resource as it is recorded in Vercel
     */
    name: string;
    /**
     * The current status of the resource
     */
    status?: GetIntegrationResourcesStatus | undefined;
    /**
     * The ID of the product the resource is derived from
     */
    productId: string;
    /**
     * Any settings provided for the resource to support its product's protocols
     */
    protocolSettings?: GetIntegrationResourcesProtocolSettings | undefined;
    /**
     * The notification, if set, displayed to the user when viewing the resource in Vercel
     */
    notification?: GetIntegrationResourcesNotification | undefined;
    /**
     * The ID of the billing plan the resource is subscribed to, if applicable
     */
    billingPlanId?: string | undefined;
    /**
     * The configured metadata for the resource as defined by its product's Metadata Schema
     */
    metadata?: {
        [k: string]: string | number | Array<string> | Array<number> | boolean;
    } | undefined;
};
export type GetIntegrationResourcesResponseBody = {
    resources: Array<GetIntegrationResourcesResources>;
};
/** @internal */
export type GetIntegrationResourcesRequest$Outbound = {
    integrationConfigurationId: string;
};
/** @internal */
export declare const GetIntegrationResourcesRequest$outboundSchema: z.ZodType<GetIntegrationResourcesRequest$Outbound, z.ZodTypeDef, GetIntegrationResourcesRequest>;
export declare function getIntegrationResourcesRequestToJSON(getIntegrationResourcesRequest: GetIntegrationResourcesRequest): string;
/** @internal */
export declare const GetIntegrationResourcesStatus$inboundSchema: z.ZodNativeEnum<typeof GetIntegrationResourcesStatus>;
/** @internal */
export declare const GetIntegrationResourcesExperimentation$inboundSchema: z.ZodType<GetIntegrationResourcesExperimentation, z.ZodTypeDef, unknown>;
export declare function getIntegrationResourcesExperimentationFromJSON(jsonString: string): SafeParseResult<GetIntegrationResourcesExperimentation, SDKValidationError>;
/** @internal */
export declare const GetIntegrationResourcesProtocolSettings$inboundSchema: z.ZodType<GetIntegrationResourcesProtocolSettings, z.ZodTypeDef, unknown>;
export declare function getIntegrationResourcesProtocolSettingsFromJSON(jsonString: string): SafeParseResult<GetIntegrationResourcesProtocolSettings, SDKValidationError>;
/** @internal */
export declare const GetIntegrationResourcesLevel$inboundSchema: z.ZodNativeEnum<typeof GetIntegrationResourcesLevel>;
/** @internal */
export declare const GetIntegrationResourcesNotification$inboundSchema: z.ZodType<GetIntegrationResourcesNotification, z.ZodTypeDef, unknown>;
export declare function getIntegrationResourcesNotificationFromJSON(jsonString: string): SafeParseResult<GetIntegrationResourcesNotification, SDKValidationError>;
/** @internal */
export declare const GetIntegrationResourcesMetadata$inboundSchema: z.ZodType<GetIntegrationResourcesMetadata, z.ZodTypeDef, unknown>;
export declare function getIntegrationResourcesMetadataFromJSON(jsonString: string): SafeParseResult<GetIntegrationResourcesMetadata, SDKValidationError>;
/** @internal */
export declare const GetIntegrationResourcesResources$inboundSchema: z.ZodType<GetIntegrationResourcesResources, z.ZodTypeDef, unknown>;
export declare function getIntegrationResourcesResourcesFromJSON(jsonString: string): SafeParseResult<GetIntegrationResourcesResources, SDKValidationError>;
/** @internal */
export declare const GetIntegrationResourcesResponseBody$inboundSchema: z.ZodType<GetIntegrationResourcesResponseBody, z.ZodTypeDef, unknown>;
export declare function getIntegrationResourcesResponseBodyFromJSON(jsonString: string): SafeParseResult<GetIntegrationResourcesResponseBody, SDKValidationError>;
//# sourceMappingURL=getintegrationresourcesop.d.ts.map