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";
import { Snapshot } from "./snapshot.js";
/**
 * Sort direction for results by creation time.
 */
export declare const ListSessionSnapshotsQueryParamSortOrder: {
    readonly Asc: "asc";
    readonly Desc: "desc";
};
/**
 * Sort direction for results by creation time.
 */
export type ListSessionSnapshotsQueryParamSortOrder = ClosedEnum<typeof ListSessionSnapshotsQueryParamSortOrder>;
export type ListSessionSnapshotsRequest = {
    /**
     * The unique identifier or name of the project to list snapshots for.
     */
    project?: string | undefined;
    /**
     * Name for the sandbox. Must be unique per project and URL-safe (alphanumeric, hyphens, underscores).
     */
    name?: string | undefined;
    /**
     * Maximum number of snapshots to return in the response. Used for pagination.
     */
    limit?: number | undefined;
    /**
     * Opaque pagination cursor from a previous response.
     */
    cursor?: string | undefined;
    /**
     * Sort direction for results by creation time.
     */
    sortOrder?: ListSessionSnapshotsQueryParamSortOrder | undefined;
    /**
     * 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 ListSessionSnapshotsResponseBodyPagination = {
    count: number;
    next: string | null;
};
export type ListSessionSnapshotsResponseBody2 = {
    snapshots: Array<Snapshot>;
    pagination: ListSessionSnapshotsResponseBodyPagination;
};
export type ListSessionSnapshotsResponseBody1 = {};
export type ListSessionSnapshotsResponseBody = ListSessionSnapshotsResponseBody2 | ListSessionSnapshotsResponseBody1;
/** @internal */
export declare const ListSessionSnapshotsQueryParamSortOrder$outboundSchema: z.ZodNativeEnum<typeof ListSessionSnapshotsQueryParamSortOrder>;
/** @internal */
export type ListSessionSnapshotsRequest$Outbound = {
    project?: string | undefined;
    name?: string | undefined;
    limit: number;
    cursor?: string | undefined;
    sortOrder: string;
    teamId?: string | undefined;
    slug?: string | undefined;
};
/** @internal */
export declare const ListSessionSnapshotsRequest$outboundSchema: z.ZodType<ListSessionSnapshotsRequest$Outbound, z.ZodTypeDef, ListSessionSnapshotsRequest>;
export declare function listSessionSnapshotsRequestToJSON(listSessionSnapshotsRequest: ListSessionSnapshotsRequest): string;
/** @internal */
export declare const ListSessionSnapshotsResponseBodyPagination$inboundSchema: z.ZodType<ListSessionSnapshotsResponseBodyPagination, z.ZodTypeDef, unknown>;
export declare function listSessionSnapshotsResponseBodyPaginationFromJSON(jsonString: string): SafeParseResult<ListSessionSnapshotsResponseBodyPagination, SDKValidationError>;
/** @internal */
export declare const ListSessionSnapshotsResponseBody2$inboundSchema: z.ZodType<ListSessionSnapshotsResponseBody2, z.ZodTypeDef, unknown>;
export declare function listSessionSnapshotsResponseBody2FromJSON(jsonString: string): SafeParseResult<ListSessionSnapshotsResponseBody2, SDKValidationError>;
/** @internal */
export declare const ListSessionSnapshotsResponseBody1$inboundSchema: z.ZodType<ListSessionSnapshotsResponseBody1, z.ZodTypeDef, unknown>;
export declare function listSessionSnapshotsResponseBody1FromJSON(jsonString: string): SafeParseResult<ListSessionSnapshotsResponseBody1, SDKValidationError>;
/** @internal */
export declare const ListSessionSnapshotsResponseBody$inboundSchema: z.ZodType<ListSessionSnapshotsResponseBody, z.ZodTypeDef, unknown>;
export declare function listSessionSnapshotsResponseBodyFromJSON(jsonString: string): SafeParseResult<ListSessionSnapshotsResponseBody, SDKValidationError>;
//# sourceMappingURL=listsessionsnapshotsop.d.ts.map