import * as z from "zod/v3";
import { Result as SafeParseResult } from "../types/fp.js";
import { NamedSandbox } from "./namedsandbox.js";
import { SDKValidationError } from "./sdkvalidationerror.js";
import { Session } from "./session.js";
import { Snapshot } from "./snapshot.js";
export type StopSessionRequest = {
    /**
     * The unique identifier of the session to stop.
     */
    sessionId: 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 StopSessionResponseBody2 = {
    /**
     * This object contains information related to a Snapshot of a Vercel Sandbox session (v2 API).
     */
    snapshot: Snapshot;
    /**
     * This object contains information related to a Vercel NamedSandbox.
     */
    sandbox: NamedSandbox;
    /**
     * This object contains information related to a Vercel Sandbox Session. v2 endpoints return "session" instead of "sandbox" as the response wrapper key.
     */
    session: Session;
};
export type StopSessionResponseBody1 = {
    /**
     * This object contains information related to a Vercel Sandbox Session. v2 endpoints return "session" instead of "sandbox" as the response wrapper key.
     */
    session: Session;
};
/**
 * The session was stopped successfully.
 */
export type StopSessionResponseBody = StopSessionResponseBody2 | StopSessionResponseBody1;
/** @internal */
export type StopSessionRequest$Outbound = {
    sessionId: string;
    teamId?: string | undefined;
    slug?: string | undefined;
};
/** @internal */
export declare const StopSessionRequest$outboundSchema: z.ZodType<StopSessionRequest$Outbound, z.ZodTypeDef, StopSessionRequest>;
export declare function stopSessionRequestToJSON(stopSessionRequest: StopSessionRequest): string;
/** @internal */
export declare const StopSessionResponseBody2$inboundSchema: z.ZodType<StopSessionResponseBody2, z.ZodTypeDef, unknown>;
export declare function stopSessionResponseBody2FromJSON(jsonString: string): SafeParseResult<StopSessionResponseBody2, SDKValidationError>;
/** @internal */
export declare const StopSessionResponseBody1$inboundSchema: z.ZodType<StopSessionResponseBody1, z.ZodTypeDef, unknown>;
export declare function stopSessionResponseBody1FromJSON(jsonString: string): SafeParseResult<StopSessionResponseBody1, SDKValidationError>;
/** @internal */
export declare const StopSessionResponseBody$inboundSchema: z.ZodType<StopSessionResponseBody, z.ZodTypeDef, unknown>;
export declare function stopSessionResponseBodyFromJSON(jsonString: string): SafeParseResult<StopSessionResponseBody, SDKValidationError>;
//# sourceMappingURL=stopsessionop.d.ts.map