discord-player 6.6.7-dev.0 → 6.6.8-dev.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -2849,22 +2849,93 @@ declare class QueryResolver {
2849
2849
  static validateURL(q: string): boolean;
2850
2850
  }
2851
2851
 
2852
+ type unsafe = any;
2853
+ /**
2854
+ * The receiver function that will be called when the context is provided
2855
+ */
2856
+ type ContextReceiver<R> = () => R;
2857
+ /**
2858
+ * The props for the context provider
2859
+ */
2860
+ interface ContextProviderProps<T, R> {
2861
+ /**
2862
+ * The value to provide
2863
+ */
2864
+ value: T;
2865
+ /**
2866
+ * The receiver function that will be called when the context is provided
2867
+ */
2868
+ receiver: ContextReceiver<R>;
2869
+ }
2870
+ declare class Context<T> {
2871
+ private defaultValue?;
2872
+ private storage;
2873
+ constructor(defaultValue?: T | undefined);
2874
+ /**
2875
+ * Exit out of this context
2876
+ */
2877
+ exit(scope: ContextReceiver<void>): void;
2878
+ /**
2879
+ * Whether the context is lost
2880
+ */
2881
+ get isLost(): boolean;
2882
+ /**
2883
+ * Get the current value of the context. If the context is lost and no default value is provided, undefined will be returned.
2884
+ */
2885
+ getValue(): T | undefined;
2886
+ /**
2887
+ * Run a function within the context of this provider
2888
+ */
2889
+ provide<R = unsafe>({ receiver, value }: ContextProviderProps<T, R>): R;
2890
+ }
2891
+ /**
2892
+ * Create a new context. The default value is optional.
2893
+ * @param defaultValue The default value of the context
2894
+ * @example const userContext = createContext();
2895
+ *
2896
+ * // the value to provide
2897
+ * const user = {
2898
+ * id: 1,
2899
+ * name: 'John Doe'
2900
+ * };
2901
+ *
2902
+ * // provide the context value to the receiver
2903
+ * context.provide({ value: user, receiver: handler });
2904
+ *
2905
+ * function handler() {
2906
+ * // get the context value
2907
+ * const { id, name } = useContext(context);
2908
+ *
2909
+ * console.log(id, name); // 1, John Doe
2910
+ * }
2911
+ */
2912
+ declare function createContext<T = unsafe>(defaultValue?: T): Context<T>;
2913
+ /**
2914
+ * Get the current value of the context. If the context is lost and no default value is provided, undefined will be returned.
2915
+ * @param context The context to get the value from
2916
+ * @example const value = useContext(context);
2917
+ */
2918
+ declare function useContext<T = unsafe>(context: Context<T>): T | undefined;
2919
+
2852
2920
  /**
2853
2921
  * Fetch guild queue history
2854
2922
  * @param node guild queue node resolvable
2855
2923
  */
2924
+ declare function useHistory<Meta = unknown>(): GuildQueueHistory<Meta> | null;
2856
2925
  declare function useHistory<Meta = unknown>(node: NodeResolvable): GuildQueueHistory<Meta> | null;
2857
2926
 
2858
2927
  /**
2859
2928
  * Fetch guild queue player node
2860
2929
  * @param node Guild queue node resolvable
2861
2930
  */
2931
+ declare function usePlayer<Meta = unknown>(): GuildQueuePlayerNode<Meta> | null;
2862
2932
  declare function usePlayer<Meta = unknown>(node: NodeResolvable): GuildQueuePlayerNode<Meta> | null;
2863
2933
 
2864
2934
  /**
2865
2935
  * Fetch guild queue
2866
2936
  * @param node Guild queue node resolvable
2867
2937
  */
2938
+ declare function useQueue<Meta = unknown>(): GuildQueue<Meta> | null;
2868
2939
  declare function useQueue<Meta = unknown>(node: NodeResolvable): GuildQueue<Meta> | null;
2869
2940
 
2870
2941
  /**
@@ -2878,11 +2949,13 @@ declare function useMasterPlayer(): Player;
2878
2949
  declare function useMainPlayer(): Player;
2879
2950
 
2880
2951
  type SetterFN$1<T, P> = (previous: P) => T;
2952
+ type MetadataDispatch<T> = readonly [() => T, (metadata: T | SetterFN$1<T, T>) => void];
2881
2953
  /**
2882
2954
  * Fetch or manipulate guild queue metadata
2883
2955
  * @param node Guild queue node resolvable
2884
2956
  */
