import Foundation struct SettingsFile { let paths: PathSettingsFile /// The tags to show in the navigation bar let navigation: NavigationSettingsFile let posts: PostSettingsFile let pages: PageSettingsFile let audioPlayer: AudioPlayerSettingsFile let tagOverview: TagOverviewFile? let german: LocalizedPostSettingsFile let english: LocalizedPostSettingsFile } extension SettingsFile: Codable { } extension SettingsFile { static var `default`: SettingsFile { .init( paths: .default, navigation: .default, posts: .default, pages: .default, audioPlayer: AudioPlayerSettings.default.file, tagOverview: nil, german: .default, english: .default ) } }