import * as _backstage_backend_plugin_api from '@backstage/backend-plugin-api'; import { CatalogScmEvent } from '@backstage/plugin-catalog-node/alpha'; /** * The result of analyzing a Bitbucket Cloud webhook event. * * - `ok` — one or more catalog SCM events were produced. * - `ignored` — the event was valid but not relevant. * - `aborted` — the event could not be fully processed due to missing data. * - `unsupported-event` — the event type is not handled by this analyzer. * * @alpha */ type AnalyzeBitbucketCloudWebhookEventResult = { result: 'unsupported-event'; event: string; } | { result: 'ignored'; reason: string; } | { result: 'aborted'; reason: string; } | { result: 'ok'; events: CatalogScmEvent[]; }; /** * Analyzes a Bitbucket Cloud webhook event and translates it into zero or more * catalog SCM events that entity providers can act on. * * Bitbucket Cloud push payloads do not include file-level change data, so only * repository-level events are produced (unlike GitLab and Azure DevOps * analyzers which can emit fine-grained `location.*` events). * * Supported event types: * - `repo:push` — emits a `repository.updated` event to trigger catalog * refresh for the repository. * - `repo:updated` — translates repository renames into `repository.moved` * events, or emits `repository.updated` for other metadata changes. * - `repo:transfer` — translates repository transfers into `repository.moved` * events. * - `repo:deleted` — emits a `repository.deleted` event. * * @alpha */ declare function analyzeBitbucketCloudWebhookEvent(eventType: string, eventPayload: unknown): Promise; /** @alpha */ declare const _feature: _backstage_backend_plugin_api.BackendFeature; export { analyzeBitbucketCloudWebhookEvent, _feature as default }; export type { AnalyzeBitbucketCloudWebhookEventResult };