@nangohq/types 0.58.5 → 0.58.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api.endpoints.d.ts +5 -5
- package/dist/billing/types.d.ts +35 -0
- package/dist/environment/api/index.d.ts +6 -0
- package/dist/index.d.ts +2 -0
- package/dist/integration/api.d.ts +59 -2
- package/dist/integration/db.d.ts +3 -1
- package/dist/logs/api.d.ts +2 -1
- package/dist/logs/messages.d.ts +3 -0
- package/dist/persist/api.d.ts +1 -1
- package/dist/plans/db.d.ts +6 -0
- package/dist/plans/http.api.d.ts +36 -1
- package/dist/providers/provider.d.ts +28 -4
- package/dist/result.d.ts +17 -0
- package/dist/sync/api.d.ts +15 -0
- package/dist/web/env.d.ts +1 -0
- package/package.json +3 -3
package/dist/api.endpoints.d.ts
CHANGED
|
@@ -5,11 +5,11 @@ import type { DeleteConnectSession, GetConnectSession, PostConnectSessions, Post
|
|
|
5
5
|
import type { DeletePublicConnection, GetConnection, GetConnections, GetConnectionsCount, GetPublicConnection, GetPublicConnections, PostConnectionRefresh } from './connection/api/get';
|
|
6
6
|
import type { SetMetadata, UpdateMetadata } from './connection/api/metadata';
|
|
7
7
|
import type { PostDeploy, PostDeployConfirmation, PostDeployInternal } from './deploy/api';
|
|
8
|
-
import type { PatchEnvironment, PostEnvironment } from './environment/api';
|
|
8
|
+
import type { DeleteEnvironment, PatchEnvironment, PostEnvironment } from './environment/api';
|
|
9
9
|
import type { PatchWebhook } from './environment/api/webhook';
|
|
10
10
|
import type { PostEnvironmentVariables } from './environment/variable/api';
|
|
11
11
|
import type { PatchFlowDisable, PatchFlowEnable, PatchFlowFrequency, PostPreBuiltDeploy, PutUpgradePreBuiltFlow } from './flow/http.api';
|
|
12
|
-
import type { DeleteIntegration, DeletePublicIntegration, GetIntegration, GetIntegrationFlows, GetPublicIntegration, GetPublicListIntegrations, GetPublicListIntegrationsLegacy, PatchIntegration, PostIntegration } from './integration/api';
|
|
12
|
+
import type { DeleteIntegration, DeletePublicIntegration, GetIntegration, GetIntegrationFlows, GetPublicIntegration, GetPublicListIntegrations, GetPublicListIntegrationsLegacy, PatchIntegration, PatchPublicIntegration, PostIntegration, PostPublicIntegration } from './integration/api';
|
|
13
13
|
import type { DeleteInvite, GetInvite, PostInvite } from './invitations/api';
|
|
14
14
|
import type { GetOperation, PostInsights, SearchFilters, SearchMessages, SearchOperations } from './logs/api';
|
|
15
15
|
import type { GetMeta } from './meta/api';
|
|
@@ -18,12 +18,12 @@ import type { PostPlanExtendTrial } from './plans/http.api';
|
|
|
18
18
|
import type { GetPublicProvider, GetPublicProviders } from './providers/api';
|
|
19
19
|
import type { GetPublicRecords } from './record/api';
|
|
20
20
|
import type { GetPublicScriptsConfig } from './scripts/http.api';
|
|
21
|
-
import type { PostPublicTrigger } from './sync/api';
|
|
21
|
+
import type { PostPublicTrigger, PutPublicSyncConnectionFrequency } from './sync/api';
|
|
22
22
|
import type { DeleteTeamUser, GetTeam, PutTeam } from './team/api';
|
|
23
23
|
import type { GetUser, PatchUser } from './user/api';
|
|
24
24
|
import type { PostPublicWebhook } from './webhooks/http.api';
|
|
25
|
-
export type PublicApiEndpoints = SetMetadata | UpdateMetadata | PostDeploy | PostDeployConfirmation | PostPublicTrigger | PostPublicTbaAuthorization | PostPublicTableauAuthorization | PostPublicJwtAuthorization | PostPublicUnauthenticatedAuthorization | PostPublicApiKeyAuthorization | PostPublicBasicAuthorization | PostPublicAppStoreAuthorization | GetPublicProviders | GetPublicProvider | GetPublicListIntegrationsLegacy | GetPublicListIntegrations | GetPublicIntegration | DeletePublicIntegration | PostConnectSessions | PostPublicConnectSessionsReconnect | GetPublicConnections | GetPublicConnection | GetConnectSession | DeleteConnectSession | PostDeployInternal | PostPublicBillAuthorization | DeletePublicConnection | PostPublicSignatureAuthorization | PostPublicTwoStepAuthorization | PostPublicWebhook | GetPublicRecords | GetPublicScriptsConfig | PostPublicConnectTelemetry;
|
|
26
|
-
export type PrivateApiEndpoints = PostSignup | PostSignin | PostLogout | GetTeam | PutTeam | PostPlanExtendTrial | GetUser | PatchUser | PostInvite | DeleteInvite | DeleteTeamUser | PostInsights | PostForgotPassword | PutResetPassword | SearchOperations | GetOperation | SearchMessages | SearchFilters | PatchOnboarding | PostInternalConnectSessions | GetIntegrationFlows | DeleteIntegration | PatchIntegration | GetIntegration | PostIntegration | GetConnections | GetConnectionsCount | GetConnection | GetInvite | GetMeta | GetEmailByExpiredToken | GetEmailByUuid | GetManagedCallback | PatchFlowDisable | PatchFlowEnable | PatchFlowFrequency | PutUpgradePreBuiltFlow | PostConnectionRefresh | PostManagedSignup | PostPreBuiltDeploy | PostEnvironment | PatchEnvironment | PatchWebhook | PostEnvironmentVariables;
|
|
25
|
+
export type PublicApiEndpoints = SetMetadata | UpdateMetadata | PostDeploy | PostDeployConfirmation | PostPublicTrigger | PostPublicTbaAuthorization | PostPublicTableauAuthorization | PostPublicJwtAuthorization | PostPublicUnauthenticatedAuthorization | PostPublicApiKeyAuthorization | PostPublicBasicAuthorization | PostPublicAppStoreAuthorization | GetPublicProviders | GetPublicProvider | GetPublicListIntegrationsLegacy | GetPublicListIntegrations | GetPublicIntegration | DeletePublicIntegration | PostConnectSessions | PostPublicConnectSessionsReconnect | GetPublicConnections | GetPublicConnection | GetConnectSession | DeleteConnectSession | PostDeployInternal | PostPublicBillAuthorization | DeletePublicConnection | PostPublicSignatureAuthorization | PostPublicTwoStepAuthorization | PostPublicWebhook | GetPublicRecords | GetPublicScriptsConfig | PostPublicConnectTelemetry | PutPublicSyncConnectionFrequency | PostPublicIntegration | PatchPublicIntegration;
|
|
26
|
+
export type PrivateApiEndpoints = PostSignup | PostSignin | PostLogout | GetTeam | PutTeam | PostPlanExtendTrial | GetUser | PatchUser | PostInvite | DeleteInvite | DeleteTeamUser | PostInsights | PostForgotPassword | PutResetPassword | SearchOperations | GetOperation | SearchMessages | SearchFilters | PatchOnboarding | PostInternalConnectSessions | GetIntegrationFlows | DeleteIntegration | PatchIntegration | GetIntegration | PostIntegration | GetConnections | GetConnectionsCount | GetConnection | GetInvite | GetMeta | GetEmailByExpiredToken | GetEmailByUuid | GetManagedCallback | PatchFlowDisable | PatchFlowEnable | PatchFlowFrequency | PutUpgradePreBuiltFlow | PostConnectionRefresh | PostManagedSignup | PostPreBuiltDeploy | PostEnvironment | PatchEnvironment | DeleteEnvironment | PatchWebhook | PostEnvironmentVariables;
|
|
27
27
|
export type APIEndpoints = PrivateApiEndpoints | PublicApiEndpoints;
|
|
28
28
|
/**
|
|
29
29
|
* Automatically narrow endpoints type with Method + Path
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type { Result } from '../result';
|
|
2
|
+
export interface BillingClient {
|
|
3
|
+
ingest: (events: BillingIngestEvent[]) => Promise<void>;
|
|
4
|
+
getCustomer: (accountId: number) => Promise<Result<BillingCustomer>>;
|
|
5
|
+
getSubscription: (accountId: number) => Promise<Result<BillingSubscription | null>>;
|
|
6
|
+
getUsage: (subscriptionId: string, period?: 'previous') => Promise<Result<BillingUsageMetric[]>>;
|
|
7
|
+
}
|
|
8
|
+
export interface BillingCustomer {
|
|
9
|
+
id: string;
|
|
10
|
+
portalUrl: string | null;
|
|
11
|
+
}
|
|
12
|
+
export interface BillingSubscription {
|
|
13
|
+
id: string;
|
|
14
|
+
}
|
|
15
|
+
export interface BillingUsageMetric {
|
|
16
|
+
id: string;
|
|
17
|
+
name: string;
|
|
18
|
+
quantity: number;
|
|
19
|
+
}
|
|
20
|
+
export interface BillingIngestEvent {
|
|
21
|
+
type: 'monthly_active_records' | 'billable_connections' | 'billable_actions';
|
|
22
|
+
idempotencyKey: string;
|
|
23
|
+
accountId: number;
|
|
24
|
+
timestamp: Date;
|
|
25
|
+
properties: Record<string, string | number>;
|
|
26
|
+
}
|
|
27
|
+
export interface BillingMetric {
|
|
28
|
+
type: BillingIngestEvent['type'];
|
|
29
|
+
value: number;
|
|
30
|
+
properties: {
|
|
31
|
+
accountId: number;
|
|
32
|
+
timestamp?: Date | undefined;
|
|
33
|
+
idempotencyKey?: string | undefined;
|
|
34
|
+
};
|
|
35
|
+
}
|
|
@@ -53,3 +53,9 @@ export type PatchEnvironment = Endpoint<{
|
|
|
53
53
|
};
|
|
54
54
|
Error: ApiError<'conflict'>;
|
|
55
55
|
}>;
|
|
56
|
+
export type DeleteEnvironment = Endpoint<{
|
|
57
|
+
Method: 'DELETE';
|
|
58
|
+
Path: '/api/v1/environments';
|
|
59
|
+
Success: never;
|
|
60
|
+
Error: ApiError<'cannot_delete_prod_environment'>;
|
|
61
|
+
}>;
|
package/dist/index.d.ts
CHANGED
|
@@ -19,8 +19,10 @@ export type * from './syncConfigs/db.js';
|
|
|
19
19
|
export type * from './syncConfigs/api.js';
|
|
20
20
|
export type * from './team/api.js';
|
|
21
21
|
export type * from './team/db.js';
|
|
22
|
+
export type * from './billing/types.js';
|
|
22
23
|
export type * from './providers/api.js';
|
|
23
24
|
export type * from './proxy/api.js';
|
|
25
|
+
export type * from './result.js';
|
|
24
26
|
export type * from './scripts/on-events/db.js';
|
|
25
27
|
export type * from './scripts/on-events/api.js';
|
|
26
28
|
export type * from './scripts/syncs/api.js';
|
|
@@ -4,9 +4,8 @@ import type { AuthModeType, AuthModes } from '../auth/api';
|
|
|
4
4
|
import type { NangoSyncConfig } from '../flow';
|
|
5
5
|
import type { Provider } from '../providers/provider';
|
|
6
6
|
import type { Merge } from 'type-fest';
|
|
7
|
-
export type ApiPublicIntegration = Merge<Pick<IntegrationConfig, 'created_at' | 'updated_at' | 'unique_key' | 'provider'>, ApiTimestamps> & {
|
|
7
|
+
export type ApiPublicIntegration = Merge<Pick<IntegrationConfig, 'created_at' | 'updated_at' | 'unique_key' | 'provider' | 'display_name'>, ApiTimestamps> & {
|
|
8
8
|
logo: string;
|
|
9
|
-
display_name: string;
|
|
10
9
|
} & ApiPublicIntegrationInclude;
|
|
11
10
|
export interface ApiPublicIntegrationInclude {
|
|
12
11
|
webhook_url?: string | null;
|
|
@@ -39,6 +38,19 @@ export type GetPublicListIntegrations = Endpoint<{
|
|
|
39
38
|
data: ApiPublicIntegration[];
|
|
40
39
|
};
|
|
41
40
|
}>;
|
|
41
|
+
export type PostPublicIntegration = Endpoint<{
|
|
42
|
+
Method: 'POST';
|
|
43
|
+
Path: '/integrations';
|
|
44
|
+
Body: {
|
|
45
|
+
provider: string;
|
|
46
|
+
unique_key: string;
|
|
47
|
+
display_name?: string | undefined;
|
|
48
|
+
credentials?: ApiPublicIntegrationCredentials | undefined;
|
|
49
|
+
};
|
|
50
|
+
Success: {
|
|
51
|
+
data: ApiPublicIntegration;
|
|
52
|
+
};
|
|
53
|
+
}>;
|
|
42
54
|
export type GetPublicIntegration = Endpoint<{
|
|
43
55
|
Method: 'GET';
|
|
44
56
|
Path: '/integrations/:uniqueKey';
|
|
@@ -52,7 +64,32 @@ export type GetPublicIntegration = Endpoint<{
|
|
|
52
64
|
data: ApiPublicIntegration;
|
|
53
65
|
};
|
|
54
66
|
}>;
|
|
67
|
+
export type PatchPublicIntegration = Endpoint<{
|
|
68
|
+
Method: 'PATCH';
|
|
69
|
+
Path: '/integrations/:uniqueKey';
|
|
70
|
+
Params: {
|
|
71
|
+
uniqueKey: string;
|
|
72
|
+
};
|
|
73
|
+
Body: {
|
|
74
|
+
unique_key?: string | undefined;
|
|
75
|
+
display_name?: string | undefined;
|
|
76
|
+
credentials?: ApiPublicIntegrationCredentials | undefined;
|
|
77
|
+
};
|
|
78
|
+
Success: {
|
|
79
|
+
data: ApiPublicIntegration;
|
|
80
|
+
};
|
|
81
|
+
}>;
|
|
55
82
|
export type DeletePublicIntegration = Endpoint<{
|
|
83
|
+
Method: 'DELETE';
|
|
84
|
+
Path: '/integrations/:uniqueKey';
|
|
85
|
+
Params: {
|
|
86
|
+
uniqueKey: string;
|
|
87
|
+
};
|
|
88
|
+
Success: {
|
|
89
|
+
success: true;
|
|
90
|
+
};
|
|
91
|
+
}>;
|
|
92
|
+
export type DeletePublicIntegrationDeprecated = Endpoint<{
|
|
56
93
|
Method: 'DELETE';
|
|
57
94
|
Path: '/config/:providerConfigKey';
|
|
58
95
|
Params: {
|
|
@@ -72,6 +109,7 @@ export type ApiIntegrationList = ApiIntegration & {
|
|
|
72
109
|
missingFieldsCount: number;
|
|
73
110
|
connectionConfigParams?: string[];
|
|
74
111
|
credentialParams?: string[];
|
|
112
|
+
displayName: string;
|
|
75
113
|
};
|
|
76
114
|
};
|
|
77
115
|
export type GetIntegrations = Endpoint<{
|
|
@@ -127,6 +165,7 @@ export type PatchIntegration = Endpoint<{
|
|
|
127
165
|
Body: {
|
|
128
166
|
integrationId?: string | undefined;
|
|
129
167
|
webhookSecret?: string | undefined;
|
|
168
|
+
displayName?: string | undefined;
|
|
130
169
|
} | {
|
|
131
170
|
authType: Extract<AuthModeType, 'OAUTH1' | 'OAUTH2' | 'TBA'>;
|
|
132
171
|
clientId: string;
|
|
@@ -181,3 +220,21 @@ export type GetIntegrationFlows = Endpoint<{
|
|
|
181
220
|
};
|
|
182
221
|
};
|
|
183
222
|
}>;
|
|
223
|
+
export type ApiPublicIntegrationCredentials = {
|
|
224
|
+
type: Extract<AuthModeType, 'OAUTH1' | 'OAUTH2' | 'TBA'>;
|
|
225
|
+
client_id: string;
|
|
226
|
+
client_secret: string;
|
|
227
|
+
scopes?: string | undefined;
|
|
228
|
+
} | {
|
|
229
|
+
type: Extract<AuthModeType, 'APP'>;
|
|
230
|
+
app_id: string;
|
|
231
|
+
app_link: string;
|
|
232
|
+
private_key: string;
|
|
233
|
+
} | {
|
|
234
|
+
type: Extract<AuthModeType, 'CUSTOM'>;
|
|
235
|
+
client_id: string;
|
|
236
|
+
client_secret: string;
|
|
237
|
+
app_id: string;
|
|
238
|
+
app_link: string;
|
|
239
|
+
private_key: string;
|
|
240
|
+
};
|
package/dist/integration/db.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { SetOptional } from 'type-fest';
|
|
2
1
|
import type { TimestampsAndDeleted } from '../db.js';
|
|
3
2
|
import type { NullablePartial } from '../utils.js';
|
|
3
|
+
import type { SetOptional, Tagged } from 'type-fest';
|
|
4
4
|
export interface IntegrationConfig extends TimestampsAndDeleted {
|
|
5
5
|
id?: number | undefined;
|
|
6
6
|
unique_key: string;
|
|
@@ -14,5 +14,7 @@ export interface IntegrationConfig extends TimestampsAndDeleted {
|
|
|
14
14
|
app_link?: string | null | undefined;
|
|
15
15
|
custom?: Record<string, string> | undefined | null;
|
|
16
16
|
missing_fields: string[];
|
|
17
|
+
display_name: string | null;
|
|
17
18
|
}
|
|
19
|
+
export type DBIntegrationCrypted = Tagged<IntegrationConfig, 'IntegrationCrypted'>;
|
|
18
20
|
export type DBCreateIntegration = SetOptional<NullablePartial<Omit<IntegrationConfig, 'created_at' | 'updated_at'>>, 'missing_fields'>;
|
package/dist/logs/api.d.ts
CHANGED
|
@@ -5,7 +5,7 @@ type Concat<T extends OperationList> = T extends {
|
|
|
5
5
|
action: string;
|
|
6
6
|
} ? `${T['type']}:${T['action']}` : never;
|
|
7
7
|
export type ConcatOperationList = Concat<OperationList>;
|
|
8
|
-
export type ConcatOperationListWithGroup = OperationList[
|
|
8
|
+
export type ConcatOperationListWithGroup = OperationList['type'] | ConcatOperationList;
|
|
9
9
|
export type SearchOperations = Endpoint<{
|
|
10
10
|
Method: 'POST';
|
|
11
11
|
Path: '/api/v1/logs/operations';
|
|
@@ -13,6 +13,7 @@ export type SearchOperations = Endpoint<{
|
|
|
13
13
|
env: string;
|
|
14
14
|
};
|
|
15
15
|
Body: {
|
|
16
|
+
search?: string | undefined;
|
|
16
17
|
limit?: number;
|
|
17
18
|
states?: SearchOperationsState[];
|
|
18
19
|
types?: SearchOperationsType[];
|
package/dist/logs/messages.d.ts
CHANGED
|
@@ -89,6 +89,7 @@ export interface MessageRow {
|
|
|
89
89
|
message: string;
|
|
90
90
|
context?: 'script' | 'proxy' | 'webhook' | 'auth' | undefined;
|
|
91
91
|
parentId: string;
|
|
92
|
+
accountId: number;
|
|
92
93
|
error?: MessageError | undefined;
|
|
93
94
|
request?: MessageHTTPRequest | undefined;
|
|
94
95
|
response?: MessageHTTPResponse | undefined;
|
|
@@ -99,6 +100,8 @@ export interface MessageRow {
|
|
|
99
100
|
addedKeys: string[];
|
|
100
101
|
updated: number;
|
|
101
102
|
updatedKeys: string[];
|
|
103
|
+
unchanged: number;
|
|
104
|
+
unchangedKeys: string[];
|
|
102
105
|
deleted: number;
|
|
103
106
|
deleteKeys: string[];
|
|
104
107
|
} | undefined;
|
package/dist/persist/api.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ import type { MessageRowInsert } from '../logs/messages.js';
|
|
|
3
3
|
import type { MergingStrategy, NangoRecord } from '../record/api.js';
|
|
4
4
|
interface LogBody {
|
|
5
5
|
activityLogId: string;
|
|
6
|
-
log: MessageRowInsert
|
|
6
|
+
log: Omit<MessageRowInsert, 'accountId'>;
|
|
7
7
|
}
|
|
8
8
|
export type PostLog = Endpoint<{
|
|
9
9
|
Method: 'POST';
|
package/dist/plans/db.d.ts
CHANGED
|
@@ -14,6 +14,12 @@ export interface DBPlan extends Timestamps {
|
|
|
14
14
|
* @default 3
|
|
15
15
|
*/
|
|
16
16
|
connection_with_scripts_max: number | null;
|
|
17
|
+
/**
|
|
18
|
+
* Limit the number of total non-deleted connections
|
|
19
|
+
* Set to null to remove limit
|
|
20
|
+
* @default null
|
|
21
|
+
*/
|
|
22
|
+
connections_max: number | null;
|
|
17
23
|
/**
|
|
18
24
|
* Limit the number of environments that can be created
|
|
19
25
|
* @default 2
|
package/dist/plans/http.api.d.ts
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
|
+
import type { BillingCustomer, BillingUsageMetric } from '../billing/types';
|
|
1
2
|
import type { ReplaceInObject } from '../utils';
|
|
2
3
|
import type { DBPlan } from './db.js';
|
|
3
4
|
import type { Endpoint } from '../api';
|
|
4
5
|
export type ApiPlan = ReplaceInObject<DBPlan, Date, string>;
|
|
5
6
|
export type PostPlanExtendTrial = Endpoint<{
|
|
6
7
|
Method: 'POST';
|
|
7
|
-
Path: '/api/v1/
|
|
8
|
+
Path: '/api/v1/plans/trial/extension';
|
|
8
9
|
Querystring: {
|
|
9
10
|
env: string;
|
|
10
11
|
};
|
|
@@ -14,3 +15,37 @@ export type PostPlanExtendTrial = Endpoint<{
|
|
|
14
15
|
};
|
|
15
16
|
};
|
|
16
17
|
}>;
|
|
18
|
+
export interface PlanDefinition {
|
|
19
|
+
code: string;
|
|
20
|
+
title: string;
|
|
21
|
+
description: string;
|
|
22
|
+
canUpgrade: boolean;
|
|
23
|
+
canDowngrade: false;
|
|
24
|
+
cta?: string;
|
|
25
|
+
hidden?: boolean;
|
|
26
|
+
flags: Omit<Partial<DBPlan>, 'id' | 'account_id'>;
|
|
27
|
+
}
|
|
28
|
+
export type GetPlans = Endpoint<{
|
|
29
|
+
Method: 'GET';
|
|
30
|
+
Path: '/api/v1/plans';
|
|
31
|
+
Querystring: {
|
|
32
|
+
env: string;
|
|
33
|
+
};
|
|
34
|
+
Success: {
|
|
35
|
+
data: PlanDefinition[];
|
|
36
|
+
};
|
|
37
|
+
}>;
|
|
38
|
+
export type GetUsage = Endpoint<{
|
|
39
|
+
Method: 'GET';
|
|
40
|
+
Path: '/api/v1/plans/usage';
|
|
41
|
+
Querystring: {
|
|
42
|
+
env: string;
|
|
43
|
+
};
|
|
44
|
+
Success: {
|
|
45
|
+
data: {
|
|
46
|
+
customer: BillingCustomer;
|
|
47
|
+
current: BillingUsageMetric[];
|
|
48
|
+
previous: BillingUsageMetric[];
|
|
49
|
+
};
|
|
50
|
+
};
|
|
51
|
+
}>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { RetryHeaderConfig, CursorPagination, LinkPagination, OffsetPagination } from '../proxy/api.js';
|
|
2
|
-
import type { AuthModeType, OAuthAuthorizationMethodType, OAuthBodyFormatType } from '../auth/api.js';
|
|
3
1
|
import type { EndpointMethod } from '../api.js';
|
|
2
|
+
import type { AuthModeType, OAuthAuthorizationMethodType, OAuthBodyFormatType } from '../auth/api.js';
|
|
3
|
+
import type { CursorPagination, LinkPagination, OffsetPagination, RetryHeaderConfig } from '../proxy/api.js';
|
|
4
4
|
export interface TokenUrlObject {
|
|
5
5
|
OAUTH1?: string;
|
|
6
6
|
OAUTH2?: string;
|
|
@@ -84,7 +84,7 @@ export interface BaseProvider {
|
|
|
84
84
|
body_format?: OAuthBodyFormatType;
|
|
85
85
|
}
|
|
86
86
|
export interface ProviderOAuth2 extends BaseProvider {
|
|
87
|
-
auth_mode: 'OAUTH2'
|
|
87
|
+
auth_mode: 'OAUTH2';
|
|
88
88
|
disable_pkce?: boolean;
|
|
89
89
|
token_params?: {
|
|
90
90
|
grant_type?: 'authorization_code' | 'client_credentials';
|
|
@@ -93,6 +93,7 @@ export interface ProviderOAuth2 extends BaseProvider {
|
|
|
93
93
|
grant_type: 'refresh_token';
|
|
94
94
|
};
|
|
95
95
|
authorization_method?: OAuthAuthorizationMethodType;
|
|
96
|
+
alternate_access_token_response_path?: string;
|
|
96
97
|
refresh_url?: string;
|
|
97
98
|
expires_in_unit?: 'milliseconds';
|
|
98
99
|
token_request_auth_method?: 'basic' | 'custom';
|
|
@@ -105,6 +106,13 @@ export interface ProviderOAuth1 extends BaseProvider {
|
|
|
105
106
|
token_http_method?: 'GET' | 'PUT' | 'POST';
|
|
106
107
|
signature_method: 'HMAC-SHA1' | 'RSA-SHA1' | 'PLAINTEXT';
|
|
107
108
|
}
|
|
109
|
+
export interface ProviderCustom extends Omit<ProviderOAuth2, 'auth_mode'> {
|
|
110
|
+
auth_mode: 'CUSTOM';
|
|
111
|
+
token_url: {
|
|
112
|
+
OAUTH2: string;
|
|
113
|
+
APP: string;
|
|
114
|
+
};
|
|
115
|
+
}
|
|
108
116
|
export interface ProviderJwt extends BaseProvider {
|
|
109
117
|
auth_mode: 'JWT';
|
|
110
118
|
signature: {
|
|
@@ -124,8 +132,23 @@ export interface ProviderJwt extends BaseProvider {
|
|
|
124
132
|
};
|
|
125
133
|
};
|
|
126
134
|
}
|
|
135
|
+
export interface ProviderAppleAppStore extends BaseProvider {
|
|
136
|
+
auth_mode: 'APP_STORE';
|
|
137
|
+
token_url: string;
|
|
138
|
+
}
|
|
139
|
+
export interface ProviderTableau extends BaseProvider {
|
|
140
|
+
auth_mode: 'TABLEAU';
|
|
141
|
+
}
|
|
142
|
+
export interface ProviderBill extends BaseProvider {
|
|
143
|
+
auth_mode: 'BILL';
|
|
144
|
+
}
|
|
145
|
+
export interface ProviderGithubApp extends BaseProvider {
|
|
146
|
+
auth_mode: 'APP';
|
|
147
|
+
token_url: string;
|
|
148
|
+
}
|
|
127
149
|
export interface ProviderTwoStep extends Omit<BaseProvider, 'body_format'> {
|
|
128
150
|
auth_mode: 'TWO_STEP';
|
|
151
|
+
token_request_method?: 'GET';
|
|
129
152
|
token_headers?: Record<string, string>;
|
|
130
153
|
token_response: {
|
|
131
154
|
token: string;
|
|
@@ -137,6 +160,7 @@ export interface ProviderTwoStep extends Omit<BaseProvider, 'body_format'> {
|
|
|
137
160
|
token_params?: Record<string, string>;
|
|
138
161
|
token_headers?: Record<string, string>;
|
|
139
162
|
token_url: string;
|
|
163
|
+
token_request_method?: 'GET';
|
|
140
164
|
}[];
|
|
141
165
|
token_expires_in_ms?: number;
|
|
142
166
|
proxy_header_authorization?: string;
|
|
@@ -154,6 +178,6 @@ export interface ProviderSignature extends BaseProvider {
|
|
|
154
178
|
export interface ProviderApiKey extends BaseProvider {
|
|
155
179
|
auth_mode: 'API_KEY';
|
|
156
180
|
}
|
|
157
|
-
export type Provider = BaseProvider | ProviderOAuth1 | ProviderOAuth2 | ProviderJwt | ProviderTwoStep | ProviderSignature | ProviderApiKey;
|
|
181
|
+
export type Provider = BaseProvider | ProviderOAuth1 | ProviderOAuth2 | ProviderJwt | ProviderTwoStep | ProviderSignature | ProviderApiKey | ProviderTableau | ProviderBill | ProviderGithubApp | ProviderAppleAppStore | ProviderCustom;
|
|
158
182
|
export type RefreshableProvider = ProviderTwoStep | ProviderJwt | ProviderSignature | ProviderOAuth2;
|
|
159
183
|
export type TestableProvider = ProviderApiKey;
|
package/dist/result.d.ts
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export interface Left<T, E extends Error> {
|
|
2
|
+
error: E;
|
|
3
|
+
isErr(this: Result<T, E>): this is Left<T, E>;
|
|
4
|
+
isOk(this: Result<T, E>): this is Right<T, E>;
|
|
5
|
+
unwrap(): T;
|
|
6
|
+
map<U>(fn: (value: T) => U): Result<T, E>;
|
|
7
|
+
mapError<U extends Error>(fn: (error: E) => U): Result<T, U>;
|
|
8
|
+
}
|
|
9
|
+
export interface Right<T, E extends Error> {
|
|
10
|
+
value: T;
|
|
11
|
+
isErr(this: Result<T, E>): this is Left<T, E>;
|
|
12
|
+
isOk(this: Result<T, E>): this is Right<T, E>;
|
|
13
|
+
unwrap(): T;
|
|
14
|
+
map<U>(fn: (value: T) => U): Result<U, E>;
|
|
15
|
+
mapError<U extends Error>(fn: (error: E) => U): Result<T, U>;
|
|
16
|
+
}
|
|
17
|
+
export type Result<T, E extends Error = Error> = Left<T, E> | Right<T, E>;
|
package/dist/sync/api.d.ts
CHANGED
|
@@ -55,3 +55,18 @@ export type DeleteSyncVariant = Endpoint<{
|
|
|
55
55
|
success: boolean;
|
|
56
56
|
};
|
|
57
57
|
}>;
|
|
58
|
+
export type PutPublicSyncConnectionFrequency = Endpoint<{
|
|
59
|
+
Method: 'PUT';
|
|
60
|
+
Path: '/sync/update-connection-frequency';
|
|
61
|
+
Body: {
|
|
62
|
+
sync_name: string;
|
|
63
|
+
sync_variant?: string | undefined;
|
|
64
|
+
provider_config_key: string;
|
|
65
|
+
connection_id: string;
|
|
66
|
+
frequency: string | null;
|
|
67
|
+
};
|
|
68
|
+
Success: {
|
|
69
|
+
frequency: string;
|
|
70
|
+
};
|
|
71
|
+
Error: ApiError<'unknown_connection' | 'unknown_sync'>;
|
|
72
|
+
}>;
|
package/dist/web/env.d.ts
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nangohq/types",
|
|
3
|
-
"version": "0.58.
|
|
3
|
+
"version": "0.58.7",
|
|
4
4
|
"description": "Types used in Nango applications",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"typings": "dist/index.d.ts",
|
|
@@ -12,9 +12,9 @@
|
|
|
12
12
|
"directory": "packages/utils"
|
|
13
13
|
},
|
|
14
14
|
"dependencies": {
|
|
15
|
-
"axios": "
|
|
15
|
+
"axios": "1.9.0",
|
|
16
16
|
"json-schema": "0.4.0",
|
|
17
|
-
"type-fest": "4.
|
|
17
|
+
"type-fest": "4.40.0"
|
|
18
18
|
},
|
|
19
19
|
"devDependencies": {
|
|
20
20
|
"@types/json-schema": "7.0.15"
|