import { PdfGenerationOptions, ColumnDefinition, S3UploadConfig, EmailSendConfig, LoggingAdapter } from '../types.js';
/**
 * Validate PDF generation options
 */
export declare function validatePdfOptions(options: Partial<PdfGenerationOptions>): void;
/**
 * Check if column definition is valid
 */
export declare function isValidColumn(column: any): column is ColumnDefinition;
/**
 * Validate S3 upload configuration
 */
export declare function validateS3Config(config: any): asserts config is S3UploadConfig;
/**
 * Validate and enhance SMTP configuration
 */
export declare function validateSmtpConfig(config: any): void;
/**
 * Apply smart configuration defaults based on the SMTP host
 */
export declare function applySmartEmailDefaults(config: any): void;
/**
 * Validate email configuration
 */
export declare function validateEmailConfig(config: any): asserts config is EmailSendConfig;
/**
 * Validate email address format
 */
export declare function isValidEmail(email: string): boolean;
/**
 * Check if value is a Buffer
 */
export declare function isBuffer(value: any): value is Buffer;
/**
 * Check if value is a valid logging adapter
 */
export declare function isValidLogger(logger: any): logger is LoggingAdapter;
/**
 * Sanitize filename for cross-platform compatibility
 */
export declare function sanitizeFilename(filename: string): string;
/**
 * Validate that a value is a positive integer
 */
export declare function isPositiveInteger(value: any): value is number;
/**
 * Validate that a value is a non-negative number
 */
export declare function isNonNegativeNumber(value: any): value is number;
/**
 * Check if an object has a specific property
 */
export declare function hasProperty<T extends object, K extends PropertyKey>(obj: T, prop: K): obj is T & Record<K, unknown>;
/**
 * Deep clone an object (simple version for configuration)
 */
export declare function deepClone<T>(obj: T): T;
/**
 * Check if a string is a valid URL
 */
export declare function isValidUrl(url: string): boolean;
/**
 * Ensure a value is an array
 */
export declare function ensureArray<T>(value: T | T[]): T[];
/**
 * Get nested property value safely
 */
export declare function getNestedProperty(obj: any, path: string): any;
/**
 * Set nested property value safely
 */
export declare function setNestedProperty(obj: any, path: string, value: any): void;
//# sourceMappingURL=guards.d.ts.map