expo-contacts 56.0.4 → 56.0.6

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 (102) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/android/build.gradle +2 -2
  3. package/build/{next/ContactsModule.d.ts → ContactsModule.d.ts} +5 -21
  4. package/build/ContactsModule.d.ts.map +1 -0
  5. package/build/ExpoContactsNext.d.ts +19 -0
  6. package/build/ExpoContactsNext.d.ts.map +1 -0
  7. package/build/ExpoContactsNext.web.d.ts +15 -0
  8. package/build/ExpoContactsNext.web.d.ts.map +1 -0
  9. package/build/index.d.ts +5 -1
  10. package/build/index.d.ts.map +1 -1
  11. package/build/legacy/ContactAccessButton.d.ts.map +1 -0
  12. package/build/{Contacts.d.ts → legacy/Contacts.d.ts} +3 -253
  13. package/build/legacy/Contacts.d.ts.map +1 -0
  14. package/build/legacy/ExpoContacts.d.ts.map +1 -0
  15. package/build/legacy/ExpoContacts.web.d.ts.map +1 -0
  16. package/build/legacy/index.d.ts +3 -0
  17. package/build/legacy/index.d.ts.map +1 -0
  18. package/build/legacyWarnings.d.ts +95 -0
  19. package/build/legacyWarnings.d.ts.map +1 -0
  20. package/build/next/index.d.ts +1 -5
  21. package/build/next/index.d.ts.map +1 -1
  22. package/build/types/Contact.d.ts.map +1 -0
  23. package/build/types/Contact.props.d.ts.map +1 -0
  24. package/build/types/Contact.types.d.ts.map +1 -0
  25. package/build/types/Container.d.ts.map +1 -0
  26. package/build/types/Group.d.ts.map +1 -0
  27. package/build/types/Permissions.d.ts.map +1 -0
  28. package/expo-module.config.json +1 -1
  29. package/legacy.ts +1 -0
  30. package/local-maven-repo/host/exp/exponent/expo.modules.contacts/{56.0.4/expo.modules.contacts-56.0.4.module → 56.0.6/expo.modules.contacts-56.0.6.module} +7 -7
  31. package/local-maven-repo/host/exp/exponent/expo.modules.contacts/56.0.6/expo.modules.contacts-56.0.6.module.md5 +1 -0
  32. package/local-maven-repo/host/exp/exponent/expo.modules.contacts/56.0.6/expo.modules.contacts-56.0.6.module.sha1 +1 -0
  33. package/local-maven-repo/host/exp/exponent/expo.modules.contacts/56.0.6/expo.modules.contacts-56.0.6.module.sha256 +1 -0
  34. package/local-maven-repo/host/exp/exponent/expo.modules.contacts/56.0.6/expo.modules.contacts-56.0.6.module.sha512 +1 -0
  35. package/local-maven-repo/host/exp/exponent/expo.modules.contacts/{56.0.4/expo.modules.contacts-56.0.4.pom → 56.0.6/expo.modules.contacts-56.0.6.pom} +1 -1
  36. package/local-maven-repo/host/exp/exponent/expo.modules.contacts/56.0.6/expo.modules.contacts-56.0.6.pom.md5 +1 -0
  37. package/local-maven-repo/host/exp/exponent/expo.modules.contacts/56.0.6/expo.modules.contacts-56.0.6.pom.sha1 +1 -0
  38. package/local-maven-repo/host/exp/exponent/expo.modules.contacts/56.0.6/expo.modules.contacts-56.0.6.pom.sha256 +1 -0
  39. package/local-maven-repo/host/exp/exponent/expo.modules.contacts/56.0.6/expo.modules.contacts-56.0.6.pom.sha512 +1 -0
  40. package/local-maven-repo/host/exp/exponent/expo.modules.contacts/maven-metadata.xml +4 -4
  41. package/local-maven-repo/host/exp/exponent/expo.modules.contacts/maven-metadata.xml.md5 +1 -1
  42. package/local-maven-repo/host/exp/exponent/expo.modules.contacts/maven-metadata.xml.sha1 +1 -1
  43. package/local-maven-repo/host/exp/exponent/expo.modules.contacts/maven-metadata.xml.sha256 +1 -1
  44. package/local-maven-repo/host/exp/exponent/expo.modules.contacts/maven-metadata.xml.sha512 +1 -1
  45. package/package.json +21 -3
  46. package/prebuilds/output/debug/xcframeworks/ExpoContacts.tar.gz +0 -0
  47. package/prebuilds/output/release/xcframeworks/ExpoContacts.tar.gz +0 -0
  48. package/src/{next/ContactsModule.ts → ContactsModule.ts} +2 -29
  49. package/src/ExpoContactsNext.ts +27 -0
  50. package/src/ExpoContactsNext.web.ts +29 -0
  51. package/src/index.ts +8 -1
  52. package/src/{Contacts.ts → legacy/Contacts.ts} +3 -253
  53. package/src/legacy/index.ts +5 -0
  54. package/src/legacyWarnings.ts +227 -0
  55. package/src/next/index.ts +1 -10
  56. package/build/Contacts.d.ts.map +0 -1
  57. package/build/ExpoContacts.d.ts.map +0 -1
  58. package/build/ExpoContacts.web.d.ts.map +0 -1
  59. package/build/next/ContactAccessButton.d.ts.map +0 -1
  60. package/build/next/ContactsModule.d.ts.map +0 -1
  61. package/build/next/types/Contact.d.ts.map +0 -1
  62. package/build/next/types/Contact.props.d.ts.map +0 -1
  63. package/build/next/types/Contact.types.d.ts.map +0 -1
  64. package/build/next/types/Container.d.ts.map +0 -1
  65. package/build/next/types/Group.d.ts.map +0 -1
  66. package/build/next/types/Permissions.d.ts.map +0 -1
  67. package/local-maven-repo/host/exp/exponent/expo.modules.contacts/56.0.4/expo.modules.contacts-56.0.4.module.md5 +0 -1
  68. package/local-maven-repo/host/exp/exponent/expo.modules.contacts/56.0.4/expo.modules.contacts-56.0.4.module.sha1 +0 -1
  69. package/local-maven-repo/host/exp/exponent/expo.modules.contacts/56.0.4/expo.modules.contacts-56.0.4.module.sha256 +0 -1
  70. package/local-maven-repo/host/exp/exponent/expo.modules.contacts/56.0.4/expo.modules.contacts-56.0.4.module.sha512 +0 -1
  71. package/local-maven-repo/host/exp/exponent/expo.modules.contacts/56.0.4/expo.modules.contacts-56.0.4.pom.md5 +0 -1
  72. package/local-maven-repo/host/exp/exponent/expo.modules.contacts/56.0.4/expo.modules.contacts-56.0.4.pom.sha1 +0 -1
  73. package/local-maven-repo/host/exp/exponent/expo.modules.contacts/56.0.4/expo.modules.contacts-56.0.4.pom.sha256 +0 -1
  74. package/local-maven-repo/host/exp/exponent/expo.modules.contacts/56.0.4/expo.modules.contacts-56.0.4.pom.sha512 +0 -1
  75. /package/build/{next → legacy}/ContactAccessButton.d.ts +0 -0
  76. /package/build/{ExpoContacts.d.ts → legacy/ExpoContacts.d.ts} +0 -0
  77. /package/build/{ExpoContacts.web.d.ts → legacy/ExpoContacts.web.d.ts} +0 -0
  78. /package/build/{next/types → types}/Contact.d.ts +0 -0
  79. /package/build/{next/types → types}/Contact.props.d.ts +0 -0
  80. /package/build/{next/types → types}/Contact.types.d.ts +0 -0
  81. /package/build/{next/types → types}/Container.d.ts +0 -0
  82. /package/build/{next/types → types}/Group.d.ts +0 -0
  83. /package/build/{next/types → types}/Permissions.d.ts +0 -0
  84. /package/local-maven-repo/host/exp/exponent/expo.modules.contacts/{56.0.4/expo.modules.contacts-56.0.4-sources.jar → 56.0.6/expo.modules.contacts-56.0.6-sources.jar} +0 -0
  85. /package/local-maven-repo/host/exp/exponent/expo.modules.contacts/{56.0.4/expo.modules.contacts-56.0.4-sources.jar.md5 → 56.0.6/expo.modules.contacts-56.0.6-sources.jar.md5} +0 -0
  86. /package/local-maven-repo/host/exp/exponent/expo.modules.contacts/{56.0.4/expo.modules.contacts-56.0.4-sources.jar.sha1 → 56.0.6/expo.modules.contacts-56.0.6-sources.jar.sha1} +0 -0
  87. /package/local-maven-repo/host/exp/exponent/expo.modules.contacts/{56.0.4/expo.modules.contacts-56.0.4-sources.jar.sha256 → 56.0.6/expo.modules.contacts-56.0.6-sources.jar.sha256} +0 -0
  88. /package/local-maven-repo/host/exp/exponent/expo.modules.contacts/{56.0.4/expo.modules.contacts-56.0.4-sources.jar.sha512 → 56.0.6/expo.modules.contacts-56.0.6-sources.jar.sha512} +0 -0
  89. /package/local-maven-repo/host/exp/exponent/expo.modules.contacts/{56.0.4/expo.modules.contacts-56.0.4.aar → 56.0.6/expo.modules.contacts-56.0.6.aar} +0 -0
  90. /package/local-maven-repo/host/exp/exponent/expo.modules.contacts/{56.0.4/expo.modules.contacts-56.0.4.aar.md5 → 56.0.6/expo.modules.contacts-56.0.6.aar.md5} +0 -0
  91. /package/local-maven-repo/host/exp/exponent/expo.modules.contacts/{56.0.4/expo.modules.contacts-56.0.4.aar.sha1 → 56.0.6/expo.modules.contacts-56.0.6.aar.sha1} +0 -0
  92. /package/local-maven-repo/host/exp/exponent/expo.modules.contacts/{56.0.4/expo.modules.contacts-56.0.4.aar.sha256 → 56.0.6/expo.modules.contacts-56.0.6.aar.sha256} +0 -0
  93. /package/local-maven-repo/host/exp/exponent/expo.modules.contacts/{56.0.4/expo.modules.contacts-56.0.4.aar.sha512 → 56.0.6/expo.modules.contacts-56.0.6.aar.sha512} +0 -0
  94. /package/src/{next → legacy}/ContactAccessButton.tsx +0 -0
  95. /package/src/{ExpoContacts.ts → legacy/ExpoContacts.ts} +0 -0
  96. /package/src/{ExpoContacts.web.ts → legacy/ExpoContacts.web.ts} +0 -0
  97. /package/src/{next/types → types}/Contact.props.ts +0 -0
  98. /package/src/{next/types → types}/Contact.ts +0 -0
  99. /package/src/{next/types → types}/Contact.types.ts +0 -0
  100. /package/src/{next/types → types}/Container.ts +0 -0
  101. /package/src/{next/types → types}/Group.ts +0 -0
  102. /package/src/{next/types → types}/Permissions.ts +0 -0
