@raycast/api 1.43.1 → 1.44.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.
Files changed (3) hide show
  1. package/api.d.ts +107 -74
  2. package/package.json +1 -1
  3. package/types/index.d.ts +107 -74
package/api.d.ts CHANGED
@@ -732,7 +732,7 @@ export declare namespace Clipboard {
732
732
  * };
733
733
  * ```
734
734
  */
735
- export function copy(content: string | Content): Promise<void>;
735
+ export function copy(content: string | number | Content): Promise<void>;
736
736
  /**
737
737
  * Clears the current clipboard contents.
738
738
  *
@@ -763,7 +763,7 @@ export declare namespace Clipboard {
763
763
  * };
764
764
  * ```
765
765
  */
766
- export function paste(content: string | Content): Promise<void>;
766
+ export function paste(content: string | number | Content): Promise<void>;
767
767
  /**
768
768
  * Reads the clipboard as plain text.
769
769
  *
@@ -804,19 +804,26 @@ export declare namespace Clipboard {
804
804
  } | {
805
805
  /**
806
806
  * The file representation of the content.
807
- *
808
- * @remarks
809
- * At the moment only file paths represented as a string are supported.
810
807
  */
811
808
  file: PathLike;
809
+ } | {
810
+ /**
811
+ * The HTML representation of the content.
812
+ */
813
+ html: string;
814
+ /**
815
+ * The alternative text representation of the content.
816
+ */
817
+ text?: string;
812
818
  };
813
819
  }
814
820
 
815
821
  /**
816
822
  * Closes the main Raycast window.
817
823
  *
818
- * @param options - Can be used to clear the root search. Defaults to not clearing the root search after
819
- * the window was closed.
824
+ * @param options - A parameter object with the properties:
825
+ * `clearRootSearch`: clears the text in the root search bar and scrolls to the top; default is `false`
826
+ * `popToRootType`: defines the pop to root behavior ({@link PopToRootType}); the default is to to respect the user's "Pop to Root Search" preference in Raycast
820
827
  * @returns A Promise that resolves when the main window is closed.
821
828
  *
822
829
  * @example
@@ -832,6 +839,7 @@ export declare namespace Clipboard {
832
839
  */
833
840
  export declare function closeMainWindow(options?: {
834
841
  clearRootSearch?: boolean;
842
+ popToRootType?: PopToRootType;
835
843
  }): Promise<void>;
836
844
 
837
845
  /**
@@ -1313,9 +1321,9 @@ export declare interface CopyToClipboardActionProps extends Action.CopyToClipboa
1313
1321
  */
1314
1322
  declare interface CopyToClipboardProps {
1315
1323
  /**
1316
- * The contents that will be written to the clipboard as string.
1324
+ * The contents that will be copied to the clipboard.
1317
1325
  */
1318
- content: string | number;
1326
+ content: string | number | Clipboard.Content;
1319
1327
  /**
1320
1328
  * An optional title for the action.
1321
1329
  * @defaultValue `"Copy to Clipboard"`
@@ -1336,7 +1344,7 @@ declare interface CopyToClipboardProps {
1336
1344
  * @remarks
1337
1345
  * This is handy when you want to act on the copied content, e.g. up-rank recently copied content.
1338
1346
  */
1339
- onCopy?: (content: string | number) => void;
1347
+ onCopy?: (content: string | number | Clipboard.Content) => void;
1340
1348
  }
1341
1349
 
1342
1350
  /**
@@ -1878,14 +1886,14 @@ declare interface DropdownMembers_2 {
1878
1886
  /**
1879
1887
  * See {@link Form.Dropdown.Props}
1880
1888
  */
