import { ShopSettings, UserPreferences, GeneralSettings, POSSettings, InvoiceSettings, NotificationSettings, DisplaySettings, AutomationSettings, SocialSettings, AdvancedSettings } from '../types/settings';
import { BaseResource } from './base';
export declare class SettingsResource extends BaseResource {
    /**
     * Get shop settings
     */
    getShopSettings(): Promise<ShopSettings>;
    /**
     * Update general settings
     */
    updateGeneralSettings(settings: Partial<GeneralSettings>): Promise<ShopSettings>;
    /**
     * Update POS settings
     */
    updatePOSSettings(settings: Partial<POSSettings>): Promise<ShopSettings>;
    /**
     * Update invoice settings
     */
    updateInvoiceSettings(settings: Partial<InvoiceSettings>): Promise<ShopSettings>;
    /**
     * Update notification settings
     */
    updateNotificationSettings(settings: Partial<NotificationSettings>): Promise<ShopSettings>;
    /**
     * Update display settings
     */
    updateDisplaySettings(settings: Partial<DisplaySettings>): Promise<ShopSettings>;
    /**
     * Update automation settings
     */
    updateAutomationSettings(settings: Partial<AutomationSettings>): Promise<ShopSettings>;
    /**
     * Update social settings
     */
    updateSocialSettings(settings: Partial<SocialSettings>): Promise<ShopSettings>;
    /**
     * Update advanced settings
     */
    updateAdvancedSettings(settings: Partial<AdvancedSettings>): Promise<ShopSettings>;
    /**
     * Get user preferences
     */
    getUserPreferences(userId: string): Promise<UserPreferences>;
    /**
     * Update user preferences
     */
    updateUserPreferences(userId: string, preferences: Partial<UserPreferences>): Promise<UserPreferences>;
    /**
     * Reset settings to default
     */
    resetToDefault(section?: string): Promise<ShopSettings>;
    /**
     * Import settings
     */
    importSettings(settings: Record<string, any>): Promise<ShopSettings>;
    /**
     * Export settings
     */
    exportSettings(sections?: string[]): Promise<Record<string, any>>;
    /**
     * Validate settings
     */
    validateSettings(settings: Partial<ShopSettings>): Promise<{
        is_valid: boolean;
        errors?: {
            field: string;
            message: string;
        }[];
    }>;
    /**
     * Get audit log
     */
    getAuditLog(params?: {
        page_size?: number;
        page_number?: number;
        from_date?: string;
        to_date?: string;
    }): Promise<{
        data: {
            id: string;
            user_id: string;
            action: string;
            section: string;
            changes: Record<string, any>;
            created_at: string;
        }[];
    }>;
}
