# Path: redbot/core/data_manager.py
# def load_existing_config():
# def create_temp_config():
# def load_basic_configuration(instance_name_: str):
# def _base_data_path() -> Path:
# def cog_data_path(cog_instance=None, raw_name: str = None) -> Path:
# def core_data_path() -> Path:
# def load_bundled_data(cog_instance, init_location: str):
# def bundled_data_path(cog_instance: commands.Cog) -> Path:
# def storage_type() -> str:
# def storage_details() -> dict:


import asyncio
import asyncio.subprocess  # disables for # https://github.com/PyCQA/pylint/issues/1469
import itertools
import json
import logging
import pathlib
import platform
import re
import shutil
import sys
import tempfile
import time
import aiohttp
import rich.progress
from typing import ClassVar, Final, List, Optional, Pattern, Tuple
from redbot.core import data_manager
from redbot.core.i18n import Translator
from .errors import LavalinkDownloadFailed
from .utils import task_callback




_ = Translator("Audio", pathlib.Path(__file__))
log = logging.getLogger("red.Audio.manager")
JAR_VERSION: Final[str] = "3.4.0"
JAR_BUILD: Final[int] = 1275
LAVALINK_DOWNLOAD_URL: Final[str] = (
    "https://github.com/Cog-Creators/Lavalink-Jars/releases/download/"
    f"{JAR_VERSION}_{JAR_BUILD}/"
    "Lavalink.jar"
)

# Path: redbot/core/data_manager.py
# def load_existing_config():
# def create_temp_config():
# def load_basic_configuration(instance_name_: str):
# def _base_data_path() -> Path:
# def cog_data_path(cog_instance=None, raw_name: str = None) -> Path:
# def core_data_path() -> Path:
# def load_bundled_data(cog_instance, init_location: str):
# def bundled_data_path(cog_instance: commands.Cog) -> Path:
# def storage_type() -> str:
# def storage_details() -> dict:


# Path: redbot/cogs/audio/manager.py
import asyncio
import asyncio.subprocess  # disables for # https://github.com/PyCQA/pylint/issues/1469
import itertools
import json
import logging
import pathlib
import platform
import re
import shutil
import sys
import tempfile
import time
import aiohttp
import rich.progress
from typing import ClassVar, Final, List, Optional, Pattern, Tuple
from redbot.core import data_manager
from redbot.core.i18n import Translator
from .errors import LavalinkDownloadFailed
from .utils import task_callback





_ = Translator("Audio", pathlib.Path(__file__))
log = logging.getLogger("red.Audio.manager")
JAR_VERSION: Final[str] = "3.4.0"
JAR_BUILD: Final[int] = 1275
LAVALINK_DOWNLOAD_URL: Final[str] = (
    "https://github.com/Cog-Creators/Lavalink-Jars/releases/download/"
    f"{JAR_VERSION}_{JAR_BUILD}/"
    "Lavalink.jar"
)

LAVALINK_DOWNLOAD_DIR: Final[pathlib.Path] = data_manager.cog_data_path(raw_name="Audio")