appstore-connect-sdk 2.2.1 → 2.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -16,7 +16,7 @@ The `appstore-connect-sdk` module includes the following features:
16
16
 
17
17
  - [x] **JWT Authentication** - Configure with your API Key and let the SDK handle JWT token signing
18
18
  - [x] **Smart Token Management** - Tokens are automatically generated, cached, and refreshed before expiration (within 2 minutes of expiry)
19
- - [x] **Full API Coverage** - Support for all App Store Connect API endpoints through OpenAPI-generated code
19
+ - [x] **Full API Coverage** - ~1,000 endpoints of the App Store Connect API **4.5** spec, generated from Apple's official OpenAPI description
20
20
  - [x] **Cross-Platform** - Compatible with both Node.js and **Deno** environments
21
21
 
22
22
  ## Examples
@@ -30,6 +30,8 @@ The `appstore-connect-sdk` module includes the following features:
30
30
  npm install appstore-connect-sdk
31
31
  ```
32
32
 
33
+ Requires Node.js **20+**.
34
+
33
35
  ## Usage
34
36
 
35
37
  #### 1. Import `appstore-connect-sdk`
@@ -193,13 +195,13 @@ const client = createClient({
193
195
 
194
196
  ### Import entrypoints (memory footprint)
195
197
 
196
- The default root import eagerly initializes the full generated surface — including ~3,700 Zod schemas — which adds roughly **500 MiB RSS** to a fresh Node.js process ([#47](https://github.com/isaced/appstore-connect-sdk/issues/47)). If you don't need runtime schema validation, import from a lighter subpath entry:
198
+ The default root import eagerly initializes the full generated surface — ~5,000 Zod and JSON schemas — which adds roughly **450 MiB RSS** to a fresh Node.js process ([#47](https://github.com/isaced/appstore-connect-sdk/issues/47)). If you don't need runtime schema validation, import from a lighter subpath entry (measured on v2.2.1):
197
199
 
198
200
  | Entry | Contents | Approx. RSS |
199
201
  |---|---|---|
200
- | `appstore-connect-sdk` | Everything (backward compatible) | ~518 MiB |
201
- | `appstore-connect-sdk/sdk` | Request functions, TS types, `createClient` | ~29 MiB |
202
- | `appstore-connect-sdk/client` | `createClient` and client types only | ~12 MiB |
202
+ | `appstore-connect-sdk` | Everything (backward compatible) | ~457 MiB |
203
+ | `appstore-connect-sdk/sdk` | Request functions, TS types, `createClient` | ~36 MiB |
204
+ | `appstore-connect-sdk/client` | `createClient` and client types only | ~20 MiB |
203
205
  | `appstore-connect-sdk/schemas` | JSON schemas (opt-in) | — |
204
206
  | `appstore-connect-sdk/zod` | Zod schemas for runtime validation (opt-in) | — |
205
207
 
@@ -226,7 +228,9 @@ This will generate TypeScript code through [@hey-api/openapi-ts](https://github.
226
228
 
227
229
  ## Deno Compatibility
228
230
 
229
- The `appstore-connect-sdk` module is fully compatible with Deno. An example of using the `appstore-connect-sdk` module in a Deno environment can be found in the [deno_example](https://github.com/isaced/appstore-connect-sdk/tree/main/deno_example).
231
+ The `appstore-connect-sdk` module is compatible with Deno via `npm:` specifiers. An example can be found in the [deno_example](https://github.com/isaced/appstore-connect-sdk/tree/main/deno_example).
232
+
233
+ > Note: publication to JSR (`jsr:@isaced/appstore-connect-sdk`) is not live yet, so the subpath entries (`/sdk`, `/client`, …) are currently npm-only; Deno users should import the root entry for now.
230
234
 
231
235
  We are committed to ensuring that the `appstore-connect-sdk` module remains fully compatible with both Node.js and Deno, and we will continue to work on improving its compatibility with Deno as the Deno runtime evolves.
232
236
 
@@ -4,13 +4,13 @@ export declare const createQuerySerializer: <T = unknown>({ parameters, ...args
4
4
  /**
5
5
  * Infers parseAs value from provided Content-Type header.
6
6
  */
7
- export declare const getParseAs: (contentType: string | null) => Exclude<Config["parseAs"], "auto">;
7
+ export declare const getParseAs: (contentType: string | null) => Exclude<Config['parseAs'], 'auto'>;
8
8
  export declare function setAuthParams(options: Pick<RequestOptions, 'auth' | 'query' | 'security'> & {
9
9
  headers: Headers;
10
10
  }): Promise<void>;
11
11
  export declare const buildUrl: Client['buildUrl'];
12
12
  export declare const mergeConfigs: (a: Config, b: Config) => Config;
13
- export declare const mergeHeaders: (...headers: Array<Required<Config>["headers"] | undefined>) => Headers;
13
+ export declare const mergeHeaders: (...headers: Array<Required<Config>['headers'] | undefined>) => Headers;
14
14
  type ErrInterceptor<Err, Res, Req, Options> = (error: Err,
15
15
  /** response may be undefined due to a network error where no response object is produced */
16
16
  response: Res | undefined,
@@ -19,9 +19,9 @@ type ObjectSeparatorStyle = ObjectStyle | MatrixStyle;
19
19
  interface SerializePrimitiveParam extends SerializePrimitiveOptions {
20
20
  value: string;
21
21
  }
22
- export declare const separatorArrayExplode: (style: ArraySeparatorStyle) => "." | ";" | "," | "&";
23
- export declare const separatorArrayNoExplode: (style: ArraySeparatorStyle) => "," | "|" | "%20";
24
- export declare const separatorObjectExplode: (style: ObjectSeparatorStyle) => "." | ";" | "," | "&";
22
+ export declare const separatorArrayExplode: (style: ArraySeparatorStyle) => '.' | ';' | ',' | '&';
23
+ export declare const separatorArrayNoExplode: (style: ArraySeparatorStyle) => ',' | '|' | '%20';
24
+ export declare const separatorObjectExplode: (style: ObjectSeparatorStyle) => '.' | ';' | ',' | '&';
25
25
  export declare const serializeArrayParam: ({ allowReserved, explode, name, style, value, }: SerializeOptions<ArraySeparatorStyle> & {
26
26
  value: unknown[];
27
27
  }) => string;