spotifyplus 0.1.1

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.
@@ -0,0 +1,1115 @@
1
+ import React from "react";
2
+ import { type AnimatedNodeLike as LegacyAnimatedNodeLike } from "spotifyplus/internal/legacy-animated";
3
+ import * as NativeAnimatedCore from "spotifyplus/react/Animated/core";
4
+ import type { NativeAnimatedNodeLike } from "spotifyplus/react/Animated/core";
5
+ import type { NativeComponentRef, ScrollToEndOptions, ScrollToOptions } from "spotifyplus/internal/renderer";
6
+ export type LayoutSize = number | `${number}dp` | `${number}px` | `${number}sp` | `${number}%` | "auto" | "match_parent" | "match" | "fill_parent" | "fill" | "wrap_content" | "wrap";
7
+ export type SizeValue = number | `${number}dp` | `${number}px` | `${number}sp` | `${number}%` | "auto";
8
+ export type ColorValue = string | number;
9
+ export type ViewShadow = {
10
+ shadowColor?: AnimatedStyleValue<ColorValue>;
11
+ shadowOpacity?: AnimatedStyleValue<number>;
12
+ shadowRadius?: AnimatedStyleValue<SizeValue>;
13
+ shadowOffset?: {
14
+ width?: AnimatedStyleValue<SizeValue>;
15
+ height?: AnimatedStyleValue<SizeValue>;
16
+ };
17
+ };
18
+ export type VisibilityValue = "visible" | "invisible" | "gone";
19
+ export type DisplayValue = "flex" | "none";
20
+ export type FlexDirectionValue = "row" | "column" | "row-reverse" | "column-reverse";
21
+ export type JustifyContentValue = "flex-start" | "center" | "flex-end" | "space-between" | "space-around" | "space-evenly";
22
+ export type AlignItemsValue = "stretch" | "flex-start" | "center" | "flex-end" | "baseline" | "space-between" | "space-around";
23
+ export type AlignSelfValue = "auto" | "stretch" | "flex-start" | "center" | "flex-end" | "baseline";
24
+ export type FlexWrapValue = "nowrap" | "wrap" | "wrap-reverse";
25
+ export type OverflowValue = "visible" | "hidden" | "scroll";
26
+ export type DirectionValue = "inherit" | "ltr" | "rtl";
27
+ export type FontWeightValue = "normal" | "bold" | "100" | "200" | "300" | "400" | "500" | "600" | "700" | "800" | "900" | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900;
28
+ export type FontStyleValue = "normal" | "italic";
29
+ export type TextAlignValue = "auto" | "left" | "center" | "right";
30
+ export type EllipsizeModeValue = "head" | "middle" | "tail" | "clip";
31
+ export type ResizeModeValue = "cover" | "contain" | "stretch" | "center";
32
+ export type KeyboardTypeValue = "default" | "email-address" | "numeric" | "decimal-pad" | "phone-pad";
33
+ export type ReturnKeyTypeValue = "done" | "go" | "next" | "search" | "send";
34
+ export type OrientationValue = "horizontal" | "vertical";
35
+ export type GravityValue = "center" | "center_horizontal" | "center_vertical" | "start" | "end" | "left" | "right" | "top" | "bottom" | `${string}|${string}`;
36
+ export type ShowDividersValue = "none" | "beginning" | "middle" | "end" | `${string}|${string}`;
37
+ export type OverScrollModeValue = "always" | "ifContentScrolls" | "never";
38
+ export type ScaleTypeValue = "centerCrop" | "center_crop" | "fitCenter" | "fit_center" | "fitXY" | "fit_xy" | "center" | "centerInside" | "center_inside" | "fitStart" | "fit_start" | "fitEnd" | "fit_end" | "matrix";
39
+ export type NativeNodeId = number;
40
+ export type ImageSource = string | {
41
+ uri: string;
42
+ };
43
+ export type StyleProp<T> = T | null | undefined | false | ReadonlyArray<StyleProp<T>>;
44
+ export type AnimatedStyleValue<T> = T | LegacyAnimatedNodeLike | NativeAnimatedNodeLike;
45
+ type ReactChildren = React.ReactNode;
46
+ type HostProps = Record<string, unknown>;
47
+ export interface PressEvent {
48
+ targetId: number;
49
+ x: number;
50
+ y: number;
51
+ }
52
+ export interface FocusEvent {
53
+ targetId: number;
54
+ hasFocus: boolean;
55
+ }
56
+ export interface ScrollEvent {
57
+ targetId: number;
58
+ x: number;
59
+ y: number;
60
+ oldX: number;
61
+ oldY: number;
62
+ }
63
+ export interface VisibleRangeEvent {
64
+ targetId: number;
65
+ first: number;
66
+ last: number;
67
+ visibleFirst: number;
68
+ visibleLast: number;
69
+ }
70
+ export interface ViewToken<ItemT = any> {
71
+ item: ItemT;
72
+ index: number;
73
+ key: string;
74
+ isViewable: boolean;
75
+ }
76
+ export interface ViewabilityChangeEvent<ItemT = any> {
77
+ viewableItems: ViewToken<ItemT>[];
78
+ changed: ViewToken<ItemT>[];
79
+ }
80
+ export interface SubmitEditingEvent {
81
+ targetId: number;
82
+ text: string;
83
+ actionId: number;
84
+ }
85
+ export interface LayoutStyle {
86
+ width?: LayoutSize;
87
+ height?: LayoutSize;
88
+ minWidth?: LayoutSize;
89
+ minHeight?: LayoutSize;
90
+ maxWidth?: LayoutSize;
91
+ maxHeight?: LayoutSize;
92
+ margin?: SizeValue;
93
+ marginHorizontal?: SizeValue;
94
+ marginVertical?: SizeValue;
95
+ marginLeft?: SizeValue;
96
+ marginRight?: SizeValue;
97
+ marginTop?: SizeValue;
98
+ marginBottom?: SizeValue;
99
+ marginStart?: SizeValue;
100
+ marginEnd?: SizeValue;
101
+ padding?: SizeValue;
102
+ paddingHorizontal?: SizeValue;
103
+ paddingVertical?: SizeValue;
104
+ paddingLeft?: SizeValue;
105
+ paddingRight?: SizeValue;
106
+ paddingTop?: SizeValue;
107
+ paddingBottom?: SizeValue;
108
+ paddingStart?: SizeValue;
109
+ paddingEnd?: SizeValue;
110
+ position?: "relative" | "absolute" | "static";
111
+ top?: SizeValue;
112
+ bottom?: SizeValue;
113
+ left?: SizeValue;
114
+ right?: SizeValue;
115
+ start?: SizeValue;
116
+ end?: SizeValue;
117
+ display?: DisplayValue;
118
+ flex?: number;
119
+ flexGrow?: number;
120
+ flexShrink?: number;
121
+ flexBasis?: LayoutSize;
122
+ flexDirection?: FlexDirectionValue;
123
+ justifyContent?: JustifyContentValue;
124
+ alignItems?: AlignItemsValue;
125
+ alignSelf?: AlignSelfValue;
126
+ flexWrap?: FlexWrapValue;
127
+ overflow?: OverflowValue;
128
+ direction?: DirectionValue;
129
+ aspectRatio?: number;
130
+ gap?: SizeValue;
131
+ rowGap?: SizeValue;
132
+ columnGap?: SizeValue;
133
+ }
134
+ export interface TransformStyle {
135
+ opacity?: AnimatedStyleValue<number>;
136
+ backgroundColor?: ColorValue;
137
+ borderRadius?: SizeValue;
138
+ borderTopLeftRadius?: SizeValue;
139
+ borderTopRightRadius?: SizeValue;
140
+ borderBottomLeftRadius?: SizeValue;
141
+ borderBottomRightRadius?: SizeValue;
142
+ borderWidth?: SizeValue;
143
+ borderLeftWidth?: SizeValue;
144
+ borderTopWidth?: SizeValue;
145
+ borderRightWidth?: SizeValue;
146
+ borderBottomWidth?: SizeValue;
147
+ borderStartWidth?: SizeValue;
148
+ borderEndWidth?: SizeValue;
149
+ borderColor?: ColorValue;
150
+ transform?: ReadonlyArray<{
151
+ translateX?: AnimatedStyleValue<SizeValue>;
152
+ translateY?: AnimatedStyleValue<SizeValue>;
153
+ translateZ?: AnimatedStyleValue<SizeValue>;
154
+ scale?: AnimatedStyleValue<number>;
155
+ scaleX?: AnimatedStyleValue<number>;
156
+ scaleY?: AnimatedStyleValue<number>;
157
+ rotate?: AnimatedStyleValue<string | number>;
158
+ rotateX?: AnimatedStyleValue<string | number>;
159
+ rotateY?: AnimatedStyleValue<string | number>;
160
+ rotation?: AnimatedStyleValue<string | number>;
161
+ }>;
162
+ elevation?: AnimatedStyleValue<SizeValue>;
163
+ scaleX?: AnimatedStyleValue<number>;
164
+ scaleY?: AnimatedStyleValue<number>;
165
+ rotation?: AnimatedStyleValue<number>;
166
+ rotationX?: AnimatedStyleValue<number>;
167
+ rotationY?: AnimatedStyleValue<number>;
168
+ translateX?: AnimatedStyleValue<SizeValue>;
169
+ translateY?: AnimatedStyleValue<SizeValue>;
170
+ translateZ?: AnimatedStyleValue<SizeValue>;
171
+ clipToOutline?: boolean;
172
+ }
173
+ export interface TextStyle extends LayoutStyle, TransformStyle {
174
+ color?: ColorValue;
175
+ fontSize?: number;
176
+ fontWeight?: FontWeightValue;
177
+ fontStyle?: FontStyleValue;
178
+ textAlign?: TextAlignValue;
179
+ lineHeight?: number;
180
+ letterSpacing?: number;
181
+ includeFontPadding?: boolean;
182
+ textTransform?: "none" | "uppercase";
183
+ textShadowColor?: ColorValue;
184
+ textShadowOffset?: {
185
+ width?: SizeValue;
186
+ height?: SizeValue;
187
+ };
188
+ textShadowRadius?: SizeValue;
189
+ }
190
+ export interface ViewStyle extends LayoutStyle, TransformStyle {
191
+ shadow?: ViewShadow;
192
+ }
193
+ export interface RelativeLayoutRuleProps {
194
+ alignParentTop?: boolean;
195
+ alignParentBottom?: boolean;
196
+ alignParentStart?: boolean;
197
+ alignParentEnd?: boolean;
198
+ centerInParent?: boolean;
199
+ centerHorizontal?: boolean;
200
+ centerVertical?: boolean;
201
+ above?: NativeNodeId;
202
+ below?: NativeNodeId;
203
+ toStartOf?: NativeNodeId;
204
+ toEndOf?: NativeNodeId;
205
+ alignStart?: NativeNodeId;
206
+ alignEnd?: NativeNodeId;
207
+ alignTop?: NativeNodeId;
208
+ alignBottom?: NativeNodeId;
209
+ }
210
+ export interface CommonViewProps extends RelativeLayoutRuleProps {
211
+ children?: ReactChildren;
212
+ style?: StyleProp<ViewStyle | TextStyle>;
213
+ width?: LayoutSize;
214
+ height?: LayoutSize;
215
+ minWidth?: LayoutSize;
216
+ minHeight?: LayoutSize;
217
+ maxWidth?: LayoutSize;
218
+ maxHeight?: LayoutSize;
219
+ visible?: boolean;
220
+ visibility?: VisibilityValue;
221
+ display?: DisplayValue;
222
+ disabled?: boolean;
223
+ enabled?: boolean;
224
+ pointerEvents?: "none" | "auto" | "box-none" | "box-only";
225
+ clickable?: boolean;
226
+ longClickable?: boolean;
227
+ focusable?: boolean;
228
+ focusableInTouchMode?: boolean;
229
+ selected?: boolean;
230
+ activated?: boolean;
231
+ duplicateParentStateEnabled?: boolean;
232
+ hapticFeedbackEnabled?: boolean;
233
+ soundEffectsEnabled?: boolean;
234
+ opacity?: AnimatedStyleValue<number>;
235
+ backgroundColor?: ColorValue;
236
+ borderRadius?: SizeValue;
237
+ borderTopLeftRadius?: SizeValue;
238
+ borderTopRightRadius?: SizeValue;
239
+ borderBottomLeftRadius?: SizeValue;
240
+ borderBottomRightRadius?: SizeValue;
241
+ borderWidth?: SizeValue;
242
+ borderLeftWidth?: SizeValue;
243
+ borderTopWidth?: SizeValue;
244
+ borderRightWidth?: SizeValue;
245
+ borderBottomWidth?: SizeValue;
246
+ borderStartWidth?: SizeValue;
247
+ borderEndWidth?: SizeValue;
248
+ borderColor?: ColorValue;
249
+ transform?: TransformStyle["transform"];
250
+ clipToOutline?: boolean;
251
+ elevation?: AnimatedStyleValue<SizeValue>;
252
+ rotation?: AnimatedStyleValue<number>;
253
+ rotationX?: AnimatedStyleValue<number>;
254
+ rotationY?: AnimatedStyleValue<number>;
255
+ scaleX?: AnimatedStyleValue<number>;
256
+ scaleY?: AnimatedStyleValue<number>;
257
+ translateX?: AnimatedStyleValue<SizeValue>;
258
+ translateY?: AnimatedStyleValue<SizeValue>;
259
+ translateZ?: AnimatedStyleValue<SizeValue>;
260
+ shadow?: ViewShadow;
261
+ accessibilityLabel?: string;
262
+ contentDescription?: string;
263
+ testID?: string;
264
+ nativeID?: string;
265
+ tag?: string | number | boolean;
266
+ keepScreenOn?: boolean;
267
+ fitsSystemWindows?: boolean;
268
+ clipChildren?: boolean;
269
+ clipToPadding?: boolean;
270
+ margin?: SizeValue;
271
+ marginHorizontal?: SizeValue;
272
+ marginVertical?: SizeValue;
273
+ marginLeft?: SizeValue;
274
+ marginRight?: SizeValue;
275
+ marginTop?: SizeValue;
276
+ marginBottom?: SizeValue;
277
+ marginStart?: SizeValue;
278
+ marginEnd?: SizeValue;
279
+ padding?: SizeValue;
280
+ paddingHorizontal?: SizeValue;
281
+ paddingVertical?: SizeValue;
282
+ paddingLeft?: SizeValue;
283
+ paddingRight?: SizeValue;
284
+ paddingTop?: SizeValue;
285
+ paddingBottom?: SizeValue;
286
+ paddingStart?: SizeValue;
287
+ paddingEnd?: SizeValue;
288
+ flex?: number;
289
+ flexGrow?: number;
290
+ flexShrink?: number;
291
+ flexBasis?: LayoutSize;
292
+ flexDirection?: FlexDirectionValue;
293
+ justifyContent?: JustifyContentValue;
294
+ alignItems?: AlignItemsValue;
295
+ alignSelf?: AlignSelfValue;
296
+ flexWrap?: FlexWrapValue;
297
+ overflow?: OverflowValue;
298
+ direction?: DirectionValue;
299
+ aspectRatio?: number;
300
+ gap?: SizeValue;
301
+ rowGap?: SizeValue;
302
+ columnGap?: SizeValue;
303
+ position?: "relative" | "absolute" | "static";
304
+ top?: SizeValue;
305
+ bottom?: SizeValue;
306
+ left?: SizeValue;
307
+ right?: SizeValue;
308
+ start?: SizeValue;
309
+ end?: SizeValue;
310
+ layoutWeight?: number;
311
+ orientation?: OrientationValue;
312
+ gravity?: GravityValue;
313
+ layoutGravity?: GravityValue;
314
+ weightSum?: number;
315
+ showDividers?: ShowDividersValue;
316
+ dividerPadding?: SizeValue;
317
+ baselineAligned?: boolean;
318
+ onClick?: (event: PressEvent) => void;
319
+ onLongClick?: (event: PressEvent) => void;
320
+ onPress?: (event: PressEvent) => void;
321
+ onLongPress?: (event: PressEvent) => void;
322
+ onPressIn?: (event: PressEvent) => void;
323
+ onPressOut?: (event: PressEvent) => void;
324
+ onFocus?: (event: FocusEvent) => void;
325
+ onBlur?: (event: FocusEvent) => void;
326
+ }
327
+ export interface ViewProps extends CommonViewProps {
328
+ }
329
+ export interface FrameLayoutProps extends CommonViewProps {
330
+ }
331
+ export interface RelativeLayoutProps extends CommonViewProps {
332
+ }
333
+ export interface PlainViewProps extends CommonViewProps {
334
+ }
335
+ export interface TextProps extends CommonViewProps {
336
+ style?: StyleProp<TextStyle | ViewStyle>;
337
+ children?: ReactChildren;
338
+ text?: string | number;
339
+ color?: ColorValue;
340
+ fontSize?: number;
341
+ fontWeight?: FontWeightValue;
342
+ fontStyle?: FontStyleValue;
343
+ textAlign?: TextAlignValue;
344
+ lineHeight?: number;
345
+ letterSpacing?: number;
346
+ numberOfLines?: number;
347
+ ellipsizeMode?: EllipsizeModeValue;
348
+ selectable?: boolean;
349
+ allowFontPadding?: boolean;
350
+ textTransform?: "none" | "uppercase";
351
+ textShadowColor?: ColorValue;
352
+ textShadowOffset?: {
353
+ width?: SizeValue;
354
+ height?: SizeValue;
355
+ };
356
+ textShadowRadius?: SizeValue;
357
+ hint?: string;
358
+ hintColor?: ColorValue;
359
+ textColor?: ColorValue;
360
+ textSizeSp?: number;
361
+ maxLines?: number;
362
+ minLines?: number;
363
+ lines?: number;
364
+ singleLine?: boolean;
365
+ allCaps?: boolean;
366
+ includeFontPadding?: boolean;
367
+ textStyle?: "normal" | "bold" | "italic" | "bold|italic" | "italic|bold";
368
+ ellipsize?: "start" | "middle" | "end" | "marquee";
369
+ textIsSelectable?: boolean;
370
+ lineSpacingExtra?: number;
371
+ lineSpacingMultiplier?: number;
372
+ maxLength?: number;
373
+ }
374
+ export interface TextInputProps extends TextProps {
375
+ value?: string | number;
376
+ defaultValue?: string | number;
377
+ placeholder?: string;
378
+ placeholderTextColor?: ColorValue;
379
+ keyboardType?: KeyboardTypeValue;
380
+ secureTextEntry?: boolean;
381
+ multiline?: boolean;
382
+ returnKeyType?: ReturnKeyTypeValue;
383
+ selectTextOnFocus?: boolean;
384
+ caretHidden?: boolean;
385
+ editable?: boolean;
386
+ inputType?: string | number;
387
+ imeOptions?: string | number;
388
+ selectAllOnFocus?: boolean;
389
+ cursorVisible?: boolean;
390
+ onChangeText?: (text: string) => void;
391
+ onSubmitEditing?: (event: SubmitEditingEvent) => void;
392
+ }
393
+ export interface ImageProps extends CommonViewProps {
394
+ style?: StyleProp<ViewStyle>;
395
+ source?: ImageSource;
396
+ src?: string;
397
+ resizeMode?: ResizeModeValue;
398
+ scaleType?: ScaleTypeValue;
399
+ tintColor?: ColorValue;
400
+ adjustViewBounds?: boolean;
401
+ cropToPadding?: boolean;
402
+ }
403
+ export interface ButtonProps extends TextProps {
404
+ title?: string;
405
+ }
406
+ export interface ProgressBarProps extends CommonViewProps {
407
+ indeterminate?: boolean;
408
+ min?: number;
409
+ progress?: number;
410
+ secondaryProgress?: number;
411
+ max?: number;
412
+ progressTintColor?: ColorValue;
413
+ secondaryProgressTintColor?: ColorValue;
414
+ progressBackgroundTintColor?: ColorValue;
415
+ indeterminateTintColor?: ColorValue;
416
+ }
417
+ export interface ActivityIndicatorProps extends CommonViewProps {
418
+ animating?: boolean;
419
+ color?: ColorValue;
420
+ hidesWhenStopped?: boolean;
421
+ }
422
+ export interface SliderProps extends ProgressBarProps {
423
+ thumbTintColor?: ColorValue;
424
+ tickMarkTintColor?: ColorValue;
425
+ splitTrack?: boolean;
426
+ onValueChange?: (value: number) => void;
427
+ onSlidingStart?: (value: number) => void;
428
+ onSlidingComplete?: (value: number) => void;
429
+ }
430
+ export interface CompoundButtonProps extends TextProps {
431
+ checked?: boolean;
432
+ value?: boolean;
433
+ buttonTintColor?: ColorValue;
434
+ onValueChange?: (value: boolean) => void;
435
+ }
436
+ export interface SwitchProps extends CompoundButtonProps {
437
+ thumbColor?: ColorValue;
438
+ trackColor?: ColorValue;
439
+ thumbTintColor?: ColorValue;
440
+ trackTintColor?: ColorValue;
441
+ textOn?: string;
442
+ textOff?: string;
443
+ showText?: boolean;
444
+ }
445
+ export interface ScrollViewProps extends CommonViewProps {
446
+ style?: StyleProp<ViewStyle>;
447
+ horizontal?: boolean;
448
+ contentContainerStyle?: StyleProp<ViewStyle>;
449
+ fillViewport?: boolean;
450
+ smoothScrollingEnabled?: boolean;
451
+ verticalScrollBarEnabled?: boolean;
452
+ horizontalScrollBarEnabled?: boolean;
453
+ showsVerticalScrollIndicator?: boolean;
454
+ showsHorizontalScrollIndicator?: boolean;
455
+ overScrollMode?: OverScrollModeValue;
456
+ onScroll?: (event: ScrollEvent) => void;
457
+ }
458
+ export interface HorizontalScrollViewProps extends ScrollViewProps {
459
+ }
460
+ export interface CheckBoxProps extends CompoundButtonProps {
461
+ }
462
+ export interface RadioButtonProps extends CompoundButtonProps {
463
+ }
464
+ export interface RadioGroupProps extends CommonViewProps {
465
+ checkedId?: NativeNodeId | null;
466
+ onValueChange?: (checkedId: NativeNodeId | null) => void;
467
+ }
468
+ export interface ImageButtonProps extends ImageProps {
469
+ }
470
+ export interface ToggleButtonProps extends CompoundButtonProps {
471
+ textOn?: string;
472
+ textOff?: string;
473
+ disabledAlpha?: number;
474
+ }
475
+ export interface SpaceProps extends CommonViewProps {
476
+ }
477
+ export type ScriptViewLength = SizeValue | `${number}%`;
478
+ export type ScriptViewGradient = {
479
+ type?: "linear" | "linearGradient" | "radial" | "radialGradient" | "sweep" | "sweepGradient";
480
+ colors: ColorValue[];
481
+ positions?: number[];
482
+ startX?: ScriptViewLength;
483
+ startY?: ScriptViewLength;
484
+ endX?: ScriptViewLength;
485
+ endY?: ScriptViewLength;
486
+ centerX?: ScriptViewLength;
487
+ centerY?: ScriptViewLength;
488
+ radius?: ScriptViewLength;
489
+ };
490
+ export type ScriptViewFill = ColorValue | ScriptViewGradient;
491
+ export type ScriptViewShadow = {
492
+ color?: ColorValue;
493
+ radius?: number;
494
+ dx?: number;
495
+ dy?: number;
496
+ };
497
+ export interface ScriptViewBaseNode {
498
+ id?: string | number;
499
+ type: string;
500
+ x?: ScriptViewLength;
501
+ y?: ScriptViewLength;
502
+ width?: ScriptViewLength;
503
+ height?: ScriptViewLength;
504
+ opacity?: number;
505
+ alpha?: number;
506
+ visible?: boolean;
507
+ rotation?: number | string;
508
+ scale?: number;
509
+ scaleX?: number;
510
+ scaleY?: number;
511
+ translateX?: ScriptViewLength;
512
+ translateY?: ScriptViewLength;
513
+ pivotX?: ScriptViewLength;
514
+ pivotY?: ScriptViewLength;
515
+ clip?: boolean;
516
+ clipRadius?: ScriptViewLength;
517
+ blendMode?: string;
518
+ shadow?: ScriptViewShadow;
519
+ }
520
+ export interface ScriptViewGroupNode extends ScriptViewBaseNode {
521
+ type: "group" | "layer";
522
+ children?: ScriptViewNode[];
523
+ }
524
+ export interface ScriptViewRectNode extends ScriptViewBaseNode {
525
+ type: "rect" | "roundRect";
526
+ fill?: ScriptViewFill;
527
+ color?: ColorValue;
528
+ stroke?: ColorValue;
529
+ strokeColor?: ColorValue;
530
+ strokeWidth?: ScriptViewLength;
531
+ radius?: ScriptViewLength;
532
+ borderRadius?: ScriptViewLength;
533
+ }
534
+ export interface ScriptViewCircleNode extends ScriptViewBaseNode {
535
+ type: "circle" | "oval";
536
+ fill?: ScriptViewFill;
537
+ color?: ColorValue;
538
+ stroke?: ColorValue;
539
+ strokeColor?: ColorValue;
540
+ strokeWidth?: ScriptViewLength;
541
+ radius?: ScriptViewLength;
542
+ cx?: ScriptViewLength;
543
+ cy?: ScriptViewLength;
544
+ }
545
+ export interface ScriptViewLineNode extends ScriptViewBaseNode {
546
+ type: "line";
547
+ x1?: ScriptViewLength;
548
+ y1?: ScriptViewLength;
549
+ x2?: ScriptViewLength;
550
+ y2?: ScriptViewLength;
551
+ color?: ColorValue;
552
+ stroke?: ColorValue;
553
+ strokeColor?: ColorValue;
554
+ strokeWidth?: ScriptViewLength;
555
+ }
556
+ export interface ScriptViewPathNode extends ScriptViewBaseNode {
557
+ type: "path";
558
+ commands?: Array<{
559
+ cmd: "M" | "L" | "Q" | "C" | "Z" | "moveTo" | "lineTo" | "quadTo" | "cubicTo" | "close";
560
+ x?: ScriptViewLength;
561
+ y?: ScriptViewLength;
562
+ x1?: ScriptViewLength;
563
+ y1?: ScriptViewLength;
564
+ x2?: ScriptViewLength;
565
+ y2?: ScriptViewLength;
566
+ }>;
567
+ fill?: ScriptViewFill;
568
+ color?: ColorValue;
569
+ stroke?: ColorValue;
570
+ strokeColor?: ColorValue;
571
+ strokeWidth?: ScriptViewLength;
572
+ }
573
+ export interface ScriptViewImageNode extends ScriptViewBaseNode {
574
+ type: "image";
575
+ src?: string;
576
+ uri?: string;
577
+ resizeMode?: ResizeModeValue;
578
+ scaleType?: ScaleTypeValue;
579
+ blurRadius?: number;
580
+ tintColor?: ColorValue;
581
+ borderRadius?: ScriptViewLength;
582
+ }
583
+ export interface ScriptViewTextNode extends ScriptViewBaseNode {
584
+ type: "text";
585
+ text: string | number;
586
+ color?: ColorValue;
587
+ fill?: ScriptViewFill;
588
+ fontSize?: number;
589
+ textSizeSp?: number;
590
+ fontWeight?: FontWeightValue;
591
+ fontStyle?: FontStyleValue;
592
+ textAlign?: "left" | "center" | "right";
593
+ lineHeight?: number;
594
+ maxLines?: number;
595
+ includeFontPadding?: boolean;
596
+ }
597
+ export type ScriptViewNode = ScriptViewGroupNode | ScriptViewRectNode | ScriptViewCircleNode | ScriptViewLineNode | ScriptViewPathNode | ScriptViewImageNode | ScriptViewTextNode | (ScriptViewBaseNode & Record<string, unknown>);
598
+ export interface ScriptViewFrameEvent {
599
+ targetId: number;
600
+ time: number;
601
+ delta: number;
602
+ width: number;
603
+ height: number;
604
+ }
605
+ export interface ScriptViewSizeEvent {
606
+ targetId: number;
607
+ width: number;
608
+ height: number;
609
+ oldWidth: number;
610
+ oldHeight: number;
611
+ }
612
+ export interface ScriptViewTouchEvent extends PressEvent {
613
+ pageX: number;
614
+ pageY: number;
615
+ action: string;
616
+ pointerId: number;
617
+ }
618
+ export interface ScriptViewImageEvent {
619
+ targetId: number;
620
+ src: string;
621
+ width?: number;
622
+ height?: number;
623
+ error?: string;
624
+ }
625
+ export interface ScriptViewProps extends CommonViewProps {
626
+ displayList?: ScriptViewNode[];
627
+ nodes?: ScriptViewNode[];
628
+ autoInvalidate?: boolean;
629
+ softwareLayer?: boolean;
630
+ renderEffectBlurRadius?: number;
631
+ onFrame?: (event: ScriptViewFrameEvent) => void;
632
+ onSizeChange?: (event: ScriptViewSizeEvent) => void;
633
+ onTouchStart?: (event: ScriptViewTouchEvent) => void;
634
+ onTouchMove?: (event: ScriptViewTouchEvent) => void;
635
+ onTouchEnd?: (event: ScriptViewTouchEvent) => void;
636
+ onTouchCancel?: (event: ScriptViewTouchEvent) => void;
637
+ onImageLoad?: (event: ScriptViewImageEvent) => void;
638
+ onImageError?: (event: ScriptViewImageEvent) => void;
639
+ onAttached?: (event: {
640
+ targetId: number;
641
+ }) => void;
642
+ onDetached?: (event: {
643
+ targetId: number;
644
+ }) => void;
645
+ }
646
+ export interface PressableStateCallbackType {
647
+ pressed: boolean;
648
+ focused: boolean;
649
+ }
650
+ export interface PressableProps extends Omit<ViewProps, "onClick" | "onLongClick" | "style" | "children"> {
651
+ style?: StyleProp<ViewStyle> | ((state: PressableStateCallbackType) => StyleProp<ViewStyle>);
652
+ children?: ReactChildren | ((state: PressableStateCallbackType) => ReactChildren);
653
+ onPress?: (event: PressEvent) => void;
654
+ onLongPress?: (event: PressEvent) => void;
655
+ onPressIn?: (event: PressEvent) => void;
656
+ onPressOut?: (event: PressEvent) => void;
657
+ }
658
+ export interface TouchableOpacityProps extends PressableProps {
659
+ activeOpacity?: number;
660
+ }
661
+ export interface FlatListScrollToIndexParams {
662
+ index: number;
663
+ animated?: boolean;
664
+ viewOffset?: number;
665
+ viewPosition?: number;
666
+ }
667
+ export interface FlatListScrollToOffsetParams {
668
+ offset: number;
669
+ animated?: boolean;
670
+ }
671
+ export interface FlatListGetItemLayoutResult {
672
+ length: number;
673
+ offset: number;
674
+ index: number;
675
+ }
676
+ export interface FlatListProps<ItemT> extends Omit<ScrollViewProps, "children"> {
677
+ data?: readonly ItemT[] | null;
678
+ renderItem: (info: {
679
+ item: ItemT;
680
+ index: number;
681
+ }) => React.ReactNode;
682
+ keyExtractor?: (item: ItemT, index: number) => string;
683
+ ListHeaderComponent?: React.ComponentType<any> | React.ReactElement | null;
684
+ ListFooterComponent?: React.ComponentType<any> | React.ReactElement | null;
685
+ ListEmptyComponent?: React.ComponentType<any> | React.ReactElement | null;
686
+ ItemSeparatorComponent?: React.ComponentType<any> | React.ReactElement | null;
687
+ initialNumToRender?: number;
688
+ windowSize?: number;
689
+ maxToRenderPerBatch?: number;
690
+ estimatedItemSize?: number;
691
+ getItemLayout?: (data: readonly ItemT[] | null | undefined, index: number) => FlatListGetItemLayoutResult;
692
+ initialScrollIndex?: number;
693
+ onViewableItemsChanged?: (event: ViewabilityChangeEvent<ItemT>) => void;
694
+ }
695
+ export interface View extends NativeComponentRef {
696
+ }
697
+ export interface LinearLayout extends View {
698
+ }
699
+ export interface FrameLayout extends View {
700
+ }
701
+ export interface RelativeLayout extends View {
702
+ }
703
+ export interface PlainView extends View {
704
+ }
705
+ export interface Text extends TextView {
706
+ }
707
+ export interface TextView extends View {
708
+ }
709
+ export interface TextInput extends EditText {
710
+ }
711
+ export interface EditText extends TextView {
712
+ }
713
+ export interface Button extends TextView {
714
+ }
715
+ export interface ProgressBar extends View {
716
+ }
717
+ export interface ProgressBarHorizontal extends ProgressBar {
718
+ }
719
+ export interface ActivityIndicator extends ProgressBar {
720
+ }
721
+ export interface Slider extends View {
722
+ }
723
+ export interface SeekBar extends Slider {
724
+ }
725
+ export interface Image extends View {
726
+ }
727
+ export interface ImageView extends Image {
728
+ }
729
+ export interface ImageButton extends Image {
730
+ }
731
+ export interface Switch extends TextView {
732
+ }
733
+ export interface CheckBox extends TextView {
734
+ }
735
+ export interface RadioButton extends TextView {
736
+ }
737
+ export interface RadioGroup extends View {
738
+ }
739
+ export interface ToggleButton extends TextView {
740
+ }
741
+ export interface Space extends View {
742
+ }
743
+ export interface ScriptView extends View {
744
+ }
745
+ export interface RenderView extends ScriptView {
746
+ }
747
+ export interface CanvasView extends ScriptView {
748
+ }
749
+ export interface SafeAreaView extends View {
750
+ }
751
+ export interface ScrollView extends View {
752
+ scrollTo(options?: ScrollToOptions | number, y?: number, animated?: boolean): void;
753
+ scrollToEnd(options?: ScrollToEndOptions): void;
754
+ flashScrollIndicators(): void;
755
+ }
756
+ export interface HorizontalScrollView extends ScrollView {
757
+ }
758
+ export interface Pressable extends View {
759
+ }
760
+ export interface TouchableOpacity extends Pressable {
761
+ }
762
+ export interface FlatList<ItemT = any> extends ScrollView {
763
+ scrollToIndex(params: FlatListScrollToIndexParams): void;
764
+ scrollToOffset(params: FlatListScrollToOffsetParams): void;
765
+ }
766
+ export interface HorizontalStackLayout extends View {
767
+ }
768
+ export interface VerticalStackLayout extends View {
769
+ }
770
+ export interface Row extends HorizontalStackLayout {
771
+ }
772
+ export interface Column extends VerticalStackLayout {
773
+ }
774
+ export type RNStyle = ViewStyle | TextStyle;
775
+ export type RefableProps<P, R = NativeComponentRef> = P & {
776
+ ref?: React.Ref<R>;
777
+ };
778
+ export interface SpotifyPlusComponent<P, R = NativeComponentRef> {
779
+ (props: RefableProps<P, R>): React.ReactElement | null;
780
+ displayName?: string;
781
+ }
782
+ export interface NativeViewProps extends CommonViewProps {
783
+ [key: string]: any;
784
+ }
785
+ export type NativeViewOptions = {
786
+ scriptId?: string;
787
+ };
788
+ export type NativeComponentProps<TProps extends object = {}> = TProps & CommonViewProps;
789
+ export declare function createNativeComponent<TProps extends object = {}>(name: string, options?: NativeViewOptions): SpotifyPlusComponent<NativeComponentProps<TProps>, View>;
790
+ export declare const NativeView: typeof createNativeComponent;
791
+ export declare const View: SpotifyPlusComponent<ViewProps, View>;
792
+ export declare const LinearLayout: SpotifyPlusComponent<ViewProps, LinearLayout>;
793
+ export declare const FrameLayout: SpotifyPlusComponent<FrameLayoutProps, FrameLayout>;
794
+ export declare const RelativeLayout: SpotifyPlusComponent<RelativeLayoutProps, RelativeLayout>;
795
+ export declare const PlainView: SpotifyPlusComponent<PlainViewProps, PlainView>;
796
+ export declare const Text: SpotifyPlusComponent<TextProps, Text>;
797
+ export declare const TextView: SpotifyPlusComponent<TextProps, TextView>;
798
+ export declare const TextInput: SpotifyPlusComponent<TextInputProps, TextInput>;
799
+ export declare const EditText: SpotifyPlusComponent<TextInputProps, EditText>;
800
+ export declare const Button: SpotifyPlusComponent<ButtonProps, Button>;
801
+ export declare const ProgressBar: SpotifyPlusComponent<ProgressBarProps, ProgressBar>;
802
+ export declare const ProgressBarHorizontal: SpotifyPlusComponent<ProgressBarProps, ProgressBarHorizontal>;
803
+ export declare const ActivityIndicator: SpotifyPlusComponent<ActivityIndicatorProps, ActivityIndicator>;
804
+ export declare const Slider: SpotifyPlusComponent<SliderProps, Slider>;
805
+ export declare const SeekBar: SpotifyPlusComponent<SliderProps, SeekBar>;
806
+ export declare const Image: SpotifyPlusComponent<ImageProps, Image>;
807
+ export declare const ImageView: SpotifyPlusComponent<ImageProps, ImageView>;
808
+ export declare const ImageButton: SpotifyPlusComponent<ImageButtonProps, ImageButton>;
809
+ export declare const Switch: SpotifyPlusComponent<SwitchProps, Switch>;
810
+ export declare const CheckBox: SpotifyPlusComponent<CheckBoxProps, CheckBox>;
811
+ export declare const RadioButton: SpotifyPlusComponent<RadioButtonProps, RadioButton>;
812
+ export declare const RadioGroup: SpotifyPlusComponent<RadioGroupProps, RadioGroup>;
813
+ export declare const ToggleButton: SpotifyPlusComponent<ToggleButtonProps, ToggleButton>;
814
+ export declare const Space: SpotifyPlusComponent<SpaceProps, Space>;
815
+ export declare const ScriptView: SpotifyPlusComponent<ScriptViewProps, ScriptView>;
816
+ export declare const RenderView: SpotifyPlusComponent<ScriptViewProps, RenderView>;
817
+ export declare const CanvasView: SpotifyPlusComponent<ScriptViewProps, CanvasView>;
818
+ export declare const SafeAreaView: SpotifyPlusComponent<ViewProps, SafeAreaView>;
819
+ export declare const ScrollView: SpotifyPlusComponent<ScrollViewProps, ScrollView>;
820
+ export declare const HorizontalScrollView: SpotifyPlusComponent<HorizontalScrollViewProps, HorizontalScrollView>;
821
+ export declare const Pressable: SpotifyPlusComponent<PressableProps, Pressable>;
822
+ export declare const TouchableOpacity: SpotifyPlusComponent<TouchableOpacityProps, TouchableOpacity>;
823
+ export interface FlatListComponent {
824
+ <ItemT>(props: RefableProps<FlatListProps<ItemT>, FlatList<ItemT>>): React.ReactElement | null;
825
+ displayName?: string;
826
+ }
827
+ export declare const FlatList: FlatListComponent;
828
+ export declare const HorizontalStackLayout: SpotifyPlusComponent<ViewProps, HorizontalStackLayout>;
829
+ export declare const VerticalStackLayout: SpotifyPlusComponent<ViewProps, VerticalStackLayout>;
830
+ export declare const Row: SpotifyPlusComponent<ViewProps, Row>;
831
+ export declare const Column: SpotifyPlusComponent<ViewProps, Column>;
832
+ export declare const StyleSheet: {
833
+ create<T extends Record<string, RNStyle>>(styles: T): T;
834
+ flatten(style: StyleProp<RNStyle>): HostProps;
835
+ absoluteFillObject: {
836
+ position: "absolute";
837
+ top: number;
838
+ right: number;
839
+ bottom: number;
840
+ left: number;
841
+ };
842
+ absoluteFill: {
843
+ position: "absolute";
844
+ top: number;
845
+ right: number;
846
+ bottom: number;
847
+ left: number;
848
+ };
849
+ };
850
+ export declare const Animated: {
851
+ Legacy: {
852
+ Value: typeof import("spotifyplus/internal/legacy-animated").Value;
853
+ ValueXY: typeof import("spotifyplus/internal/legacy-animated").ValueXY;
854
+ timing: typeof import("spotifyplus/internal/legacy-animated").timing;
855
+ spring: typeof import("spotifyplus/internal/legacy-animated").spring;
856
+ decay: typeof import("spotifyplus/internal/legacy-animated").decay;
857
+ delay: typeof import("spotifyplus/internal/legacy-animated").delay;
858
+ sequence: typeof import("spotifyplus/internal/legacy-animated").sequence;
859
+ parallel: typeof import("spotifyplus/internal/legacy-animated").parallel;
860
+ stagger: typeof import("spotifyplus/internal/legacy-animated").stagger;
861
+ loop: typeof import("spotifyplus/internal/legacy-animated").loop;
862
+ add: typeof import("spotifyplus/internal/legacy-animated").add;
863
+ subtract: typeof import("spotifyplus/internal/legacy-animated").subtract;
864
+ multiply: typeof import("spotifyplus/internal/legacy-animated").multiply;
865
+ divide: typeof import("spotifyplus/internal/legacy-animated").divide;
866
+ modulo: typeof import("spotifyplus/internal/legacy-animated").modulo;
867
+ event: typeof import("spotifyplus/internal/legacy-animated").event;
868
+ createAnimatedComponent: typeof import("spotifyplus/internal/legacy-animated").createAnimatedComponent;
869
+ useAnimatedValue: typeof import("spotifyplus/internal/legacy-animated").useAnimatedValue;
870
+ Easing: {
871
+ linear: (t: number) => number;
872
+ ease: (t: number) => number;
873
+ quad: (t: number) => number;
874
+ cubic: (t: number) => number;
875
+ sin: (t: number) => number;
876
+ circle: (t: number) => number;
877
+ exp: (t: number) => number;
878
+ back: (s?: number) => (t: number) => number;
879
+ bounce: (t: number) => number;
880
+ in: (easing: import("spotifyplus/internal/legacy-animated").EasingFunction) => (t: number) => number;
881
+ out: (easing: import("spotifyplus/internal/legacy-animated").EasingFunction) => (t: number) => number;
882
+ inOut: (easing: import("spotifyplus/internal/legacy-animated").EasingFunction) => (t: number) => number;
883
+ };
884
+ };
885
+ View: React.ComponentType<NativeAnimatedCore.AnimatedComponentProps<RefableProps<ViewProps, View>>>;
886
+ Text: React.ComponentType<NativeAnimatedCore.AnimatedComponentProps<RefableProps<TextProps, Text>>>;
887
+ Image: React.ComponentType<NativeAnimatedCore.AnimatedComponentProps<RefableProps<ImageProps, Image>>>;
888
+ ScriptView: React.ComponentType<NativeAnimatedCore.AnimatedComponentProps<RefableProps<ScriptViewProps, ScriptView>>>;
889
+ RenderView: React.ComponentType<NativeAnimatedCore.AnimatedComponentProps<RefableProps<ScriptViewProps, RenderView>>>;
890
+ CanvasView: React.ComponentType<NativeAnimatedCore.AnimatedComponentProps<RefableProps<ScriptViewProps, CanvasView>>>;
891
+ ScrollView: React.ComponentType<NativeAnimatedCore.AnimatedComponentProps<{
892
+ style?: any;
893
+ }>>;
894
+ FlatList: React.ComponentType<NativeAnimatedCore.AnimatedComponentProps<{
895
+ style?: any;
896
+ }>>;
897
+ isAnimatedNodeLike(value: unknown): value is NativeAnimatedNodeLike;
898
+ serializeAnimatedNode(value: unknown): any;
899
+ useSharedValue<T = number>(initial: T): NativeAnimatedCore.SharedValue<T>;
900
+ useDerivedValue<T = any>(factory: () => T, deps?: React.DependencyList): NativeAnimatedCore.DerivedValue<NativeAnimatedCore.AnimatedResolvedValue<T>>;
901
+ useAnimatedStyle<T extends Record<string, any>>(factory: () => T, deps?: React.DependencyList): NativeAnimatedCore.AnimatedStylePayload<T>;
902
+ useAnimatedProps<T extends Record<string, any>>(factory: () => T, deps?: React.DependencyList): NativeAnimatedCore.AnimatedPropsPayload<T>;
903
+ playbackClock(options?: {
904
+ unit?: "ms" | "seconds";
905
+ offset?: number;
906
+ }): NativeAnimatedCore.AnimatedExpression<number>;
907
+ interpolate(value: unknown, inputRange: number[], outputRange: number[], options?: NativeAnimatedCore.InterpolateOptions): NativeAnimatedCore.AnimatedExpression<number>;
908
+ interpolateColor(value: unknown, inputRange: number[], outputRange: Array<string | number>, options?: NativeAnimatedCore.InterpolateOptions): NativeAnimatedCore.AnimatedExpression<string | number>;
909
+ withTiming<T = number>(toValue: T | NativeAnimatedCore.AnimatedExpression<T>, config?: NativeAnimatedCore.TimingConfig): NativeAnimatedCore.AnimationDescriptor<T>;
910
+ withSpring<T = number>(toValue: T | NativeAnimatedCore.AnimatedExpression<T>, config?: NativeAnimatedCore.SpringConfig): NativeAnimatedCore.AnimationDescriptor<T>;
911
+ withDelay<T = any>(delayMs: number, child: NativeAnimatedCore.AnimationDescriptor<T>): NativeAnimatedCore.AnimationDescriptor<T>;
912
+ withSequence<T = any>(...animations: NativeAnimatedCore.AnimationDescriptor<T>[]): NativeAnimatedCore.AnimationDescriptor<T>;
913
+ cancelAnimation(sharedValue: NativeAnimatedCore.SharedValue<any>): void;
914
+ runOnUI<T extends (...args: any[]) => any>(fn: T): T;
915
+ createAnimatedComponent<P extends {
916
+ style?: any;
917
+ }>(Component: React.ComponentType<P>): React.ComponentType<NativeAnimatedCore.AnimatedComponentProps<P>>;
918
+ AnimatedExpression: typeof NativeAnimatedCore.AnimatedExpression;
919
+ SharedValue: typeof NativeAnimatedCore.SharedValue;
920
+ DerivedValue: typeof NativeAnimatedCore.DerivedValue;
921
+ add: (...values: unknown[]) => NativeAnimatedCore.AnimatedExpression<number>;
922
+ subtract: (...values: unknown[]) => NativeAnimatedCore.AnimatedExpression<number>;
923
+ multiply: (...values: unknown[]) => NativeAnimatedCore.AnimatedExpression<number>;
924
+ divide: (...values: unknown[]) => NativeAnimatedCore.AnimatedExpression<number>;
925
+ modulo: (...values: unknown[]) => NativeAnimatedCore.AnimatedExpression<number>;
926
+ clamp: (input: unknown, min: number, max: number) => NativeAnimatedCore.AnimatedExpression<number>;
927
+ Value: typeof import("spotifyplus/internal/legacy-animated").Value;
928
+ ValueXY: typeof import("spotifyplus/internal/legacy-animated").ValueXY;
929
+ timing: typeof import("spotifyplus/internal/legacy-animated").timing;
930
+ spring: typeof import("spotifyplus/internal/legacy-animated").spring;
931
+ decay: typeof import("spotifyplus/internal/legacy-animated").decay;
932
+ delay: typeof import("spotifyplus/internal/legacy-animated").delay;
933
+ sequence: typeof import("spotifyplus/internal/legacy-animated").sequence;
934
+ parallel: typeof import("spotifyplus/internal/legacy-animated").parallel;
935
+ stagger: typeof import("spotifyplus/internal/legacy-animated").stagger;
936
+ loop: typeof import("spotifyplus/internal/legacy-animated").loop;
937
+ event: typeof import("spotifyplus/internal/legacy-animated").event;
938
+ useAnimatedValue: typeof import("spotifyplus/internal/legacy-animated").useAnimatedValue;
939
+ Easing: {
940
+ linear: (t: number) => number;
941
+ ease: (t: number) => number;
942
+ quad: (t: number) => number;
943
+ cubic: (t: number) => number;
944
+ sin: (t: number) => number;
945
+ circle: (t: number) => number;
946
+ exp: (t: number) => number;
947
+ back: (s?: number) => (t: number) => number;
948
+ bounce: (t: number) => number;
949
+ in: (easing: import("spotifyplus/internal/legacy-animated").EasingFunction) => (t: number) => number;
950
+ out: (easing: import("spotifyplus/internal/legacy-animated").EasingFunction) => (t: number) => number;
951
+ inOut: (easing: import("spotifyplus/internal/legacy-animated").EasingFunction) => (t: number) => number;
952
+ };
953
+ };
954
+ declare const _default: {
955
+ View: SpotifyPlusComponent<ViewProps, View>;
956
+ LinearLayout: SpotifyPlusComponent<ViewProps, LinearLayout>;
957
+ FrameLayout: SpotifyPlusComponent<FrameLayoutProps, FrameLayout>;
958
+ RelativeLayout: SpotifyPlusComponent<RelativeLayoutProps, RelativeLayout>;
959
+ ScrollView: SpotifyPlusComponent<ScrollViewProps, ScrollView>;
960
+ HorizontalScrollView: SpotifyPlusComponent<HorizontalScrollViewProps, HorizontalScrollView>;
961
+ PlainView: SpotifyPlusComponent<PlainViewProps, PlainView>;
962
+ Text: SpotifyPlusComponent<TextProps, Text>;
963
+ TextView: SpotifyPlusComponent<TextProps, TextView>;
964
+ TextInput: SpotifyPlusComponent<TextInputProps, TextInput>;
965
+ EditText: SpotifyPlusComponent<TextInputProps, EditText>;
966
+ Image: SpotifyPlusComponent<ImageProps, Image>;
967
+ ImageView: SpotifyPlusComponent<ImageProps, ImageView>;
968
+ ImageButton: SpotifyPlusComponent<ImageButtonProps, ImageButton>;
969
+ Button: SpotifyPlusComponent<ButtonProps, Button>;
970
+ ProgressBar: SpotifyPlusComponent<ProgressBarProps, ProgressBar>;
971
+ ProgressBarHorizontal: SpotifyPlusComponent<ProgressBarProps, ProgressBarHorizontal>;
972
+ ActivityIndicator: SpotifyPlusComponent<ActivityIndicatorProps, ActivityIndicator>;
973
+ Slider: SpotifyPlusComponent<SliderProps, Slider>;
974
+ SeekBar: SpotifyPlusComponent<SliderProps, SeekBar>;
975
+ Switch: SpotifyPlusComponent<SwitchProps, Switch>;
976
+ CheckBox: SpotifyPlusComponent<CheckBoxProps, CheckBox>;
977
+ RadioButton: SpotifyPlusComponent<RadioButtonProps, RadioButton>;
978
+ RadioGroup: SpotifyPlusComponent<RadioGroupProps, RadioGroup>;
979
+ ToggleButton: SpotifyPlusComponent<ToggleButtonProps, ToggleButton>;
980
+ Space: SpotifyPlusComponent<SpaceProps, Space>;
981
+ ScriptView: SpotifyPlusComponent<ScriptViewProps, ScriptView>;
982
+ RenderView: SpotifyPlusComponent<ScriptViewProps, RenderView>;
983
+ CanvasView: SpotifyPlusComponent<ScriptViewProps, CanvasView>;
984
+ SafeAreaView: SpotifyPlusComponent<ViewProps, SafeAreaView>;
985
+ Pressable: SpotifyPlusComponent<PressableProps, Pressable>;
986
+ TouchableOpacity: SpotifyPlusComponent<TouchableOpacityProps, TouchableOpacity>;
987
+ FlatList: FlatListComponent;
988
+ HorizontalStackLayout: SpotifyPlusComponent<ViewProps, HorizontalStackLayout>;
989
+ VerticalStackLayout: SpotifyPlusComponent<ViewProps, VerticalStackLayout>;
990
+ Row: SpotifyPlusComponent<ViewProps, Row>;
991
+ Column: SpotifyPlusComponent<ViewProps, Column>;
992
+ StyleSheet: {
993
+ create<T extends Record<string, RNStyle>>(styles: T): T;
994
+ flatten(style: StyleProp<RNStyle>): HostProps;
995
+ absoluteFillObject: {
996
+ position: "absolute";
997
+ top: number;
998
+ right: number;
999
+ bottom: number;
1000
+ left: number;
1001
+ };
1002
+ absoluteFill: {
1003
+ position: "absolute";
1004
+ top: number;
1005
+ right: number;
1006
+ bottom: number;
1007
+ left: number;
1008
+ };
1009
+ };
1010
+ Animated: {
1011
+ Legacy: {
1012
+ Value: typeof import("spotifyplus/internal/legacy-animated").Value;
1013
+ ValueXY: typeof import("spotifyplus/internal/legacy-animated").ValueXY;
1014
+ timing: typeof import("spotifyplus/internal/legacy-animated").timing;
1015
+ spring: typeof import("spotifyplus/internal/legacy-animated").spring;
1016
+ decay: typeof import("spotifyplus/internal/legacy-animated").decay;
1017
+ delay: typeof import("spotifyplus/internal/legacy-animated").delay;
1018
+ sequence: typeof import("spotifyplus/internal/legacy-animated").sequence;
1019
+ parallel: typeof import("spotifyplus/internal/legacy-animated").parallel;
1020
+ stagger: typeof import("spotifyplus/internal/legacy-animated").stagger;
1021
+ loop: typeof import("spotifyplus/internal/legacy-animated").loop;
1022
+ add: typeof import("spotifyplus/internal/legacy-animated").add;
1023
+ subtract: typeof import("spotifyplus/internal/legacy-animated").subtract;
1024
+ multiply: typeof import("spotifyplus/internal/legacy-animated").multiply;
1025
+ divide: typeof import("spotifyplus/internal/legacy-animated").divide;
1026
+ modulo: typeof import("spotifyplus/internal/legacy-animated").modulo;
1027
+ event: typeof import("spotifyplus/internal/legacy-animated").event;
1028
+ createAnimatedComponent: typeof import("spotifyplus/internal/legacy-animated").createAnimatedComponent;
1029
+ useAnimatedValue: typeof import("spotifyplus/internal/legacy-animated").useAnimatedValue;
1030
+ Easing: {
1031
+ linear: (t: number) => number;
1032
+ ease: (t: number) => number;
1033
+ quad: (t: number) => number;
1034
+ cubic: (t: number) => number;
1035
+ sin: (t: number) => number;
1036
+ circle: (t: number) => number;
1037
+ exp: (t: number) => number;
1038
+ back: (s?: number) => (t: number) => number;
1039
+ bounce: (t: number) => number;
1040
+ in: (easing: import("spotifyplus/internal/legacy-animated").EasingFunction) => (t: number) => number;
1041
+ out: (easing: import("spotifyplus/internal/legacy-animated").EasingFunction) => (t: number) => number;
1042
+ inOut: (easing: import("spotifyplus/internal/legacy-animated").EasingFunction) => (t: number) => number;
1043
+ };
1044
+ };
1045
+ View: React.ComponentType<NativeAnimatedCore.AnimatedComponentProps<RefableProps<ViewProps, View>>>;
1046
+ Text: React.ComponentType<NativeAnimatedCore.AnimatedComponentProps<RefableProps<TextProps, Text>>>;
1047
+ Image: React.ComponentType<NativeAnimatedCore.AnimatedComponentProps<RefableProps<ImageProps, Image>>>;
1048
+ ScriptView: React.ComponentType<NativeAnimatedCore.AnimatedComponentProps<RefableProps<ScriptViewProps, ScriptView>>>;
1049
+ RenderView: React.ComponentType<NativeAnimatedCore.AnimatedComponentProps<RefableProps<ScriptViewProps, RenderView>>>;
1050
+ CanvasView: React.ComponentType<NativeAnimatedCore.AnimatedComponentProps<RefableProps<ScriptViewProps, CanvasView>>>;
1051
+ ScrollView: React.ComponentType<NativeAnimatedCore.AnimatedComponentProps<{
1052
+ style?: any;
1053
+ }>>;
1054
+ FlatList: React.ComponentType<NativeAnimatedCore.AnimatedComponentProps<{
1055
+ style?: any;
1056
+ }>>;
1057
+ isAnimatedNodeLike(value: unknown): value is NativeAnimatedNodeLike;
1058
+ serializeAnimatedNode(value: unknown): any;
1059
+ useSharedValue<T = number>(initial: T): NativeAnimatedCore.SharedValue<T>;
1060
+ useDerivedValue<T = any>(factory: () => T, deps?: React.DependencyList): NativeAnimatedCore.DerivedValue<NativeAnimatedCore.AnimatedResolvedValue<T>>;
1061
+ useAnimatedStyle<T extends Record<string, any>>(factory: () => T, deps?: React.DependencyList): NativeAnimatedCore.AnimatedStylePayload<T>;
1062
+ useAnimatedProps<T extends Record<string, any>>(factory: () => T, deps?: React.DependencyList): NativeAnimatedCore.AnimatedPropsPayload<T>;
1063
+ playbackClock(options?: {
1064
+ unit?: "ms" | "seconds";
1065
+ offset?: number;
1066
+ }): NativeAnimatedCore.AnimatedExpression<number>;
1067
+ interpolate(value: unknown, inputRange: number[], outputRange: number[], options?: NativeAnimatedCore.InterpolateOptions): NativeAnimatedCore.AnimatedExpression<number>;
1068
+ interpolateColor(value: unknown, inputRange: number[], outputRange: Array<string | number>, options?: NativeAnimatedCore.InterpolateOptions): NativeAnimatedCore.AnimatedExpression<string | number>;
1069
+ withTiming<T = number>(toValue: T | NativeAnimatedCore.AnimatedExpression<T>, config?: NativeAnimatedCore.TimingConfig): NativeAnimatedCore.AnimationDescriptor<T>;
1070
+ withSpring<T = number>(toValue: T | NativeAnimatedCore.AnimatedExpression<T>, config?: NativeAnimatedCore.SpringConfig): NativeAnimatedCore.AnimationDescriptor<T>;
1071
+ withDelay<T = any>(delayMs: number, child: NativeAnimatedCore.AnimationDescriptor<T>): NativeAnimatedCore.AnimationDescriptor<T>;
1072
+ withSequence<T = any>(...animations: NativeAnimatedCore.AnimationDescriptor<T>[]): NativeAnimatedCore.AnimationDescriptor<T>;
1073
+ cancelAnimation(sharedValue: NativeAnimatedCore.SharedValue<any>): void;
1074
+ runOnUI<T extends (...args: any[]) => any>(fn: T): T;
1075
+ createAnimatedComponent<P extends {
1076
+ style?: any;
1077
+ }>(Component: React.ComponentType<P>): React.ComponentType<NativeAnimatedCore.AnimatedComponentProps<P>>;
1078
+ AnimatedExpression: typeof NativeAnimatedCore.AnimatedExpression;
1079
+ SharedValue: typeof NativeAnimatedCore.SharedValue;
1080
+ DerivedValue: typeof NativeAnimatedCore.DerivedValue;
1081
+ add: (...values: unknown[]) => NativeAnimatedCore.AnimatedExpression<number>;
1082
+ subtract: (...values: unknown[]) => NativeAnimatedCore.AnimatedExpression<number>;
1083
+ multiply: (...values: unknown[]) => NativeAnimatedCore.AnimatedExpression<number>;
1084
+ divide: (...values: unknown[]) => NativeAnimatedCore.AnimatedExpression<number>;
1085
+ modulo: (...values: unknown[]) => NativeAnimatedCore.AnimatedExpression<number>;
1086
+ clamp: (input: unknown, min: number, max: number) => NativeAnimatedCore.AnimatedExpression<number>;
1087
+ Value: typeof import("spotifyplus/internal/legacy-animated").Value;
1088
+ ValueXY: typeof import("spotifyplus/internal/legacy-animated").ValueXY;
1089
+ timing: typeof import("spotifyplus/internal/legacy-animated").timing;
1090
+ spring: typeof import("spotifyplus/internal/legacy-animated").spring;
1091
+ decay: typeof import("spotifyplus/internal/legacy-animated").decay;
1092
+ delay: typeof import("spotifyplus/internal/legacy-animated").delay;
1093
+ sequence: typeof import("spotifyplus/internal/legacy-animated").sequence;
1094
+ parallel: typeof import("spotifyplus/internal/legacy-animated").parallel;
1095
+ stagger: typeof import("spotifyplus/internal/legacy-animated").stagger;
1096
+ loop: typeof import("spotifyplus/internal/legacy-animated").loop;
1097
+ event: typeof import("spotifyplus/internal/legacy-animated").event;
1098
+ useAnimatedValue: typeof import("spotifyplus/internal/legacy-animated").useAnimatedValue;
1099
+ Easing: {
1100
+ linear: (t: number) => number;
1101
+ ease: (t: number) => number;
1102
+ quad: (t: number) => number;
1103
+ cubic: (t: number) => number;
1104
+ sin: (t: number) => number;
1105
+ circle: (t: number) => number;
1106
+ exp: (t: number) => number;
1107
+ back: (s?: number) => (t: number) => number;
1108
+ bounce: (t: number) => number;
1109
+ in: (easing: import("spotifyplus/internal/legacy-animated").EasingFunction) => (t: number) => number;
1110
+ out: (easing: import("spotifyplus/internal/legacy-animated").EasingFunction) => (t: number) => number;
1111
+ inOut: (easing: import("spotifyplus/internal/legacy-animated").EasingFunction) => (t: number) => number;
1112
+ };
1113
+ };
1114
+ };
1115
+ export default _default;