import { generateBlurUpRuntime, generateBlurUpCSS } from './blur-up';
import { generateLazyLoadRuntime } from './lazy-load';
import { generateUploadRuntime } from './upload-handler';
/**
 * Generate the complete media client runtime
 */
export declare function generateMediaRuntime(): { script: string; css: string };
/**
 * Generate minified media runtime for production
 */
export declare function generateMinifiedMediaRuntime(): { script: string; css: string };
/**
 * STX Media - Client-Side Runtime
 *
 * Client-side utilities for lazy loading, blur-up effects, and file uploads.
 *
 * @module media/client
 */
// =============================================================================
// Lazy Loading
// =============================================================================
export {
  // Types
  type LazyLoadOptions,

  // Feature detection
  isNativeLazySupported,
  isIntersectionObserverSupported,

  // Initialization
  initLazyLoading,
  loadElement,

  // Manual loading
  lazyLoad,
  lazyLoadAll,

  // Observer utilities
  createLazyObserver,
  observeElement,
  disconnectObserver,

  // Runtime generation
  generateLazyLoadRuntime,
} from './lazy-load';
// =============================================================================
// Blur-Up Effects
// =============================================================================
export {
  // Types
  type BlurUpOptions,

  // Initialization
  initBlurUp,
  initAllBlurUp,

  // Thumbhash utilities
  renderThumbhashToCanvas,
  thumbHashToRGBA,
  thumbHashToDataURL,
  parseThumbhashString,

  // Transitions
  crossfadeTransition,

  // Runtime generation
  generateBlurUpRuntime,
  generateBlurUpCSS,
} from './blur-up';
// =============================================================================
// Upload Handler
// =============================================================================
export {
  // Types
  type UploadHandlerOptions,
  type UploadProgress,
  type UploadResult,
  type FileValidationResult,

  // Validation
  validateFile,

  // Upload functions
  uploadFile,
  uploadFiles,

  // Preview generation
  generateImagePreview,
  generateVideoPreview,

  // Runtime generation
  generateUploadRuntime,
} from './upload-handler';
