import type { SiteSettings } from '@prisma/client'; import type { UpdateSiteSettingsInput } from './settings.schemas'; declare const SENSITIVE_FIELDS: readonly ["smtpHost", "smtpPort", "smtpUser", "smtpPass", "smtpFromAddress", "testEmailRecipient", "giteaApiToken", "giteaOauthClientSecret", "smsTermuxApiUrl", "smsTermuxApiKey", "smsTailscaleApiKey"]; export declare const siteSettingsService: { /** Full settings with encrypted fields decrypted (admin use) */ get(): Promise<{ id: string; createdAt: Date; updatedAt: Date; organizationName: string; organizationShortName: string; organizationLogoUrl: string | null; organizationFaviconUrl: string | null; adminColorPrimary: string; adminColorBgBase: string; publicColorPrimary: string; publicColorBgBase: string; publicColorBgContainer: string; publicHeaderGradient: string; footerText: string; loginSubtitle: string; emailFromName: string; smtpHost: string; smtpPort: number; smtpUser: string; smtpPass: string; smtpFromAddress: string; smtpActiveProvider: string; emailTestMode: boolean; testEmailRecipient: string; enablePublicRegistration: boolean; enableEmailVerification: boolean; autoApproveVerifiedUsers: boolean; enableInfluence: boolean; enableMap: boolean; enableNewsletter: boolean; enableLandingPages: boolean; enableMediaFeatures: boolean; enablePayments: boolean; enableGalleryAds: boolean; enableChat: boolean; enableEvents: boolean; enableDocsComments: boolean; enableSms: boolean; enablePeople: boolean; enableSocial: boolean; enableMeet: boolean; enableMeetingPlanner: boolean; enableTicketedEvents: boolean; enableSocialCalendar: boolean; enableDocsCollaboration: boolean; requireEventApproval: boolean; autoSyncPeopleToMap: boolean; smsTermuxApiUrl: string; smsTermuxApiKey: string; smsTailscaleApiKey: string; smsTailscaleTailnet: string; smsTailscaleDeviceId: string; smsTailscaleDeviceName: string; giteaApiToken: string; giteaCommentsRepoOwner: string; giteaCommentsRepoName: string; giteaOauthClientId: string; giteaOauthClientSecret: string; enableUserProvisioning: boolean; provisionGitea: boolean; provisionGiteaTiming: string; provisionVaultwarden: boolean; provisionVaultwardenTiming: string; provisionListmonk: boolean; provisionListmonkTiming: string; enableAutoUpgrade: boolean; autoUpgradeSchedule: string; autoUpgradePullServices: boolean; notifyAdminAutoUpgrade: boolean; navConfig: import("@prisma/client/runtime/library").JsonValue | null; notifyAdminShiftSignup: boolean; notifyAdminResponseSubmitted: boolean; notifyAdminSignRequested: boolean; notifyAdminShiftCancellation: boolean; notifyVolunteerSessionSummary: boolean; notifyVolunteerCancellation: boolean; notifyVolunteerShiftReminder: boolean; notifyVolunteerShiftThankYou: boolean; notifyVolunteerReengagement: boolean; reengagementInactiveDays: number; reengagementCooldownDays: number; homepageTagline: string | null; smsShiftReminders: boolean; smsShiftReminderHours: number; smsShiftSignupConfirm: boolean; smsVolunteerWelcome: boolean; useRegistryForUpgrade: boolean; giteaRegistryUrl: string; }>; /** Full settings + _effective object resolving actual runtime SMTP config (admin use) */ getEffective(): Promise<{ _effective: { provider: string; host: string; port: number; user: string; hasPassword: boolean; fromAddress: string; fromName: string; testMode: boolean; testRecipient: string; }; id: string; createdAt: Date; updatedAt: Date; organizationName: string; organizationShortName: string; organizationLogoUrl: string | null; organizationFaviconUrl: string | null; adminColorPrimary: string; adminColorBgBase: string; publicColorPrimary: string; publicColorBgBase: string; publicColorBgContainer: string; publicHeaderGradient: string; footerText: string; loginSubtitle: string; emailFromName: string; smtpHost: string; smtpPort: number; smtpUser: string; smtpPass: string; smtpFromAddress: string; smtpActiveProvider: string; emailTestMode: boolean; testEmailRecipient: string; enablePublicRegistration: boolean; enableEmailVerification: boolean; autoApproveVerifiedUsers: boolean; enableInfluence: boolean; enableMap: boolean; enableNewsletter: boolean; enableLandingPages: boolean; enableMediaFeatures: boolean; enablePayments: boolean; enableGalleryAds: boolean; enableChat: boolean; enableEvents: boolean; enableDocsComments: boolean; enableSms: boolean; enablePeople: boolean; enableSocial: boolean; enableMeet: boolean; enableMeetingPlanner: boolean; enableTicketedEvents: boolean; enableSocialCalendar: boolean; enableDocsCollaboration: boolean; requireEventApproval: boolean; autoSyncPeopleToMap: boolean; smsTermuxApiUrl: string; smsTermuxApiKey: string; smsTailscaleApiKey: string; smsTailscaleTailnet: string; smsTailscaleDeviceId: string; smsTailscaleDeviceName: string; giteaApiToken: string; giteaCommentsRepoOwner: string; giteaCommentsRepoName: string; giteaOauthClientId: string; giteaOauthClientSecret: string; enableUserProvisioning: boolean; provisionGitea: boolean; provisionGiteaTiming: string; provisionVaultwarden: boolean; provisionVaultwardenTiming: string; provisionListmonk: boolean; provisionListmonkTiming: string; enableAutoUpgrade: boolean; autoUpgradeSchedule: string; autoUpgradePullServices: boolean; notifyAdminAutoUpgrade: boolean; navConfig: import("@prisma/client/runtime/library").JsonValue | null; notifyAdminShiftSignup: boolean; notifyAdminResponseSubmitted: boolean; notifyAdminSignRequested: boolean; notifyAdminShiftCancellation: boolean; notifyVolunteerSessionSummary: boolean; notifyVolunteerCancellation: boolean; notifyVolunteerShiftReminder: boolean; notifyVolunteerShiftThankYou: boolean; notifyVolunteerReengagement: boolean; reengagementInactiveDays: number; reengagementCooldownDays: number; homepageTagline: string | null; smsShiftReminders: boolean; smsShiftReminderHours: number; smsShiftSignupConfirm: boolean; smsVolunteerWelcome: boolean; useRegistryForUpgrade: boolean; giteaRegistryUrl: string; }>; /** Public-safe settings (strips SMTP credentials) */ getPublic(): Promise>; update(data: UpdateSiteSettingsInput): Promise<{ id: string; createdAt: Date; updatedAt: Date; organizationName: string; organizationShortName: string; organizationLogoUrl: string | null; organizationFaviconUrl: string | null; adminColorPrimary: string; adminColorBgBase: string; publicColorPrimary: string; publicColorBgBase: string; publicColorBgContainer: string; publicHeaderGradient: string; footerText: string; loginSubtitle: string; emailFromName: string; smtpHost: string; smtpPort: number; smtpUser: string; smtpPass: string; smtpFromAddress: string; smtpActiveProvider: string; emailTestMode: boolean; testEmailRecipient: string; enablePublicRegistration: boolean; enableEmailVerification: boolean; autoApproveVerifiedUsers: boolean; enableInfluence: boolean; enableMap: boolean; enableNewsletter: boolean; enableLandingPages: boolean; enableMediaFeatures: boolean; enablePayments: boolean; enableGalleryAds: boolean; enableChat: boolean; enableEvents: boolean; enableDocsComments: boolean; enableSms: boolean; enablePeople: boolean; enableSocial: boolean; enableMeet: boolean; enableMeetingPlanner: boolean; enableTicketedEvents: boolean; enableSocialCalendar: boolean; enableDocsCollaboration: boolean; requireEventApproval: boolean; autoSyncPeopleToMap: boolean; smsTermuxApiUrl: string; smsTermuxApiKey: string; smsTailscaleApiKey: string; smsTailscaleTailnet: string; smsTailscaleDeviceId: string; smsTailscaleDeviceName: string; giteaApiToken: string; giteaCommentsRepoOwner: string; giteaCommentsRepoName: string; giteaOauthClientId: string; giteaOauthClientSecret: string; enableUserProvisioning: boolean; provisionGitea: boolean; provisionGiteaTiming: string; provisionVaultwarden: boolean; provisionVaultwardenTiming: string; provisionListmonk: boolean; provisionListmonkTiming: string; enableAutoUpgrade: boolean; autoUpgradeSchedule: string; autoUpgradePullServices: boolean; notifyAdminAutoUpgrade: boolean; navConfig: import("@prisma/client/runtime/library").JsonValue | null; notifyAdminShiftSignup: boolean; notifyAdminResponseSubmitted: boolean; notifyAdminSignRequested: boolean; notifyAdminShiftCancellation: boolean; notifyVolunteerSessionSummary: boolean; notifyVolunteerCancellation: boolean; notifyVolunteerShiftReminder: boolean; notifyVolunteerShiftThankYou: boolean; notifyVolunteerReengagement: boolean; reengagementInactiveDays: number; reengagementCooldownDays: number; homepageTagline: string | null; smsShiftReminders: boolean; smsShiftReminderHours: number; smsShiftSignupConfirm: boolean; smsVolunteerWelcome: boolean; useRegistryForUpgrade: boolean; giteaRegistryUrl: string; }>; }; export {}; //# sourceMappingURL=settings.service.d.ts.map