@databutton/firebase-types 1.95.11 → 1.96.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.
|
@@ -46,7 +46,7 @@ export declare enum CollectionName {
|
|
|
46
46
|
NOTEBOOKS = "notebooks",
|
|
47
47
|
INTEGRATIONS = "integrations",
|
|
48
48
|
INTEGRATION_TEMPLATES = "integration-templates",
|
|
49
|
-
|
|
49
|
+
INTEGRATION_CONNECTIONS = "installed-integrations",
|
|
50
50
|
PAGES = "pages",
|
|
51
51
|
PATCH_ATTEMPTS = "patch-attempts",
|
|
52
52
|
PROFILES = "profiles",
|
|
@@ -47,7 +47,7 @@ export var CollectionName;
|
|
|
47
47
|
CollectionName["NOTEBOOKS"] = "notebooks";
|
|
48
48
|
CollectionName["INTEGRATIONS"] = "integrations";
|
|
49
49
|
CollectionName["INTEGRATION_TEMPLATES"] = "integration-templates";
|
|
50
|
-
CollectionName["
|
|
50
|
+
CollectionName["INTEGRATION_CONNECTIONS"] = "installed-integrations";
|
|
51
51
|
CollectionName["PAGES"] = "pages";
|
|
52
52
|
CollectionName["PATCH_ATTEMPTS"] = "patch-attempts";
|
|
53
53
|
CollectionName["PROFILES"] = "profiles";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { Timestamp } from "firebase/firestore";
|
|
2
2
|
import type { JsonObject, Primitive } from "type-fest";
|
|
3
3
|
import type { ProjectMigration } from "../internal/enums.js";
|
|
4
|
-
import type { AccountRole, ConfigTypes,
|
|
4
|
+
import type { AccountRole, ConfigTypes, TaskPriority, TaskRelation, ThirdPartyAuthName, ThirdPartyDatabaseName, ThirdPartyPaymentsName, ThirdPartyServiceCategory, ThirdPartyStorageName, UiComponentTag } from "./enums.js";
|
|
5
5
|
/**
|
|
6
6
|
* Types here should reflect data format stored in firestore and
|
|
7
7
|
* either be backwards-compatible or migrated when needed
|
|
@@ -57,6 +57,10 @@ export interface Account {
|
|
|
57
57
|
* Used to determine deployed app URLs
|
|
58
58
|
*/
|
|
59
59
|
publicUsername: PublicUsername | null;
|
|
60
|
+
/**
|
|
61
|
+
* Default project template ID for new projects (leave blank for using product default)
|
|
62
|
+
*/
|
|
63
|
+
defaultProjectTemplateId?: string;
|
|
60
64
|
}
|
|
61
65
|
interface AccountConfigBase {
|
|
62
66
|
enabledBy: PerformedBy;
|
|
@@ -158,6 +162,7 @@ export interface AccountList {
|
|
|
158
162
|
export interface AccountMember {
|
|
159
163
|
createdBy: PerformedBy;
|
|
160
164
|
lastUpdatedBy: PerformedBy;
|
|
165
|
+
displayName: string;
|
|
161
166
|
email: string;
|
|
162
167
|
roles: Array<AccountRole>;
|
|
163
168
|
}
|
|
@@ -952,40 +957,6 @@ export interface ProjectMigrationRecord {
|
|
|
952
957
|
name: ProjectMigration;
|
|
953
958
|
migratedAt: Timestamp;
|
|
954
959
|
}
|
|
955
|
-
/**
|
|
956
|
-
* Collection of integrations that you can add to your project. @deprecated Use InstalledIntegration and IntegrationTemplate instead.
|
|
957
|
-
*/
|
|
958
|
-
export interface Integration {
|
|
959
|
-
displayName: string;
|
|
960
|
-
version: string;
|
|
961
|
-
state: "active" | "early-access" | "inactive";
|
|
962
|
-
/**
|
|
963
|
-
* The type of integration
|
|
964
|
-
*/
|
|
965
|
-
type: IntegrationType;
|
|
966
|
-
/**
|
|
967
|
-
* The name of the Python packages needed to use the integration
|
|
968
|
-
*/
|
|
969
|
-
pythonPackageNames: string[];
|
|
970
|
-
/**
|
|
971
|
-
* Short description of the integration
|
|
972
|
-
* Ment for the user to understand what the integration does
|
|
973
|
-
*/
|
|
974
|
-
description: string;
|
|
975
|
-
/**
|
|
976
|
-
* URL to the documentation for the integration
|
|
977
|
-
*/
|
|
978
|
-
documentationUrl: string | null;
|
|
979
|
-
createdBy: PerformedBy;
|
|
980
|
-
lastUpdatedBy: PerformedBy;
|
|
981
|
-
credentials: string[];
|
|
982
|
-
/**
|
|
983
|
-
* Example code snippet to test if the integration is working
|
|
984
|
-
*/
|
|
985
|
-
healthCheck: {
|
|
986
|
-
codeSnippet: string;
|
|
987
|
-
} | null;
|
|
988
|
-
}
|
|
989
960
|
export type ProjectVariant = "beyond-streamlit" | "riff";
|
|
990
961
|
export interface IntegrationPackages {
|
|
991
962
|
npmPackages: {
|
|
@@ -1080,62 +1051,6 @@ export interface IntegrationTemplate {
|
|
|
1080
1051
|
lastUpdatedBy: PerformedBy;
|
|
1081
1052
|
}
|
|
1082
1053
|
export type IntegrationStatus = "connecting" | "connected" | "needs_reconnect";
|
|
1083
|
-
/**
|
|
1084
|
-
* Integrations installed to user apps. If supported taken from AvailableIntegrations, otherwise custom.
|
|
1085
|
-
* Once installed they evolve by themselves.
|
|
1086
|
-
*/
|
|
1087
|
-
export interface InstalledIntegration {
|
|
1088
|
-
status?: IntegrationStatus;
|
|
1089
|
-
displayName: string;
|
|
1090
|
-
templateSemVerVersion: string;
|
|
1091
|
-
templateId: string;
|
|
1092
|
-
enabled: boolean;
|
|
1093
|
-
logoUrl?: string;
|
|
1094
|
-
apiVersion?: IntegrationApiVersion;
|
|
1095
|
-
metadata?: Record<string, string>;
|
|
1096
|
-
credentials: {
|
|
1097
|
-
key: string;
|
|
1098
|
-
ref: string;
|
|
1099
|
-
}[];
|
|
1100
|
-
/**
|
|
1101
|
-
* Learnings are notes collected by the agent as it learns about the integration and the way a given company uses it.
|
|
1102
|
-
* This should evolve over time and allow the agent to provide mroe acurate results tailored to the specific dataset.
|
|
1103
|
-
* e.g. For example in intercom user_id is called external_ref
|
|
1104
|
-
*/
|
|
1105
|
-
learnings: string[];
|
|
1106
|
-
managedBy: "riff" | "riff-custom" | "community";
|
|
1107
|
-
/**
|
|
1108
|
-
* Short description of the integration
|
|
1109
|
-
* Ment for the user to understand what the integration does
|
|
1110
|
-
*/
|
|
1111
|
-
description: string;
|
|
1112
|
-
provider: {
|
|
1113
|
-
name: string;
|
|
1114
|
-
};
|
|
1115
|
-
/** Installed optional scopes for the integration. e.g. "read:contacts", "write:contacts". Allows for managing these via the admin panel and comparing installed vs available scopes. Broken down into sections for easier management and allowing users to select scope sections they need. */
|
|
1116
|
-
optionalScopes?: IntegrationScope[];
|
|
1117
|
-
authStrategy: "riff-oauth" | "oauth" | "api-key" | "custom";
|
|
1118
|
-
/**
|
|
1119
|
-
* human/agent-readable notes (scopes, pagination, rate limits, usage examples). Living document. used by agent, and for debug
|
|
1120
|
-
*/
|
|
1121
|
-
guide: string | null;
|
|
1122
|
-
/**
|
|
1123
|
-
* Set of URLs for the agent to learn about how to use the integration.
|
|
1124
|
-
* Quickstart is a human-friendly guide from the integration docs
|
|
1125
|
-
* OpenAPI is the API spec to learn from
|
|
1126
|
-
* Docs is a generic catch all for the documentation presented by the provider. e.g. docs.stripe.com
|
|
1127
|
-
*/
|
|
1128
|
-
documentationUrls: {
|
|
1129
|
-
type: "quickstart" | "openapi" | "docs";
|
|
1130
|
-
url: string;
|
|
1131
|
-
}[];
|
|
1132
|
-
/**
|
|
1133
|
-
* The name of the Python packages needed to use the integration
|
|
1134
|
-
*/
|
|
1135
|
-
packages: IntegrationPackages;
|
|
1136
|
-
installedBy: PerformedBy;
|
|
1137
|
-
lastUpdatedBy: PerformedBy;
|
|
1138
|
-
}
|
|
1139
1054
|
/**
|
|
1140
1055
|
* Summary information for an integration template
|
|
1141
1056
|
* Stored at: /integration-templates/{label}
|
|
@@ -1191,14 +1106,14 @@ export interface IntegrationTemplateVersion {
|
|
|
1191
1106
|
* This document is lightweight and references the template for most data.
|
|
1192
1107
|
* Only instance-specific data is stored here.
|
|
1193
1108
|
*/
|
|
1194
|
-
export interface
|
|
1109
|
+
export interface Integration {
|
|
1195
1110
|
installedBy: PerformedBy;
|
|
1196
1111
|
lastUpdatedBy: PerformedBy;
|
|
1197
1112
|
templateId: string;
|
|
1198
1113
|
templateVersion: string;
|
|
1199
1114
|
displayName: string;
|
|
1200
1115
|
enabled: boolean;
|
|
1201
|
-
status?:
|
|
1116
|
+
status?: IntegrationStatus;
|
|
1202
1117
|
metadata?: Record<string, string>;
|
|
1203
1118
|
credentials: {
|
|
1204
1119
|
key: string;
|
|
@@ -1229,13 +1144,13 @@ export interface AccountIntegrationUsage {
|
|
|
1229
1144
|
lastUsedAt?: Timestamp;
|
|
1230
1145
|
}
|
|
1231
1146
|
/**
|
|
1232
|
-
* Integration
|
|
1147
|
+
* Integration connection links to either account or project integration
|
|
1233
1148
|
* Stored at: /projects/{project_id}/installed-integrations/{integration_label}
|
|
1234
1149
|
*
|
|
1235
1150
|
* This is the mount point that determines how the integration is accessed
|
|
1236
1151
|
* and where it's actually stored (account vs project level)
|
|
1237
1152
|
*/
|
|
1238
|
-
export interface
|
|
1153
|
+
export interface IntegrationConnection {
|
|
1239
1154
|
parent: string;
|
|
1240
1155
|
templateId: string;
|
|
1241
1156
|
templateVersion: string;
|