@decaf-ts/integrations 0.11.0 → 0.14.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.
- package/README.md +164 -0
- package/dist/integrations.cjs +1 -1
- package/dist/integrations.cjs.map +1 -1
- package/dist/integrations.js +1 -1
- package/dist/integrations.js.map +1 -1
- package/docker/mailpit-compose.yml +17 -0
- package/docker/postgres-compose.yml +26 -0
- package/lib/cjs/blob/azure/AzureBlobStoreService.cjs +12 -23
- package/lib/cjs/blob/azure/AzureBlobStoreService.cjs.map +1 -1
- package/lib/cjs/blob/core/BlobStoreService.cjs +26 -25
- package/lib/cjs/blob/core/BlobStoreService.cjs.map +1 -1
- package/lib/cjs/blob/gcp/GcsBlobStoreService.cjs +12 -23
- package/lib/cjs/blob/gcp/GcsBlobStoreService.cjs.map +1 -1
- package/lib/cjs/blob/s3/S3BlobStoreService.cjs +11 -16
- package/lib/cjs/blob/s3/S3BlobStoreService.cjs.map +1 -1
- package/lib/cjs/blob/s3/S3CompatibleBlobStoreService.cjs +14 -16
- package/lib/cjs/blob/s3/S3CompatibleBlobStoreService.cjs.map +1 -1
- package/lib/cjs/calendar/environment.cjs +48 -0
- package/lib/cjs/calendar/environment.cjs.map +1 -0
- package/lib/cjs/calendar/google-calendar/GoogleCalendarService.cjs +338 -0
- package/lib/cjs/calendar/google-calendar/GoogleCalendarService.cjs.map +1 -0
- package/lib/cjs/calendar/google-calendar/index.cjs +20 -0
- package/lib/cjs/calendar/google-calendar/index.cjs.map +1 -0
- package/lib/cjs/comms/discord/DiscordService.cjs +318 -0
- package/lib/cjs/comms/discord/DiscordService.cjs.map +1 -0
- package/lib/cjs/comms/discord/index.cjs +19 -0
- package/lib/cjs/comms/discord/index.cjs.map +1 -0
- package/lib/cjs/comms/email/EmailService.cjs +376 -0
- package/lib/cjs/comms/email/EmailService.cjs.map +1 -0
- package/lib/cjs/comms/email/index.cjs +29 -0
- package/lib/cjs/comms/email/index.cjs.map +1 -0
- package/lib/cjs/comms/email/mime.cjs +225 -0
- package/lib/cjs/comms/email/mime.cjs.map +1 -0
- package/lib/cjs/comms/email/smtp.cjs +204 -0
- package/lib/cjs/comms/email/smtp.cjs.map +1 -0
- package/lib/cjs/comms/environment.cjs +79 -0
- package/lib/cjs/comms/environment.cjs.map +1 -0
- package/lib/cjs/comms/gmail/GmailService.cjs +235 -0
- package/lib/cjs/comms/gmail/GmailService.cjs.map +1 -0
- package/lib/cjs/comms/gmail/index.cjs +24 -0
- package/lib/cjs/comms/gmail/index.cjs.map +1 -0
- package/lib/cjs/comms/index.cjs +34 -0
- package/lib/cjs/comms/index.cjs.map +1 -0
- package/lib/cjs/comms/outlook/MicrosoftOutlookService.cjs +325 -0
- package/lib/cjs/comms/outlook/MicrosoftOutlookService.cjs.map +1 -0
- package/lib/cjs/comms/outlook/index.cjs +19 -0
- package/lib/cjs/comms/outlook/index.cjs.map +1 -0
- package/lib/cjs/comms/slack/SlackService.cjs +264 -0
- package/lib/cjs/comms/slack/SlackService.cjs.map +1 -0
- package/lib/cjs/comms/slack/index.cjs +24 -0
- package/lib/cjs/comms/slack/index.cjs.map +1 -0
- package/lib/cjs/comms/teams/TeamsService.cjs +212 -0
- package/lib/cjs/comms/teams/TeamsService.cjs.map +1 -0
- package/lib/cjs/comms/teams/index.cjs +24 -0
- package/lib/cjs/comms/teams/index.cjs.map +1 -0
- package/lib/cjs/comms/telegram/TelegramService.cjs +196 -0
- package/lib/cjs/comms/telegram/TelegramService.cjs.map +1 -0
- package/lib/cjs/comms/telegram/index.cjs +24 -0
- package/lib/cjs/comms/telegram/index.cjs.map +1 -0
- package/lib/cjs/comms/whatsapp/WhatsAppService.cjs +274 -0
- package/lib/cjs/comms/whatsapp/WhatsAppService.cjs.map +1 -0
- package/lib/cjs/comms/whatsapp/index.cjs +19 -0
- package/lib/cjs/comms/whatsapp/index.cjs.map +1 -0
- package/lib/cjs/devops/environment.cjs +43 -0
- package/lib/cjs/devops/environment.cjs.map +1 -0
- package/lib/cjs/devops/github/GithubService.cjs +302 -0
- package/lib/cjs/devops/github/GithubService.cjs.map +1 -0
- package/lib/cjs/devops/github/index.cjs +24 -0
- package/lib/cjs/devops/github/index.cjs.map +1 -0
- package/lib/cjs/devops/gitlab/GitlabService.cjs +282 -0
- package/lib/cjs/devops/gitlab/GitlabService.cjs.map +1 -0
- package/lib/cjs/devops/gitlab/index.cjs +24 -0
- package/lib/cjs/devops/gitlab/index.cjs.map +1 -0
- package/lib/cjs/devops/index.cjs +28 -0
- package/lib/cjs/devops/index.cjs.map +1 -0
- package/lib/cjs/feature-flags/models/FeatureFlag.model.cjs +2 -0
- package/lib/cjs/feature-flags/models/FeatureFlag.model.cjs.map +1 -1
- package/lib/cjs/feature-flags/models/FeatureFlagAccess.model.cjs +2 -0
- package/lib/cjs/feature-flags/models/FeatureFlagAccess.model.cjs.map +1 -1
- package/lib/cjs/index.cjs +3 -3
- package/lib/cjs/io/airtable/AirtableService.cjs +266 -0
- package/lib/cjs/io/airtable/AirtableService.cjs.map +1 -0
- package/lib/cjs/io/airtable/index.cjs +24 -0
- package/lib/cjs/io/airtable/index.cjs.map +1 -0
- package/lib/cjs/io/confluence/ConfluenceService.cjs +317 -0
- package/lib/cjs/io/confluence/ConfluenceService.cjs.map +1 -0
- package/lib/cjs/io/confluence/index.cjs +19 -0
- package/lib/cjs/io/confluence/index.cjs.map +1 -0
- package/lib/cjs/io/environment.cjs +74 -0
- package/lib/cjs/io/environment.cjs.map +1 -0
- package/lib/cjs/io/google-docs/GoogleDocsService.cjs +275 -0
- package/lib/cjs/io/google-docs/GoogleDocsService.cjs.map +1 -0
- package/lib/cjs/io/google-docs/index.cjs +19 -0
- package/lib/cjs/io/google-docs/index.cjs.map +1 -0
- package/lib/cjs/io/google-sheets/GoogleSheetsService.cjs +288 -0
- package/lib/cjs/io/google-sheets/GoogleSheetsService.cjs.map +1 -0
- package/lib/cjs/io/google-sheets/index.cjs +24 -0
- package/lib/cjs/io/google-sheets/index.cjs.map +1 -0
- package/lib/cjs/io/graphql/GraphqlService.cjs +143 -0
- package/lib/cjs/io/graphql/GraphqlService.cjs.map +1 -0
- package/lib/cjs/io/graphql/index.cjs +24 -0
- package/lib/cjs/io/graphql/index.cjs.map +1 -0
- package/lib/cjs/io/index.cjs +35 -0
- package/lib/cjs/io/index.cjs.map +1 -0
- package/lib/cjs/io/jira/JiraService.cjs +354 -0
- package/lib/cjs/io/jira/JiraService.cjs.map +1 -0
- package/lib/cjs/io/jira/index.cjs +19 -0
- package/lib/cjs/io/jira/index.cjs.map +1 -0
- package/lib/cjs/io/microsoft-excel/MicrosoftExcelService.cjs +253 -0
- package/lib/cjs/io/microsoft-excel/MicrosoftExcelService.cjs.map +1 -0
- package/lib/cjs/io/microsoft-excel/index.cjs +19 -0
- package/lib/cjs/io/microsoft-excel/index.cjs.map +1 -0
- package/lib/cjs/io/microsoft-sharepoint/MicrosoftSharePointService.cjs +261 -0
- package/lib/cjs/io/microsoft-sharepoint/MicrosoftSharePointService.cjs.map +1 -0
- package/lib/cjs/io/microsoft-sharepoint/index.cjs +19 -0
- package/lib/cjs/io/microsoft-sharepoint/index.cjs.map +1 -0
- package/lib/cjs/io/spreadsheet/SpreadsheetService.cjs +205 -0
- package/lib/cjs/io/spreadsheet/SpreadsheetService.cjs.map +1 -0
- package/lib/cjs/io/spreadsheet/index.cjs +25 -0
- package/lib/cjs/io/spreadsheet/index.cjs.map +1 -0
- package/lib/cjs/namespaces/index.cjs +1 -0
- package/lib/cjs/namespaces/index.cjs.map +1 -1
- package/lib/cjs/namespaces/models/credential.model.cjs +115 -0
- package/lib/cjs/namespaces/models/credential.model.cjs.map +1 -0
- package/lib/cjs/namespaces/models/effective-permission.model.cjs +2 -0
- package/lib/cjs/namespaces/models/effective-permission.model.cjs.map +1 -1
- package/lib/cjs/namespaces/models/group-membership.model.cjs +2 -0
- package/lib/cjs/namespaces/models/group-membership.model.cjs.map +1 -1
- package/lib/cjs/namespaces/models/group.model.cjs +2 -0
- package/lib/cjs/namespaces/models/group.model.cjs.map +1 -1
- package/lib/cjs/namespaces/models/index.cjs +1 -0
- package/lib/cjs/namespaces/models/index.cjs.map +1 -1
- package/lib/cjs/namespaces/models/inheritance-block.model.cjs +2 -0
- package/lib/cjs/namespaces/models/inheritance-block.model.cjs.map +1 -1
- package/lib/cjs/namespaces/models/org-unit-closure.model.cjs +2 -0
- package/lib/cjs/namespaces/models/org-unit-closure.model.cjs.map +1 -1
- package/lib/cjs/namespaces/models/org-unit-membership.model.cjs +2 -0
- package/lib/cjs/namespaces/models/org-unit-membership.model.cjs.map +1 -1
- package/lib/cjs/namespaces/models/org-unit-profile.model.cjs +2 -0
- package/lib/cjs/namespaces/models/org-unit-profile.model.cjs.map +1 -1
- package/lib/cjs/namespaces/models/org-unit.model.cjs +2 -0
- package/lib/cjs/namespaces/models/org-unit.model.cjs.map +1 -1
- package/lib/cjs/namespaces/models/permission.model.cjs +2 -0
- package/lib/cjs/namespaces/models/permission.model.cjs.map +1 -1
- package/lib/cjs/namespaces/models/principal.model.cjs +2 -0
- package/lib/cjs/namespaces/models/principal.model.cjs.map +1 -1
- package/lib/cjs/namespaces/models/protected-resource.model.cjs +2 -0
- package/lib/cjs/namespaces/models/protected-resource.model.cjs.map +1 -1
- package/lib/cjs/namespaces/models/resource-grant.model.cjs +2 -0
- package/lib/cjs/namespaces/models/resource-grant.model.cjs.map +1 -1
- package/lib/cjs/namespaces/models/role-assignment.model.cjs +2 -0
- package/lib/cjs/namespaces/models/role-assignment.model.cjs.map +1 -1
- package/lib/cjs/namespaces/models/role-permission.model.cjs +2 -0
- package/lib/cjs/namespaces/models/role-permission.model.cjs.map +1 -1
- package/lib/cjs/namespaces/models/role.model.cjs +2 -0
- package/lib/cjs/namespaces/models/role.model.cjs.map +1 -1
- package/lib/cjs/namespaces/models/storage-binding.model.cjs +2 -0
- package/lib/cjs/namespaces/models/storage-binding.model.cjs.map +1 -1
- package/lib/cjs/namespaces/models/tenant-membership.model.cjs +2 -0
- package/lib/cjs/namespaces/models/tenant-membership.model.cjs.map +1 -1
- package/lib/cjs/namespaces/models/tenant-profile.model.cjs +2 -0
- package/lib/cjs/namespaces/models/tenant-profile.model.cjs.map +1 -1
- package/lib/cjs/namespaces/models/tenant.model.cjs +2 -0
- package/lib/cjs/namespaces/models/tenant.model.cjs.map +1 -1
- package/lib/cjs/namespaces/models/user.model.cjs +2 -0
- package/lib/cjs/namespaces/models/user.model.cjs.map +1 -1
- package/lib/cjs/namespaces/rls/index.cjs +28 -0
- package/lib/cjs/namespaces/rls/index.cjs.map +1 -0
- package/lib/cjs/namespaces/rls/principal-resolver.cjs +66 -0
- package/lib/cjs/namespaces/rls/principal-resolver.cjs.map +1 -0
- package/lib/cjs/namespaces/rls/rls-bootstrap.service.cjs +269 -0
- package/lib/cjs/namespaces/rls/rls-bootstrap.service.cjs.map +1 -0
- package/lib/cjs/namespaces/rls/rls.constants.cjs +79 -0
- package/lib/cjs/namespaces/rls/rls.constants.cjs.map +1 -0
- package/lib/cjs/namespaces/rls/rls.template.cjs +719 -0
- package/lib/cjs/namespaces/rls/rls.template.cjs.map +1 -0
- package/lib/cjs/namespaces/rls/rls.types.cjs +4 -0
- package/lib/cjs/namespaces/rls/rls.types.cjs.map +1 -0
- package/lib/cjs/namespaces/rls/session-binding.cjs +70 -0
- package/lib/cjs/namespaces/rls/session-binding.cjs.map +1 -0
- package/lib/cjs/namespaces/services/credential.service.cjs +327 -0
- package/lib/cjs/namespaces/services/credential.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/index.cjs +1 -0
- package/lib/cjs/namespaces/services/index.cjs.map +1 -1
- package/lib/cjs/namespaces/types.cjs +6 -1
- package/lib/cjs/namespaces/types.cjs.map +1 -1
- package/lib/cjs/redis/adapter.cjs +7 -1
- package/lib/cjs/redis/adapter.cjs.map +1 -1
- package/lib/cjs/secrets/InfraCredentialBootstrap.cjs +80 -0
- package/lib/cjs/secrets/InfraCredentialBootstrap.cjs.map +1 -0
- package/lib/cjs/secrets/aws/AwsSecretService.cjs +2 -15
- package/lib/cjs/secrets/aws/AwsSecretService.cjs.map +1 -1
- package/lib/cjs/secrets/azure/AzureKeyVaultSecretService.cjs +2 -16
- package/lib/cjs/secrets/azure/AzureKeyVaultSecretService.cjs.map +1 -1
- package/lib/cjs/secrets/core/SecretReference.cjs +1 -0
- package/lib/cjs/secrets/core/SecretReference.cjs.map +1 -1
- package/lib/cjs/secrets/fs/FsSecretEnvironment.cjs +28 -0
- package/lib/cjs/secrets/fs/FsSecretEnvironment.cjs.map +1 -0
- package/lib/cjs/secrets/fs/FsSecretService.cjs +420 -0
- package/lib/cjs/secrets/fs/FsSecretService.cjs.map +1 -0
- package/lib/cjs/secrets/fs/FsSecretServiceConfig.cjs +25 -0
- package/lib/cjs/secrets/fs/FsSecretServiceConfig.cjs.map +1 -0
- package/lib/cjs/secrets/fs/index.cjs +27 -0
- package/lib/cjs/secrets/fs/index.cjs.map +1 -0
- package/lib/cjs/secrets/gcp/GcpSecretManagerService.cjs +2 -16
- package/lib/cjs/secrets/gcp/GcpSecretManagerService.cjs.map +1 -1
- package/lib/cjs/secrets/index.cjs +2 -0
- package/lib/cjs/secrets/index.cjs.map +1 -1
- package/lib/cjs/secrets/model/ModelSecretService.cjs +335 -43
- package/lib/cjs/secrets/model/ModelSecretService.cjs.map +1 -1
- package/lib/cjs/secrets/model/Secret.cjs +83 -5
- package/lib/cjs/secrets/model/Secret.cjs.map +1 -1
- package/lib/cjs/secrets/onepassword/OnePasswordSecretService.cjs +2 -16
- package/lib/cjs/secrets/onepassword/OnePasswordSecretService.cjs.map +1 -1
- package/lib/cjs/secrets/vault/VaultSecretService.cjs +2 -16
- package/lib/cjs/secrets/vault/VaultSecretService.cjs.map +1 -1
- package/lib/cjs/shared/environmentValue.cjs +24 -0
- package/lib/cjs/shared/environmentValue.cjs.map +1 -1
- package/lib/cjs/shared/http/HttpApiService.cjs +190 -0
- package/lib/cjs/shared/http/HttpApiService.cjs.map +1 -0
- package/lib/cjs/shared/http/hermeticBoot.cjs +150 -0
- package/lib/cjs/shared/http/hermeticBoot.cjs.map +1 -0
- package/lib/cjs/shared/http/index.cjs +28 -0
- package/lib/cjs/shared/http/index.cjs.map +1 -0
- package/lib/esm/blob/azure/AzureBlobStoreService.js +13 -21
- package/lib/esm/blob/azure/AzureBlobStoreService.js.map +1 -1
- package/lib/esm/blob/core/BlobStoreService.js +26 -25
- package/lib/esm/blob/core/BlobStoreService.js.map +1 -1
- package/lib/esm/blob/gcp/GcsBlobStoreService.js +13 -21
- package/lib/esm/blob/gcp/GcsBlobStoreService.js.map +1 -1
- package/lib/esm/blob/s3/S3BlobStoreService.js +12 -14
- package/lib/esm/blob/s3/S3BlobStoreService.js.map +1 -1
- package/lib/esm/blob/s3/S3CompatibleBlobStoreService.js +14 -16
- package/lib/esm/blob/s3/S3CompatibleBlobStoreService.js.map +1 -1
- package/lib/esm/calendar/environment.js +44 -0
- package/lib/esm/calendar/environment.js.map +1 -0
- package/lib/esm/calendar/google-calendar/GoogleCalendarService.js +333 -0
- package/lib/esm/calendar/google-calendar/GoogleCalendarService.js.map +1 -0
- package/lib/esm/calendar/google-calendar/index.js +3 -0
- package/lib/esm/calendar/google-calendar/index.js.map +1 -0
- package/lib/esm/comms/discord/DiscordService.js +313 -0
- package/lib/esm/comms/discord/DiscordService.js.map +1 -0
- package/lib/esm/comms/discord/index.js +2 -0
- package/lib/esm/comms/discord/index.js.map +1 -0
- package/lib/esm/comms/email/EmailService.js +338 -0
- package/lib/esm/comms/email/EmailService.js.map +1 -0
- package/lib/esm/comms/email/index.js +12 -0
- package/lib/esm/comms/email/index.js.map +1 -0
- package/lib/esm/comms/email/mime.js +218 -0
- package/lib/esm/comms/email/mime.js.map +1 -0
- package/lib/esm/comms/email/smtp.js +166 -0
- package/lib/esm/comms/email/smtp.js.map +1 -0
- package/lib/esm/comms/environment.js +75 -0
- package/lib/esm/comms/environment.js.map +1 -0
- package/lib/esm/comms/gmail/GmailService.js +230 -0
- package/lib/esm/comms/gmail/GmailService.js.map +1 -0
- package/lib/esm/comms/gmail/index.js +7 -0
- package/lib/esm/comms/gmail/index.js.map +1 -0
- package/lib/esm/comms/index.js +17 -0
- package/lib/esm/comms/index.js.map +1 -0
- package/lib/esm/comms/outlook/MicrosoftOutlookService.js +320 -0
- package/lib/esm/comms/outlook/MicrosoftOutlookService.js.map +1 -0
- package/lib/esm/comms/outlook/index.js +2 -0
- package/lib/esm/comms/outlook/index.js.map +1 -0
- package/lib/esm/comms/slack/SlackService.js +259 -0
- package/lib/esm/comms/slack/SlackService.js.map +1 -0
- package/lib/esm/comms/slack/index.js +7 -0
- package/lib/esm/comms/slack/index.js.map +1 -0
- package/lib/esm/comms/teams/TeamsService.js +204 -0
- package/lib/esm/comms/teams/TeamsService.js.map +1 -0
- package/lib/esm/comms/teams/index.js +7 -0
- package/lib/esm/comms/teams/index.js.map +1 -0
- package/lib/esm/comms/telegram/TelegramService.js +191 -0
- package/lib/esm/comms/telegram/TelegramService.js.map +1 -0
- package/lib/esm/comms/telegram/index.js +7 -0
- package/lib/esm/comms/telegram/index.js.map +1 -0
- package/lib/esm/comms/whatsapp/WhatsAppService.js +269 -0
- package/lib/esm/comms/whatsapp/WhatsAppService.js.map +1 -0
- package/lib/esm/comms/whatsapp/index.js +2 -0
- package/lib/esm/comms/whatsapp/index.js.map +1 -0
- package/lib/esm/devops/environment.js +39 -0
- package/lib/esm/devops/environment.js.map +1 -0
- package/lib/esm/devops/github/GithubService.js +297 -0
- package/lib/esm/devops/github/GithubService.js.map +1 -0
- package/lib/esm/devops/github/index.js +7 -0
- package/lib/esm/devops/github/index.js.map +1 -0
- package/lib/esm/devops/gitlab/GitlabService.js +277 -0
- package/lib/esm/devops/gitlab/GitlabService.js.map +1 -0
- package/lib/esm/devops/gitlab/index.js +7 -0
- package/lib/esm/devops/gitlab/index.js.map +1 -0
- package/lib/esm/devops/index.js +11 -0
- package/lib/esm/devops/index.js.map +1 -0
- package/lib/esm/feature-flags/models/FeatureFlag.model.js +2 -0
- package/lib/esm/feature-flags/models/FeatureFlag.model.js.map +1 -1
- package/lib/esm/feature-flags/models/FeatureFlagAccess.model.js +2 -0
- package/lib/esm/feature-flags/models/FeatureFlagAccess.model.js.map +1 -1
- package/lib/esm/index.js +3 -3
- package/lib/esm/io/airtable/AirtableService.js +261 -0
- package/lib/esm/io/airtable/AirtableService.js.map +1 -0
- package/lib/esm/io/airtable/index.js +7 -0
- package/lib/esm/io/airtable/index.js.map +1 -0
- package/lib/esm/io/confluence/ConfluenceService.js +312 -0
- package/lib/esm/io/confluence/ConfluenceService.js.map +1 -0
- package/lib/esm/io/confluence/index.js +2 -0
- package/lib/esm/io/confluence/index.js.map +1 -0
- package/lib/esm/io/environment.js +70 -0
- package/lib/esm/io/environment.js.map +1 -0
- package/lib/esm/io/google-docs/GoogleDocsService.js +270 -0
- package/lib/esm/io/google-docs/GoogleDocsService.js.map +1 -0
- package/lib/esm/io/google-docs/index.js +2 -0
- package/lib/esm/io/google-docs/index.js.map +1 -0
- package/lib/esm/io/google-sheets/GoogleSheetsService.js +283 -0
- package/lib/esm/io/google-sheets/GoogleSheetsService.js.map +1 -0
- package/lib/esm/io/google-sheets/index.js +7 -0
- package/lib/esm/io/google-sheets/index.js.map +1 -0
- package/lib/esm/io/graphql/GraphqlService.js +138 -0
- package/lib/esm/io/graphql/GraphqlService.js.map +1 -0
- package/lib/esm/io/graphql/index.js +7 -0
- package/lib/esm/io/graphql/index.js.map +1 -0
- package/lib/esm/io/index.js +18 -0
- package/lib/esm/io/index.js.map +1 -0
- package/lib/esm/io/jira/JiraService.js +349 -0
- package/lib/esm/io/jira/JiraService.js.map +1 -0
- package/lib/esm/io/jira/index.js +2 -0
- package/lib/esm/io/jira/index.js.map +1 -0
- package/lib/esm/io/microsoft-excel/MicrosoftExcelService.js +248 -0
- package/lib/esm/io/microsoft-excel/MicrosoftExcelService.js.map +1 -0
- package/lib/esm/io/microsoft-excel/index.js +2 -0
- package/lib/esm/io/microsoft-excel/index.js.map +1 -0
- package/lib/esm/io/microsoft-sharepoint/MicrosoftSharePointService.js +256 -0
- package/lib/esm/io/microsoft-sharepoint/MicrosoftSharePointService.js.map +1 -0
- package/lib/esm/io/microsoft-sharepoint/index.js +2 -0
- package/lib/esm/io/microsoft-sharepoint/index.js.map +1 -0
- package/lib/esm/io/spreadsheet/SpreadsheetService.js +200 -0
- package/lib/esm/io/spreadsheet/SpreadsheetService.js.map +1 -0
- package/lib/esm/io/spreadsheet/index.js +8 -0
- package/lib/esm/io/spreadsheet/index.js.map +1 -0
- package/lib/esm/namespaces/index.js +1 -0
- package/lib/esm/namespaces/index.js.map +1 -1
- package/lib/esm/namespaces/models/credential.model.js +106 -0
- package/lib/esm/namespaces/models/credential.model.js.map +1 -0
- package/lib/esm/namespaces/models/effective-permission.model.js +2 -0
- package/lib/esm/namespaces/models/effective-permission.model.js.map +1 -1
- package/lib/esm/namespaces/models/group-membership.model.js +2 -0
- package/lib/esm/namespaces/models/group-membership.model.js.map +1 -1
- package/lib/esm/namespaces/models/group.model.js +2 -0
- package/lib/esm/namespaces/models/group.model.js.map +1 -1
- package/lib/esm/namespaces/models/index.js +1 -0
- package/lib/esm/namespaces/models/index.js.map +1 -1
- package/lib/esm/namespaces/models/inheritance-block.model.js +2 -0
- package/lib/esm/namespaces/models/inheritance-block.model.js.map +1 -1
- package/lib/esm/namespaces/models/org-unit-closure.model.js +2 -0
- package/lib/esm/namespaces/models/org-unit-closure.model.js.map +1 -1
- package/lib/esm/namespaces/models/org-unit-membership.model.js +2 -0
- package/lib/esm/namespaces/models/org-unit-membership.model.js.map +1 -1
- package/lib/esm/namespaces/models/org-unit-profile.model.js +2 -0
- package/lib/esm/namespaces/models/org-unit-profile.model.js.map +1 -1
- package/lib/esm/namespaces/models/org-unit.model.js +2 -0
- package/lib/esm/namespaces/models/org-unit.model.js.map +1 -1
- package/lib/esm/namespaces/models/permission.model.js +2 -0
- package/lib/esm/namespaces/models/permission.model.js.map +1 -1
- package/lib/esm/namespaces/models/principal.model.js +2 -0
- package/lib/esm/namespaces/models/principal.model.js.map +1 -1
- package/lib/esm/namespaces/models/protected-resource.model.js +2 -0
- package/lib/esm/namespaces/models/protected-resource.model.js.map +1 -1
- package/lib/esm/namespaces/models/resource-grant.model.js +2 -0
- package/lib/esm/namespaces/models/resource-grant.model.js.map +1 -1
- package/lib/esm/namespaces/models/role-assignment.model.js +2 -0
- package/lib/esm/namespaces/models/role-assignment.model.js.map +1 -1
- package/lib/esm/namespaces/models/role-permission.model.js +2 -0
- package/lib/esm/namespaces/models/role-permission.model.js.map +1 -1
- package/lib/esm/namespaces/models/role.model.js +2 -0
- package/lib/esm/namespaces/models/role.model.js.map +1 -1
- package/lib/esm/namespaces/models/storage-binding.model.js +2 -0
- package/lib/esm/namespaces/models/storage-binding.model.js.map +1 -1
- package/lib/esm/namespaces/models/tenant-membership.model.js +2 -0
- package/lib/esm/namespaces/models/tenant-membership.model.js.map +1 -1
- package/lib/esm/namespaces/models/tenant-profile.model.js +2 -0
- package/lib/esm/namespaces/models/tenant-profile.model.js.map +1 -1
- package/lib/esm/namespaces/models/tenant.model.js +2 -0
- package/lib/esm/namespaces/models/tenant.model.js.map +1 -1
- package/lib/esm/namespaces/models/user.model.js +2 -0
- package/lib/esm/namespaces/models/user.model.js.map +1 -1
- package/lib/esm/namespaces/rls/index.js +11 -0
- package/lib/esm/namespaces/rls/index.js.map +1 -0
- package/lib/esm/namespaces/rls/principal-resolver.js +61 -0
- package/lib/esm/namespaces/rls/principal-resolver.js.map +1 -0
- package/lib/esm/namespaces/rls/rls-bootstrap.service.js +261 -0
- package/lib/esm/namespaces/rls/rls-bootstrap.service.js.map +1 -0
- package/lib/esm/namespaces/rls/rls.constants.js +75 -0
- package/lib/esm/namespaces/rls/rls.constants.js.map +1 -0
- package/lib/esm/namespaces/rls/rls.template.js +711 -0
- package/lib/esm/namespaces/rls/rls.template.js.map +1 -0
- package/lib/esm/namespaces/rls/rls.types.js +9 -0
- package/lib/esm/namespaces/rls/rls.types.js.map +1 -0
- package/lib/esm/namespaces/rls/session-binding.js +65 -0
- package/lib/esm/namespaces/rls/session-binding.js.map +1 -0
- package/lib/esm/namespaces/services/credential.service.js +322 -0
- package/lib/esm/namespaces/services/credential.service.js.map +1 -0
- package/lib/esm/namespaces/services/index.js +1 -0
- package/lib/esm/namespaces/services/index.js.map +1 -1
- package/lib/esm/namespaces/types.js +6 -0
- package/lib/esm/namespaces/types.js.map +1 -1
- package/lib/esm/redis/adapter.js +7 -1
- package/lib/esm/redis/adapter.js.map +1 -1
- package/lib/esm/secrets/InfraCredentialBootstrap.js +74 -0
- package/lib/esm/secrets/InfraCredentialBootstrap.js.map +1 -0
- package/lib/esm/secrets/aws/AwsSecretService.js +3 -13
- package/lib/esm/secrets/aws/AwsSecretService.js.map +1 -1
- package/lib/esm/secrets/azure/AzureKeyVaultSecretService.js +2 -13
- package/lib/esm/secrets/azure/AzureKeyVaultSecretService.js.map +1 -1
- package/lib/esm/secrets/core/SecretReference.js +1 -0
- package/lib/esm/secrets/core/SecretReference.js.map +1 -1
- package/lib/esm/secrets/fs/FsSecretEnvironment.js +24 -0
- package/lib/esm/secrets/fs/FsSecretEnvironment.js.map +1 -0
- package/lib/esm/secrets/fs/FsSecretService.js +412 -0
- package/lib/esm/secrets/fs/FsSecretService.js.map +1 -0
- package/lib/esm/secrets/fs/FsSecretServiceConfig.js +21 -0
- package/lib/esm/secrets/fs/FsSecretServiceConfig.js.map +1 -0
- package/lib/esm/secrets/fs/index.js +10 -0
- package/lib/esm/secrets/fs/index.js.map +1 -0
- package/lib/esm/secrets/gcp/GcpSecretManagerService.js +2 -13
- package/lib/esm/secrets/gcp/GcpSecretManagerService.js.map +1 -1
- package/lib/esm/secrets/index.js +2 -0
- package/lib/esm/secrets/index.js.map +1 -1
- package/lib/esm/secrets/model/ModelSecretService.js +337 -42
- package/lib/esm/secrets/model/ModelSecretService.js.map +1 -1
- package/lib/esm/secrets/model/Secret.js +86 -7
- package/lib/esm/secrets/model/Secret.js.map +1 -1
- package/lib/esm/secrets/onepassword/OnePasswordSecretService.js +2 -13
- package/lib/esm/secrets/onepassword/OnePasswordSecretService.js.map +1 -1
- package/lib/esm/secrets/vault/VaultSecretService.js +2 -13
- package/lib/esm/secrets/vault/VaultSecretService.js.map +1 -1
- package/lib/esm/shared/environmentValue.js +24 -0
- package/lib/esm/shared/environmentValue.js.map +1 -1
- package/lib/esm/shared/http/HttpApiService.js +181 -0
- package/lib/esm/shared/http/HttpApiService.js.map +1 -0
- package/lib/esm/shared/http/hermeticBoot.js +146 -0
- package/lib/esm/shared/http/hermeticBoot.js.map +1 -0
- package/lib/esm/shared/http/index.js +11 -0
- package/lib/esm/shared/http/index.js.map +1 -0
- package/lib/types/blob/azure/AzureBlobStoreService.d.cts +7 -7
- package/lib/types/blob/azure/AzureBlobStoreService.d.mts +7 -7
- package/lib/types/blob/core/BlobStoreService.d.cts +28 -27
- package/lib/types/blob/core/BlobStoreService.d.mts +28 -27
- package/lib/types/blob/gcp/GcsBlobStoreService.d.cts +7 -7
- package/lib/types/blob/gcp/GcsBlobStoreService.d.mts +7 -7
- package/lib/types/blob/s3/S3BlobStoreService.d.cts +9 -1
- package/lib/types/blob/s3/S3BlobStoreService.d.mts +9 -1
- package/lib/types/blob/s3/S3CompatibleBlobStoreService.d.cts +11 -15
- package/lib/types/blob/s3/S3CompatibleBlobStoreService.d.mts +11 -15
- package/lib/types/calendar/environment.d.cts +48 -0
- package/lib/types/calendar/environment.d.mts +48 -0
- package/lib/types/calendar/google-calendar/GoogleCalendarService.d.cts +316 -0
- package/lib/types/calendar/google-calendar/GoogleCalendarService.d.mts +316 -0
- package/lib/types/calendar/google-calendar/index.d.cts +2 -0
- package/lib/types/calendar/google-calendar/index.d.mts +2 -0
- package/lib/types/comms/discord/DiscordService.d.cts +285 -0
- package/lib/types/comms/discord/DiscordService.d.mts +285 -0
- package/lib/types/comms/discord/index.d.cts +1 -0
- package/lib/types/comms/discord/index.d.mts +1 -0
- package/lib/types/comms/email/EmailService.d.cts +184 -0
- package/lib/types/comms/email/EmailService.d.mts +184 -0
- package/lib/types/comms/email/index.d.cts +11 -0
- package/lib/types/comms/email/index.d.mts +11 -0
- package/lib/types/comms/email/mime.d.cts +84 -0
- package/lib/types/comms/email/mime.d.mts +84 -0
- package/lib/types/comms/email/smtp.d.cts +107 -0
- package/lib/types/comms/email/smtp.d.mts +107 -0
- package/lib/types/comms/environment.d.cts +110 -0
- package/lib/types/comms/environment.d.mts +110 -0
- package/lib/types/comms/gmail/GmailService.d.cts +190 -0
- package/lib/types/comms/gmail/GmailService.d.mts +190 -0
- package/lib/types/comms/gmail/index.d.cts +6 -0
- package/lib/types/comms/gmail/index.d.mts +6 -0
- package/lib/types/comms/index.d.cts +16 -0
- package/lib/types/comms/index.d.mts +16 -0
- package/lib/types/comms/outlook/MicrosoftOutlookService.d.cts +282 -0
- package/lib/types/comms/outlook/MicrosoftOutlookService.d.mts +282 -0
- package/lib/types/comms/outlook/index.d.cts +1 -0
- package/lib/types/comms/outlook/index.d.mts +1 -0
- package/lib/types/comms/slack/SlackService.d.cts +259 -0
- package/lib/types/comms/slack/SlackService.d.mts +259 -0
- package/lib/types/comms/slack/index.d.cts +6 -0
- package/lib/types/comms/slack/index.d.mts +6 -0
- package/lib/types/comms/teams/TeamsService.d.cts +172 -0
- package/lib/types/comms/teams/TeamsService.d.mts +172 -0
- package/lib/types/comms/teams/index.d.cts +6 -0
- package/lib/types/comms/teams/index.d.mts +6 -0
- package/lib/types/comms/telegram/TelegramService.d.cts +202 -0
- package/lib/types/comms/telegram/TelegramService.d.mts +202 -0
- package/lib/types/comms/telegram/index.d.cts +6 -0
- package/lib/types/comms/telegram/index.d.mts +6 -0
- package/lib/types/comms/whatsapp/WhatsAppService.d.cts +258 -0
- package/lib/types/comms/whatsapp/WhatsAppService.d.mts +258 -0
- package/lib/types/comms/whatsapp/index.d.cts +1 -0
- package/lib/types/comms/whatsapp/index.d.mts +1 -0
- package/lib/types/devops/environment.d.cts +62 -0
- package/lib/types/devops/environment.d.mts +62 -0
- package/lib/types/devops/github/GithubService.d.cts +287 -0
- package/lib/types/devops/github/GithubService.d.mts +287 -0
- package/lib/types/devops/github/index.d.cts +6 -0
- package/lib/types/devops/github/index.d.mts +6 -0
- package/lib/types/devops/gitlab/GitlabService.d.cts +277 -0
- package/lib/types/devops/gitlab/GitlabService.d.mts +277 -0
- package/lib/types/devops/gitlab/index.d.cts +6 -0
- package/lib/types/devops/gitlab/index.d.mts +6 -0
- package/lib/types/devops/index.d.cts +10 -0
- package/lib/types/devops/index.d.mts +10 -0
- package/lib/types/index.d.cts +2 -2
- package/lib/types/index.d.mts +2 -2
- package/lib/types/io/airtable/AirtableService.d.cts +268 -0
- package/lib/types/io/airtable/AirtableService.d.mts +268 -0
- package/lib/types/io/airtable/index.d.cts +6 -0
- package/lib/types/io/airtable/index.d.mts +6 -0
- package/lib/types/io/confluence/ConfluenceService.d.cts +250 -0
- package/lib/types/io/confluence/ConfluenceService.d.mts +250 -0
- package/lib/types/io/confluence/index.d.cts +1 -0
- package/lib/types/io/confluence/index.d.mts +1 -0
- package/lib/types/io/environment.d.cts +107 -0
- package/lib/types/io/environment.d.mts +107 -0
- package/lib/types/io/google-docs/GoogleDocsService.d.cts +188 -0
- package/lib/types/io/google-docs/GoogleDocsService.d.mts +188 -0
- package/lib/types/io/google-docs/index.d.cts +1 -0
- package/lib/types/io/google-docs/index.d.mts +1 -0
- package/lib/types/io/google-sheets/GoogleSheetsService.d.cts +204 -0
- package/lib/types/io/google-sheets/GoogleSheetsService.d.mts +204 -0
- package/lib/types/io/google-sheets/index.d.cts +6 -0
- package/lib/types/io/google-sheets/index.d.mts +6 -0
- package/lib/types/io/graphql/GraphqlService.d.cts +173 -0
- package/lib/types/io/graphql/GraphqlService.d.mts +173 -0
- package/lib/types/io/graphql/index.d.cts +6 -0
- package/lib/types/io/graphql/index.d.mts +6 -0
- package/lib/types/io/index.d.cts +17 -0
- package/lib/types/io/index.d.mts +17 -0
- package/lib/types/io/jira/JiraService.d.cts +300 -0
- package/lib/types/io/jira/JiraService.d.mts +300 -0
- package/lib/types/io/jira/index.d.cts +1 -0
- package/lib/types/io/jira/index.d.mts +1 -0
- package/lib/types/io/microsoft-excel/MicrosoftExcelService.d.cts +230 -0
- package/lib/types/io/microsoft-excel/MicrosoftExcelService.d.mts +230 -0
- package/lib/types/io/microsoft-excel/index.d.cts +1 -0
- package/lib/types/io/microsoft-excel/index.d.mts +1 -0
- package/lib/types/io/microsoft-sharepoint/MicrosoftSharePointService.d.cts +226 -0
- package/lib/types/io/microsoft-sharepoint/MicrosoftSharePointService.d.mts +226 -0
- package/lib/types/io/microsoft-sharepoint/index.d.cts +1 -0
- package/lib/types/io/microsoft-sharepoint/index.d.mts +1 -0
- package/lib/types/io/spreadsheet/SpreadsheetService.d.cts +144 -0
- package/lib/types/io/spreadsheet/SpreadsheetService.d.mts +144 -0
- package/lib/types/io/spreadsheet/index.d.cts +7 -0
- package/lib/types/io/spreadsheet/index.d.mts +7 -0
- package/lib/types/namespaces/index.d.cts +1 -0
- package/lib/types/namespaces/index.d.mts +1 -0
- package/lib/types/namespaces/models/credential.model.d.cts +23 -0
- package/lib/types/namespaces/models/credential.model.d.mts +23 -0
- package/lib/types/namespaces/models/index.d.cts +1 -0
- package/lib/types/namespaces/models/index.d.mts +1 -0
- package/lib/types/namespaces/rls/index.d.cts +10 -0
- package/lib/types/namespaces/rls/index.d.mts +10 -0
- package/lib/types/namespaces/rls/principal-resolver.d.cts +47 -0
- package/lib/types/namespaces/rls/principal-resolver.d.mts +47 -0
- package/lib/types/namespaces/rls/rls-bootstrap.service.d.cts +157 -0
- package/lib/types/namespaces/rls/rls-bootstrap.service.d.mts +157 -0
- package/lib/types/namespaces/rls/rls.constants.d.cts +52 -0
- package/lib/types/namespaces/rls/rls.constants.d.mts +52 -0
- package/lib/types/namespaces/rls/rls.template.d.cts +42 -0
- package/lib/types/namespaces/rls/rls.template.d.mts +42 -0
- package/lib/types/namespaces/rls/rls.types.d.cts +77 -0
- package/lib/types/namespaces/rls/rls.types.d.mts +77 -0
- package/lib/types/namespaces/rls/session-binding.d.cts +87 -0
- package/lib/types/namespaces/rls/session-binding.d.mts +87 -0
- package/lib/types/namespaces/services/credential.service.d.cts +175 -0
- package/lib/types/namespaces/services/credential.service.d.mts +175 -0
- package/lib/types/namespaces/services/index.d.cts +1 -0
- package/lib/types/namespaces/services/index.d.mts +1 -0
- package/lib/types/namespaces/types.d.cts +37 -0
- package/lib/types/namespaces/types.d.mts +37 -0
- package/lib/types/redis/adapter.d.cts +2 -0
- package/lib/types/redis/adapter.d.mts +2 -0
- package/lib/types/redis/types.d.cts +27 -2
- package/lib/types/redis/types.d.mts +27 -2
- package/lib/types/secrets/InfraCredentialBootstrap.d.cts +100 -0
- package/lib/types/secrets/InfraCredentialBootstrap.d.mts +100 -0
- package/lib/types/secrets/core/SecretTypes.d.cts +15 -1
- package/lib/types/secrets/core/SecretTypes.d.mts +15 -1
- package/lib/types/secrets/fs/FsSecretEnvironment.d.cts +42 -0
- package/lib/types/secrets/fs/FsSecretEnvironment.d.mts +42 -0
- package/lib/types/secrets/fs/FsSecretService.d.cts +207 -0
- package/lib/types/secrets/fs/FsSecretService.d.mts +207 -0
- package/lib/types/secrets/fs/FsSecretServiceConfig.d.cts +37 -0
- package/lib/types/secrets/fs/FsSecretServiceConfig.d.mts +37 -0
- package/lib/types/secrets/fs/index.d.cts +9 -0
- package/lib/types/secrets/fs/index.d.mts +9 -0
- package/lib/types/secrets/index.d.cts +2 -0
- package/lib/types/secrets/index.d.mts +2 -0
- package/lib/types/secrets/model/ModelSecretService.d.cts +190 -1
- package/lib/types/secrets/model/ModelSecretService.d.mts +190 -1
- package/lib/types/secrets/model/Secret.d.cts +44 -3
- package/lib/types/secrets/model/Secret.d.mts +44 -3
- package/lib/types/shared/environmentValue.d.cts +24 -0
- package/lib/types/shared/environmentValue.d.mts +24 -0
- package/lib/types/shared/http/HttpApiService.d.cts +193 -0
- package/lib/types/shared/http/HttpApiService.d.mts +193 -0
- package/lib/types/shared/http/hermeticBoot.d.cts +84 -0
- package/lib/types/shared/http/hermeticBoot.d.mts +84 -0
- package/lib/types/shared/http/index.d.cts +10 -0
- package/lib/types/shared/http/index.d.mts +10 -0
- package/package.json +279 -6
- package/sql/002_rls.sql +660 -15
- package/sql/004_credentials.sql +46 -0
|
@@ -3,10 +3,9 @@
|
|
|
3
3
|
* @summary S3-compatible blob store base implementation.
|
|
4
4
|
* @description Shared CRUD implementation backed by the AWS SDK v3 S3Client, used by
|
|
5
5
|
* the S3, MinIO, and Cloudflare R2 provider services. Deliberately left undecorated:
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
* `@service("blob-<provider>")` decorator instead of stacking on top of one another.
|
|
6
|
+
* concrete providers are plain classes that consumers construct and boot
|
|
7
|
+
* explicitly (no injectable registration, no `Service.boot` auto-boot), and
|
|
8
|
+
* each extends this base directly instead of stacking on top of one another.
|
|
10
9
|
*/
|
|
11
10
|
import { S3Client } from "@aws-sdk/client-s3";
|
|
12
11
|
import { type ContextualArgs, type MaybeContextualArg } from "@decaf-ts/core";
|
|
@@ -16,12 +15,9 @@ import type { BlobGetOptions, BlobGetResult, BlobKey, BlobListOptions, BlobListR
|
|
|
16
15
|
* @description Base implementation for S3-compatible blob stores
|
|
17
16
|
* @summary Implements the full blob CRUD API on top of the AWS SDK v3
|
|
18
17
|
* `S3Client` and is shared by the S3, MinIO, and Cloudflare R2 provider
|
|
19
|
-
* services. Deliberately left undecorated:
|
|
20
|
-
*
|
|
21
|
-
*
|
|
22
|
-
* provider extends this class directly and carries its own
|
|
23
|
-
* `@service("blob-<provider>")` decorator instead of stacking on top of one
|
|
24
|
-
* another.
|
|
18
|
+
* services. Deliberately left undecorated: concrete providers are plain
|
|
19
|
+
* classes that consumers construct and boot explicitly, so no injectable
|
|
20
|
+
* registration or `Service.boot` auto-boot applies here.
|
|
25
21
|
* @class S3CompatibleBlobStoreService
|
|
26
22
|
* @memberOf module:integrations/blob/s3/base-service
|
|
27
23
|
*/
|
|
@@ -29,11 +25,11 @@ export declare abstract class S3CompatibleBlobStoreService extends BlobStoreServ
|
|
|
29
25
|
/**
|
|
30
26
|
* @description Initializes the S3 client from config or environment
|
|
31
27
|
* @summary Resolves the config via `getConfigFromArgs` (explicit config,
|
|
32
|
-
* then the provider's environment slice). When no config resolves
|
|
33
|
-
*
|
|
34
|
-
* `blob-minio`/`blob-r2`
|
|
35
|
-
* `skipInitialization()` so
|
|
36
|
-
* `initialize()` with no resolvable config still throws a
|
|
28
|
+
* then the provider's environment slice). When no config resolves and the
|
|
29
|
+
* arguments carry a decaf `Context` (e.g. an unconfigured optional
|
|
30
|
+
* `blob-minio`/`blob-r2` provider next to `blob-s3`), returns
|
|
31
|
+
* `skipInitialization()` so the context-bearing boot does not throw; an
|
|
32
|
+
* explicit `initialize()` with no resolvable config still throws a
|
|
37
33
|
* `ValidationError`. Requires a `bucket`, builds the `S3Client` (with
|
|
38
34
|
* optional static credentials), stores config and client, and optionally
|
|
39
35
|
* creates the bucket when `autoCreateBucket` is set.
|
|
@@ -3,10 +3,9 @@
|
|
|
3
3
|
* @summary S3-compatible blob store base implementation.
|
|
4
4
|
* @description Shared CRUD implementation backed by the AWS SDK v3 S3Client, used by
|
|
5
5
|
* the S3, MinIO, and Cloudflare R2 provider services. Deliberately left undecorated:
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
* `@service("blob-<provider>")` decorator instead of stacking on top of one another.
|
|
6
|
+
* concrete providers are plain classes that consumers construct and boot
|
|
7
|
+
* explicitly (no injectable registration, no `Service.boot` auto-boot), and
|
|
8
|
+
* each extends this base directly instead of stacking on top of one another.
|
|
10
9
|
*/
|
|
11
10
|
import { S3Client } from "@aws-sdk/client-s3";
|
|
12
11
|
import { type ContextualArgs, type MaybeContextualArg } from "@decaf-ts/core";
|
|
@@ -16,12 +15,9 @@ import type { BlobGetOptions, BlobGetResult, BlobKey, BlobListOptions, BlobListR
|
|
|
16
15
|
* @description Base implementation for S3-compatible blob stores
|
|
17
16
|
* @summary Implements the full blob CRUD API on top of the AWS SDK v3
|
|
18
17
|
* `S3Client` and is shared by the S3, MinIO, and Cloudflare R2 provider
|
|
19
|
-
* services. Deliberately left undecorated:
|
|
20
|
-
*
|
|
21
|
-
*
|
|
22
|
-
* provider extends this class directly and carries its own
|
|
23
|
-
* `@service("blob-<provider>")` decorator instead of stacking on top of one
|
|
24
|
-
* another.
|
|
18
|
+
* services. Deliberately left undecorated: concrete providers are plain
|
|
19
|
+
* classes that consumers construct and boot explicitly, so no injectable
|
|
20
|
+
* registration or `Service.boot` auto-boot applies here.
|
|
25
21
|
* @class S3CompatibleBlobStoreService
|
|
26
22
|
* @memberOf module:integrations/blob/s3/base-service
|
|
27
23
|
*/
|
|
@@ -29,11 +25,11 @@ export declare abstract class S3CompatibleBlobStoreService extends BlobStoreServ
|
|
|
29
25
|
/**
|
|
30
26
|
* @description Initializes the S3 client from config or environment
|
|
31
27
|
* @summary Resolves the config via `getConfigFromArgs` (explicit config,
|
|
32
|
-
* then the provider's environment slice). When no config resolves
|
|
33
|
-
*
|
|
34
|
-
* `blob-minio`/`blob-r2`
|
|
35
|
-
* `skipInitialization()` so
|
|
36
|
-
* `initialize()` with no resolvable config still throws a
|
|
28
|
+
* then the provider's environment slice). When no config resolves and the
|
|
29
|
+
* arguments carry a decaf `Context` (e.g. an unconfigured optional
|
|
30
|
+
* `blob-minio`/`blob-r2` provider next to `blob-s3`), returns
|
|
31
|
+
* `skipInitialization()` so the context-bearing boot does not throw; an
|
|
32
|
+
* explicit `initialize()` with no resolvable config still throws a
|
|
37
33
|
* `ValidationError`. Requires a `bucket`, builds the `S3Client` (with
|
|
38
34
|
* optional static credentials), stores config and client, and optionally
|
|
39
35
|
* creates the bucket when `autoCreateBucket` is set.
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @description Environment shape for the calendar integration services
|
|
3
|
+
* @summary Defines the `calendar` root with the `googleCalendar` slice. The
|
|
4
|
+
* slice carries the OAuth `token` and/or `apiKey`, the default `calendarId`,
|
|
5
|
+
* and an optional `baseUrl` override and `timeout`. Fields are typed as
|
|
6
|
+
* required here so `LoggedEnvironment.accumulate` registers them; absent values
|
|
7
|
+
* resolve to proxy placeholders at runtime and must pass through
|
|
8
|
+
* `envString`/`envNumber`. Values are credential references supplied by the
|
|
9
|
+
* environment, never literals embedded in source.
|
|
10
|
+
* @memberOf module:integrations/calendar/environment
|
|
11
|
+
*/
|
|
12
|
+
export interface CalendarEnvironmentShape {
|
|
13
|
+
calendar: {
|
|
14
|
+
/** Google Calendar OAuth token/API key and default calendar (`calendar/google-calendar`). */
|
|
15
|
+
googleCalendar: {
|
|
16
|
+
token: string;
|
|
17
|
+
apiKey: string;
|
|
18
|
+
calendarId: string;
|
|
19
|
+
baseUrl: string;
|
|
20
|
+
timeout?: number;
|
|
21
|
+
};
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* @description Accumulated calendar environment singleton
|
|
26
|
+
* @summary The `LoggedEnvironment.accumulate`-registered instance backing the
|
|
27
|
+
* `CalendarEnvironmentShape` contract. The Google Calendar service reads
|
|
28
|
+
* `CalendarEnvironment.calendar.googleCalendar` inside
|
|
29
|
+
* `configFromEnvironment()` and translates it into its
|
|
30
|
+
* `HttpApiServiceConfig`-derived config. Credentials come from environment
|
|
31
|
+
* variables; for as-graph node usage those are provided as
|
|
32
|
+
* `GRAPH_CREDENTIAL_*` values (placeholders in this example).
|
|
33
|
+
* @example
|
|
34
|
+
* ```ts
|
|
35
|
+
* import { GoogleCalendarService } from "@decaf-ts/integrations/calendar/google-calendar";
|
|
36
|
+
*
|
|
37
|
+
* // with calendar.googleCalendar.token / calendarId configured in the environment
|
|
38
|
+
* const calendar = new GoogleCalendarService();
|
|
39
|
+
* await calendar.initialize();
|
|
40
|
+
* ```
|
|
41
|
+
* @constant {LoggedEnvironment} CalendarEnvironment
|
|
42
|
+
* @memberOf module:integrations/calendar/environment
|
|
43
|
+
*/
|
|
44
|
+
export declare const CalendarEnvironment: import("@decaf-ts/logging").AccumulatedEnvironment<{
|
|
45
|
+
app: string | undefined;
|
|
46
|
+
} & import("@decaf-ts/logging").LoggingConfig<object> & {
|
|
47
|
+
env: any;
|
|
48
|
+
} & CalendarEnvironmentShape>;
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @description Environment shape for the calendar integration services
|
|
3
|
+
* @summary Defines the `calendar` root with the `googleCalendar` slice. The
|
|
4
|
+
* slice carries the OAuth `token` and/or `apiKey`, the default `calendarId`,
|
|
5
|
+
* and an optional `baseUrl` override and `timeout`. Fields are typed as
|
|
6
|
+
* required here so `LoggedEnvironment.accumulate` registers them; absent values
|
|
7
|
+
* resolve to proxy placeholders at runtime and must pass through
|
|
8
|
+
* `envString`/`envNumber`. Values are credential references supplied by the
|
|
9
|
+
* environment, never literals embedded in source.
|
|
10
|
+
* @memberOf module:integrations/calendar/environment
|
|
11
|
+
*/
|
|
12
|
+
export interface CalendarEnvironmentShape {
|
|
13
|
+
calendar: {
|
|
14
|
+
/** Google Calendar OAuth token/API key and default calendar (`calendar/google-calendar`). */
|
|
15
|
+
googleCalendar: {
|
|
16
|
+
token: string;
|
|
17
|
+
apiKey: string;
|
|
18
|
+
calendarId: string;
|
|
19
|
+
baseUrl: string;
|
|
20
|
+
timeout?: number;
|
|
21
|
+
};
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* @description Accumulated calendar environment singleton
|
|
26
|
+
* @summary The `LoggedEnvironment.accumulate`-registered instance backing the
|
|
27
|
+
* `CalendarEnvironmentShape` contract. The Google Calendar service reads
|
|
28
|
+
* `CalendarEnvironment.calendar.googleCalendar` inside
|
|
29
|
+
* `configFromEnvironment()` and translates it into its
|
|
30
|
+
* `HttpApiServiceConfig`-derived config. Credentials come from environment
|
|
31
|
+
* variables; for as-graph node usage those are provided as
|
|
32
|
+
* `GRAPH_CREDENTIAL_*` values (placeholders in this example).
|
|
33
|
+
* @example
|
|
34
|
+
* ```ts
|
|
35
|
+
* import { GoogleCalendarService } from "@decaf-ts/integrations/calendar/google-calendar";
|
|
36
|
+
*
|
|
37
|
+
* // with calendar.googleCalendar.token / calendarId configured in the environment
|
|
38
|
+
* const calendar = new GoogleCalendarService();
|
|
39
|
+
* await calendar.initialize();
|
|
40
|
+
* ```
|
|
41
|
+
* @constant {LoggedEnvironment} CalendarEnvironment
|
|
42
|
+
* @memberOf module:integrations/calendar/environment
|
|
43
|
+
*/
|
|
44
|
+
export declare const CalendarEnvironment: import("@decaf-ts/logging").AccumulatedEnvironment<{
|
|
45
|
+
app: string | undefined;
|
|
46
|
+
} & import("@decaf-ts/logging").LoggingConfig<object> & {
|
|
47
|
+
env: any;
|
|
48
|
+
} & CalendarEnvironmentShape>;
|
|
@@ -0,0 +1,316 @@
|
|
|
1
|
+
import { HttpApiService, type HttpApiServiceConfig } from "../../shared/http/index.d.cts";
|
|
2
|
+
/**
|
|
3
|
+
* @description Configuration for the Google Calendar service
|
|
4
|
+
* @summary Extends {@link HttpApiServiceConfig} with an optional OAuth
|
|
5
|
+
* `token`, an optional `apiKey`, and a default `calendarId`. When omitted, the
|
|
6
|
+
* `calendar.googleCalendar` environment slice supplies the same values (plus
|
|
7
|
+
* optional `baseUrl`/`timeout`). At least one credential is required; the token
|
|
8
|
+
* wins when both are set, and the calendar defaults to `"primary"`.
|
|
9
|
+
* @category Calendar
|
|
10
|
+
* @memberOf module:integrations/calendar/google-calendar/service
|
|
11
|
+
*/
|
|
12
|
+
export interface GoogleCalendarServiceConfig extends HttpApiServiceConfig {
|
|
13
|
+
/**
|
|
14
|
+
* @description Google OAuth access token
|
|
15
|
+
* @summary Sent as `Authorization: Bearer <token>` when present.
|
|
16
|
+
*/
|
|
17
|
+
token?: string;
|
|
18
|
+
/**
|
|
19
|
+
* @description Google API key
|
|
20
|
+
* @summary Sent as the `key` query parameter only when no OAuth token is configured.
|
|
21
|
+
*/
|
|
22
|
+
apiKey?: string;
|
|
23
|
+
/**
|
|
24
|
+
* @description Default calendar ID used when a call does not override it
|
|
25
|
+
*/
|
|
26
|
+
calendarId?: string;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* @description Input for creating a Google Calendar event
|
|
30
|
+
* @summary Carries the optional target `calendarId`, `summary`, optional
|
|
31
|
+
* description and location, start/end values (date or date-time), an optional
|
|
32
|
+
* time zone, and attendee email addresses.
|
|
33
|
+
* @category Calendar
|
|
34
|
+
* @memberOf module:integrations/calendar/google-calendar/service
|
|
35
|
+
*/
|
|
36
|
+
export interface GoogleCalendarEventInput {
|
|
37
|
+
/**
|
|
38
|
+
* @description Calendar ID (defaults to the configured value or `primary`)
|
|
39
|
+
*/
|
|
40
|
+
calendarId?: string;
|
|
41
|
+
/**
|
|
42
|
+
* @description Event summary/title
|
|
43
|
+
*/
|
|
44
|
+
summary: string;
|
|
45
|
+
/**
|
|
46
|
+
* @description Event description
|
|
47
|
+
*/
|
|
48
|
+
description?: string;
|
|
49
|
+
/**
|
|
50
|
+
* @description Event location
|
|
51
|
+
*/
|
|
52
|
+
location?: string;
|
|
53
|
+
/**
|
|
54
|
+
* @description Start date (`YYYY-MM-DD`) or date-time (ISO 8601)
|
|
55
|
+
*/
|
|
56
|
+
start: string;
|
|
57
|
+
/**
|
|
58
|
+
* @description End date (`YYYY-MM-DD`) or date-time (ISO 8601)
|
|
59
|
+
*/
|
|
60
|
+
end: string;
|
|
61
|
+
/**
|
|
62
|
+
* @description IANA time zone applied to date-time values
|
|
63
|
+
*/
|
|
64
|
+
timeZone?: string;
|
|
65
|
+
/**
|
|
66
|
+
* @description Attendee email addresses
|
|
67
|
+
*/
|
|
68
|
+
attendees?: string[];
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* @description Input for listing Google Calendar events
|
|
72
|
+
* @summary Carries the optional `calendarId` plus the time window, result cap,
|
|
73
|
+
* free-text query, and single-events expansion flag.
|
|
74
|
+
* @category Calendar
|
|
75
|
+
* @memberOf module:integrations/calendar/google-calendar/service
|
|
76
|
+
*/
|
|
77
|
+
export interface GoogleCalendarListEventsInput {
|
|
78
|
+
/**
|
|
79
|
+
* @description Calendar ID (defaults to the configured value or `primary`)
|
|
80
|
+
*/
|
|
81
|
+
calendarId?: string;
|
|
82
|
+
/**
|
|
83
|
+
* @description Lower bound for event start time (ISO 8601)
|
|
84
|
+
*/
|
|
85
|
+
timeMin?: string;
|
|
86
|
+
/**
|
|
87
|
+
* @description Upper bound for event start time (ISO 8601)
|
|
88
|
+
*/
|
|
89
|
+
timeMax?: string;
|
|
90
|
+
/**
|
|
91
|
+
* @description Maximum number of events to return
|
|
92
|
+
*/
|
|
93
|
+
maxResults?: number;
|
|
94
|
+
/**
|
|
95
|
+
* @description Free-text search across event fields
|
|
96
|
+
*/
|
|
97
|
+
q?: string;
|
|
98
|
+
/**
|
|
99
|
+
* @description Whether recurring events are expanded into instances
|
|
100
|
+
*/
|
|
101
|
+
singleEvents?: boolean;
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* @description Input for updating a Google Calendar event
|
|
105
|
+
* @summary Carries the optional `calendarId` and the fields to change; omitted
|
|
106
|
+
* fields are left untouched by the partial update.
|
|
107
|
+
* @category Calendar
|
|
108
|
+
* @memberOf module:integrations/calendar/google-calendar/service
|
|
109
|
+
*/
|
|
110
|
+
export interface GoogleCalendarEventUpdate {
|
|
111
|
+
/**
|
|
112
|
+
* @description Calendar ID (defaults to the configured value or `primary`)
|
|
113
|
+
*/
|
|
114
|
+
calendarId?: string;
|
|
115
|
+
/**
|
|
116
|
+
* @description New event summary/title
|
|
117
|
+
*/
|
|
118
|
+
summary?: string;
|
|
119
|
+
/**
|
|
120
|
+
* @description New event description
|
|
121
|
+
*/
|
|
122
|
+
description?: string;
|
|
123
|
+
/**
|
|
124
|
+
* @description New event location
|
|
125
|
+
*/
|
|
126
|
+
location?: string;
|
|
127
|
+
/**
|
|
128
|
+
* @description New start date or date-time
|
|
129
|
+
*/
|
|
130
|
+
start?: string;
|
|
131
|
+
/**
|
|
132
|
+
* @description New end date or date-time
|
|
133
|
+
*/
|
|
134
|
+
end?: string;
|
|
135
|
+
/**
|
|
136
|
+
* @description IANA time zone applied to date-time values
|
|
137
|
+
*/
|
|
138
|
+
timeZone?: string;
|
|
139
|
+
/**
|
|
140
|
+
* @description Replacement attendee email addresses
|
|
141
|
+
*/
|
|
142
|
+
attendees?: string[];
|
|
143
|
+
}
|
|
144
|
+
/**
|
|
145
|
+
* @description Google Calendar API integration service
|
|
146
|
+
* @summary An undecorated HTTP service for listing calendars and events and
|
|
147
|
+
* for creating, reading, updating, and deleting events. Every operation needs
|
|
148
|
+
* either an OAuth token or an API key; missing credentials or identifiers raise
|
|
149
|
+
* `InternalError`, and transport failures are mapped to decaf errors via
|
|
150
|
+
* {@link httpError}.
|
|
151
|
+
* @class GoogleCalendarService
|
|
152
|
+
* @extends HttpApiService
|
|
153
|
+
* @category Calendar
|
|
154
|
+
* @example
|
|
155
|
+
* ```ts
|
|
156
|
+
* import { GoogleCalendarService } from "@decaf-ts/integrations/calendar/google-calendar";
|
|
157
|
+
*
|
|
158
|
+
* const calendar = new GoogleCalendarService();
|
|
159
|
+
* await calendar.initialize({
|
|
160
|
+
* token: process.env.GRAPH_CREDENTIAL_GOOGLE_CALENDAR_TOKEN,
|
|
161
|
+
* calendarId: "primary",
|
|
162
|
+
* });
|
|
163
|
+
* await calendar.listEvents({ timeMin: new Date().toISOString() });
|
|
164
|
+
* ```
|
|
165
|
+
* @mermaid
|
|
166
|
+
* sequenceDiagram
|
|
167
|
+
* autonumber
|
|
168
|
+
* participant Caller
|
|
169
|
+
* participant Service as GoogleCalendarService
|
|
170
|
+
* participant API as Google Calendar API
|
|
171
|
+
* Caller->>Service: createEvent(input)
|
|
172
|
+
* activate Service
|
|
173
|
+
* Service->>Service: requireAuth()
|
|
174
|
+
* Service->>API: POST /calendars/{id}/events
|
|
175
|
+
* activate API
|
|
176
|
+
* API-->>Service: created event
|
|
177
|
+
* deactivate API
|
|
178
|
+
* Service-->>Caller: created event
|
|
179
|
+
* deactivate Service
|
|
180
|
+
* @memberOf module:integrations/calendar/google-calendar/service
|
|
181
|
+
*/
|
|
182
|
+
export declare class GoogleCalendarService extends HttpApiService<GoogleCalendarServiceConfig> {
|
|
183
|
+
/**
|
|
184
|
+
* @description The provider name used in error messages
|
|
185
|
+
*/
|
|
186
|
+
protected readonly serviceName = "Google Calendar";
|
|
187
|
+
/**
|
|
188
|
+
* @description The Google Calendar API base URL
|
|
189
|
+
* @summary Used when the resolved config carries no `baseUrl`.
|
|
190
|
+
* @returns {string} `"https://www.googleapis.com/calendar/v3"`.
|
|
191
|
+
*/
|
|
192
|
+
protected defaultBaseUrl(): string;
|
|
193
|
+
/**
|
|
194
|
+
* @description Builds the Google Calendar authorization headers
|
|
195
|
+
* @summary Returns `Authorization: Bearer <token>` when an OAuth token is
|
|
196
|
+
* configured, and no headers otherwise (API keys travel as query parameters).
|
|
197
|
+
* @param {GoogleCalendarServiceConfig} config - The resolved service configuration.
|
|
198
|
+
* @returns {Record<string, string>} The authorization headers (empty without a token).
|
|
199
|
+
*/
|
|
200
|
+
protected authHeaders(config: GoogleCalendarServiceConfig): Record<string, string>;
|
|
201
|
+
/**
|
|
202
|
+
* @description Reads the Google Calendar credentials and defaults from the environment
|
|
203
|
+
* @summary Reads the `calendar.googleCalendar` slice and returns a partial
|
|
204
|
+
* config when a token or API key is configured, `undefined` otherwise. Values
|
|
205
|
+
* pass through `envString`/`envNumber` to reject unset-leaf proxies.
|
|
206
|
+
* @returns {Partial<GoogleCalendarServiceConfig> | undefined} A partial config, or `undefined` when no credential is configured.
|
|
207
|
+
*/
|
|
208
|
+
protected configFromEnvironment(): Partial<GoogleCalendarServiceConfig> | undefined;
|
|
209
|
+
/**
|
|
210
|
+
* @description Asserts that an OAuth token or API key is configured
|
|
211
|
+
* @summary Called by every operation before it touches the network.
|
|
212
|
+
* @returns {void}
|
|
213
|
+
* @throws {InternalError} When neither a token nor an API key is configured.
|
|
214
|
+
*/
|
|
215
|
+
protected requireAuth(): void;
|
|
216
|
+
/**
|
|
217
|
+
* @description Builds API-key query parameters when no OAuth token is set
|
|
218
|
+
* @summary Returns `{ key }` for API-key authentication, and an empty object
|
|
219
|
+
* when an OAuth token is used (or no API key is configured).
|
|
220
|
+
* @returns {Record<string, string>} The query parameters carrying the API key, if any.
|
|
221
|
+
*/
|
|
222
|
+
private authParams;
|
|
223
|
+
/**
|
|
224
|
+
* @description Builds the encoded events path for a calendar
|
|
225
|
+
* @summary Resolves the calendar ID from the argument, the configured
|
|
226
|
+
* default, or `"primary"`, then encodes it into
|
|
227
|
+
* `/calendars/<id>/events`.
|
|
228
|
+
* @param {string} [calendarId] - Optional per-call calendar ID.
|
|
229
|
+
* @returns {string} The calendar events API path.
|
|
230
|
+
*/
|
|
231
|
+
private calendarPath;
|
|
232
|
+
/**
|
|
233
|
+
* @description Builds the Google Calendar start/end object
|
|
234
|
+
* @summary Emits `{ date }` for all-day values and `{ dateTime, timeZone? }`
|
|
235
|
+
* for values containing a `T` separator.
|
|
236
|
+
* @param {string} value - The date or date-time value.
|
|
237
|
+
* @param {string} [timeZone] - Optional IANA time zone for date-time values.
|
|
238
|
+
* @returns {Record<string, string>} The Calendar API time object.
|
|
239
|
+
*/
|
|
240
|
+
private eventTime;
|
|
241
|
+
/**
|
|
242
|
+
* @description Lists the calendars visible to the authenticated user
|
|
243
|
+
* @summary `GET`s `/users/me/calendarList` and returns the calendar list.
|
|
244
|
+
* @returns {Promise<unknown>} The calendar list payload.
|
|
245
|
+
* @throws {InternalError} When no credential is configured.
|
|
246
|
+
* @throws {BadRequestError} When Google rejects the request.
|
|
247
|
+
*/
|
|
248
|
+
listCalendars(): Promise<unknown>;
|
|
249
|
+
/**
|
|
250
|
+
* @description Lists events in a calendar
|
|
251
|
+
* @summary `GET`s the calendar's events applying the optional time window,
|
|
252
|
+
* result cap, free-text query, and single-events flag.
|
|
253
|
+
* @param {GoogleCalendarListEventsInput} [input] - The calendar and event query options.
|
|
254
|
+
* @returns {Promise<unknown>} The event collection payload.
|
|
255
|
+
* @throws {InternalError} When no credential is configured.
|
|
256
|
+
* @throws {NotFoundError} When the calendar does not exist (HTTP 404).
|
|
257
|
+
* @throws {BadRequestError} When Google rejects the query.
|
|
258
|
+
*/
|
|
259
|
+
listEvents(input?: GoogleCalendarListEventsInput): Promise<unknown>;
|
|
260
|
+
/**
|
|
261
|
+
* @description Creates a Google Calendar event
|
|
262
|
+
* @summary `POST`s the event to the resolved calendar; start/end values are
|
|
263
|
+
* normalized to Calendar time objects and attendees are mapped to
|
|
264
|
+
* `{ email }` entries.
|
|
265
|
+
* @param {GoogleCalendarEventInput} input - The event definition.
|
|
266
|
+
* @returns {Promise<unknown>} The created event payload.
|
|
267
|
+
* @throws {InternalError} When no credential is configured, or the summary, start, or end is missing.
|
|
268
|
+
* @throws {NotFoundError} When the calendar does not exist (HTTP 404).
|
|
269
|
+
* @throws {BadRequestError} When Google rejects the event.
|
|
270
|
+
* @example
|
|
271
|
+
* ```ts
|
|
272
|
+
* await calendar.createEvent({
|
|
273
|
+
* summary: "Release review",
|
|
274
|
+
* start: "2026-11-01T09:00:00Z",
|
|
275
|
+
* end: "2026-11-01T10:00:00Z",
|
|
276
|
+
* attendees: ["team@example.com"],
|
|
277
|
+
* });
|
|
278
|
+
* ```
|
|
279
|
+
*/
|
|
280
|
+
createEvent(input: GoogleCalendarEventInput): Promise<unknown>;
|
|
281
|
+
/**
|
|
282
|
+
* @description Fetches a single Google Calendar event
|
|
283
|
+
* @summary `GET`s the event from the given calendar.
|
|
284
|
+
* @param {string} calendarId - The calendar ID (empty falls back to the configured value or `primary`).
|
|
285
|
+
* @param {string} eventId - The event ID.
|
|
286
|
+
* @returns {Promise<unknown>} The event payload.
|
|
287
|
+
* @throws {InternalError} When no credential is configured or the event ID is empty.
|
|
288
|
+
* @throws {NotFoundError} When the event does not exist (HTTP 404).
|
|
289
|
+
* @throws {BadRequestError} When Google rejects the request.
|
|
290
|
+
*/
|
|
291
|
+
getEvent(calendarId: string, eventId: string): Promise<unknown>;
|
|
292
|
+
/**
|
|
293
|
+
* @description Partially updates a Google Calendar event
|
|
294
|
+
* @summary `PATCH`es only the supplied fields on the event, normalizing
|
|
295
|
+
* start/end and attendee values; omitted fields are left unchanged.
|
|
296
|
+
* @param {string} eventId - The event ID to update.
|
|
297
|
+
* @param {GoogleCalendarEventUpdate} input - The fields to change.
|
|
298
|
+
* @returns {Promise<unknown>} The updated event payload.
|
|
299
|
+
* @throws {InternalError} When no credential is configured or the event ID is empty.
|
|
300
|
+
* @throws {NotFoundError} When the event does not exist (HTTP 404).
|
|
301
|
+
* @throws {BadRequestError} When Google rejects the update.
|
|
302
|
+
*/
|
|
303
|
+
updateEvent(eventId: string, input: GoogleCalendarEventUpdate): Promise<unknown>;
|
|
304
|
+
/**
|
|
305
|
+
* @description Deletes a Google Calendar event
|
|
306
|
+
* @summary `DELETE`s the event from the given calendar and returns
|
|
307
|
+
* `{ deleted: true, eventId }`.
|
|
308
|
+
* @param {string} calendarId - The calendar ID (empty falls back to the configured value or `primary`).
|
|
309
|
+
* @param {string} eventId - The event ID to delete.
|
|
310
|
+
* @returns {Promise<unknown>} `{ deleted: true, eventId }` on success.
|
|
311
|
+
* @throws {InternalError} When no credential is configured or the event ID is empty.
|
|
312
|
+
* @throws {NotFoundError} When the event does not exist (HTTP 404).
|
|
313
|
+
* @throws {BadRequestError} When Google rejects the deletion.
|
|
314
|
+
*/
|
|
315
|
+
deleteEvent(calendarId: string, eventId: string): Promise<unknown>;
|
|
316
|
+
}
|