@stacksjs/stx
Version:
A performant UI Framework. Powered by Bun.
295 lines (273 loc) • 5.73 kB
TypeScript
import type { MediaConfig } from './types';
export type {
// Placeholder types
PlaceholderStrategy,
PlaceholderOptions,
PlaceholderResult,
// Image types (prefixed to avoid conflicts with image-optimization)
ImageFormat as MediaImageFormat,
ImageFit,
ImageCrop,
ImageParams,
ImageVariant,
ProcessedImage,
ImgProps,
ImgDirectiveOptions,
ImageRenderContext as MediaImageRenderContext,
ImageRenderResult,
// Enhanced image types (ts-images integration)
EnhancedImgProps,
ProcessedImageResult,
ResponsiveVariantSet,
TsImagesConfig,
ImageOptimizationPreset,
ImageTransformation,
ImageTransformationConfig,
FormatQualitySettings,
WatermarkConfig,
WatermarkPosition,
ArtDirectionConfig,
// Video types
VideoSource,
VideoEmbedType,
PlyrControl,
PlyrOptions,
VideoProps,
VideoDirectiveOptions,
VideoRenderResult,
// Enhanced video types (ts-videos integration)
EnhancedVideoProps,
ProcessedVideoResult,
TsVideosConfig,
VideoQualityPreset,
VideoPlatformPreset,
VideoCodec,
AudioCodec,
TranscodeConfig,
TranscodeResult,
ThumbnailResult,
PosterGenerationConfig,
SpriteSheetConfig,
StreamingConfig,
StreamingQualityLevel,
HLSResult,
DASHResult,
WaveformConfig,
// Upload types
UploadConfig,
UploadProgress,
UploadResult,
FileValidationResult,
MediaUploadProps,
UploadDirectiveOptions,
// Protected media types
SignedUrl,
SignatureConfig,
BatchSignatureRequest,
BatchSignatureResult,
ProtectedAuthContext,
ProtectedMediaProps,
ProtectedDirectiveOptions,
// Media manager types
MediaManagerConfig,
MediaItem,
// Configuration types
MediaConfig,
MediaImageConfig,
MediaVideoConfig,
MediaUploadConfig,
MediaProtectedConfig,
MediaCacheConfig,
// Client types
LazyLoadOptions,
BlurUpOptions,
// Utility types
Breakpoint,
SrcsetOptions,
SrcsetData,
} from './types';
export type { ExtendedVideoRenderContext } from './video';
export type { CacheConfig, CacheEntry } from './shared';
/**
* Default media configuration
*/
export declare const defaultMediaConfig: MediaConfig;
export {
// Component
renderImgComponent,
parseImgComponent,
processImgComponents,
// Directive
createImgDirective,
imgDirective,
// Srcset generation (prefixed to avoid conflicts with image-optimization)
DEFAULT_WIDTHS as MEDIA_DEFAULT_WIDTHS,
DEFAULT_DPR_VALUES,
DEFAULT_FORMATS as MEDIA_DEFAULT_FORMATS,
MIME_TYPES,
COMMON_SIZES,
generateWidthSrcset,
generateAutoWidthSrcset,
calculateOptimalWidths,
generateDprSrcset,
generateDprSrcsetWithVariableQuality,
generateSizesAttribute,
generateSizesFromBreakpoints,
buildImageUrl,
parseImageUrl,
generateSrcsetData,
generateSourceTags,
getBestVariant,
getFallbackVariant,
groupVariantsByFormat,
getMimeType,
getFormatExtension,
detectFormat,
// Placeholder generation
DEFAULT_PLACEHOLDER_OPTIONS,
BLUR_UP_CSS,
generatePlaceholder,
generateThumbhashPlaceholder,
generateLQIP,
extractDominantColor,
generateColorPlaceholder,
decodeThumbhash,
generatePlaceholderCSS,
generatePlaceholderStyle,
getCachedPlaceholder,
clearPlaceholderCache,
getPlaceholderCacheStats,
// Editing API
buildUrl,
parseUrl,
mergeParams,
resize,
crop,
thumbnail,
contain,
cover,
blur,
sharpen,
grayscale,
sepia,
invert,
brightness,
contrast,
saturation,
rotate,
flipHorizontal,
flipVertical,
format,
quality,
auto,
watermark,
PRESETS,
applyPreset,
srcsetUrls,
dprUrls,
validateParams,
sanitizeParams,
} from './image';
export {
processImage,
optimizeImage,
applyTransformations,
generateResponsiveVariants,
generateSrcset,
getCachedImageResult,
setCachedImageResult,
clearImageCache,
ImageProcessorCache,
} from './image/processor';
export {
renderVideoComponent,
parseVideoDirectiveOptions,
// Directive
createVideoDirective,
videoDirective,
} from './video';
export {
processVideo,
analyzeVideo,
generatePoster,
generateThumbnails,
generateSpriteSheet,
generateHLSManifest,
generateDASHManifest,
getCachedVideoResult,
setCachedVideoResult,
clearVideoCache,
VideoProcessorCache,
} from './video/processor';
export { renderMediaUpload } from './upload';
export {
// URL signing
signUrl,
batchSignUrls,
smartBatchSign,
// Validation
isSignatureValid,
getTimeUntilExpiry,
shouldRefreshSignature,
// Auth helpers
checkAuthAccess,
buildAuthParams,
// Cache
getCachedSignature,
clearSignatureCache,
pruneSignatureCache,
// Component
renderProtectedImg,
renderProtectedVideo,
processProtectedMedia,
parseProtectedArgs,
// Runtime
generateSignatureRuntime,
} from './protected';
export { generateMediaManagerEmbed, generateSimpleMediaPicker } from './manager/embed';
export {
// Lazy loading
isNativeLazySupported,
isIntersectionObserverSupported,
initLazyLoading,
loadElement,
lazyLoad,
lazyLoadAll,
createLazyObserver,
observeElement,
disconnectObserver,
generateLazyLoadRuntime,
// Blur-up
initBlurUp,
initAllBlurUp,
renderThumbhashToCanvas,
thumbHashToRGBA,
thumbHashToDataURL,
parseThumbhashString,
crossfadeTransition,
generateBlurUpRuntime,
generateBlurUpCSS,
// Upload handler
validateFile,
uploadFile,
uploadFiles,
generateImagePreview,
generateVideoPreview,
generateUploadRuntime,
// Combined runtime
generateMediaRuntime,
generateMinifiedMediaRuntime,
} from './client';
export {
hashFile,
hashBuffer,
hashString,
generateCacheKey,
getFileMtime,
fileExists,
getCached,
setCached,
clearCache,
getCacheStats,
pruneCache,
} from './shared';