2885
- declare function useMetadata<T = unknown>(node: NodeResolvable): readonly [() => T, (metadata: T | SetterFN$1<T, T>) => void];
2957
+ declare function useMetadata<T = unknown>(): MetadataDispatch<T>;
2958
+ declare function useMetadata<T = unknown>(node: NodeResolvable): MetadataDispatch<T>;
2886
2959
 
2887
2960
  interface TimelineDispatcherOptions {
2888
2961
  ignoreFilters: boolean;
@@ -2892,7 +2965,7 @@ interface TimelineDispatcherOptions {
2892
2965
  * @param node Guild queue node resolvable
2893
2966
  * @param options Options for timeline dispatcher
2894
2967
  */
2895
- declare function useTimeline(node: NodeResolvable, options?: Partial<TimelineDispatcherOptions>): {
2968
+ declare function useTimeline(node?: NodeResolvable, options?: Partial<TimelineDispatcherOptions>): {
2896
2969
  readonly timestamp: PlayerTimestamp;
2897
2970
  readonly volume: number;
2898
2971
  readonly paused: boolean;
@@ -2916,11 +2989,13 @@ declare function onAfterCreateStream(handler: OnAfterCreateStreamHandler): void;
2916
2989
  declare function onBeforeCreateStream(handler: OnBeforeCreateStreamHandler): void;
2917
2990
 
2918
2991
  type SetterFN = (previous: number) => number;
2992
+ type VolumeDispatch = readonly [() => number, (volume: number | SetterFN) => boolean | undefined];
2919
2993
  /**
2920
2994
  * Fetch or manipulate player volume
2921
2995
  * @param node Guild queue node resolvable
2922
2996
  */
2923
- declare function useVolume(node: NodeResolvable): readonly [() => number, (volume: number | SetterFN) => boolean | undefined];
2997
+ declare function useVolume(): VolumeDispatch;
2998
+ declare function useVolume(node: NodeResolvable): VolumeDispatch;
2924
2999
 
2925
3000
  declare const instances: Collection<string, Player>;
2926
3001
 
@@ -2936,4 +3011,4 @@ declare function createHook<T extends HookDeclaration<(...args: any[]) => any>>(
2936
3011
 
2937
3012
  declare const version: string;
2938
3013
 
2939
- export { AFilterGraph, AsyncQueue, AsyncQueueAcquisitionOptions, AsyncQueueEntry, AsyncQueueExceptionHandler, AudioFilters, BaseExtractor, CreateStreamOps, DiscordPlayerQueryResultCache, Encodable, EqualizerConfigurationPreset, ExtractorExecutionContext, ExtractorExecutionEvents, ExtractorExecutionFN, ExtractorExecutionResult, ExtractorInfo, ExtractorLoaderOptionDict, ExtractorResolvable, ExtractorSearchContext, ExtractorStreamable, FFMPEG_ARGS_PIPED, FFMPEG_ARGS_STRING, FFMPEG_SRATE_REGEX, FFmpegFilterer, FFmpegStreamOptions, FilterGraph, FiltersName, GuildNodeCreateOptions, GuildNodeInit, GuildNodeManager, GuildQueue, GuildQueueAFiltersCache, GuildQueueAudioFilters, GuildQueueEvent, GuildQueueEvents, GuildQueueHistory, GuildQueuePlayerNode, GuildQueueStatistics, GuildQueueStatisticsMetadata, HookDeclaration, HookDeclarationContext, IPBlock, IPRotationConfig, IPRotator, NextFunction, NodeResolvable, OnAfterCreateStreamHandler, OnBeforeCreateStreamHandler, PlayOptions, Player, PlayerEvent, PlayerEvents, PlayerEventsEmitter, PlayerInitOptions, PlayerNodeInitializationResult, PlayerNodeInitializerOptions, PlayerProgressbarOptions, PlayerSearchResult, PlayerTimestamp, PlayerTriggeredReason, Playlist, PlaylistInitData, PlaylistJSON, PostProcessedResult, QueryCache, QueryCacheOptions, QueryCacheProvider, QueryCacheResolverContext, QueryExtractorSearch, QueryResolver, QueryType, QueueFilters, QueueRepeatMode, RawTrackData, RawTrackInit, ResolvedQuery, ResourcePlayOptions, SearchOptions, SearchQueryType, SearchResult, SearchResultData, SerializedPlaylist, SerializedTrack, SerializedType, SkipOptions, StreamConfig, StreamDispatcher, TimeData, TimelineDispatcherOptions, Track, TrackJSON, TrackLike, TrackResolvable, TrackSkipReason, TrackSource, TypeUtil, Util, VALIDATE_QUEUE_CAP, VoiceConnectConfig, VoiceEvents, VoiceReceiverNode, VoiceReceiverOptions, VoiceStateHandler, VoiceUtils, WithMetadata, createFFmpegStream, createHook, decode, deserialize, encode, onAfterCreateStream, onBeforeCreateStream, serialize, tryIntoThumbnailString, useHistory, useMainPlayer, useMasterPlayer, useMetadata, usePlayer, useQueue, useTimeline, useVolume, version };
3014
+ export { AFilterGraph, AsyncQueue, AsyncQueueAcquisitionOptions, AsyncQueueEntry, AsyncQueueExceptionHandler, AudioFilters, BaseExtractor, Context, ContextProviderProps, ContextReceiver, CreateStreamOps, DiscordPlayerQueryResultCache, Encodable, EqualizerConfigurationPreset, ExtractorExecutionContext, ExtractorExecutionEvents, ExtractorExecutionFN, ExtractorExecutionResult, ExtractorInfo, ExtractorLoaderOptionDict, ExtractorResolvable, ExtractorSearchContext, ExtractorStreamable, FFMPEG_ARGS_PIPED, FFMPEG_ARGS_STRING, FFMPEG_SRATE_REGEX, FFmpegFilterer, FFmpegStreamOptions, FilterGraph, FiltersName, GuildNodeCreateOptions, GuildNodeInit, GuildNodeManager, GuildQueue, GuildQueueAFiltersCache, GuildQueueAudioFilters, GuildQueueEvent, GuildQueueEvents, GuildQueueHistory, GuildQueuePlayerNode, GuildQueueStatistics, GuildQueueStatisticsMetadata, HookDeclaration, HookDeclarationContext, IPBlock, IPRotationConfig, IPRotator, MetadataDispatch, NextFunction, NodeResolvable, OnAfterCreateStreamHandler, OnBeforeCreateStreamHandler, PlayOptions, Player, PlayerEvent, PlayerEvents, PlayerEventsEmitter, PlayerInitOptions, PlayerNodeInitializationResult, PlayerNodeInitializerOptions, PlayerProgressbarOptions, PlayerSearchResult, PlayerTimestamp, PlayerTriggeredReason, Playlist, PlaylistInitData, PlaylistJSON, PostProcessedResult, QueryCache, QueryCacheOptions, QueryCacheProvider, QueryCacheResolverContext, QueryExtractorSearch, QueryResolver, QueryType, QueueFilters, QueueRepeatMode, RawTrackData, RawTrackInit, ResolvedQuery, ResourcePlayOptions, SearchOptions, SearchQueryType, SearchResult, SearchResultData, SerializedPlaylist, SerializedTrack, SerializedType, SetterFN$1 as SetterFN, SkipOptions, StreamConfig, StreamDispatcher, TimeData, TimelineDispatcherOptions, Track, TrackJSON, TrackLike, TrackResolvable, TrackSkipReason, TrackSource, TypeUtil, Util, VALIDATE_QUEUE_CAP, VoiceConnectConfig, VoiceEvents, VoiceReceiverNode, VoiceReceiverOptions, VoiceStateHandler, VoiceUtils, WithMetadata, createContext, createFFmpegStream, createHook, decode, deserialize, encode, onAfterCreateStream, onBeforeCreateStream, serialize, tryIntoThumbnailString, useContext, useHistory, useMainPlayer, useMasterPlayer, useMetadata, usePlayer, useQueue, useTimeline, useVolume, version };