/**
 * Deployment operations for Managed Runtime.
 *
 * Handles listing and creating deployments for MRT environments.
 *
 * @module operations/mrt/deployment
 */
import type { AuthStrategy } from '../../auth/types.js';
import type { components } from '../../clients/mrt.js';
/**
 * Deployment list item from API.
 */
export type MrtDeployment = components['schemas']['DeployList'];
/**
 * Deployment creation request.
 */
export type MrtDeploymentCreate = components['schemas']['DeployCreate'];
/**
 * Options for listing MRT deployments.
 */
export interface ListDeploymentsOptions {
    /**
     * The project slug.
     */
    projectSlug: string;
    /**
     * The target/environment slug.
     */
    targetSlug: string;
    /**
     * Maximum number of results to return.
     */
    limit?: number;
    /**
     * Offset for pagination.
     */
    offset?: number;
    /**
     * MRT API origin URL.
     * @default "https://cloud.mobify.com"
     */
    origin?: string;
}
/**
 * Result of listing deployments.
 */
export interface ListDeploymentsResult {
    /**
     * Total count of deployments.
     */
    count: number;
    /**
     * URL for next page of results.
     */
    next: string | null;
    /**
     * URL for previous page of results.
     */
    previous: string | null;
    /**
     * Array of deployments.
     */
    deployments: MrtDeployment[];
}
/**
 * Lists deployment history for an MRT environment.
 *
 * @param options - List options including project and target slugs
 * @param auth - Authentication strategy (ApiKeyStrategy)
 * @returns Paginated list of deployments
 * @throws Error if request fails
 *
 * @example
 * ```typescript
 * import { ApiKeyStrategy } from '@salesforce/b2c-tooling-sdk/auth';
 * import { listDeployments } from '@salesforce/b2c-tooling-sdk/operations/mrt';
 *
 * const auth = new ApiKeyStrategy(process.env.MRT_API_KEY!, 'Authorization');
 *
 * const result = await listDeployments({
 *   projectSlug: 'my-storefront',
 *   targetSlug: 'staging'
 * }, auth);
 *
 * for (const deploy of result.deployments) {
 *   console.log(`Bundle ${deploy.bundle_id}: ${deploy.status}`);
 * }
 * ```
 */
export declare function listDeployments(options: ListDeploymentsOptions, auth: AuthStrategy): Promise<ListDeploymentsResult>;
/**
 * Options for creating a deployment.
 */
export interface CreateDeploymentOptions {
    /**
     * The project slug.
     */
    projectSlug: string;
    /**
     * The target/environment slug.
     */
    targetSlug: string;
    /**
     * The bundle ID to deploy.
     */
    bundleId: number;
    /**
     * MRT API origin URL.
     * @default "https://cloud.mobify.com"
     */
    origin?: string;
}
/**
 * Deployment creation response.
 */
export interface CreateDeploymentResult {
    /**
     * The bundle ID being deployed.
     */
    bundleId: number;
    /**
     * The target slug.
     */
    targetSlug: string;
    /**
     * Initial deployment status.
     */
    status: string;
}
/**
 * Deploys a bundle to an MRT environment.
 *
 * This endpoint is asynchronous - the deployment will happen in the background.
 * Request the target for progress updates.
 *
 * @param options - Deployment options
 * @param auth - Authentication strategy (ApiKeyStrategy)
 * @returns Initial deployment status
 * @throws Error if request fails
 *
 * @example
 * ```typescript
 * import { ApiKeyStrategy } from '@salesforce/b2c-tooling-sdk/auth';
 * import { createDeployment } from '@salesforce/b2c-tooling-sdk/operations/mrt';
 *
 * const auth = new ApiKeyStrategy(process.env.MRT_API_KEY!, 'Authorization');
 *
 * const result = await createDeployment({
 *   projectSlug: 'my-storefront',
 *   targetSlug: 'staging',
 *   bundleId: 12345
 * }, auth);
 *
 * console.log(`Deployment started: ${result.status}`);
 * ```
 */
export declare function createDeployment(options: CreateDeploymentOptions, auth: AuthStrategy): Promise<CreateDeploymentResult>;
