import typing as t from lavalink_rs import LavalinkClient, GuildId class NodeDistributionStrategy: def __new__(cls) -> NodeDistributionStrategy: ... @staticmethod def sharded() -> NodeDistributionStrategy: ... @staticmethod def round_robin() -> NodeDistributionStrategy: ... @staticmethod def main_fallback() -> NodeDistributionStrategy: ... @staticmethod def lowest_load() -> NodeDistributionStrategy: ... @staticmethod def highest_free_memory() -> NodeDistributionStrategy: ... @staticmethod def custom( func: t.Callable[[LavalinkClient, t.Union[GuildId, int]], t.Awaitable[int]], ) -> NodeDistributionStrategy: ...