import * as z from "zod/v3";
import { Result as SafeParseResult } from "../types/fp.js";
import { SDKValidationError } from "./sdkvalidationerror.js";
/**
 * The default app for the new microfrontend group
 */
export type DefaultApp = {
    /**
     * The id of the project that will be used as the default app for the new microfrontend group
     */
    projectId: string;
    /**
     * The default route for the default app of the new microfrontend group
     */
    defaultRoute?: string | undefined;
};
export type OtherApplications = {
    /**
     * The id of the project that will be used in the new microfrontend group
     */
    projectId: string;
    /**
     * The default route for the application in the new microfrontend group
     */
    defaultRoute?: string | undefined;
};
export type CreateMicrofrontendsGroupWithApplicationsRequestBody = {
    /**
     * The name of the microfrontends group that will be used to identify the group
     */
    groupName: string;
    /**
     * The default app for the new microfrontend group
     */
    defaultApp: DefaultApp;
    /**
     * The list of other applications that will be used in the new microfrontend group
     */
    otherApplications: Array<OtherApplications>;
};
export type CreateMicrofrontendsGroupWithApplicationsRequest = {
    /**
     * 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;
    requestBody?: CreateMicrofrontendsGroupWithApplicationsRequestBody | undefined;
};
export type NewMicrofrontendsGroup = {
    id: string;
    slug: string;
    name: string;
    fallbackEnvironment: string;
    createdAt: number;
    updatedAt: number;
};
export type CreateMicrofrontendsGroupWithApplicationsResponseBody = {
    newMicrofrontendsGroup: NewMicrofrontendsGroup;
};
/** @internal */
export type DefaultApp$Outbound = {
    projectId: string;
    defaultRoute?: string | undefined;
};
/** @internal */
export declare const DefaultApp$outboundSchema: z.ZodType<DefaultApp$Outbound, z.ZodTypeDef, DefaultApp>;
export declare function defaultAppToJSON(defaultApp: DefaultApp): string;
/** @internal */
export type OtherApplications$Outbound = {
    projectId: string;
    defaultRoute?: string | undefined;
};
/** @internal */
export declare const OtherApplications$outboundSchema: z.ZodType<OtherApplications$Outbound, z.ZodTypeDef, OtherApplications>;
export declare function otherApplicationsToJSON(otherApplications: OtherApplications): string;
/** @internal */
export type CreateMicrofrontendsGroupWithApplicationsRequestBody$Outbound = {
    groupName: string;
    defaultApp: DefaultApp$Outbound;
    otherApplications: Array<OtherApplications$Outbound>;
};
/** @internal */
export declare const CreateMicrofrontendsGroupWithApplicationsRequestBody$outboundSchema: z.ZodType<CreateMicrofrontendsGroupWithApplicationsRequestBody$Outbound, z.ZodTypeDef, CreateMicrofrontendsGroupWithApplicationsRequestBody>;
export declare function createMicrofrontendsGroupWithApplicationsRequestBodyToJSON(createMicrofrontendsGroupWithApplicationsRequestBody: CreateMicrofrontendsGroupWithApplicationsRequestBody): string;
/** @internal */
export type CreateMicrofrontendsGroupWithApplicationsRequest$Outbound = {
    teamId?: string | undefined;
    slug?: string | undefined;
    RequestBody?: CreateMicrofrontendsGroupWithApplicationsRequestBody$Outbound | undefined;
};
/** @internal */
export declare const CreateMicrofrontendsGroupWithApplicationsRequest$outboundSchema: z.ZodType<CreateMicrofrontendsGroupWithApplicationsRequest$Outbound, z.ZodTypeDef, CreateMicrofrontendsGroupWithApplicationsRequest>;
export declare function createMicrofrontendsGroupWithApplicationsRequestToJSON(createMicrofrontendsGroupWithApplicationsRequest: CreateMicrofrontendsGroupWithApplicationsRequest): string;
/** @internal */
export declare const NewMicrofrontendsGroup$inboundSchema: z.ZodType<NewMicrofrontendsGroup, z.ZodTypeDef, unknown>;
export declare function newMicrofrontendsGroupFromJSON(jsonString: string): SafeParseResult<NewMicrofrontendsGroup, SDKValidationError>;
/** @internal */
export declare const CreateMicrofrontendsGroupWithApplicationsResponseBody$inboundSchema: z.ZodType<CreateMicrofrontendsGroupWithApplicationsResponseBody, z.ZodTypeDef, unknown>;
export declare function createMicrofrontendsGroupWithApplicationsResponseBodyFromJSON(jsonString: string): SafeParseResult<CreateMicrofrontendsGroupWithApplicationsResponseBody, SDKValidationError>;
//# sourceMappingURL=createmicrofrontendsgroupwithapplicationsop.d.ts.map