package/CHANGELOG.md CHANGED
@@ -10,6 +10,20 @@
10
10
 
11
11
  ### 💡 Others
12
12
 
13
+ ## 56.0.6 — 2026-05-20
14
+
15
+ ### 🛠 Breaking changes
16
+
17
+ - Promote the object-oriented Contacts API to the root `expo-contacts` import and move the legacy API to `expo-contacts/legacy`. ([#46037](https://github.com/expo/expo/pull/46037) by [@Wenszel](https://github.com/Wenszel))
18
+
19
+ ### 🐛 Bug fixes
20
+
21
+ - Fix `expo-contacts/next` throwing `Cannot find native module 'ExpoContactsNext'` when imported on web by adding a web shim. ([#46018](https://github.com/expo/expo/pull/46018) by [@zoontek](https://github.com/zoontek))
22
+
23
+ ## 56.0.5 — 2026-05-19
24
+
25
+ _This version does not introduce any user-facing changes._
26
+
13
27
  ## 56.0.4 — 2026-05-13
14
28
 
15
29
  ### 💡 Others
@@ -4,12 +4,12 @@ plugins {
4
4
  }
5
5
 
6
6
  group = 'host.exp.exponent'
7
- version = '56.0.4'
7
+ version = '56.0.6'
8
8
 
9
9
  android {
10
10
  namespace "expo.modules.contacts"
11
11
  defaultConfig {
12
12
  versionCode 29
13
- versionName "56.0.4"
13
+ versionName "56.0.6"
14
14
  }
15
15
  }
@@ -1,21 +1,5 @@
1
- import { NativeModule } from 'expo-modules-core';
2
1
  import type { EventSubscription } from 'expo-modules-core';
3
- import type { Contact as ContactType } from './types/Contact';
4
- import type { Container as ContainerType } from './types/Container';
5
- import type { Group as GroupType } from './types/Group';
6
- import type { ContactsPermissionResponse } from './types/Permissions';
7
- type ExpoContactsEvents = {
8
- contactsDidChange: () => void;
9
- };
10
- declare class ExpoContactsModule extends NativeModule<ExpoContactsEvents> {
11
- ContactNext?: typeof ContactType;
12
- Contact: typeof ContactType;
13
- Group: typeof GroupType;
14
- Container: typeof ContainerType;
15
- getPermissionsAsync(): Promise<ContactsPermissionResponse>;
16
- requestPermissionsAsync(): Promise<ContactsPermissionResponse>;
17
- }
18
- declare const expoContactsModule: ExpoContactsModule;
2
+ import expoContactsModule from './ExpoContactsNext';
19
3
  /**
20
4
  * Represents a contact in the device's address book.
21
5
  *
@@ -37,7 +21,7 @@ declare const expoContactsModule: ExpoContactsModule;
37
21
  */
38
22
  export declare class Contact extends expoContactsModule.Contact {
39
23
  }
40
- declare const Group_base: typeof GroupType;
24
+ declare const Group_base: typeof import("./types/Group").Group;
41
25
  /**
42
26
  * Represents a group of contacts (for example, "Family", "Coworkers").
43
27
  * Groups belong to a specific Container and can contain multiple Contacts.
@@ -45,7 +29,7 @@ declare const Group_base: typeof GroupType;
45
29
  */
46
30
  export declare class Group extends Group_base {
47
31
  }
48
- declare const Container_base: typeof ContainerType;
32
+ declare const Container_base: typeof import("./types/Container").Container;
49
33
  /**
50
34
  * Represents a container for contacts.
51
35
  * A container (often called an "Account" in UI terms) is a source of contacts, such as a local device storage, iCloud, Google, or Exchange account.
@@ -84,11 +68,11 @@ export declare function removeAllContactsChangeListeners(): void;
84
68
  * Checks user's permissions for accessing contacts data.
85
69
  * @returns A promise that resolves to a [`ContactsPermissionResponse`](#contactspermissionresponse) object.
86
70
  */
87
- export declare function getPermissionsAsync(): Promise<ContactsPermissionResponse>;
71
+ export declare function getPermissionsAsync(): Promise<import(".").ContactsPermissionResponse>;
88
72
  /**
89
73
  * Asks the user to grant permissions for accessing contacts data.
90
74
  * @returns A promise that resolves to a [`ContactsPermissionResponse`](#contactspermissionresponse) object.
91
75
  */
92
- export declare function requestPermissionsAsync(): Promise<ContactsPermissionResponse>;
76
+ export declare function requestPermissionsAsync(): Promise<import(".").ContactsPermissionResponse>;
93
77
  export {};
94
78
  //# sourceMappingURL=ContactsModule.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContactsModule.d.ts","sourceRoot":"","sources":["../src/ContactsModule.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAE3D,OAAO,kBAAkB,MAAM,oBAAoB,CAAC;AAIpD;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,OAAQ,SAAQ,kBAAkB,CAAC,OAAO;CAAG;;AAE1D;;;;GAIG;AACH,qBAAa,KAAM,SAAQ,UAA2C;CAAG;;AAEzE;;;;GAIG;AACH,qBAAa,SAAU,SAAQ,cAAmD;CAAG;AAErF;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,iBAAiB,CAKjF;AAED;;GAEG;AACH,wBAAgB,gCAAgC,IAAI,IAAI,CAEvD;AAED;;;GAGG;AACH,wBAAsB,mBAAmB,oDAExC;AAED;;;GAGG;AACH,wBAAsB,uBAAuB,oDAE5C"}
@@ -0,0 +1,19 @@
1
+ import { NativeModule } from 'expo-modules-core';
2
+ import type { Contact } from './types/Contact';
3
+ import type { Container } from './types/Container';
4
+ import type { Group } from './types/Group';
5
+ import type { ContactsPermissionResponse } from './types/Permissions';
6
+ type ExpoContactsEvents = {
7
+ contactsDidChange: () => void;
8
+ };
9
+ export declare class ExpoContactsModule extends NativeModule<ExpoContactsEvents> {
10
+ ContactNext?: typeof Contact;
11
+ Contact: typeof Contact;
12
+ Group?: typeof Group;
13
+ Container?: typeof Container;
14
+ getPermissionsAsync(): Promise<ContactsPermissionResponse>;
15
+ requestPermissionsAsync(): Promise<ContactsPermissionResponse>;
16
+ }
17
+ declare const expoContactsModule: ExpoContactsModule;
18
+ export default expoContactsModule;
19
+ //# sourceMappingURL=ExpoContactsNext.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExpoContactsNext.d.ts","sourceRoot":"","sources":["../src/ExpoContactsNext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAiC,MAAM,mBAAmB,CAAC;AAEhF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;AAEtE,KAAK,kBAAkB,GAAG;IACxB,iBAAiB,EAAE,MAAM,IAAI,CAAC;CAC/B,CAAC;AAEF,MAAM,CAAC,OAAO,OAAO,kBAAmB,SAAQ,YAAY,CAAC,kBAAkB,CAAC;IAC9E,WAAW,CAAC,EAAE,OAAO,OAAO,CAAC;IAC7B,OAAO,EAAE,OAAO,OAAO,CAAC;IACxB,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,SAAS,CAAC;IAC7B,mBAAmB,IAAI,OAAO,CAAC,0BAA0B,CAAC;IAC1D,uBAAuB,IAAI,OAAO,CAAC,0BAA0B,CAAC;CAC/D;AAED,QAAA,MAAM,kBAAkB,oBAA8D,CAAC;AAMvF,eAAe,kBAAkB,CAAC"}
@@ -0,0 +1,15 @@
1
+ import type { ContactsPermissionResponse } from './types/Permissions';
2
+ declare const _default: {
3
+ Contact: typeof import("./types/Contact").Contact;
4
+ getPermissionsAsync: () => Promise<ContactsPermissionResponse>;
5
+ requestPermissionsAsync: () => Promise<ContactsPermissionResponse>;
6
+ addListener: () => {
7
+ remove: () => void;
8
+ };
9
+ removeListener: () => void;
10
+ removeAllListeners: () => void;
11
+ emit: () => void;
12
+ listenerCount: () => number;
13
+ };
14
+ export default _default;
15
+ //# sourceMappingURL=ExpoContactsNext.web.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExpoContactsNext.web.d.ts","sourceRoot":"","sources":["../src/ExpoContactsNext.web.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;;;;;;;;;;;;;AAiBtE,wBAS6B"}
package/build/index.d.ts CHANGED
@@ -1,3 +1,7 @@
1
- export * from './Contacts';
1
+ export * from './ContactsModule';
2
+ export * from './types/Contact.types';
3
+ export * from './types/Contact.props';
4
+ export * from './types/Permissions';
2
5
  export { default as ContactAccessButton, type ContactAccessButtonProps, } from './ContactAccessButton';
6
+ export * from './legacyWarnings';
3
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,OAAO,EACL,OAAO,IAAI,mBAAmB,EAC9B,KAAK,wBAAwB,GAC9B,MAAM,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AAEjC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AAEpC,OAAO,EACL,OAAO,IAAI,mBAAmB,EAC9B,KAAK,wBAAwB,GAC9B,MAAM,uBAAuB,CAAC;AAE/B,cAAc,kBAAkB,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContactAccessButton.d.ts","sourceRoot":"","sources":["../../src/legacy/ContactAccessButton.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE1D,MAAM,MAAM,wBAAwB,GAAG,SAAS,GAAG;IACjD;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;;OAIG;IACH,OAAO,CAAC,EAAE,SAAS,GAAG,OAAO,GAAG,OAAO,CAAC;IAExC;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IAEzB;;;OAGG;IACH,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;IAE/B;;;OAGG;IACH,SAAS,CAAC,EAAE,UAAU,CAAC;IAEvB;;;;OAIG;IACH,eAAe,CAAC,EAAE,UAAU,CAAC;IAE7B;;;;;OAKG;IACH,SAAS,CAAC,EAAE,UAAU,CAAC;CACxB,CAAC;AAeF;;;;;;GAMG;AACH,MAAM,CAAC,OAAO,OAAO,mBAAoB,SAAQ,KAAK,CAAC,aAAa,CAAC,wBAAwB,CAAC;IAC5F;;;OAGG;IACH,MAAM,CAAC,WAAW,IAAI,OAAO;IAS7B,MAAM;CAMP"}
@@ -146,7 +146,6 @@ export type Address = {
146
146
  id?: string;
147
147
  };
148
148
  /**
149
- * @platform ios
150
149
  */
151
150
  export type SocialProfile = {
152
151
  /**
@@ -215,8 +214,6 @@ export type UrlAddress = {
215
214
  id?: string;
216
215
  };
217
216
  /**
218
- * Information regarding thumbnail images.
219
- * > On Android you can get dimensions using [`Image.getSize`](https://reactnative.dev/docs/image#getsize) method.
220
217
  */
221
218
  export type Image = {
222
219
  /**
@@ -240,9 +237,6 @@ export type Image = {
240
237
  base64?: string;
241
238
  };
242
239
  /**
243
- * Base contact type without ID. For better type safety, consider using:
244
- * - `Contact` when creating new contacts (no ID needed)
245
- * - `ExistingContact` when working with contacts returned from the system (ID guaranteed)
246
240
  */
247
241
  export type Contact = {
248
242
  /**
@@ -373,7 +367,6 @@ export type Contact = {
373
367
  isFavorite?: boolean;
374
368
  };
375
369
  /**
376
- * Type for existing contacts returned from the system - guarantees the id field is present.
377
370
  */
378
371
  export type ExistingContact = Contact & {
379
372
  /**
@@ -382,7 +375,6 @@ export type ExistingContact = Contact & {
382
375
  id: string;
383
376
  };
384
377
  /**
385
- * The return value for queried contact operations like `getContactsAsync`.
386
378
  */
387
379
  export type ContactResponse = {
388
380
  /**
@@ -400,7 +392,6 @@ export type ContactResponse = {
400
392
  };
401
393
  export type ContactSort = `${SortTypes}`;
402
394
  /**
403
- * Used to query contacts from the user's device.
404
395
  */
405
396
  export type ContactQuery = {
406
397
  /**
@@ -445,8 +436,6 @@ export type ContactQuery = {
445
436
  rawContacts?: boolean;
446
437
  };
447
438
  /**
448
- * Denotes the functionality of a native contact form.
449
- * @platform ios
450
439
  */
451
440
  export type FormOptions = {
452
441
  /**
@@ -491,8 +480,6 @@ export type FormOptions = {
491
480
  groupId?: string;
492
481
  };
493
482
  /**
494
- * Used to query native contact groups.
495
- * @platform ios
496
483
  */
497
484
  export type GroupQuery = {
498
485
  /**
@@ -509,11 +496,6 @@ export type GroupQuery = {
509
496
  containerId?: string;
510
497
  };
511
498
  /**
512
- * A parent to contacts. A contact can belong to multiple groups. Here are some query operations you can perform:
513
- * - Child Contacts: `getContactsAsync({ groupId })`
514
- * - Groups From Container: `getGroupsAsync({ containerId })`
515
- * - Groups Named: `getContainersAsync({ groupName })`
516
- * @platform ios
517
499
  */
518
500
  export type Group = {
519
501
  /**
@@ -526,8 +508,6 @@ export type Group = {
526
508
  id?: string;
527
509
  };
528
510
  /**
529
- * Used to query native contact containers.
530
- * @platform ios
531
511
  */
532
512
  export type ContainerQuery = {
533
513
  /**
@@ -550,320 +530,92 @@ export type Container = {
550
530
  };
551
531
  export { PermissionStatus, type PermissionResponse, type PermissionExpiration } from 'expo';
552
532
  /**
553
- * Returns whether the Contacts API is enabled on the current device. This method does not check the app permissions.
554
- * @deprecated This legacy `expo-contacts` API is deprecated. This feature will be removed in `expo-contacts/next`.
555
- * @returns A promise that fulfills with a `boolean`, indicating whether the Contacts API is available on the current device. It always resolves to `false` on web.
556
533
  */
557
534
  export declare function isAvailableAsync(): Promise<boolean>;
558
535
  /**
559
- * Checks if any contacts exist on the device without querying all contacts. This method requires contacts read permission.
560
- * @deprecated This legacy `expo-contacts` API is deprecated. Use `Contact.hasAny()` from `expo-contacts/next` instead.
561
- * @return A promise that fulfills with a `boolean`, indicating whether there are any contacts on the device.
562
- * @example
563
- * ```js
564
- * const hasContacts = await Contacts.hasContactsAsync();
565
- * if (hasContacts) {
566
- * console.log('Contacts are available');
567
- * }
568
- * ```
569
536
  */
570
537
  export declare function hasContactsAsync(): Promise<boolean>;
571
538
  /**
572
- * @deprecated This legacy `expo-contacts` API is deprecated. This feature will be removed in `expo-contacts/next`.
573
539
  */
574
540
  export declare function shareContactAsync(contactId: string, message: string, shareOptions?: ShareOptions): Promise<any>;
575
541
  /**
576
- * Return a list of contacts that fit a given criteria. You can get all of the contacts by passing no criteria.
577
- * @deprecated This legacy `expo-contacts` API is deprecated. Use `Contact.getAll()` from `expo-contacts/next` instead.
578
- * @param contactQuery Object used to query contacts.
579
- * @return A promise that fulfills with `ContactResponse` object returned from the query.
580
- * @example
581
- * ```js
582
- * const { data } = await Contacts.getContactsAsync({
583
- * fields: [Contacts.Fields.Emails],
584
- * });
585
542
  *
586
- * if (data.length > 0) {
587
- * const contact = data[0];
588
- * console.log(contact);
589
- * }
590
- * ```
591
543
  */
592
544
  export declare function getContactsAsync(contactQuery?: ContactQuery): Promise<ContactResponse>;
593
545
  /**
594
- * @deprecated This legacy `expo-contacts` API is deprecated. Use `Contact.getAll()` from `expo-contacts/next` with `limit` and `offset` options instead.
595
546
  */
596
547
  export declare function getPagedContactsAsync(contactQuery?: ContactQuery): Promise<ContactResponse>;
597
548
  /**
598
- * Used for gathering precise data about a contact. Returns a contact matching the given `id`.
599
- * @deprecated This legacy `expo-contacts` API is deprecated. Use `contact.getDetails()` from `expo-contacts/next` instead.
600
- * @param id The ID of a system contact.
601
- * @param fields If specified, the fields defined will be returned. When skipped, all fields will be returned.
602
- * @return A promise that fulfills with `Contact` object with ID matching the input ID, or `undefined` if there is no match.
603
- * @example
604
- * ```js
605
- * const contact = await Contacts.getContactByIdAsync('161A368D-D614-4A15-8DC6-665FDBCFAE55');
606
- * if (contact) {
607
- * console.log(contact);
608
- * }
609
- * ```
610
549
  */
611
550
  export declare function getContactByIdAsync(id: string, fields?: FieldType[]): Promise<ExistingContact | undefined>;
612
551
  /**
613
- * Creates a new contact and adds it to the system.
614
- * @deprecated This legacy `expo-contacts` API is deprecated. Use `Contact.create()` from `expo-contacts/next` instead.
615
- * > **Note**: For Android users, the Expo Go app does not have the required `WRITE_CONTACTS` permission to write to Contacts.
616
- * > You will need to create a [development build](/develop/development-builds/create-a-build/) and add permission in there manually to use this method.
617
- * @param contact A contact with the changes you wish to persist. The `id` parameter will not be used.
618
- * @param containerId @tag-ios The container that will parent the contact.
619
- * @return A promise that fulfills with ID of the new system contact.
620
- * @example
621
- * ```js
622
- * const contact = {
623
- * [Contacts.Fields.FirstName]: 'Bird',
624
- * [Contacts.Fields.LastName]: 'Man',
625
- * [Contacts.Fields.Company]: 'Young Money',
626
- * };
627
- * const contactId = await Contacts.addContactAsync(contact);
628
- * ```
552
+ *
553
+ *
554
+ *
629
555
  */
630
556
  export declare function addContactAsync(contact: Contact, containerId?: string): Promise<string>;
631
557
  /**
632
- * Mutate the information of an existing contact. Due to an iOS bug, `nonGregorianBirthday` field cannot be modified.
633
- * @deprecated This legacy `expo-contacts` API is deprecated. Use `contact.update()` or `contact.patch()` from `expo-contacts/next` instead.
634
- * @param contact A contact object including the wanted changes. Contact `id` is required.
635
- * @return A promise that fulfills with ID of the updated system contact if mutation was successful.
636
- * @example
637
- * ```js
638
- * const contact = {
639
- * id: '161A368D-D614-4A15-8DC6-665FDBCFAE55',
640
- * [Contacts.Fields.FirstName]: 'Drake',
641
- * [Contacts.Fields.Company]: 'Young Money',
642
- * };
643
- * await Contacts.updateContactAsync(contact);
644
- * ```
645
558
  */
646
559
  export declare function updateContactAsync(contact: {
647
560
  id: string;
648
561
  } & Partial<ExistingContact>): Promise<string>;
649
562
  /**
650
- * Delete a contact from the system.
651
- * @deprecated This legacy `expo-contacts` API is deprecated. Use `contact.delete()` from `expo-contacts/next` instead.
652
- * @param contactId ID of the contact you want to delete.
653
- * @example
654
- * ```js
655
- * await Contacts.removeContactAsync('161A368D-D614-4A15-8DC6-665FDBCFAE55');
656
- * ```
657
- * @platform ios
658
563
  */
659
564
  export declare function removeContactAsync(contactId: string): Promise<any>;
660
565
  /**
661
- * Query a set of contacts and write them to a local URI that can be used for sharing.
662
- * @deprecated This legacy `expo-contacts` API is deprecated. This feature will be removed in `expo-contacts/next`.
663
- * @param contactQuery Used to query contact you want to write.
664
- * @return A promise that fulfills with shareable local URI, or `undefined` if there was no match.
665
- * @example
666
- * ```js
667
- * const localUri = await Contacts.writeContactToFileAsync({
668
- * id: '161A368D-D614-4A15-8DC6-665FDBCFAE55',
669
- * });
670
- * Share.share({ url: localUri, message: 'Call me!' });
671
- * ```
672
566
  */
673
567
  export declare function writeContactToFileAsync(contactQuery?: ContactQuery): Promise<string | undefined>;
674
568
  /**
675
- * Present a native form for manipulating contacts.
676
- * @deprecated This legacy `expo-contacts` API is deprecated. Use `contact.editWithForm()` or `Contact.presentCreateForm()` from `expo-contacts/next` instead.
677
- * @param contactId The ID of a system contact.
678
- * @param contact A contact with the changes you want to persist.
679
- * @param formOptions Options for the native editor.
680
- * @example
681
- * ```js
682
- * await Contacts.presentFormAsync('161A368D-D614-4A15-8DC6-665FDBCFAE55');
683
- * ```
684
569
  */
685
570
  export declare function presentFormAsync(contactId?: string | null, contact?: Contact | null, formOptions?: FormOptions): Promise<any>;
686
571
  /**
687
- * Add a group to a container.
688
- * @deprecated This legacy `expo-contacts` API is deprecated. Use `container.addGroup()` from `expo-contacts/next` instead.
689
- * @param groupId The group you want to target.
690
- * @param containerId The container you want to add membership to.
691
- * @example
692
- * ```js
693
- * await Contacts.addExistingGroupToContainerAsync(
694
- * '161A368D-D614-4A15-8DC6-665FDBCFAE55',
695
- * '665FDBCFAE55-D614-4A15-8DC6-161A368D'
696
- * );
697
- * ```
698
- * @platform ios
699
572
  */
700
573
  export declare function addExistingGroupToContainerAsync(groupId: string, containerId: string): Promise<any>;
701
574
  /**
702
- * Create a group with a name, and add it to a container. If the container is `undefined`, the default container will be targeted.
703
- * @deprecated This legacy `expo-contacts` API is deprecated. Use `Group.create()` from `expo-contacts/next` instead.
704
- * @param name Name of the new group.
705
- * @param containerId The container you to add membership to.
706
- * @return A promise that fulfills with ID of the new group.
707
- * @example
708
- * ```js
709
- * const groupId = await Contacts.createGroupAsync('Sailor Moon');
710
- * ```
711
- * @platform ios
712
575
  */
713
576
  export declare function createGroupAsync(name?: string, containerId?: string): Promise<string>;
714
577
  /**
715
- * Change the name of an existing group.
716
- * @deprecated This legacy `expo-contacts` API is deprecated. Use `group.setName()` from `expo-contacts/next` instead.
717
- * @param groupName New name for an existing group.
718
- * @param groupId ID of the group you want to edit.
719
- * @example
720
- * ```js
721
- * await Contacts.updateGroupName('Expo Friends', '161A368D-D614-4A15-8DC6-665FDBCFAE55');
722
- * ```
723
- * @platform ios
724
578
  */
725
579
  export declare function updateGroupNameAsync(groupName: string, groupId: string): Promise<any>;
726
580
  /**
727
- * Delete a group from the device.
728
- * @deprecated This legacy `expo-contacts` API is deprecated. Use `group.delete()` from `expo-contacts/next` instead.
729
- * @param groupId ID of the group you want to remove.
730
- * @example
731
- * ```js
732
- * await Contacts.removeGroupAsync('161A368D-D614-4A15-8DC6-665FDBCFAE55');
733
- * ```
734
- * @platform ios
735
581
  */
736
582
  export declare function removeGroupAsync(groupId: string): Promise<any>;
737
583
  /**
738
- * Add a contact as a member to a group. A contact can be a member of multiple groups.
739
- * @deprecated This legacy `expo-contacts` API is deprecated. Use `group.addContact()` from `expo-contacts/next` instead.
740
- * @param contactId ID of the contact you want to edit.
741
- * @param groupId ID for the group you want to add membership to.
742
- * @example
743
- * ```js
744
- * await Contacts.addExistingContactToGroupAsync(
745
- * '665FDBCFAE55-D614-4A15-8DC6-161A368D',
746
- * '161A368D-D614-4A15-8DC6-665FDBCFAE55'
747
- * );
748
- * ```
749
- * @platform ios
750
584
  */
751
585
  export declare function addExistingContactToGroupAsync(contactId: string, groupId: string): Promise<any>;
752
586
  /**
753
- * Remove a contact's membership from a given group. This will not delete the contact.
754
- * @deprecated This legacy `expo-contacts` API is deprecated. Use `group.removeContact()` from `expo-contacts/next` instead.
755
- * @param contactId ID of the contact you want to remove.
756
- * @param groupId ID for the group you want to remove membership of.
757
- * @example
758
- * ```js
759
- * await Contacts.removeContactFromGroupAsync(
760
- * '665FDBCFAE55-D614-4A15-8DC6-161A368D',
761
- * '161A368D-D614-4A15-8DC6-665FDBCFAE55'
762
- * );
763
- * ```
764
- * @platform ios
765
587
  */
766
588
  export declare function removeContactFromGroupAsync(contactId: string, groupId: string): Promise<any>;
767
589
  /**
768
- * Query and return a list of system groups.
769
- * @deprecated This legacy `expo-contacts` API is deprecated. Use `Group.getAll()` from `expo-contacts/next` instead.
770
- * @param groupQuery Information regarding which groups you want to get.
771
- * @example
772
- * ```js
773
- * const groups = await Contacts.getGroupsAsync({ groupName: 'sailor moon' });
774
- * const allGroups = await Contacts.getGroupsAsync({});
775
- * ```
776
- * @return A promise that fulfills with array of groups that fit the query.
777
- * @platform ios
778
590
  */
779
591
  export declare function getGroupsAsync(groupQuery: GroupQuery): Promise<Group[]>;
780
592
  /**
781
- * Presents a native contact picker to select a single contact from the system. On Android, the `READ_CONTACTS` permission is required. You can
782
- * obtain this permission by calling the [`Contacts.requestPermissionsAsync()`](#contactsrequestpermissionsasync) method. On iOS, no permissions are
783
- * required to use this method.
784
- * @deprecated This legacy `expo-contacts` API is deprecated. Use `Contact.presentPicker()` from `expo-contacts/next` instead.
785
- * @return A promise that fulfills with a single `Contact` object if a contact is selected or `null` if no contact is selected (when selection is canceled).
786
593
  */
787
594
  export declare function presentContactPickerAsync(): Promise<ExistingContact | null>;
788
595
  /**
789
- * Get the default container's ID.
790
- * @deprecated This legacy `expo-contacts` API is deprecated. Use `Container.getDefault()` from `expo-contacts/next` instead.
791
- * @return A promise that fulfills with default container ID.
792
- * @example
793
- * ```js
794
- * const containerId = await Contacts.getDefaultContainerIdAsync();
795
- * ```
796
- * @platform ios
797
596
  */
798
597
  export declare function getDefaultContainerIdAsync(): Promise<string>;
799
598
  /**
800
- * Query a list of system containers.
801
- * @deprecated This legacy `expo-contacts` API is deprecated. Use `Container.getAll()` from `expo-contacts/next` instead.
802
- * @param containerQuery Information used to gather containers.
803
- * @return A promise that fulfills with array of containers that fit the query.
804
- * @example
805
- * ```js
806
- * const allContainers = await Contacts.getContainersAsync({
807
- * contactId: '665FDBCFAE55-D614-4A15-8DC6-161A368D',
808
- * });
809
- * ```
810
- * @platform ios
811
599
  */
812
600
  export declare function getContainersAsync(containerQuery: ContainerQuery): Promise<Container[]>;
813
601
  /**
814
- * Checks user's permissions for accessing contacts data.
815
- * @deprecated This legacy `expo-contacts` API is deprecated. Use `getPermissionsAsync()` from `expo-contacts/next` instead.
816
- * @return A promise that resolves to a [ContactsPermissionResponse](#contactspermissionresponse) object.
817
602
  */
818
603
  export declare function getPermissionsAsync(): Promise<ContactsPermissionResponse>;
819
604
  /**
820
- * Asks the user to grant permissions for accessing contacts data.
821
- * @deprecated This legacy `expo-contacts` API is deprecated. Use `requestPermissionsAsync()` from `expo-contacts/next` instead.
822
- * @return A promise that resolves to a [ContactsPermissionResponse](#contactspermissionresponse) object.
823
605
  */
824
606
  export declare function requestPermissionsAsync(): Promise<ContactsPermissionResponse>;
825
607
  /**
826
- * Presents a modal which allows the user to select which contacts the app has access to.
827
- * Using this function is reasonable only when the app has "limited" permissions.
828
- * @deprecated This legacy `expo-contacts` API is deprecated. Use `Contact.presentAccessPicker()` from `expo-contacts/next` instead.
829
- * @return A promise that resolves with an array of contact identifiers that were newly granted to the app.
830
- * Contacts which the app lost access to are not listed. On platforms other than iOS and below 18.0, the promise rejects immediately.
831
- * @platform ios 18.0+
832
608
  */
833
609
  export declare function presentAccessPickerAsync(): Promise<string[]>;
834
610
  /**
835
- * Adds a listener for contact changes. The listener will be called whenever contacts are added, updated, or deleted.
836
611
  *
837
- * **Platform differences:**
838
- * - **Android**: 5-7 second delay - uses `ContentObserver` with inherent system delays
839
- * - **iOS**: Immediate response - uses `CNContactStoreDidChangeNotification`
840
612
  *
841
- * The Android delay is a system limitation that affects all apps using `ContentObserver` for contacts.
842
- * This delay is by design to batch notifications for better performance and battery life.
843
- * For more immediate updates, you can also listen to app state changes and refresh
844
- * contacts when the app comes to the foreground. This ensures users see the latest contacts when
845
- * returning from the native Contacts app.
846
613
  *
847
- * @deprecated This legacy `expo-contacts` API is deprecated. Use `addContactsChangeListener()` from `expo-contacts/next` instead.
848
- * @param listener The function that will be executed when contacts change.
849
- * This function accepts no arguments.
850
614
  *
851
- * @returns A subscription object with a `remove` method to stop listening.
852
- * @example
853
- * ```jsx
854
- * const subscription = Contacts.addContactChangeListener(() => {
855
- * console.log('Contacts changed - refreshing contact list');
856
- * // Refresh your contact list when changes are detected
857
- * loadContacts();
858
- * });
859
615
  *
860
- * // Later, remove the listener
861
- * subscription.remove();
862
- * ```
863
616
  */
864
617
  export declare function addContactsChangeListener(listener: () => void): EventSubscription;
865
618
  /**
866
- * Possible fields to retrieve for a contact.
867
619
  */
868
620
  export declare enum Fields {
869
621
  ID = "id",
@@ -909,7 +661,6 @@ export declare enum Fields {
909
661
  IsFavorite = "isFavorite"
910
662
  }
911
663
  /**
912
- * This format denotes the common calendar format used to specify how a date is calculated in `nonGregorianBirthday` fields.
913
664
  */
914
665
  export declare enum CalendarFormats {
915
666
  Gregorian = "gregorian",
@@ -975,7 +726,6 @@ export declare enum CalendarFormats {
975
726
  IslamicUmmAlQura = "islamicUmmAlQura"
976
727
  }
977
728
  /**
978
- * @platform ios
979
729
  */
980
730
  export declare enum ContainerTypes {
981
731
  /**
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Contacts.d.ts","sourceRoot":"","sources":["../../src/legacy/Contacts.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExpoContacts.d.ts","sourceRoot":"","sources":["../../src/legacy/ExpoContacts.ts"],"names":[],"mappings":";AAEA,wBAAmD"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExpoContacts.web.d.ts","sourceRoot":"","sources":["../../src/legacy/ExpoContacts.web.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,kBAAkB,EAAoB,MAAM,MAAM,CAAC;;2BAUlC,OAAO,CAAC,kBAAkB,CAAC;+BAGvB,OAAO,CAAC,kBAAkB,CAAC;;AAJ9D,wBAOE"}
@@ -0,0 +1,3 @@
1
+ export * from './Contacts';
2
+ export { default as ContactAccessButton, type ContactAccessButtonProps, } from './ContactAccessButton';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/legacy/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,OAAO,EACL,OAAO,IAAI,mBAAmB,EAC9B,KAAK,wBAAwB,GAC9B,MAAM,uBAAuB,CAAC"}