/**
 * Environment variable operations for Managed Runtime.
 *
 * Handles listing, setting, and deleting environment variables
 * on MRT project environments.
 *
 * @module operations/mrt/env-var
 */
import type { AuthStrategy } from '../../auth/types.js';
/**
 * Environment variable information returned from MRT.
 */
export interface EnvironmentVariable {
    /** Name of the environment variable */
    name: string;
    /** Masked value (only last few characters visible) */
    value: string;
    /** Email of user who created the variable */
    createdBy: string;
    /** ISO timestamp when created */
    createdAt: string;
    /** ISO timestamp when last updated */
    updatedAt: string;
    /** Email of user who last updated the variable */
    updatedBy: string;
    /** Publishing status code */
    publishingStatus: number;
    /** Human-readable publishing status */
    publishingStatusDescription: string;
}
/**
 * Result of listing environment variables.
 */
export interface ListEnvVarsResult {
    /** Total count of environment variables */
    count: number;
    /** Environment variables */
    variables: EnvironmentVariable[];
}
/**
 * Options for environment variable operations.
 */
export interface EnvVarOptions {
    /** MRT project slug */
    projectSlug: string;
    /** Target environment (e.g., 'staging', 'production') */
    environment: string;
    /**
     * MRT API origin URL.
     * @default "https://cloud.mobify.com"
     */
    origin?: string;
}
/**
 * Lists environment variables for a project environment.
 *
 * @param options - Options specifying project and environment
 * @param auth - Authentication strategy (ApiKeyStrategy)
 * @returns List of environment variables
 * @throws Error if request fails
 *
 * @example
 * ```typescript
 * import { ApiKeyStrategy } from '@salesforce/b2c-tooling-sdk/auth';
 * import { listEnvVars } from '@salesforce/b2c-tooling-sdk/operations/mrt';
 *
 * const auth = new ApiKeyStrategy(process.env.MRT_API_KEY!, 'Authorization');
 *
 * const result = await listEnvVars({
 *   projectSlug: 'my-storefront',
 *   environment: 'production'
 * }, auth);
 *
 * for (const envVar of result.variables) {
 *   console.log(`${envVar.name}=${envVar.value}`);
 * }
 * ```
 */
export declare function listEnvVars(options: EnvVarOptions, auth: AuthStrategy): Promise<ListEnvVarsResult>;
/**
 * Options for setting an environment variable.
 */
export interface SetEnvVarOptions extends EnvVarOptions {
    /** Environment variable name */
    key: string;
    /** Environment variable value */
    value: string;
}
/**
 * Sets an environment variable on a project environment.
 *
 * Creates the variable if it doesn't exist, or updates it if it does.
 *
 * @param options - Options specifying project, environment, and variable
 * @param auth - Authentication strategy (ApiKeyStrategy)
 * @throws Error if request fails
 *
 * @example
 * ```typescript
 * import { ApiKeyStrategy } from '@salesforce/b2c-tooling-sdk/auth';
 * import { setEnvVar } from '@salesforce/b2c-tooling-sdk/operations/mrt';
 *
 * const auth = new ApiKeyStrategy(process.env.MRT_API_KEY!, 'Authorization');
 *
 * await setEnvVar({
 *   projectSlug: 'my-storefront',
 *   environment: 'production',
 *   key: 'API_KEY',
 *   value: 'secret-value'
 * }, auth);
 * ```
 */
export declare function setEnvVar(options: SetEnvVarOptions, auth: AuthStrategy): Promise<void>;
/**
 * Options for setting multiple environment variables.
 */
export interface SetEnvVarsOptions extends EnvVarOptions {
    /** Environment variables to set as key-value pairs */
    variables: Record<string, string>;
}
/**
 * Sets multiple environment variables on a project environment.
 *
 * Creates variables if they don't exist, or updates them if they do.
 *
 * @param options - Options specifying project, environment, and variables
 * @param auth - Authentication strategy (ApiKeyStrategy)
 * @throws Error if request fails
 *
 * @example
 * ```typescript
 * import { ApiKeyStrategy } from '@salesforce/b2c-tooling-sdk/auth';
 * import { setEnvVars } from '@salesforce/b2c-tooling-sdk/operations/mrt';
 *
 * const auth = new ApiKeyStrategy(process.env.MRT_API_KEY!, 'Authorization');
 *
 * await setEnvVars({
 *   projectSlug: 'my-storefront',
 *   environment: 'production',
 *   variables: {
 *     API_KEY: 'secret-value',
 *     DEBUG: 'false'
 *   }
 * }, auth);
 * ```
 */
export declare function setEnvVars(options: SetEnvVarsOptions, auth: AuthStrategy): Promise<void>;
/**
 * Options for deleting an environment variable.
 */
export interface DeleteEnvVarOptions extends EnvVarOptions {
    /** Environment variable name to delete */
    key: string;
}
/**
 * Deletes an environment variable from a project environment.
 *
 * @param options - Options specifying project, environment, and variable name
 * @param auth - Authentication strategy (ApiKeyStrategy)
 * @throws Error if request fails
 *
 * @example
 * ```typescript
 * import { ApiKeyStrategy } from '@salesforce/b2c-tooling-sdk/auth';
 * import { deleteEnvVar } from '@salesforce/b2c-tooling-sdk/operations/mrt';
 *
 * const auth = new ApiKeyStrategy(process.env.MRT_API_KEY!, 'Authorization');
 *
 * await deleteEnvVar({
 *   projectSlug: 'my-storefront',
 *   environment: 'production',
 *   key: 'OLD_API_KEY'
 * }, auth);
 * ```
 */
export declare function deleteEnvVar(options: DeleteEnvVarOptions, auth: AuthStrategy): Promise<void>;