1881
- declare interface DropdownProps extends FormItemProps_2<string> {
1889
+ declare interface DropdownProps extends FormItemProps_2<string>, SearchBarInterface {
1882
1890
  /**
1883
1891
  * Sections or items. If {@link Form.Dropdown.Item} elements are specified, a default section is automatically created.
1884
1892
  */
1885
1893
  children?: ReactNode;
1886
1894
  }
1887
1895
 
1888
- declare interface DropdownProps_2 {
1896
+ declare interface DropdownProps_2 extends SearchBarInterface {
1889
1897
  /**
1890
1898
  * ID of the dropdown.
1891
1899
  */
@@ -2032,6 +2040,10 @@ export declare interface Environment {
2032
2040
  * The theme used by the Raycast application.
2033
2041
  */
2034
2042
  theme: "light" | "dark";
2043
+ /**
2044
+ * The text size used by the Raycast application.
2045
+ */
2046
+ textSize: "medium" | "large";
2035
2047
  /**
2036
2048
  * The type of launch for the command (user initiated or background).
2037
2049
  */
@@ -3762,6 +3774,23 @@ export declare function getApplications(path?: PathLike): Promise<Application[]>
3762
3774
  */
3763
3775
  export declare function getDefaultApplication(path: PathLike): Promise<Application>;
3764
3776
 
3777
+ /**
3778
+ * Returns the frontmost application.
3779
+ *
3780
+ * @returns The frontmost {@link Application}. Throws an error if no application was found.
3781
+ *
3782
+ * @example
3783
+ * ```typescript
3784
+ * import { getFrontmostApplication } from "@raycast/api";
3785
+ *
3786
+ * export default async () => {
3787
+ * const frontmostApplication = await getFrontmostApplication();
3788
+ * console.log(`The frontmost application is: ${frontmostApplication.name}`);
3789
+ * };
3790
+ * ```
3791
+ */
3792
+ export declare function getFrontmostApplication(): Promise<Application>;
3793
+
3765
3794
  /**
3766
3795
  * @deprecated Use {@link LocalStorage.getItem} instead
3767
3796
  */
@@ -4138,7 +4167,7 @@ declare interface GridMembers {
4138
4167
  Dropdown: typeof Dropdown_2;
4139
4168
  }
4140
4169
 
4141
- declare interface GridProps extends ActionsInterface, NavigationChildInterface {
4170
+ declare interface GridProps extends ActionsInterface, NavigationChildInterface, SearchBarInterface {
4142
4171
  /**
4143
4172
  * A reference to an {@link ActionPanel}. It will only be shown when there aren't any children.
4144
4173
  */
@@ -4198,19 +4227,6 @@ declare interface GridProps extends ActionsInterface, NavigationChildInterface {
4198
4227
  * @defaultValue `false` when `onSearchTextChange` is specified, `true` otherwise.
4199
4228
  */
4200
4229
  enableFiltering?: boolean;
4201
- /**
4202
- * Toggles Raycast filtering. When `true`, Raycast will use the query in the search bar to filter the
4203
- * items. When `false`, the extension needs to take care of the filtering.
4204
- *
4205
- * You can further define how native filtering orders grid sections by setting an object with a `keepSectionOrder` property:
4206
- * When `true`, ensures that Raycast filtering maintains the section order as defined in the extension.
4207
- * When `false`, filtering may change the section order depending on the ranking values of the items.
4208
- *
4209
- * @defaultValue `false` when `onSearchTextChange` is specified, `true` otherwise.
4210
- */
4211
- filtering?: boolean | {
4212
- keepSectionOrder: boolean;
4213
- };
4214
4230
  /**
4215
4231
  * Placeholder text that will be shown in the search bar.
4216
4232
  *
@@ -4221,19 +4237,6 @@ declare interface GridProps extends ActionsInterface, NavigationChildInterface {
4221
4237
  * Selects the item with the specified id.
4222
4238
  */
4223
4239
  selectedItemId?: string;
4224
- /**
4225
- * Defines whether the {@link Grid.Props.onSearchTextChange} will be triggered on every keyboard press or with a delay for throttling the events.
4226
- * Recommended to set to `true` when using custom filtering logic with asynchronous operations (e.g. network requests).
4227
- * @defaultValue `false`
4228
- */
4229
- throttle?: boolean;
4230
- /**
4231
- * Callback triggered when the search bar text changes.
4232
- *
4233
- * @remarks
4234
- * Specifying this implicitly toggles `filtering` to false. To enable native filtering when using `onSearchTextChange`, explicitly set `filtering` to true.
4235
- */
4236
- onSearchTextChange?: (text: string) => void;
4237
4240
  }
4238
4241
 
4239
4242
  /**
@@ -5567,7 +5570,7 @@ declare interface ListMembers {
5567
5570
  export declare interface ListProps extends List.Props {
5568
5571
  }
5569
5572
 
5570
- declare interface ListProps_2 extends ActionsInterface, NavigationChildInterface {
5573
+ declare interface ListProps_2 extends ActionsInterface, NavigationChildInterface, SearchBarInterface {
5571
5574
  /**
5572
5575
  * A reference to an {@link ActionPanel}. It will only be shown when there aren't any children.
5573
5576
  */
@@ -5602,19 +5605,6 @@ declare interface ListProps_2 extends ActionsInterface, NavigationChildInterface
5602
5605
  * @defaultValue `false` when `onSearchTextChange` is specified, `true` otherwise.
5603
5606
  */
5604
5607
  enableFiltering?: boolean;
5605
- /**
5606
- * Toggles Raycast filtering. When `true`, Raycast will use the query in the search bar to filter the
5607
- * items. When `false`, the extension needs to take care of the filtering.
5608
- *
5609
- * You can further define how native filtering orders list sections by setting an object with a `keepSectionOrder` property:
5610
- * When `true`, ensures that Raycast filtering maintains the section order as defined in the extension.
5611
- * When `false`, filtering may change the section order depending on the ranking values of list items.
5612
- *
5613
- * @defaultValue `false` when `onSearchTextChange` is specified, `true` otherwise.
5614
- */
5615
- filtering?: boolean | {
5616
- keepSectionOrder: boolean;
5617
- };
5618
5608
  /**
5619
5609
  * Placeholder text that will be shown in the search bar.
5620
5610
  *
@@ -5625,19 +5615,6 @@ declare interface ListProps_2 extends ActionsInterface, NavigationChildInterface
5625
5615
  * Selects the item with the specified id.
5626
5616
  */
5627
5617
  selectedItemId?: string;
5628
- /**
5629
- * Defines whether the {@link List.Props.onSearchTextChange} will be triggered on every keyboard press or with a delay for throttling the events.
5630
- * Recommended to set to `true` when using custom filtering logic with asynchronous operations (e.g. network requests).
5631
- * @defaultValue `false`
5632
- */
5633
- throttle?: boolean;
5634
- /**
5635
- * Callback triggered when the search bar text changes.
5636
- *
5637
- * @remarks
5638
- * Specifying this implicitly toggles `filtering` to false. To enable native filtering when using `onSearchTextChange`, explicitly set `filtering` to `true`.
5639
- */
5640
- onSearchTextChange?: (text: string) => void;
5641
5618
  /**
5642
5619
  * Whether the List should have an area on the right side of the items to show additional details about the selected item.
5643
5620
  *
@@ -6039,10 +6016,10 @@ export declare namespace OAuth {
6039
6016
  */
6040
6017
  providerName: string;
6041
6018
  /**
6042
- * An icon referenced from the assets folder, displayed in the OAuth overlay.
6019
+ * An icon displayed in the OAuth overlay.
6043
6020
  * Make sure to provide at least a size of 64x64 pixels.
6044
6021
  */
6045
- providerIcon: string;
6022
+ providerIcon?: Image.ImageLike;
6046
6023
  /**
6047
6024
  * An optional ID for associating the client with a provider.
6048
6025
  * Only set this if you use multiple different clients in your extension.
@@ -6074,7 +6051,7 @@ export declare namespace OAuth {
6074
6051
  export class PKCEClient {
6075
6052
  redirectMethod: RedirectMethod;
6076
6053
  providerName: string;
6077
- providerIcon: string;
6054
+ providerIcon?: Image.ImageLike;
6078
6055
  providerId?: string;
6079
6056
  description?: string;
6080
6057
  private resolvesOnRedirect?;
@@ -6541,12 +6518,12 @@ export declare interface PasteActionProps extends Action.Paste.Props {
6541
6518
  */
6542
6519
  declare interface PasteProps {
6543
6520
  /**
6544
- * The contents that will be written to the clipboard as string.
6521
+ * The contents that will be pasted to the frontmost application.
6545
6522
  */
6546
- content: string | number;
6523
+ content: string | number | Clipboard.Content;
6547
6524
  /**
6548
6525
  * An optional title for the action.
6549
- * @defaultValue `"Paste in Active app"`
6526
+ * @defaultValue `"Paste in Active App"`
6550
6527
  */
6551
6528
  title?: string;
6552
6529
  /**
@@ -6564,7 +6541,7 @@ declare interface PasteProps {
6564
6541
  * @remarks
6565
6542
  * This is handy when you want to act on the pasted content, e.g. up-rank recently pasted content.
6566
6543
  */
6567
- onPaste?: (content: string | number) => void;
6544
+ onPaste?: (content: string | number | Clipboard.Content) => void;
6568
6545
  }
6569
6546
 
6570
6547
  /**
@@ -6599,6 +6576,24 @@ export declare function popToRoot(options?: {
6599
6576
  clearSearchBar?: boolean;
6600
6577
  }): Promise<void>;
6601
6578
 
6579
+ /**
6580
+ * Defines the pop to root behavior when the main window is closed.
6581
+ */
6582
+ export declare enum PopToRootType {
6583
+ /**
6584
+ * Respects the user's "Pop to Root Search" preference in Raycast
6585
+ */
6586
+ Default = "default",
6587
+ /**
6588
+ * Immediately pops back to root
6589
+ */
6590
+ Immediate = "immediate",
6591
+ /**
6592
+ * Prevents Raycast from popping back to root
6593
+ */
6594
+ Suspended = "suspended"
6595
+ }
6596
+
6602
6597
  /**
6603
6598
  * @deprecated Use {@link getPreferenceValues} instead.
6604
6599
  */
@@ -6768,6 +6763,44 @@ export declare const removeLocalStorageItem: typeof LocalStorage.removeItem;
6768
6763
  */
6769
6764
  export declare const render: any;
6770
6765
 
6766
+ /**
6767
+ * Views that support a search bar.
6768
+ */
6769
+ declare interface SearchBarInterface {
6770
+ /**
6771
+ * Toggles Raycast filtering. When `true`, Raycast will use the query in the search bar to filter the
6772
+ * items. When `false`, the extension needs to take care of the filtering.
6773
+ *
6774
+ * You can further define how native filtering orders sections by setting an object with a `keepSectionOrder` property:
6775
+ * When `true`, ensures that Raycast filtering maintains the section order as defined in the extension.
6776
+ * When `false`, filtering may change the section order depending on the ranking values of items.
6777
+ *
6778
+ * @defaultValue `false` when `onSearchTextChange` is specified, `true` otherwise.
6779
+ */
6780
+ filtering?: boolean | {
6781
+ keepSectionOrder: boolean;
6782
+ };
6783
+ /**
6784
+ * Indicates whether a loading indicator should be shown or hidden next to the search bar
6785
+ *
6786
+ * @defaultValue `false`
6787
+ */
6788
+ isLoading?: boolean;
6789
+ /**
6790
+ * Defines whether the `onSearchTextChange` handler will be triggered on every keyboard press or with a delay for throttling the events.
6791
+ * Recommended to set to `true` when using custom filtering logic with asynchronous operations (e.g. network requests).
6792
+ * @defaultValue `false`
6793
+ */
6794
+ throttle?: boolean;
6795
+ /**
6796
+ * Callback triggered when the search bar text changes.
6797
+ *
6798
+ * @remarks
6799
+ * Specifying this implicitly toggles `filtering` to false. To enable native filtering when using `onSearchTextChange`, explicitly set `filtering` to true.
6800
+ */
6801
+ onSearchTextChange?: (text: string) => void;
6802
+ }
6803
+
6771
6804
  /**
6772
6805
  * See {@link ActionPanel.Section}
6773
6806
  */
@@ -7066,7 +7099,7 @@ declare type SubmenuChildren = ReactElement<SectionProps> | ReactElement<Section
7066
7099
  /**
7067
7100
  * See {@link ActionPanel.Submenu.Props}.
7068
7101
  */
7069
- declare interface SubmenuProps {
7102
+ declare interface SubmenuProps extends SearchBarInterface {
7070
7103
  /**
7071
7104
  * ID of the submenu.
7072
7105
  * @deprecated - This is an internal prop which should not have been exposed. You can safely remove it.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@raycast/api",
3
- "version": "1.43.1",
3
+ "version": "1.44.0",
4
4
  "description": "Build extensions for Raycast with React and Node.js.",
5
5
  "author": "Raycast Technologies Ltd.",
6
6
  "homepage": "https://developers.raycast.com",
package/types/index.d.ts CHANGED
@@ -732,7 +732,7 @@ export declare namespace Clipboard {
732
732
  * };
733
733
  * ```
734
734
  */
735
- export function copy(content: string | Content): Promise<void>;
735
+ export function copy(content: string | number | Content): Promise<void>;
736
736
  /**
737
737
  * Clears the current clipboard contents.
738
738
  *
@@ -763,7 +763,7 @@ export declare namespace Clipboard {
763
763
  * };
764
764
  * ```
765
765
  */
766
- export function paste(content: string | Content): Promise<void>;
766
+ export function paste(content: string | number | Content): Promise<void>;
767
767
  /**
768
768
  * Reads the clipboard as plain text.
769
769
  *
@@ -804,19 +804,26 @@ export declare namespace Clipboard {
804
804
  } | {
805
805
  /**
806
806
  * The file representation of the content.
807
- *
808
- * @remarks
809
- * At the moment only file paths represented as a string are supported.
810
807
  */
811
808
  file: PathLike;
809
+ } | {
810
+ /**
811
+ * The HTML representation of the content.
812
+ */
813
+ html: string;
814
+ /**
815
+ * The alternative text representation of the content.
816
+ */
817
+ text?: string;
812
818
  };
813
819
  }
814
820
 
815
821
  /**
816
822
  * Closes the main Raycast window.
817
823
  *
818
- * @param options - Can be used to clear the root search. Defaults to not clearing the root search after
819
- * the window was closed.
824
+ * @param options - A parameter object with the properties:
825
+ * `clearRootSearch`: clears the text in the root search bar and scrolls to the top; default is `false`
826
+ * `popToRootType`: defines the pop to root behavior ({@link PopToRootType}); the default is to to respect the user's "Pop to Root Search" preference in Raycast
820
827
  * @returns A Promise that resolves when the main window is closed.
821
828
  *
822
829
  * @example
@@ -832,6 +839,7 @@ export declare namespace Clipboard {
832
839
  */
833
840
  export declare function closeMainWindow(options?: {
834
841
  clearRootSearch?: boolean;
842
+ popToRootType?: PopToRootType;
835
843
  }): Promise<void>;
836
844
 
837
845
  /**
@@ -1313,9 +1321,9 @@ export declare interface CopyToClipboardActionProps extends Action.CopyToClipboa
1313
1321
  */
1314
1322
  declare interface CopyToClipboardProps {
1315
1323
  /**
1316
- * The contents that will be written to the clipboard as string.
1324
+ * The contents that will be copied to the clipboard.
1317
1325
  */
1318
- content: string | number;
1326
+ content: string | number | Clipboard.Content;
1319
1327
  /**
1320
1328
  * An optional title for the action.
1321
1329
  * @defaultValue `"Copy to Clipboard"`
@@ -1336,7 +1344,7 @@ declare interface CopyToClipboardProps {
1336
1344
  * @remarks
1337
1345
  * This is handy when you want to act on the copied content, e.g. up-rank recently copied content.
1338
1346
  */
1339
- onCopy?: (content: string | number) => void;
1347
+ onCopy?: (content: string | number | Clipboard.Content) => void;
1340
1348
  }
1341
1349
 
1342
1350
  /**
@@ -1878,14 +1886,14 @@ declare interface DropdownMembers_2 {
1878
1886
  /**
1879
1887
  * See {@link Form.Dropdown.Props}
1880
1888
  */
1881
- declare interface DropdownProps extends FormItemProps_2<string> {
1889
+ declare interface DropdownProps extends FormItemProps_2<string>, SearchBarInterface {
1882
1890
  /**
1883
1891
  * Sections or items. If {@link Form.Dropdown.Item} elements are specified, a default section is automatically created.
1884
1892
  */
1885
1893
  children?: ReactNode;
1886
1894
  }
1887
1895
 
1888
- declare interface DropdownProps_2 {
1896
+ declare interface DropdownProps_2 extends SearchBarInterface {
1889
1897
  /**
1890
1898
  * ID of the dropdown.
1891
1899
  */
@@ -2032,6 +2040,10 @@ export declare interface Environment {
2032
2040
  * The theme used by the Raycast application.
2033
2041
  */
2034
2042
  theme: "light" | "dark";
2043
+ /**
2044
+ * The text size used by the Raycast application.
2045
+ */
2046
+ textSize: "medium" | "large";
2035
2047
  /**
2036
2048
  * The type of launch for the command (user initiated or background).
2037
2049
  */
@@ -3762,6 +3774,23 @@ export declare function getApplications(path?: PathLike): Promise<Application[]>
3762
3774
  */
3763
3775
  export declare function getDefaultApplication(path: PathLike): Promise<Application>;
3764
3776
 
3777
+ /**
3778
+ * Returns the frontmost application.
3779
+ *
3780
+ * @returns The frontmost {@link Application}. Throws an error if no application was found.
3781
+ *
3782
+ * @example
3783
+ * ```typescript
3784
+ * import { getFrontmostApplication } from "@raycast/api";
3785
+ *
3786
+ * export default async () => {
3787
+ * const frontmostApplication = await getFrontmostApplication();
3788
+ * console.log(`The frontmost application is: ${frontmostApplication.name}`);
3789
+ * };
3790
+ * ```
3791
+ */
3792
+ export declare function getFrontmostApplication(): Promise<Application>;
3793
+
3765
3794
  /**
3766
3795
  * @deprecated Use {@link LocalStorage.getItem} instead
3767
3796
  */
@@ -4138,7 +4167,7 @@ declare interface GridMembers {
4138
4167
  Dropdown: typeof Dropdown_2;
4139
4168
  }
4140
4169
 
4141
- declare interface GridProps extends ActionsInterface, NavigationChildInterface {
4170
+ declare interface GridProps extends ActionsInterface, NavigationChildInterface, SearchBarInterface {
4142
4171
  /**
4143
4172
  * A reference to an {@link ActionPanel}. It will only be shown when there aren't any children.
4144
4173
  */
@@ -4198,19 +4227,6 @@ declare interface GridProps extends ActionsInterface, NavigationChildInterface {
4198
4227
  * @defaultValue `false` when `onSearchTextChange` is specified, `true` otherwise.
4199
4228
  */
4200
4229
  enableFiltering?: boolean;
4201
- /**
4202
- * Toggles Raycast filtering. When `true`, Raycast will use the query in the search bar to filter the
4203
- * items. When `false`, the extension needs to take care of the filtering.
4204
- *
4205
- * You can further define how native filtering orders grid sections by setting an object with a `keepSectionOrder` property:
4206
- * When `true`, ensures that Raycast filtering maintains the section order as defined in the extension.
4207
- * When `false`, filtering may change the section order depending on the ranking values of the items.
4208
- *
4209
- * @defaultValue `false` when `onSearchTextChange` is specified, `true` otherwise.
4210
- */
4211
- filtering?: boolean | {
4212
- keepSectionOrder: boolean;
4213
- };
4214
4230
  /**
4215
4231
  * Placeholder text that will be shown in the search bar.
4216
4232
  *
@@ -4221,19 +4237,6 @@ declare interface GridProps extends ActionsInterface, NavigationChildInterface {
4221
4237
  * Selects the item with the specified id.
4222
4238
  */
4223
4239
  selectedItemId?: string;
4224
- /**
4225
- * Defines whether the {@link Grid.Props.onSearchTextChange} will be triggered on every keyboard press or with a delay for throttling the events.
4226
- * Recommended to set to `true` when using custom filtering logic with asynchronous operations (e.g. network requests).
4227
- * @defaultValue `false`
4228
- */
4229
- throttle?: boolean;
4230
- /**
4231
- * Callback triggered when the search bar text changes.
4232
- *
4233
- * @remarks
4234
- * Specifying this implicitly toggles `filtering` to false. To enable native filtering when using `onSearchTextChange`, explicitly set `filtering` to true.
4235
- */
4236
- onSearchTextChange?: (text: string) => void;
4237
4240
  }
4238
4241
 
4239
4242
  /**
@@ -5567,7 +5570,7 @@ declare interface ListMembers {
5567
5570
  export declare interface ListProps extends List.Props {
5568
5571
  }
5569
5572
 
5570
- declare interface ListProps_2 extends ActionsInterface, NavigationChildInterface {
5573
+ declare interface ListProps_2 extends ActionsInterface, NavigationChildInterface, SearchBarInterface {
5571
5574
  /**
5572
5575
  * A reference to an {@link ActionPanel}. It will only be shown when there aren't any children.
5573
5576
  */
@@ -5602,19 +5605,6 @@ declare interface ListProps_2 extends ActionsInterface, NavigationChildInterface
5602
5605
  * @defaultValue `false` when `onSearchTextChange` is specified, `true` otherwise.
5603
5606
  */
5604
5607
  enableFiltering?: boolean;
5605
- /**
5606
- * Toggles Raycast filtering. When `true`, Raycast will use the query in the search bar to filter the
5607
- * items. When `false`, the extension needs to take care of the filtering.
5608
- *
5609
- * You can further define how native filtering orders list sections by setting an object with a `keepSectionOrder` property:
5610
- * When `true`, ensures that Raycast filtering maintains the section order as defined in the extension.
5611
- * When `false`, filtering may change the section order depending on the ranking values of list items.
5612
- *
5613
- * @defaultValue `false` when `onSearchTextChange` is specified, `true` otherwise.
5614
- */
5615
- filtering?: boolean | {
5616
- keepSectionOrder: boolean;
5617
- };
5618
5608
  /**
5619
5609
  * Placeholder text that will be shown in the search bar.
5620
5610
  *
@@ -5625,19 +5615,6 @@ declare interface ListProps_2 extends ActionsInterface, NavigationChildInterface
5625
5615
  * Selects the item with the specified id.
5626
5616
  */
5627
5617
  selectedItemId?: string;
5628
- /**
5629
- * Defines whether the {@link List.Props.onSearchTextChange} will be triggered on every keyboard press or with a delay for throttling the events.
5630
- * Recommended to set to `true` when using custom filtering logic with asynchronous operations (e.g. network requests).
5631
- * @defaultValue `false`
5632
- */
5633
- throttle?: boolean;
5634
- /**
5635
- * Callback triggered when the search bar text changes.
5636
- *
5637
- * @remarks
5638
- * Specifying this implicitly toggles `filtering` to false. To enable native filtering when using `onSearchTextChange`, explicitly set `filtering` to `true`.
5639
- */
5640
- onSearchTextChange?: (text: string) => void;
5641
5618
  /**
5642
5619
  * Whether the List should have an area on the right side of the items to show additional details about the selected item.
5643
5620
  *
@@ -6039,10 +6016,10 @@ export declare namespace OAuth {
6039
6016
  */
6040
6017
  providerName: string;
6041
6018
  /**
6042
- * An icon referenced from the assets folder, displayed in the OAuth overlay.
6019
+ * An icon displayed in the OAuth overlay.
6043
6020
  * Make sure to provide at least a size of 64x64 pixels.
6044
6021
  */
6045
- providerIcon: string;
6022
+ providerIcon?: Image.ImageLike;
6046
6023
  /**
6047
6024
  * An optional ID for associating the client with a provider.
6048
6025
  * Only set this if you use multiple different clients in your extension.
@@ -6074,7 +6051,7 @@ export declare namespace OAuth {
6074
6051
  export class PKCEClient {
6075
6052
  redirectMethod: RedirectMethod;
6076
6053
  providerName: string;
6077
- providerIcon: string;
6054
+ providerIcon?: Image.ImageLike;
6078
6055
  providerId?: string;
6079
6056
  description?: string;
6080
6057
  private resolvesOnRedirect?;
@@ -6541,12 +6518,12 @@ export declare interface PasteActionProps extends Action.Paste.Props {
6541
6518
  */
6542
6519
  declare interface PasteProps {
6543
6520
  /**
6544
- * The contents that will be written to the clipboard as string.
6521
+ * The contents that will be pasted to the frontmost application.
6545
6522
  */
6546
- content: string | number;
6523
+ content: string | number | Clipboard.Content;
6547
6524
  /**
6548
6525
  * An optional title for the action.
6549
- * @defaultValue `"Paste in Active app"`
6526
+ * @defaultValue `"Paste in Active App"`
6550
6527
  */
6551
6528
  title?: string;
6552
6529
  /**
@@ -6564,7 +6541,7 @@ declare interface PasteProps {
6564
6541
  * @remarks
6565
6542
  * This is handy when you want to act on the pasted content, e.g. up-rank recently pasted content.
6566
6543
  */
6567
- onPaste?: (content: string | number) => void;
6544
+ onPaste?: (content: string | number | Clipboard.Content) => void;
6568
6545
  }
6569
6546
 
6570
6547
  /**
@@ -6599,6 +6576,24 @@ export declare function popToRoot(options?: {
6599
6576
  clearSearchBar?: boolean;
6600
6577
  }): Promise<void>;
6601
6578
 
6579
+ /**
6580
+ * Defines the pop to root behavior when the main window is closed.
6581
+ */
6582
+ export declare enum PopToRootType {
6583
+ /**
6584
+ * Respects the user's "Pop to Root Search" preference in Raycast
6585
+ */
6586
+ Default = "default",
6587
+ /**
6588
+ * Immediately pops back to root
6589
+ */
6590
+ Immediate = "immediate",
6591
+ /**
6592
+ * Prevents Raycast from popping back to root
6593
+ */
6594
+ Suspended = "suspended"
6595
+ }
6596
+
6602
6597
  /**
6603
6598
  * @deprecated Use {@link getPreferenceValues} instead.
6604
6599
  */
@@ -6768,6 +6763,44 @@ export declare const removeLocalStorageItem: typeof LocalStorage.removeItem;
6768
6763
  */
6769
6764
  export declare const render: any;
6770
6765
 
6766
+ /**
6767
+ * Views that support a search bar.
6768
+ */
6769
+ declare interface SearchBarInterface {
6770
+ /**
6771
+ * Toggles Raycast filtering. When `true`, Raycast will use the query in the search bar to filter the
6772
+ * items. When `false`, the extension needs to take care of the filtering.
6773
+ *
6774
+ * You can further define how native filtering orders sections by setting an object with a `keepSectionOrder` property:
6775
+ * When `true`, ensures that Raycast filtering maintains the section order as defined in the extension.
6776
+ * When `false`, filtering may change the section order depending on the ranking values of items.
6777
+ *
6778
+ * @defaultValue `false` when `onSearchTextChange` is specified, `true` otherwise.
6779
+ */
6780
+ filtering?: boolean | {
6781
+ keepSectionOrder: boolean;
6782
+ };
6783
+ /**
6784
+ * Indicates whether a loading indicator should be shown or hidden next to the search bar
6785
+ *
6786
+ * @defaultValue `false`
6787
+ */
6788
+ isLoading?: boolean;
6789
+ /**
6790
+ * Defines whether the `onSearchTextChange` handler will be triggered on every keyboard press or with a delay for throttling the events.
6791
+ * Recommended to set to `true` when using custom filtering logic with asynchronous operations (e.g. network requests).
6792
+ * @defaultValue `false`
6793
+ */
6794
+ throttle?: boolean;
6795
+ /**
6796
+ * Callback triggered when the search bar text changes.
6797
+ *
6798
+ * @remarks
6799
+ * Specifying this implicitly toggles `filtering` to false. To enable native filtering when using `onSearchTextChange`, explicitly set `filtering` to true.
6800
+ */
6801
+ onSearchTextChange?: (text: string) => void;
6802
+ }
6803
+
6771
6804
  /**
6772
6805
  * See {@link ActionPanel.Section}
6773
6806
  */
@@ -7066,7 +7099,7 @@ declare type SubmenuChildren = ReactElement<SectionProps> | ReactElement<Section
7066
7099
  /**
7067
7100
  * See {@link ActionPanel.Submenu.Props}.
7068
7101
  */
7069
- declare interface SubmenuProps {
7102
+ declare interface SubmenuProps extends SearchBarInterface {
7070
7103
  /**
7071
7104
  * ID of the submenu.
7072
7105
  * @deprecated - This is an internal prop which should not have been exposed. You can safely remove it.