---@class QuestieOptionsDefaults
local QuestieOptionsDefaults = QuestieLoader:CreateModule("QuestieOptionsDefaults");

function QuestieOptionsDefaults:Load()
    return {
        profile = {
            objectiveFilterDistance = 2,
            spawnFilterDistance = 28,
            availableIconLimit = 30,
            enableIconLimit = false,
            iconLimit = 1500,
            availableScale = 1.2,
            eventScale = 1.35,
            lootScale = 1,
            iconFadeLevel = 0.3,
            trackerLocked = true,
            monsterScale = 1,
            objectScale = 1,
            globalScale = 0.6,
            globalMiniMapScale = 0.7,
            globalTownsfolkScale = 0.6,
            globalMiniMapTownsfolkScale = 0.7,
            globalInstanceScale = 0.6,
            globalMiniMapInstanceScale = 0.7,
            fadeLevel = 20,
            fadeOverPlayer = true,
            fadeOverPlayerLevel = 0.5,
            fadeOverPlayerDistance = 5,
            nameplateX = -17,
            nameplateY = -7,
            nameplateScale = 1,
            nameplateEnabled = true,
            nameplateShowObjectiveText = false,
            nameplateObjectiveTextTargetOnly = false,
            nameplateTextX = 0,
            nameplateTextY = 24,
            nameplateTextScale = 1,
            minimapCoordinatesEnabled = false,
            mapCoordinatesEnabled = true,
            showManualTooltipCoordinates = true,
            mapCoordinatePrecision = 1,
            showWaypointLines = true,
            dbmHUDEnable = false,
            dbmHUDShowAlert = true,
            DBMHUDRefresh = 0.03,
            DBMHUDZoom = 100,
            dbmHUDRadius = 3,
            dbmHUDShowQuest = true,
            dbmHUDShowSlay = false,
            dbmHUDShowLoot = false,
            dbmHUDShowInteract = true,
            mapShowHideEnabled = true,
            worldMapButtonPosition = "TOPRIGHT",
            nameplateTargetFrameEnabled = true,
            nameplateTargetFrameX = -30,
            nameplateTargetFrameY = 25,
            nameplateTargetFrameScale = 1.7,
            alwaysGlowMap = true,
            alwaysGlowMinimap = true,
            questObjectiveColors = true,
            questMinimapObjectiveColors = true,
            enableObjectives = true,
            enableObjectiveMapIcons = true,
            enableObjectiveMinimapIcons = true,
            enableTurnins = true,
            enableTurninMapIcons = true,
            enableTurninMinimapIcons = true,
            enableAvailable = true,
            enableAvailableMapIcons = true,
            enableAvailableMinimapIcons = true,
            enableTooltips = true,
            enableTooltipsItemID = false,
            enableTooltipsNPCID = false,
            enableTooltipsObjectID = false,
            enableTooltipsQuestID = false,
            enableTooltipsQuestLevel = true,
            showQuestXpAtMaxLevel = false,
            enableTooltipsNextInChain = true,
            enableTooltipDroprates = true,
            enableMapIcons = true,
            enableMiniMapIcons = true,
            questieShutUp = false,
            announceWorldEvents = true,
            bugWorkarounds = true,
            hideIconsOnContinents = false,
            trimObjectiveText = true,

            -- Tracker Settings Tab
            autoTrackQuests = true,
            trackerShowCompleteQuests = true,
            trackerShowQuestLevel = true,
            collapseCompletedQuests = false,
            hideCompletedQuestObjectives = false,
            hideBlizzardCompletionText = false,
            hideCompletedAchieveObjectives = true,
            showBlizzardQuestTimer = false,
            trackerHeaderEnabled = true,
            moveHeaderToBottom = false,
            stickyDurabilityFrame = false,
            minimizeTrackerInCombat = false,
            minimizeTrackerInDungeons = true,
            hideTrackerInCombat = false,
            hideTrackerInDungeons = false,
            trackerFadeMinMaxButtons = false,
            trackerFadeQuestItemButtons = false,
            trackerDisableHoverFade = false,
            trackerBackdropEnabled = false,
            currentBackdropEnabled = false,
            trackerBorderEnabled = false,
            currentBorderEnabled = false,
            trackerBackdropFader = false,
            currentBackdropFader = false,
            sizerHidden = false,
            listAchievementsFirst = false,
            stickyVoiceOverFrame = false,
            alwaysShowTracker = false,
            showQuestProgressFirst = false,
            showQuestPercent = false,
            trackerColorObjectives = 'minimal',
            trackerSortObjectives = 'byZone',
            trackerbindSetTomTom = 'ctrlleft',
            trackerbindOpenQuestLog = 'left',
            trackerbindUntrack = "shiftleft",
            trackerSetpoint = "TOPLEFT",
            trackerFontSizeHeader = 12,
            trackerFontHeader = 'Friz Quadrata TT',
            trackerFontSizeZone = 12,
            trackerFontZone = 'Friz Quadrata TT',
            trackerFontSizeQuest = 10,
            trackerFontQuest = 'Friz Quadrata TT',
            trackerFontSizeObjective = 10,
            trackerFontObjective = 'Friz Quadrata TT',
            trackerQuestPadding = 4,
            trackerFontOutline = "",
            trackerBackdropColor = {r = 0, g = 0, b = 0, a = 1},
            trackerHeightRatio = 0.50,
            trackerWidthRatio = 0.20,

            lowLevelStyle = 1, -- Questie.LOWLEVEL_NONE
            manualLevelOffset = 7,
            minLevelFilter = 1,
            maxLevelFilter = 10,
            enabled = true,
            searchType = 1,
            autocomplete = false,
            autoModifier = "shift",
            autoAccept = {
                enabled = false,
                trivial = false,
                repeatable = true,
                pvp = true,
                rejectSharedInBattleground = false,
                abandonBreadcrumbFollowup = false,
            },
            questAnnounceChannel = "party",
            questAnnounceItems = true,
            questAnnounceAccepted = false,
            questAnnounceAbandoned = false,
            questAnnounceObjectives = true,
            questAnnounceObjectiveProgress = false,
            questAnnounceCompleted = false,
            questAnnounceIncompleteBreadcrumb = true,
            questAnnounceLocally = false,
            showPartyQuestObjectives = true,
            hideUnexploredMapIcons = false,
            hideUntrackedQuestsMapIcons = false,
            showRepeatableQuests = true,
            showRepeatableQuestMapIcons = true,
            showRepeatableQuestMinimapIcons = true,
            showTrivialRepeatableQuests = true,
            showTrivialRepeatableQuestMapIcons = true,
            showTrivialRepeatableQuestMinimapIcons = true,
            showEventQuests = true,
            showEventQuestMapIcons = true,
            showEventQuestMinimapIcons = true,
            showDungeonQuests = true,
            showDungeonQuestMapIcons = true,
            showDungeonQuestMinimapIcons = true,
            showRaidQuests = true,
            showRaidQuestMapIcons = true,
            showRaidQuestMinimapIcons = true,
            showDungeonLocations = true,
            showRaidLocations = true,
            showPvPQuests = true,
            showPvPQuestMapIcons = true,
            showPvPQuestMinimapIcons = true,
            showItemStartQuests = false,
            showItemStartQuestMapIcons = false,
            showItemStartQuestMinimapIcons = false,
            showAQWarEffortQuests = false,
            showScourgeInvasionQuests = false,
            showSunsReachQuests = false,
            isleOfQuelDanasPhase = 1,
            isIsleOfQuelDanasPhaseReminderDisabled = false,
            showQuestsInNpcTooltip = true,
            trackerEnabled = true,
            ldbDisplayText = "Questie",
            enableQuestFrameIcons = true,
            loadCustomSounds = false,
            soundOnQuestComplete = false,
            questCompleteSoundChoiceName = "QuestDefault",
            soundOnObjectiveComplete = false,
            objectiveCompleteSoundChoiceName = "ObjectiveDefault",
            soundOnObjectiveProgress = false,
            objectiveProgressSoundChoiceName = "ObjectiveProgress",
            soundDelay = 0.5,
            iconTheme = "questie",

            minimap = {
                hide = false,
				minimapPos = 60,
            },

            TrackerWidth = 0,
            TrackerHeight = 0,

            townsfolkConfig = {
                ["Repair"] = false,
                ["Innkeeper"] = true,
                ["Class Trainer"] = false,
                ["Banker"] = false,
                ["Spirit Healer"] = false,
                ["Flight Master"] = true,
                ["Battlemaster"] = false,
                ["Weapon Master"] = false,
                ["Mailbox"] = true,
                ["Auctioneer"] = false,
                ["Meeting Stones"] = false,
                ["Reagents"] = false,
                ["Poisons"] = false,
            },

            -- Migration
            migrationVersion = 0,
            globalMigrationSteps = {},

            debugEnabled = false,
            debugEnabledPrint = false,
            debugLevel = 0,
            skipValidation = false,
        },
        char = {
            complete = {},
            hidden = {},
            hiddenDailies = {
                nhc = {},
                hc = {},
                cooking = {},
                fishing = {},
                pvp = {},
            },
            journey = {},
            isTrackerExpanded = true,
            TrackerHiddenQuests = {},
            TrackerHiddenObjectives = {},
            TrackedQuests = {},
            AutoUntrackedQuests = {},
            collapsedZones = {},
            minAllQuestsInZone = {},
            collapsedQuests = {},
            trackedAchievementIds = {},
        },
        global = {
            lastDailyRequestResetTime = 0,
            lastDailyRequestDate = "",
            questieLocale = 'enUS',
            questieLocaleDiff = false,
            journeyKeybindDefaultApplied = false,
        }
    }
end
