@ubiquity-os/plugin-sdk 3.9.0 → 3.10.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.
@@ -21,7 +21,7 @@ type GithubPlugin = {
21
21
  ref?: string;
22
22
  };
23
23
  declare const pluginSettingsSchema: _sinclair_typebox.TUnion<[_sinclair_typebox.TNull, _sinclair_typebox.TObject<{
24
- with: _sinclair_typebox.TRecord<_sinclair_typebox.TString, _sinclair_typebox.TUnknown>;
24
+ with: _sinclair_typebox.TOptional<_sinclair_typebox.TRecord<_sinclair_typebox.TString, _sinclair_typebox.TUnknown>>;
25
25
  runsOn: _sinclair_typebox.TOptional<_sinclair_typebox.TArray<_sinclair_typebox.TUnion<[TLiteral<"branch_protection_configuration">, TLiteral<"branch_protection_configuration.disabled">, TLiteral<"branch_protection_configuration.enabled">, TLiteral<"branch_protection_rule">, TLiteral<"branch_protection_rule.created">, TLiteral<"branch_protection_rule.deleted">, TLiteral<"branch_protection_rule.edited">, TLiteral<"check_run">, TLiteral<"check_run.completed">, TLiteral<"check_run.created">, TLiteral<"check_run.requested_action">, TLiteral<"check_run.rerequested">, TLiteral<"check_suite">, TLiteral<"check_suite.completed">, TLiteral<"check_suite.requested">, TLiteral<"check_suite.rerequested">, TLiteral<"code_scanning_alert">, TLiteral<"code_scanning_alert.appeared_in_branch">, TLiteral<"code_scanning_alert.closed_by_user">, TLiteral<"code_scanning_alert.created">, TLiteral<"code_scanning_alert.fixed">, TLiteral<"code_scanning_alert.reopened">, TLiteral<"code_scanning_alert.reopened_by_user">, TLiteral<"commit_comment">, TLiteral<"commit_comment.created">, TLiteral<"create">, TLiteral<"custom_property">, TLiteral<"custom_property.created">, TLiteral<"custom_property.deleted">, TLiteral<"custom_property.promote_to_enterprise">, TLiteral<"custom_property.updated">, TLiteral<"custom_property_values">, TLiteral<"custom_property_values.updated">, TLiteral<"delete">, TLiteral<"dependabot_alert">, TLiteral<"dependabot_alert.auto_dismissed">, TLiteral<"dependabot_alert.auto_reopened">, TLiteral<"dependabot_alert.created">, TLiteral<"dependabot_alert.dismissed">, TLiteral<"dependabot_alert.fixed">, TLiteral<"dependabot_alert.reintroduced">, TLiteral<"dependabot_alert.reopened">, TLiteral<"deploy_key">, TLiteral<"deploy_key.created">, TLiteral<"deploy_key.deleted">, TLiteral<"deployment">, TLiteral<"deployment.created">, TLiteral<"deployment_protection_rule">, TLiteral<"deployment_protection_rule.requested">, TLiteral<"deployment_review">, TLiteral<"deployment_review.approved">, TLiteral<"deployment_review.rejected">, TLiteral<"deployment_review.requested">, TLiteral<"deployment_status">, TLiteral<"deployment_status.created">, TLiteral<"discussion">, TLiteral<"discussion.answered">, TLiteral<"discussion.category_changed">, TLiteral<"discussion.closed">, TLiteral<"discussion.created">, TLiteral<"discussion.deleted">, TLiteral<"discussion.edited">, TLiteral<"discussion.labeled">, TLiteral<"discussion.locked">, TLiteral<"discussion.pinned">, TLiteral<"discussion.reopened">, TLiteral<"discussion.transferred">, TLiteral<"discussion.unanswered">, TLiteral<"discussion.unlabeled">, TLiteral<"discussion.unlocked">, TLiteral<"discussion.unpinned">, TLiteral<"discussion_comment">, TLiteral<"discussion_comment.created">, TLiteral<"discussion_comment.deleted">, TLiteral<"discussion_comment.edited">, TLiteral<"fork">, TLiteral<"github_app_authorization">, TLiteral<"github_app_authorization.revoked">, TLiteral<"gollum">, TLiteral<"installation">, TLiteral<"installation.created">, TLiteral<"installation.deleted">, TLiteral<"installation.new_permissions_accepted">, TLiteral<"installation.suspend">, TLiteral<"installation.unsuspend">, TLiteral<"installation_repositories">, TLiteral<"installation_repositories.added">, TLiteral<"installation_repositories.removed">, TLiteral<"installation_target">, TLiteral<"installation_target.renamed">, TLiteral<"issue_comment">, TLiteral<"issue_comment.created">, TLiteral<"issue_comment.deleted">, TLiteral<"issue_comment.edited">, TLiteral<"issue_dependencies">, TLiteral<"issue_dependencies.blocked_by_added">, TLiteral<"issue_dependencies.blocked_by_removed">, TLiteral<"issue_dependencies.blocking_added">, TLiteral<"issue_dependencies.blocking_removed">, TLiteral<"issues">, TLiteral<"issues.assigned">, TLiteral<"issues.closed">, TLiteral<"issues.deleted">, TLiteral<"issues.demilestoned">, TLiteral<"issues.edited">, TLiteral<"issues.labeled">, TLiteral<"issues.locked">, TLiteral<"issues.milestoned">, TLiteral<"issues.opened">, TLiteral<"issues.pinned">, TLiteral<"issues.reopened">, TLiteral<"issues.transferred">, TLiteral<"issues.typed">, TLiteral<"issues.unassigned">, TLiteral<"issues.unlabeled">, TLiteral<"issues.unlocked">, TLiteral<"issues.unpinned">, TLiteral<"issues.untyped">, TLiteral<"label">, TLiteral<"label.created">, TLiteral<"label.deleted">, TLiteral<"label.edited">, TLiteral<"marketplace_purchase">, TLiteral<"marketplace_purchase.cancelled">, TLiteral<"marketplace_purchase.changed">, TLiteral<"marketplace_purchase.pending_change">, TLiteral<"marketplace_purchase.pending_change_cancelled">, TLiteral<"marketplace_purchase.purchased">, TLiteral<"member">, TLiteral<"member.added">, TLiteral<"member.edited">, TLiteral<"member.removed">, TLiteral<"membership">, TLiteral<"membership.added">, TLiteral<"membership.removed">, TLiteral<"merge_group">, TLiteral<"merge_group.checks_requested">, TLiteral<"merge_group.destroyed">, TLiteral<"meta">, TLiteral<"meta.deleted">, TLiteral<"milestone">, TLiteral<"milestone.closed">, TLiteral<"milestone.created">, TLiteral<"milestone.deleted">, TLiteral<"milestone.edited">, TLiteral<"milestone.opened">, TLiteral<"org_block">, TLiteral<"org_block.blocked">, TLiteral<"org_block.unblocked">, TLiteral<"organization">, TLiteral<"organization.deleted">, TLiteral<"organization.member_added">, TLiteral<"organization.member_invited">, TLiteral<"organization.member_removed">, TLiteral<"organization.renamed">, TLiteral<"package">, TLiteral<"package.published">, TLiteral<"package.updated">, TLiteral<"page_build">, TLiteral<"personal_access_token_request">, TLiteral<"personal_access_token_request.approved">, TLiteral<"personal_access_token_request.cancelled">, TLiteral<"personal_access_token_request.created">, TLiteral<"personal_access_token_request.denied">, TLiteral<"ping">, TLiteral<"project">, TLiteral<"project.closed">, TLiteral<"project.created">, TLiteral<"project.deleted">, TLiteral<"project.edited">, TLiteral<"project.reopened">, TLiteral<"project_card">, TLiteral<"project_card.converted">, TLiteral<"project_card.created">, TLiteral<"project_card.deleted">, TLiteral<"project_card.edited">, TLiteral<"project_card.moved">, TLiteral<"project_column">, TLiteral<"project_column.created">, TLiteral<"project_column.deleted">, TLiteral<"project_column.edited">, TLiteral<"project_column.moved">, TLiteral<"projects_v2">, TLiteral<"projects_v2.closed">, TLiteral<"projects_v2.created">, TLiteral<"projects_v2.deleted">, TLiteral<"projects_v2.edited">, TLiteral<"projects_v2.reopened">, TLiteral<"projects_v2_item">, TLiteral<"projects_v2_item.archived">, TLiteral<"projects_v2_item.converted">, TLiteral<"projects_v2_item.created">, TLiteral<"projects_v2_item.deleted">, TLiteral<"projects_v2_item.edited">, TLiteral<"projects_v2_item.reordered">, TLiteral<"projects_v2_item.restored">, TLiteral<"projects_v2_status_update">, TLiteral<"projects_v2_status_update.created">, TLiteral<"projects_v2_status_update.deleted">, TLiteral<"projects_v2_status_update.edited">, TLiteral<"public">, TLiteral<"pull_request">, TLiteral<"pull_request.assigned">, TLiteral<"pull_request.auto_merge_disabled">, TLiteral<"pull_request.auto_merge_enabled">, TLiteral<"pull_request.closed">, TLiteral<"pull_request.converted_to_draft">, TLiteral<"pull_request.demilestoned">, TLiteral<"pull_request.dequeued">, TLiteral<"pull_request.edited">, TLiteral<"pull_request.enqueued">, TLiteral<"pull_request.labeled">, TLiteral<"pull_request.locked">, TLiteral<"pull_request.milestoned">, TLiteral<"pull_request.opened">, TLiteral<"pull_request.ready_for_review">, TLiteral<"pull_request.reopened">, TLiteral<"pull_request.review_request_removed">, TLiteral<"pull_request.review_requested">, TLiteral<"pull_request.synchronize">, TLiteral<"pull_request.unassigned">, TLiteral<"pull_request.unlabeled">, TLiteral<"pull_request.unlocked">, TLiteral<"pull_request_review">, TLiteral<"pull_request_review.dismissed">, TLiteral<"pull_request_review.edited">, TLiteral<"pull_request_review.submitted">, TLiteral<"pull_request_review_comment">, TLiteral<"pull_request_review_comment.created">, TLiteral<"pull_request_review_comment.deleted">, TLiteral<"pull_request_review_comment.edited">, TLiteral<"pull_request_review_thread">, TLiteral<"pull_request_review_thread.resolved">, TLiteral<"pull_request_review_thread.unresolved">, TLiteral<"push">, TLiteral<"registry_package">, TLiteral<"registry_package.published">, TLiteral<"registry_package.updated">, TLiteral<"release">, TLiteral<"release.created">, TLiteral<"release.deleted">, TLiteral<"release.edited">, TLiteral<"release.prereleased">, TLiteral<"release.published">, TLiteral<"release.released">, TLiteral<"release.unpublished">, TLiteral<"repository">, TLiteral<"repository.archived">, TLiteral<"repository.created">, TLiteral<"repository.deleted">, TLiteral<"repository.edited">, TLiteral<"repository.privatized">, TLiteral<"repository.publicized">, TLiteral<"repository.renamed">, TLiteral<"repository.transferred">, TLiteral<"repository.unarchived">, TLiteral<"repository_advisory">, TLiteral<"repository_advisory.published">, TLiteral<"repository_advisory.reported">, TLiteral<"repository_dispatch">, TLiteral<"repository_dispatch.sample.collected">, TLiteral<"repository_import">, TLiteral<"repository_ruleset">, TLiteral<"repository_ruleset.created">, TLiteral<"repository_ruleset.deleted">, TLiteral<"repository_ruleset.edited">, TLiteral<"repository_vulnerability_alert">, TLiteral<"repository_vulnerability_alert.create">, TLiteral<"repository_vulnerability_alert.dismiss">, TLiteral<"repository_vulnerability_alert.reopen">, TLiteral<"repository_vulnerability_alert.resolve">, TLiteral<"secret_scanning_alert">, TLiteral<"secret_scanning_alert.assigned">, TLiteral<"secret_scanning_alert.created">, TLiteral<"secret_scanning_alert.publicly_leaked">, TLiteral<"secret_scanning_alert.reopened">, TLiteral<"secret_scanning_alert.resolved">, TLiteral<"secret_scanning_alert.unassigned">, TLiteral<"secret_scanning_alert.validated">, TLiteral<"secret_scanning_alert_location">, TLiteral<"secret_scanning_alert_location.created">, TLiteral<"secret_scanning_scan">, TLiteral<"secret_scanning_scan.completed">, TLiteral<"security_advisory">, TLiteral<"security_advisory.published">, TLiteral<"security_advisory.updated">, TLiteral<"security_advisory.withdrawn">, TLiteral<"security_and_analysis">, TLiteral<"sponsorship">, TLiteral<"sponsorship.cancelled">, TLiteral<"sponsorship.created">, TLiteral<"sponsorship.edited">, TLiteral<"sponsorship.pending_cancellation">, TLiteral<"sponsorship.pending_tier_change">, TLiteral<"sponsorship.tier_changed">, TLiteral<"star">, TLiteral<"star.created">, TLiteral<"star.deleted">, TLiteral<"status">, TLiteral<"sub_issues">, TLiteral<"sub_issues.parent_issue_added">, TLiteral<"sub_issues.parent_issue_removed">, TLiteral<"sub_issues.sub_issue_added">, TLiteral<"sub_issues.sub_issue_removed">, TLiteral<"team">, TLiteral<"team.added_to_repository">, TLiteral<"team.created">, TLiteral<"team.deleted">, TLiteral<"team.edited">, TLiteral<"team.removed_from_repository">, TLiteral<"team_add">, TLiteral<"watch">, TLiteral<"watch.started">, TLiteral<"workflow_dispatch">, TLiteral<"workflow_job">, TLiteral<"workflow_job.completed">, TLiteral<"workflow_job.in_progress">, TLiteral<"workflow_job.queued">, TLiteral<"workflow_job.waiting">, TLiteral<"workflow_run">, TLiteral<"workflow_run.completed">, TLiteral<"workflow_run.in_progress">, TLiteral<"workflow_run.requested">]>>>;
26
26
  skipBotEvents: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
27
27
  }>]>;
@@ -29,7 +29,7 @@ type PluginSettings = StaticDecode<typeof pluginSettingsSchema>;
29
29
  declare const configSchema: _sinclair_typebox.TObject<{
30
30
  imports: _sinclair_typebox.TOptional<_sinclair_typebox.TArray<_sinclair_typebox.TString>>;
31
31
  plugins: _sinclair_typebox.TRecord<_sinclair_typebox.TString, _sinclair_typebox.TUnion<[_sinclair_typebox.TNull, _sinclair_typebox.TObject<{
32
- with: _sinclair_typebox.TRecord<_sinclair_typebox.TString, _sinclair_typebox.TUnknown>;
32
+ with: _sinclair_typebox.TOptional<_sinclair_typebox.TRecord<_sinclair_typebox.TString, _sinclair_typebox.TUnknown>>;
33
33
  runsOn: _sinclair_typebox.TOptional<_sinclair_typebox.TArray<_sinclair_typebox.TUnion<[TLiteral<"branch_protection_configuration">, TLiteral<"branch_protection_configuration.disabled">, TLiteral<"branch_protection_configuration.enabled">, TLiteral<"branch_protection_rule">, TLiteral<"branch_protection_rule.created">, TLiteral<"branch_protection_rule.deleted">, TLiteral<"branch_protection_rule.edited">, TLiteral<"check_run">, TLiteral<"check_run.completed">, TLiteral<"check_run.created">, TLiteral<"check_run.requested_action">, TLiteral<"check_run.rerequested">, TLiteral<"check_suite">, TLiteral<"check_suite.completed">, TLiteral<"check_suite.requested">, TLiteral<"check_suite.rerequested">, TLiteral<"code_scanning_alert">, TLiteral<"code_scanning_alert.appeared_in_branch">, TLiteral<"code_scanning_alert.closed_by_user">, TLiteral<"code_scanning_alert.created">, TLiteral<"code_scanning_alert.fixed">, TLiteral<"code_scanning_alert.reopened">, TLiteral<"code_scanning_alert.reopened_by_user">, TLiteral<"commit_comment">, TLiteral<"commit_comment.created">, TLiteral<"create">, TLiteral<"custom_property">, TLiteral<"custom_property.created">, TLiteral<"custom_property.deleted">, TLiteral<"custom_property.promote_to_enterprise">, TLiteral<"custom_property.updated">, TLiteral<"custom_property_values">, TLiteral<"custom_property_values.updated">, TLiteral<"delete">, TLiteral<"dependabot_alert">, TLiteral<"dependabot_alert.auto_dismissed">, TLiteral<"dependabot_alert.auto_reopened">, TLiteral<"dependabot_alert.created">, TLiteral<"dependabot_alert.dismissed">, TLiteral<"dependabot_alert.fixed">, TLiteral<"dependabot_alert.reintroduced">, TLiteral<"dependabot_alert.reopened">, TLiteral<"deploy_key">, TLiteral<"deploy_key.created">, TLiteral<"deploy_key.deleted">, TLiteral<"deployment">, TLiteral<"deployment.created">, TLiteral<"deployment_protection_rule">, TLiteral<"deployment_protection_rule.requested">, TLiteral<"deployment_review">, TLiteral<"deployment_review.approved">, TLiteral<"deployment_review.rejected">, TLiteral<"deployment_review.requested">, TLiteral<"deployment_status">, TLiteral<"deployment_status.created">, TLiteral<"discussion">, TLiteral<"discussion.answered">, TLiteral<"discussion.category_changed">, TLiteral<"discussion.closed">, TLiteral<"discussion.created">, TLiteral<"discussion.deleted">, TLiteral<"discussion.edited">, TLiteral<"discussion.labeled">, TLiteral<"discussion.locked">, TLiteral<"discussion.pinned">, TLiteral<"discussion.reopened">, TLiteral<"discussion.transferred">, TLiteral<"discussion.unanswered">, TLiteral<"discussion.unlabeled">, TLiteral<"discussion.unlocked">, TLiteral<"discussion.unpinned">, TLiteral<"discussion_comment">, TLiteral<"discussion_comment.created">, TLiteral<"discussion_comment.deleted">, TLiteral<"discussion_comment.edited">, TLiteral<"fork">, TLiteral<"github_app_authorization">, TLiteral<"github_app_authorization.revoked">, TLiteral<"gollum">, TLiteral<"installation">, TLiteral<"installation.created">, TLiteral<"installation.deleted">, TLiteral<"installation.new_permissions_accepted">, TLiteral<"installation.suspend">, TLiteral<"installation.unsuspend">, TLiteral<"installation_repositories">, TLiteral<"installation_repositories.added">, TLiteral<"installation_repositories.removed">, TLiteral<"installation_target">, TLiteral<"installation_target.renamed">, TLiteral<"issue_comment">, TLiteral<"issue_comment.created">, TLiteral<"issue_comment.deleted">, TLiteral<"issue_comment.edited">, TLiteral<"issue_dependencies">, TLiteral<"issue_dependencies.blocked_by_added">, TLiteral<"issue_dependencies.blocked_by_removed">, TLiteral<"issue_dependencies.blocking_added">, TLiteral<"issue_dependencies.blocking_removed">, TLiteral<"issues">, TLiteral<"issues.assigned">, TLiteral<"issues.closed">, TLiteral<"issues.deleted">, TLiteral<"issues.demilestoned">, TLiteral<"issues.edited">, TLiteral<"issues.labeled">, TLiteral<"issues.locked">, TLiteral<"issues.milestoned">, TLiteral<"issues.opened">, TLiteral<"issues.pinned">, TLiteral<"issues.reopened">, TLiteral<"issues.transferred">, TLiteral<"issues.typed">, TLiteral<"issues.unassigned">, TLiteral<"issues.unlabeled">, TLiteral<"issues.unlocked">, TLiteral<"issues.unpinned">, TLiteral<"issues.untyped">, TLiteral<"label">, TLiteral<"label.created">, TLiteral<"label.deleted">, TLiteral<"label.edited">, TLiteral<"marketplace_purchase">, TLiteral<"marketplace_purchase.cancelled">, TLiteral<"marketplace_purchase.changed">, TLiteral<"marketplace_purchase.pending_change">, TLiteral<"marketplace_purchase.pending_change_cancelled">, TLiteral<"marketplace_purchase.purchased">, TLiteral<"member">, TLiteral<"member.added">, TLiteral<"member.edited">, TLiteral<"member.removed">, TLiteral<"membership">, TLiteral<"membership.added">, TLiteral<"membership.removed">, TLiteral<"merge_group">, TLiteral<"merge_group.checks_requested">, TLiteral<"merge_group.destroyed">, TLiteral<"meta">, TLiteral<"meta.deleted">, TLiteral<"milestone">, TLiteral<"milestone.closed">, TLiteral<"milestone.created">, TLiteral<"milestone.deleted">, TLiteral<"milestone.edited">, TLiteral<"milestone.opened">, TLiteral<"org_block">, TLiteral<"org_block.blocked">, TLiteral<"org_block.unblocked">, TLiteral<"organization">, TLiteral<"organization.deleted">, TLiteral<"organization.member_added">, TLiteral<"organization.member_invited">, TLiteral<"organization.member_removed">, TLiteral<"organization.renamed">, TLiteral<"package">, TLiteral<"package.published">, TLiteral<"package.updated">, TLiteral<"page_build">, TLiteral<"personal_access_token_request">, TLiteral<"personal_access_token_request.approved">, TLiteral<"personal_access_token_request.cancelled">, TLiteral<"personal_access_token_request.created">, TLiteral<"personal_access_token_request.denied">, TLiteral<"ping">, TLiteral<"project">, TLiteral<"project.closed">, TLiteral<"project.created">, TLiteral<"project.deleted">, TLiteral<"project.edited">, TLiteral<"project.reopened">, TLiteral<"project_card">, TLiteral<"project_card.converted">, TLiteral<"project_card.created">, TLiteral<"project_card.deleted">, TLiteral<"project_card.edited">, TLiteral<"project_card.moved">, TLiteral<"project_column">, TLiteral<"project_column.created">, TLiteral<"project_column.deleted">, TLiteral<"project_column.edited">, TLiteral<"project_column.moved">, TLiteral<"projects_v2">, TLiteral<"projects_v2.closed">, TLiteral<"projects_v2.created">, TLiteral<"projects_v2.deleted">, TLiteral<"projects_v2.edited">, TLiteral<"projects_v2.reopened">, TLiteral<"projects_v2_item">, TLiteral<"projects_v2_item.archived">, TLiteral<"projects_v2_item.converted">, TLiteral<"projects_v2_item.created">, TLiteral<"projects_v2_item.deleted">, TLiteral<"projects_v2_item.edited">, TLiteral<"projects_v2_item.reordered">, TLiteral<"projects_v2_item.restored">, TLiteral<"projects_v2_status_update">, TLiteral<"projects_v2_status_update.created">, TLiteral<"projects_v2_status_update.deleted">, TLiteral<"projects_v2_status_update.edited">, TLiteral<"public">, TLiteral<"pull_request">, TLiteral<"pull_request.assigned">, TLiteral<"pull_request.auto_merge_disabled">, TLiteral<"pull_request.auto_merge_enabled">, TLiteral<"pull_request.closed">, TLiteral<"pull_request.converted_to_draft">, TLiteral<"pull_request.demilestoned">, TLiteral<"pull_request.dequeued">, TLiteral<"pull_request.edited">, TLiteral<"pull_request.enqueued">, TLiteral<"pull_request.labeled">, TLiteral<"pull_request.locked">, TLiteral<"pull_request.milestoned">, TLiteral<"pull_request.opened">, TLiteral<"pull_request.ready_for_review">, TLiteral<"pull_request.reopened">, TLiteral<"pull_request.review_request_removed">, TLiteral<"pull_request.review_requested">, TLiteral<"pull_request.synchronize">, TLiteral<"pull_request.unassigned">, TLiteral<"pull_request.unlabeled">, TLiteral<"pull_request.unlocked">, TLiteral<"pull_request_review">, TLiteral<"pull_request_review.dismissed">, TLiteral<"pull_request_review.edited">, TLiteral<"pull_request_review.submitted">, TLiteral<"pull_request_review_comment">, TLiteral<"pull_request_review_comment.created">, TLiteral<"pull_request_review_comment.deleted">, TLiteral<"pull_request_review_comment.edited">, TLiteral<"pull_request_review_thread">, TLiteral<"pull_request_review_thread.resolved">, TLiteral<"pull_request_review_thread.unresolved">, TLiteral<"push">, TLiteral<"registry_package">, TLiteral<"registry_package.published">, TLiteral<"registry_package.updated">, TLiteral<"release">, TLiteral<"release.created">, TLiteral<"release.deleted">, TLiteral<"release.edited">, TLiteral<"release.prereleased">, TLiteral<"release.published">, TLiteral<"release.released">, TLiteral<"release.unpublished">, TLiteral<"repository">, TLiteral<"repository.archived">, TLiteral<"repository.created">, TLiteral<"repository.deleted">, TLiteral<"repository.edited">, TLiteral<"repository.privatized">, TLiteral<"repository.publicized">, TLiteral<"repository.renamed">, TLiteral<"repository.transferred">, TLiteral<"repository.unarchived">, TLiteral<"repository_advisory">, TLiteral<"repository_advisory.published">, TLiteral<"repository_advisory.reported">, TLiteral<"repository_dispatch">, TLiteral<"repository_dispatch.sample.collected">, TLiteral<"repository_import">, TLiteral<"repository_ruleset">, TLiteral<"repository_ruleset.created">, TLiteral<"repository_ruleset.deleted">, TLiteral<"repository_ruleset.edited">, TLiteral<"repository_vulnerability_alert">, TLiteral<"repository_vulnerability_alert.create">, TLiteral<"repository_vulnerability_alert.dismiss">, TLiteral<"repository_vulnerability_alert.reopen">, TLiteral<"repository_vulnerability_alert.resolve">, TLiteral<"secret_scanning_alert">, TLiteral<"secret_scanning_alert.assigned">, TLiteral<"secret_scanning_alert.created">, TLiteral<"secret_scanning_alert.publicly_leaked">, TLiteral<"secret_scanning_alert.reopened">, TLiteral<"secret_scanning_alert.resolved">, TLiteral<"secret_scanning_alert.unassigned">, TLiteral<"secret_scanning_alert.validated">, TLiteral<"secret_scanning_alert_location">, TLiteral<"secret_scanning_alert_location.created">, TLiteral<"secret_scanning_scan">, TLiteral<"secret_scanning_scan.completed">, TLiteral<"security_advisory">, TLiteral<"security_advisory.published">, TLiteral<"security_advisory.updated">, TLiteral<"security_advisory.withdrawn">, TLiteral<"security_and_analysis">, TLiteral<"sponsorship">, TLiteral<"sponsorship.cancelled">, TLiteral<"sponsorship.created">, TLiteral<"sponsorship.edited">, TLiteral<"sponsorship.pending_cancellation">, TLiteral<"sponsorship.pending_tier_change">, TLiteral<"sponsorship.tier_changed">, TLiteral<"star">, TLiteral<"star.created">, TLiteral<"star.deleted">, TLiteral<"status">, TLiteral<"sub_issues">, TLiteral<"sub_issues.parent_issue_added">, TLiteral<"sub_issues.parent_issue_removed">, TLiteral<"sub_issues.sub_issue_added">, TLiteral<"sub_issues.sub_issue_removed">, TLiteral<"team">, TLiteral<"team.added_to_repository">, TLiteral<"team.created">, TLiteral<"team.deleted">, TLiteral<"team.edited">, TLiteral<"team.removed_from_repository">, TLiteral<"team_add">, TLiteral<"watch">, TLiteral<"watch.started">, TLiteral<"workflow_dispatch">, TLiteral<"workflow_job">, TLiteral<"workflow_job.completed">, TLiteral<"workflow_job.in_progress">, TLiteral<"workflow_job.queued">, TLiteral<"workflow_job.waiting">, TLiteral<"workflow_run">, TLiteral<"workflow_run.completed">, TLiteral<"workflow_run.in_progress">, TLiteral<"workflow_run.requested">]>>>;
34
34
  skipBotEvents: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
35
35
  }>]>>;
@@ -43,6 +43,10 @@ type Location = {
43
43
  owner: string;
44
44
  repo: string;
45
45
  };
46
+ type ConfigurationRefOptions = {
47
+ orgRef?: string;
48
+ repoRef?: string;
49
+ };
46
50
  type OctokitFactory = (location: Location) => Promise<Context["octokit"] | null>;
47
51
  interface LoggerInterface {
48
52
  debug(message: string, metadata?: Record<string, unknown>): void;
@@ -71,23 +75,25 @@ declare class ConfigurationHandler {
71
75
  * Retrieves the configuration for the current plugin based on its manifest.
72
76
  * @param manifest - The plugin manifest containing the `short_name` identifier
73
77
  * @param location - Optional repository location (`owner/repo`)
78
+ * @param options - Optional refs for organization/repository configuration lookups
74
79
  * @returns The plugin's configuration or null if not found
75
80
  **/
76
- getSelfConfiguration<T extends NonNullable<PluginSettings>["with"]>(manifest: Pick<Manifest, "short_name" | "homepage_url">, location?: Location): Promise<T | null>;
81
+ getSelfConfiguration<T extends NonNullable<PluginSettings>["with"]>(manifest: Pick<Manifest, "short_name" | "homepage_url">, location?: Location, options?: ConfigurationRefOptions): Promise<T | null>;
77
82
  /**
78
83
  * Retrieves and merges configuration from organization and repository levels.
79
84
  * @param location - Optional repository location (`owner` and `repo`). If not provided, returns the default configuration.
85
+ * @param options - Optional refs for organization/repository configuration lookups
80
86
  * @returns The merged plugin configuration with resolved plugin settings.
81
87
  */
82
- getConfiguration(location?: Location): Promise<{
88
+ getConfiguration(location?: Location, options?: ConfigurationRefOptions): Promise<{
83
89
  imports?: string[] | undefined;
84
90
  plugins: {
85
91
  [x: string]: {
92
+ with?: {
93
+ [x: string]: unknown;
94
+ } | undefined;
86
95
  runsOn?: ("branch_protection_configuration" | "branch_protection_configuration.disabled" | "branch_protection_configuration.enabled" | "branch_protection_rule" | "branch_protection_rule.created" | "branch_protection_rule.deleted" | "branch_protection_rule.edited" | "check_run" | "check_run.completed" | "check_run.created" | "check_run.requested_action" | "check_run.rerequested" | "check_suite" | "check_suite.completed" | "check_suite.requested" | "check_suite.rerequested" | "code_scanning_alert" | "code_scanning_alert.appeared_in_branch" | "code_scanning_alert.closed_by_user" | "code_scanning_alert.created" | "code_scanning_alert.fixed" | "code_scanning_alert.reopened" | "code_scanning_alert.reopened_by_user" | "commit_comment" | "commit_comment.created" | "create" | "custom_property" | "custom_property.created" | "custom_property.deleted" | "custom_property.promote_to_enterprise" | "custom_property.updated" | "custom_property_values" | "custom_property_values.updated" | "delete" | "dependabot_alert" | "dependabot_alert.auto_dismissed" | "dependabot_alert.auto_reopened" | "dependabot_alert.created" | "dependabot_alert.dismissed" | "dependabot_alert.fixed" | "dependabot_alert.reintroduced" | "dependabot_alert.reopened" | "deploy_key" | "deploy_key.created" | "deploy_key.deleted" | "deployment" | "deployment.created" | "deployment_protection_rule" | "deployment_protection_rule.requested" | "deployment_review" | "deployment_review.approved" | "deployment_review.rejected" | "deployment_review.requested" | "deployment_status" | "deployment_status.created" | "discussion" | "discussion.answered" | "discussion.category_changed" | "discussion.closed" | "discussion.created" | "discussion.deleted" | "discussion.edited" | "discussion.labeled" | "discussion.locked" | "discussion.pinned" | "discussion.reopened" | "discussion.transferred" | "discussion.unanswered" | "discussion.unlabeled" | "discussion.unlocked" | "discussion.unpinned" | "discussion_comment" | "discussion_comment.created" | "discussion_comment.deleted" | "discussion_comment.edited" | "fork" | "github_app_authorization" | "github_app_authorization.revoked" | "gollum" | "installation" | "installation.created" | "installation.deleted" | "installation.new_permissions_accepted" | "installation.suspend" | "installation.unsuspend" | "installation_repositories" | "installation_repositories.added" | "installation_repositories.removed" | "installation_target" | "installation_target.renamed" | "issue_comment" | "issue_comment.created" | "issue_comment.deleted" | "issue_comment.edited" | "issue_dependencies" | "issue_dependencies.blocked_by_added" | "issue_dependencies.blocked_by_removed" | "issue_dependencies.blocking_added" | "issue_dependencies.blocking_removed" | "issues" | "issues.assigned" | "issues.closed" | "issues.deleted" | "issues.demilestoned" | "issues.edited" | "issues.labeled" | "issues.locked" | "issues.milestoned" | "issues.opened" | "issues.pinned" | "issues.reopened" | "issues.transferred" | "issues.typed" | "issues.unassigned" | "issues.unlabeled" | "issues.unlocked" | "issues.unpinned" | "issues.untyped" | "label" | "label.created" | "label.deleted" | "label.edited" | "marketplace_purchase" | "marketplace_purchase.cancelled" | "marketplace_purchase.changed" | "marketplace_purchase.pending_change" | "marketplace_purchase.pending_change_cancelled" | "marketplace_purchase.purchased" | "member" | "member.added" | "member.edited" | "member.removed" | "membership" | "membership.added" | "membership.removed" | "merge_group" | "merge_group.checks_requested" | "merge_group.destroyed" | "meta" | "meta.deleted" | "milestone" | "milestone.closed" | "milestone.created" | "milestone.deleted" | "milestone.edited" | "milestone.opened" | "org_block" | "org_block.blocked" | "org_block.unblocked" | "organization" | "organization.deleted" | "organization.member_added" | "organization.member_invited" | "organization.member_removed" | "organization.renamed" | "package" | "package.published" | "package.updated" | "page_build" | "personal_access_token_request" | "personal_access_token_request.approved" | "personal_access_token_request.cancelled" | "personal_access_token_request.created" | "personal_access_token_request.denied" | "ping" | "project" | "project.closed" | "project.created" | "project.deleted" | "project.edited" | "project.reopened" | "project_card" | "project_card.converted" | "project_card.created" | "project_card.deleted" | "project_card.edited" | "project_card.moved" | "project_column" | "project_column.created" | "project_column.deleted" | "project_column.edited" | "project_column.moved" | "projects_v2" | "projects_v2.closed" | "projects_v2.created" | "projects_v2.deleted" | "projects_v2.edited" | "projects_v2.reopened" | "projects_v2_item" | "projects_v2_item.archived" | "projects_v2_item.converted" | "projects_v2_item.created" | "projects_v2_item.deleted" | "projects_v2_item.edited" | "projects_v2_item.reordered" | "projects_v2_item.restored" | "projects_v2_status_update" | "projects_v2_status_update.created" | "projects_v2_status_update.deleted" | "projects_v2_status_update.edited" | "public" | "pull_request" | "pull_request.assigned" | "pull_request.auto_merge_disabled" | "pull_request.auto_merge_enabled" | "pull_request.closed" | "pull_request.converted_to_draft" | "pull_request.demilestoned" | "pull_request.dequeued" | "pull_request.edited" | "pull_request.enqueued" | "pull_request.labeled" | "pull_request.locked" | "pull_request.milestoned" | "pull_request.opened" | "pull_request.ready_for_review" | "pull_request.reopened" | "pull_request.review_request_removed" | "pull_request.review_requested" | "pull_request.synchronize" | "pull_request.unassigned" | "pull_request.unlabeled" | "pull_request.unlocked" | "pull_request_review" | "pull_request_review.dismissed" | "pull_request_review.edited" | "pull_request_review.submitted" | "pull_request_review_comment" | "pull_request_review_comment.created" | "pull_request_review_comment.deleted" | "pull_request_review_comment.edited" | "pull_request_review_thread" | "pull_request_review_thread.resolved" | "pull_request_review_thread.unresolved" | "push" | "registry_package" | "registry_package.published" | "registry_package.updated" | "release" | "release.created" | "release.deleted" | "release.edited" | "release.prereleased" | "release.published" | "release.released" | "release.unpublished" | "repository" | "repository.archived" | "repository.created" | "repository.deleted" | "repository.edited" | "repository.privatized" | "repository.publicized" | "repository.renamed" | "repository.transferred" | "repository.unarchived" | "repository_advisory" | "repository_advisory.published" | "repository_advisory.reported" | "repository_dispatch" | "repository_dispatch.sample.collected" | "repository_import" | "repository_ruleset" | "repository_ruleset.created" | "repository_ruleset.deleted" | "repository_ruleset.edited" | "repository_vulnerability_alert" | "repository_vulnerability_alert.create" | "repository_vulnerability_alert.dismiss" | "repository_vulnerability_alert.reopen" | "repository_vulnerability_alert.resolve" | "secret_scanning_alert" | "secret_scanning_alert.assigned" | "secret_scanning_alert.created" | "secret_scanning_alert.publicly_leaked" | "secret_scanning_alert.reopened" | "secret_scanning_alert.resolved" | "secret_scanning_alert.unassigned" | "secret_scanning_alert.validated" | "secret_scanning_alert_location" | "secret_scanning_alert_location.created" | "secret_scanning_scan" | "secret_scanning_scan.completed" | "security_advisory" | "security_advisory.published" | "security_advisory.updated" | "security_advisory.withdrawn" | "security_and_analysis" | "sponsorship" | "sponsorship.cancelled" | "sponsorship.created" | "sponsorship.edited" | "sponsorship.pending_cancellation" | "sponsorship.pending_tier_change" | "sponsorship.tier_changed" | "star" | "star.created" | "star.deleted" | "status" | "sub_issues" | "sub_issues.parent_issue_added" | "sub_issues.parent_issue_removed" | "sub_issues.sub_issue_added" | "sub_issues.sub_issue_removed" | "team" | "team.added_to_repository" | "team.created" | "team.deleted" | "team.edited" | "team.removed_from_repository" | "team_add" | "watch" | "watch.started" | "workflow_dispatch" | "workflow_job" | "workflow_job.completed" | "workflow_job.in_progress" | "workflow_job.queued" | "workflow_job.waiting" | "workflow_run" | "workflow_run.completed" | "workflow_run.in_progress" | "workflow_run.requested")[] | undefined;
87
96
  skipBotEvents?: boolean | undefined;
88
- with: {
89
- [x: string]: unknown;
90
- };
91
97
  } | null;
92
98
  };
93
99
  }>;
@@ -99,8 +105,11 @@ declare class ConfigurationHandler {
99
105
  *
100
106
  * @param owner The repository owner
101
107
  * @param repository The repository name
108
+ * @param options - Optional ref (branch, tag, or commit SHA) for the configuration lookup
102
109
  */
103
- getConfigurationFromRepo(owner: string, repository: string): Promise<{
110
+ getConfigurationFromRepo(owner: string, repository: string, options?: {
111
+ ref?: string;
112
+ }): Promise<{
104
113
  config: null;
105
114
  errors: null;
106
115
  rawData: null;
@@ -109,11 +118,11 @@ declare class ConfigurationHandler {
109
118
  imports?: string[] | undefined;
110
119
  plugins: {
111
120
  [x: string]: {
121
+ with?: {
122
+ [x: string]: unknown;
123
+ } | undefined;
112
124
  runsOn?: ("branch_protection_configuration" | "branch_protection_configuration.disabled" | "branch_protection_configuration.enabled" | "branch_protection_rule" | "branch_protection_rule.created" | "branch_protection_rule.deleted" | "branch_protection_rule.edited" | "check_run" | "check_run.completed" | "check_run.created" | "check_run.requested_action" | "check_run.rerequested" | "check_suite" | "check_suite.completed" | "check_suite.requested" | "check_suite.rerequested" | "code_scanning_alert" | "code_scanning_alert.appeared_in_branch" | "code_scanning_alert.closed_by_user" | "code_scanning_alert.created" | "code_scanning_alert.fixed" | "code_scanning_alert.reopened" | "code_scanning_alert.reopened_by_user" | "commit_comment" | "commit_comment.created" | "create" | "custom_property" | "custom_property.created" | "custom_property.deleted" | "custom_property.promote_to_enterprise" | "custom_property.updated" | "custom_property_values" | "custom_property_values.updated" | "delete" | "dependabot_alert" | "dependabot_alert.auto_dismissed" | "dependabot_alert.auto_reopened" | "dependabot_alert.created" | "dependabot_alert.dismissed" | "dependabot_alert.fixed" | "dependabot_alert.reintroduced" | "dependabot_alert.reopened" | "deploy_key" | "deploy_key.created" | "deploy_key.deleted" | "deployment" | "deployment.created" | "deployment_protection_rule" | "deployment_protection_rule.requested" | "deployment_review" | "deployment_review.approved" | "deployment_review.rejected" | "deployment_review.requested" | "deployment_status" | "deployment_status.created" | "discussion" | "discussion.answered" | "discussion.category_changed" | "discussion.closed" | "discussion.created" | "discussion.deleted" | "discussion.edited" | "discussion.labeled" | "discussion.locked" | "discussion.pinned" | "discussion.reopened" | "discussion.transferred" | "discussion.unanswered" | "discussion.unlabeled" | "discussion.unlocked" | "discussion.unpinned" | "discussion_comment" | "discussion_comment.created" | "discussion_comment.deleted" | "discussion_comment.edited" | "fork" | "github_app_authorization" | "github_app_authorization.revoked" | "gollum" | "installation" | "installation.created" | "installation.deleted" | "installation.new_permissions_accepted" | "installation.suspend" | "installation.unsuspend" | "installation_repositories" | "installation_repositories.added" | "installation_repositories.removed" | "installation_target" | "installation_target.renamed" | "issue_comment" | "issue_comment.created" | "issue_comment.deleted" | "issue_comment.edited" | "issue_dependencies" | "issue_dependencies.blocked_by_added" | "issue_dependencies.blocked_by_removed" | "issue_dependencies.blocking_added" | "issue_dependencies.blocking_removed" | "issues" | "issues.assigned" | "issues.closed" | "issues.deleted" | "issues.demilestoned" | "issues.edited" | "issues.labeled" | "issues.locked" | "issues.milestoned" | "issues.opened" | "issues.pinned" | "issues.reopened" | "issues.transferred" | "issues.typed" | "issues.unassigned" | "issues.unlabeled" | "issues.unlocked" | "issues.unpinned" | "issues.untyped" | "label" | "label.created" | "label.deleted" | "label.edited" | "marketplace_purchase" | "marketplace_purchase.cancelled" | "marketplace_purchase.changed" | "marketplace_purchase.pending_change" | "marketplace_purchase.pending_change_cancelled" | "marketplace_purchase.purchased" | "member" | "member.added" | "member.edited" | "member.removed" | "membership" | "membership.added" | "membership.removed" | "merge_group" | "merge_group.checks_requested" | "merge_group.destroyed" | "meta" | "meta.deleted" | "milestone" | "milestone.closed" | "milestone.created" | "milestone.deleted" | "milestone.edited" | "milestone.opened" | "org_block" | "org_block.blocked" | "org_block.unblocked" | "organization" | "organization.deleted" | "organization.member_added" | "organization.member_invited" | "organization.member_removed" | "organization.renamed" | "package" | "package.published" | "package.updated" | "page_build" | "personal_access_token_request" | "personal_access_token_request.approved" | "personal_access_token_request.cancelled" | "personal_access_token_request.created" | "personal_access_token_request.denied" | "ping" | "project" | "project.closed" | "project.created" | "project.deleted" | "project.edited" | "project.reopened" | "project_card" | "project_card.converted" | "project_card.created" | "project_card.deleted" | "project_card.edited" | "project_card.moved" | "project_column" | "project_column.created" | "project_column.deleted" | "project_column.edited" | "project_column.moved" | "projects_v2" | "projects_v2.closed" | "projects_v2.created" | "projects_v2.deleted" | "projects_v2.edited" | "projects_v2.reopened" | "projects_v2_item" | "projects_v2_item.archived" | "projects_v2_item.converted" | "projects_v2_item.created" | "projects_v2_item.deleted" | "projects_v2_item.edited" | "projects_v2_item.reordered" | "projects_v2_item.restored" | "projects_v2_status_update" | "projects_v2_status_update.created" | "projects_v2_status_update.deleted" | "projects_v2_status_update.edited" | "public" | "pull_request" | "pull_request.assigned" | "pull_request.auto_merge_disabled" | "pull_request.auto_merge_enabled" | "pull_request.closed" | "pull_request.converted_to_draft" | "pull_request.demilestoned" | "pull_request.dequeued" | "pull_request.edited" | "pull_request.enqueued" | "pull_request.labeled" | "pull_request.locked" | "pull_request.milestoned" | "pull_request.opened" | "pull_request.ready_for_review" | "pull_request.reopened" | "pull_request.review_request_removed" | "pull_request.review_requested" | "pull_request.synchronize" | "pull_request.unassigned" | "pull_request.unlabeled" | "pull_request.unlocked" | "pull_request_review" | "pull_request_review.dismissed" | "pull_request_review.edited" | "pull_request_review.submitted" | "pull_request_review_comment" | "pull_request_review_comment.created" | "pull_request_review_comment.deleted" | "pull_request_review_comment.edited" | "pull_request_review_thread" | "pull_request_review_thread.resolved" | "pull_request_review_thread.unresolved" | "push" | "registry_package" | "registry_package.published" | "registry_package.updated" | "release" | "release.created" | "release.deleted" | "release.edited" | "release.prereleased" | "release.published" | "release.released" | "release.unpublished" | "repository" | "repository.archived" | "repository.created" | "repository.deleted" | "repository.edited" | "repository.privatized" | "repository.publicized" | "repository.renamed" | "repository.transferred" | "repository.unarchived" | "repository_advisory" | "repository_advisory.published" | "repository_advisory.reported" | "repository_dispatch" | "repository_dispatch.sample.collected" | "repository_import" | "repository_ruleset" | "repository_ruleset.created" | "repository_ruleset.deleted" | "repository_ruleset.edited" | "repository_vulnerability_alert" | "repository_vulnerability_alert.create" | "repository_vulnerability_alert.dismiss" | "repository_vulnerability_alert.reopen" | "repository_vulnerability_alert.resolve" | "secret_scanning_alert" | "secret_scanning_alert.assigned" | "secret_scanning_alert.created" | "secret_scanning_alert.publicly_leaked" | "secret_scanning_alert.reopened" | "secret_scanning_alert.resolved" | "secret_scanning_alert.unassigned" | "secret_scanning_alert.validated" | "secret_scanning_alert_location" | "secret_scanning_alert_location.created" | "secret_scanning_scan" | "secret_scanning_scan.completed" | "security_advisory" | "security_advisory.published" | "security_advisory.updated" | "security_advisory.withdrawn" | "security_and_analysis" | "sponsorship" | "sponsorship.cancelled" | "sponsorship.created" | "sponsorship.edited" | "sponsorship.pending_cancellation" | "sponsorship.pending_tier_change" | "sponsorship.tier_changed" | "star" | "star.created" | "star.deleted" | "status" | "sub_issues" | "sub_issues.parent_issue_added" | "sub_issues.parent_issue_removed" | "sub_issues.sub_issue_added" | "sub_issues.sub_issue_removed" | "team" | "team.added_to_repository" | "team.created" | "team.deleted" | "team.edited" | "team.removed_from_repository" | "team_add" | "watch" | "watch.started" | "workflow_dispatch" | "workflow_job" | "workflow_job.completed" | "workflow_job.in_progress" | "workflow_job.queued" | "workflow_job.waiting" | "workflow_run" | "workflow_run.completed" | "workflow_run.in_progress" | "workflow_run.requested")[] | undefined;
113
125
  skipBotEvents?: boolean | undefined;
114
- with: {
115
- [x: string]: unknown;
116
- };
117
126
  } | null;
118
127
  };
119
128
  } | null;
@@ -174,4 +183,4 @@ declare class ConfigurationHandler {
174
183
  private _decodeManifest;
175
184
  }
176
185
 
177
- export { CONFIG_DEV_FULL_PATH, CONFIG_ORG_REPO, CONFIG_PROD_FULL_PATH, ConfigurationHandler, type LoggerInterface, isGithubPlugin };
186
+ export { CONFIG_DEV_FULL_PATH, CONFIG_ORG_REPO, CONFIG_PROD_FULL_PATH, ConfigurationHandler, type ConfigurationRefOptions, type LoggerInterface, isGithubPlugin };
@@ -21,7 +21,7 @@ type GithubPlugin = {
21
21
  ref?: string;
22
22
  };
23
23
  declare const pluginSettingsSchema: _sinclair_typebox.TUnion<[_sinclair_typebox.TNull, _sinclair_typebox.TObject<{
24
- with: _sinclair_typebox.TRecord<_sinclair_typebox.TString, _sinclair_typebox.TUnknown>;
24
+ with: _sinclair_typebox.TOptional<_sinclair_typebox.TRecord<_sinclair_typebox.TString, _sinclair_typebox.TUnknown>>;
25
25
  runsOn: _sinclair_typebox.TOptional<_sinclair_typebox.TArray<_sinclair_typebox.TUnion<[TLiteral<"branch_protection_configuration">, TLiteral<"branch_protection_configuration.disabled">, TLiteral<"branch_protection_configuration.enabled">, TLiteral<"branch_protection_rule">, TLiteral<"branch_protection_rule.created">, TLiteral<"branch_protection_rule.deleted">, TLiteral<"branch_protection_rule.edited">, TLiteral<"check_run">, TLiteral<"check_run.completed">, TLiteral<"check_run.created">, TLiteral<"check_run.requested_action">, TLiteral<"check_run.rerequested">, TLiteral<"check_suite">, TLiteral<"check_suite.completed">, TLiteral<"check_suite.requested">, TLiteral<"check_suite.rerequested">, TLiteral<"code_scanning_alert">, TLiteral<"code_scanning_alert.appeared_in_branch">, TLiteral<"code_scanning_alert.closed_by_user">, TLiteral<"code_scanning_alert.created">, TLiteral<"code_scanning_alert.fixed">, TLiteral<"code_scanning_alert.reopened">, TLiteral<"code_scanning_alert.reopened_by_user">, TLiteral<"commit_comment">, TLiteral<"commit_comment.created">, TLiteral<"create">, TLiteral<"custom_property">, TLiteral<"custom_property.created">, TLiteral<"custom_property.deleted">, TLiteral<"custom_property.promote_to_enterprise">, TLiteral<"custom_property.updated">, TLiteral<"custom_property_values">, TLiteral<"custom_property_values.updated">, TLiteral<"delete">, TLiteral<"dependabot_alert">, TLiteral<"dependabot_alert.auto_dismissed">, TLiteral<"dependabot_alert.auto_reopened">, TLiteral<"dependabot_alert.created">, TLiteral<"dependabot_alert.dismissed">, TLiteral<"dependabot_alert.fixed">, TLiteral<"dependabot_alert.reintroduced">, TLiteral<"dependabot_alert.reopened">, TLiteral<"deploy_key">, TLiteral<"deploy_key.created">, TLiteral<"deploy_key.deleted">, TLiteral<"deployment">, TLiteral<"deployment.created">, TLiteral<"deployment_protection_rule">, TLiteral<"deployment_protection_rule.requested">, TLiteral<"deployment_review">, TLiteral<"deployment_review.approved">, TLiteral<"deployment_review.rejected">, TLiteral<"deployment_review.requested">, TLiteral<"deployment_status">, TLiteral<"deployment_status.created">, TLiteral<"discussion">, TLiteral<"discussion.answered">, TLiteral<"discussion.category_changed">, TLiteral<"discussion.closed">, TLiteral<"discussion.created">, TLiteral<"discussion.deleted">, TLiteral<"discussion.edited">, TLiteral<"discussion.labeled">, TLiteral<"discussion.locked">, TLiteral<"discussion.pinned">, TLiteral<"discussion.reopened">, TLiteral<"discussion.transferred">, TLiteral<"discussion.unanswered">, TLiteral<"discussion.unlabeled">, TLiteral<"discussion.unlocked">, TLiteral<"discussion.unpinned">, TLiteral<"discussion_comment">, TLiteral<"discussion_comment.created">, TLiteral<"discussion_comment.deleted">, TLiteral<"discussion_comment.edited">, TLiteral<"fork">, TLiteral<"github_app_authorization">, TLiteral<"github_app_authorization.revoked">, TLiteral<"gollum">, TLiteral<"installation">, TLiteral<"installation.created">, TLiteral<"installation.deleted">, TLiteral<"installation.new_permissions_accepted">, TLiteral<"installation.suspend">, TLiteral<"installation.unsuspend">, TLiteral<"installation_repositories">, TLiteral<"installation_repositories.added">, TLiteral<"installation_repositories.removed">, TLiteral<"installation_target">, TLiteral<"installation_target.renamed">, TLiteral<"issue_comment">, TLiteral<"issue_comment.created">, TLiteral<"issue_comment.deleted">, TLiteral<"issue_comment.edited">, TLiteral<"issue_dependencies">, TLiteral<"issue_dependencies.blocked_by_added">, TLiteral<"issue_dependencies.blocked_by_removed">, TLiteral<"issue_dependencies.blocking_added">, TLiteral<"issue_dependencies.blocking_removed">, TLiteral<"issues">, TLiteral<"issues.assigned">, TLiteral<"issues.closed">, TLiteral<"issues.deleted">, TLiteral<"issues.demilestoned">, TLiteral<"issues.edited">, TLiteral<"issues.labeled">, TLiteral<"issues.locked">, TLiteral<"issues.milestoned">, TLiteral<"issues.opened">, TLiteral<"issues.pinned">, TLiteral<"issues.reopened">, TLiteral<"issues.transferred">, TLiteral<"issues.typed">, TLiteral<"issues.unassigned">, TLiteral<"issues.unlabeled">, TLiteral<"issues.unlocked">, TLiteral<"issues.unpinned">, TLiteral<"issues.untyped">, TLiteral<"label">, TLiteral<"label.created">, TLiteral<"label.deleted">, TLiteral<"label.edited">, TLiteral<"marketplace_purchase">, TLiteral<"marketplace_purchase.cancelled">, TLiteral<"marketplace_purchase.changed">, TLiteral<"marketplace_purchase.pending_change">, TLiteral<"marketplace_purchase.pending_change_cancelled">, TLiteral<"marketplace_purchase.purchased">, TLiteral<"member">, TLiteral<"member.added">, TLiteral<"member.edited">, TLiteral<"member.removed">, TLiteral<"membership">, TLiteral<"membership.added">, TLiteral<"membership.removed">, TLiteral<"merge_group">, TLiteral<"merge_group.checks_requested">, TLiteral<"merge_group.destroyed">, TLiteral<"meta">, TLiteral<"meta.deleted">, TLiteral<"milestone">, TLiteral<"milestone.closed">, TLiteral<"milestone.created">, TLiteral<"milestone.deleted">, TLiteral<"milestone.edited">, TLiteral<"milestone.opened">, TLiteral<"org_block">, TLiteral<"org_block.blocked">, TLiteral<"org_block.unblocked">, TLiteral<"organization">, TLiteral<"organization.deleted">, TLiteral<"organization.member_added">, TLiteral<"organization.member_invited">, TLiteral<"organization.member_removed">, TLiteral<"organization.renamed">, TLiteral<"package">, TLiteral<"package.published">, TLiteral<"package.updated">, TLiteral<"page_build">, TLiteral<"personal_access_token_request">, TLiteral<"personal_access_token_request.approved">, TLiteral<"personal_access_token_request.cancelled">, TLiteral<"personal_access_token_request.created">, TLiteral<"personal_access_token_request.denied">, TLiteral<"ping">, TLiteral<"project">, TLiteral<"project.closed">, TLiteral<"project.created">, TLiteral<"project.deleted">, TLiteral<"project.edited">, TLiteral<"project.reopened">, TLiteral<"project_card">, TLiteral<"project_card.converted">, TLiteral<"project_card.created">, TLiteral<"project_card.deleted">, TLiteral<"project_card.edited">, TLiteral<"project_card.moved">, TLiteral<"project_column">, TLiteral<"project_column.created">, TLiteral<"project_column.deleted">, TLiteral<"project_column.edited">, TLiteral<"project_column.moved">, TLiteral<"projects_v2">, TLiteral<"projects_v2.closed">, TLiteral<"projects_v2.created">, TLiteral<"projects_v2.deleted">, TLiteral<"projects_v2.edited">, TLiteral<"projects_v2.reopened">, TLiteral<"projects_v2_item">, TLiteral<"projects_v2_item.archived">, TLiteral<"projects_v2_item.converted">, TLiteral<"projects_v2_item.created">, TLiteral<"projects_v2_item.deleted">, TLiteral<"projects_v2_item.edited">, TLiteral<"projects_v2_item.reordered">, TLiteral<"projects_v2_item.restored">, TLiteral<"projects_v2_status_update">, TLiteral<"projects_v2_status_update.created">, TLiteral<"projects_v2_status_update.deleted">, TLiteral<"projects_v2_status_update.edited">, TLiteral<"public">, TLiteral<"pull_request">, TLiteral<"pull_request.assigned">, TLiteral<"pull_request.auto_merge_disabled">, TLiteral<"pull_request.auto_merge_enabled">, TLiteral<"pull_request.closed">, TLiteral<"pull_request.converted_to_draft">, TLiteral<"pull_request.demilestoned">, TLiteral<"pull_request.dequeued">, TLiteral<"pull_request.edited">, TLiteral<"pull_request.enqueued">, TLiteral<"pull_request.labeled">, TLiteral<"pull_request.locked">, TLiteral<"pull_request.milestoned">, TLiteral<"pull_request.opened">, TLiteral<"pull_request.ready_for_review">, TLiteral<"pull_request.reopened">, TLiteral<"pull_request.review_request_removed">, TLiteral<"pull_request.review_requested">, TLiteral<"pull_request.synchronize">, TLiteral<"pull_request.unassigned">, TLiteral<"pull_request.unlabeled">, TLiteral<"pull_request.unlocked">, TLiteral<"pull_request_review">, TLiteral<"pull_request_review.dismissed">, TLiteral<"pull_request_review.edited">, TLiteral<"pull_request_review.submitted">, TLiteral<"pull_request_review_comment">, TLiteral<"pull_request_review_comment.created">, TLiteral<"pull_request_review_comment.deleted">, TLiteral<"pull_request_review_comment.edited">, TLiteral<"pull_request_review_thread">, TLiteral<"pull_request_review_thread.resolved">, TLiteral<"pull_request_review_thread.unresolved">, TLiteral<"push">, TLiteral<"registry_package">, TLiteral<"registry_package.published">, TLiteral<"registry_package.updated">, TLiteral<"release">, TLiteral<"release.created">, TLiteral<"release.deleted">, TLiteral<"release.edited">, TLiteral<"release.prereleased">, TLiteral<"release.published">, TLiteral<"release.released">, TLiteral<"release.unpublished">, TLiteral<"repository">, TLiteral<"repository.archived">, TLiteral<"repository.created">, TLiteral<"repository.deleted">, TLiteral<"repository.edited">, TLiteral<"repository.privatized">, TLiteral<"repository.publicized">, TLiteral<"repository.renamed">, TLiteral<"repository.transferred">, TLiteral<"repository.unarchived">, TLiteral<"repository_advisory">, TLiteral<"repository_advisory.published">, TLiteral<"repository_advisory.reported">, TLiteral<"repository_dispatch">, TLiteral<"repository_dispatch.sample.collected">, TLiteral<"repository_import">, TLiteral<"repository_ruleset">, TLiteral<"repository_ruleset.created">, TLiteral<"repository_ruleset.deleted">, TLiteral<"repository_ruleset.edited">, TLiteral<"repository_vulnerability_alert">, TLiteral<"repository_vulnerability_alert.create">, TLiteral<"repository_vulnerability_alert.dismiss">, TLiteral<"repository_vulnerability_alert.reopen">, TLiteral<"repository_vulnerability_alert.resolve">, TLiteral<"secret_scanning_alert">, TLiteral<"secret_scanning_alert.assigned">, TLiteral<"secret_scanning_alert.created">, TLiteral<"secret_scanning_alert.publicly_leaked">, TLiteral<"secret_scanning_alert.reopened">, TLiteral<"secret_scanning_alert.resolved">, TLiteral<"secret_scanning_alert.unassigned">, TLiteral<"secret_scanning_alert.validated">, TLiteral<"secret_scanning_alert_location">, TLiteral<"secret_scanning_alert_location.created">, TLiteral<"secret_scanning_scan">, TLiteral<"secret_scanning_scan.completed">, TLiteral<"security_advisory">, TLiteral<"security_advisory.published">, TLiteral<"security_advisory.updated">, TLiteral<"security_advisory.withdrawn">, TLiteral<"security_and_analysis">, TLiteral<"sponsorship">, TLiteral<"sponsorship.cancelled">, TLiteral<"sponsorship.created">, TLiteral<"sponsorship.edited">, TLiteral<"sponsorship.pending_cancellation">, TLiteral<"sponsorship.pending_tier_change">, TLiteral<"sponsorship.tier_changed">, TLiteral<"star">, TLiteral<"star.created">, TLiteral<"star.deleted">, TLiteral<"status">, TLiteral<"sub_issues">, TLiteral<"sub_issues.parent_issue_added">, TLiteral<"sub_issues.parent_issue_removed">, TLiteral<"sub_issues.sub_issue_added">, TLiteral<"sub_issues.sub_issue_removed">, TLiteral<"team">, TLiteral<"team.added_to_repository">, TLiteral<"team.created">, TLiteral<"team.deleted">, TLiteral<"team.edited">, TLiteral<"team.removed_from_repository">, TLiteral<"team_add">, TLiteral<"watch">, TLiteral<"watch.started">, TLiteral<"workflow_dispatch">, TLiteral<"workflow_job">, TLiteral<"workflow_job.completed">, TLiteral<"workflow_job.in_progress">, TLiteral<"workflow_job.queued">, TLiteral<"workflow_job.waiting">, TLiteral<"workflow_run">, TLiteral<"workflow_run.completed">, TLiteral<"workflow_run.in_progress">, TLiteral<"workflow_run.requested">]>>>;
26
26
  skipBotEvents: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
27
27
  }>]>;
@@ -29,7 +29,7 @@ type PluginSettings = StaticDecode<typeof pluginSettingsSchema>;
29
29
  declare const configSchema: _sinclair_typebox.TObject<{
30
30
  imports: _sinclair_typebox.TOptional<_sinclair_typebox.TArray<_sinclair_typebox.TString>>;
31
31
  plugins: _sinclair_typebox.TRecord<_sinclair_typebox.TString, _sinclair_typebox.TUnion<[_sinclair_typebox.TNull, _sinclair_typebox.TObject<{
32
- with: _sinclair_typebox.TRecord<_sinclair_typebox.TString, _sinclair_typebox.TUnknown>;
32
+ with: _sinclair_typebox.TOptional<_sinclair_typebox.TRecord<_sinclair_typebox.TString, _sinclair_typebox.TUnknown>>;
33
33
  runsOn: _sinclair_typebox.TOptional<_sinclair_typebox.TArray<_sinclair_typebox.TUnion<[TLiteral<"branch_protection_configuration">, TLiteral<"branch_protection_configuration.disabled">, TLiteral<"branch_protection_configuration.enabled">, TLiteral<"branch_protection_rule">, TLiteral<"branch_protection_rule.created">, TLiteral<"branch_protection_rule.deleted">, TLiteral<"branch_protection_rule.edited">, TLiteral<"check_run">, TLiteral<"check_run.completed">, TLiteral<"check_run.created">, TLiteral<"check_run.requested_action">, TLiteral<"check_run.rerequested">, TLiteral<"check_suite">, TLiteral<"check_suite.completed">, TLiteral<"check_suite.requested">, TLiteral<"check_suite.rerequested">, TLiteral<"code_scanning_alert">, TLiteral<"code_scanning_alert.appeared_in_branch">, TLiteral<"code_scanning_alert.closed_by_user">, TLiteral<"code_scanning_alert.created">, TLiteral<"code_scanning_alert.fixed">, TLiteral<"code_scanning_alert.reopened">, TLiteral<"code_scanning_alert.reopened_by_user">, TLiteral<"commit_comment">, TLiteral<"commit_comment.created">, TLiteral<"create">, TLiteral<"custom_property">, TLiteral<"custom_property.created">, TLiteral<"custom_property.deleted">, TLiteral<"custom_property.promote_to_enterprise">, TLiteral<"custom_property.updated">, TLiteral<"custom_property_values">, TLiteral<"custom_property_values.updated">, TLiteral<"delete">, TLiteral<"dependabot_alert">, TLiteral<"dependabot_alert.auto_dismissed">, TLiteral<"dependabot_alert.auto_reopened">, TLiteral<"dependabot_alert.created">, TLiteral<"dependabot_alert.dismissed">, TLiteral<"dependabot_alert.fixed">, TLiteral<"dependabot_alert.reintroduced">, TLiteral<"dependabot_alert.reopened">, TLiteral<"deploy_key">, TLiteral<"deploy_key.created">, TLiteral<"deploy_key.deleted">, TLiteral<"deployment">, TLiteral<"deployment.created">, TLiteral<"deployment_protection_rule">, TLiteral<"deployment_protection_rule.requested">, TLiteral<"deployment_review">, TLiteral<"deployment_review.approved">, TLiteral<"deployment_review.rejected">, TLiteral<"deployment_review.requested">, TLiteral<"deployment_status">, TLiteral<"deployment_status.created">, TLiteral<"discussion">, TLiteral<"discussion.answered">, TLiteral<"discussion.category_changed">, TLiteral<"discussion.closed">, TLiteral<"discussion.created">, TLiteral<"discussion.deleted">, TLiteral<"discussion.edited">, TLiteral<"discussion.labeled">, TLiteral<"discussion.locked">, TLiteral<"discussion.pinned">, TLiteral<"discussion.reopened">, TLiteral<"discussion.transferred">, TLiteral<"discussion.unanswered">, TLiteral<"discussion.unlabeled">, TLiteral<"discussion.unlocked">, TLiteral<"discussion.unpinned">, TLiteral<"discussion_comment">, TLiteral<"discussion_comment.created">, TLiteral<"discussion_comment.deleted">, TLiteral<"discussion_comment.edited">, TLiteral<"fork">, TLiteral<"github_app_authorization">, TLiteral<"github_app_authorization.revoked">, TLiteral<"gollum">, TLiteral<"installation">, TLiteral<"installation.created">, TLiteral<"installation.deleted">, TLiteral<"installation.new_permissions_accepted">, TLiteral<"installation.suspend">, TLiteral<"installation.unsuspend">, TLiteral<"installation_repositories">, TLiteral<"installation_repositories.added">, TLiteral<"installation_repositories.removed">, TLiteral<"installation_target">, TLiteral<"installation_target.renamed">, TLiteral<"issue_comment">, TLiteral<"issue_comment.created">, TLiteral<"issue_comment.deleted">, TLiteral<"issue_comment.edited">, TLiteral<"issue_dependencies">, TLiteral<"issue_dependencies.blocked_by_added">, TLiteral<"issue_dependencies.blocked_by_removed">, TLiteral<"issue_dependencies.blocking_added">, TLiteral<"issue_dependencies.blocking_removed">, TLiteral<"issues">, TLiteral<"issues.assigned">, TLiteral<"issues.closed">, TLiteral<"issues.deleted">, TLiteral<"issues.demilestoned">, TLiteral<"issues.edited">, TLiteral<"issues.labeled">, TLiteral<"issues.locked">, TLiteral<"issues.milestoned">, TLiteral<"issues.opened">, TLiteral<"issues.pinned">, TLiteral<"issues.reopened">, TLiteral<"issues.transferred">, TLiteral<"issues.typed">, TLiteral<"issues.unassigned">, TLiteral<"issues.unlabeled">, TLiteral<"issues.unlocked">, TLiteral<"issues.unpinned">, TLiteral<"issues.untyped">, TLiteral<"label">, TLiteral<"label.created">, TLiteral<"label.deleted">, TLiteral<"label.edited">, TLiteral<"marketplace_purchase">, TLiteral<"marketplace_purchase.cancelled">, TLiteral<"marketplace_purchase.changed">, TLiteral<"marketplace_purchase.pending_change">, TLiteral<"marketplace_purchase.pending_change_cancelled">, TLiteral<"marketplace_purchase.purchased">, TLiteral<"member">, TLiteral<"member.added">, TLiteral<"member.edited">, TLiteral<"member.removed">, TLiteral<"membership">, TLiteral<"membership.added">, TLiteral<"membership.removed">, TLiteral<"merge_group">, TLiteral<"merge_group.checks_requested">, TLiteral<"merge_group.destroyed">, TLiteral<"meta">, TLiteral<"meta.deleted">, TLiteral<"milestone">, TLiteral<"milestone.closed">, TLiteral<"milestone.created">, TLiteral<"milestone.deleted">, TLiteral<"milestone.edited">, TLiteral<"milestone.opened">, TLiteral<"org_block">, TLiteral<"org_block.blocked">, TLiteral<"org_block.unblocked">, TLiteral<"organization">, TLiteral<"organization.deleted">, TLiteral<"organization.member_added">, TLiteral<"organization.member_invited">, TLiteral<"organization.member_removed">, TLiteral<"organization.renamed">, TLiteral<"package">, TLiteral<"package.published">, TLiteral<"package.updated">, TLiteral<"page_build">, TLiteral<"personal_access_token_request">, TLiteral<"personal_access_token_request.approved">, TLiteral<"personal_access_token_request.cancelled">, TLiteral<"personal_access_token_request.created">, TLiteral<"personal_access_token_request.denied">, TLiteral<"ping">, TLiteral<"project">, TLiteral<"project.closed">, TLiteral<"project.created">, TLiteral<"project.deleted">, TLiteral<"project.edited">, TLiteral<"project.reopened">, TLiteral<"project_card">, TLiteral<"project_card.converted">, TLiteral<"project_card.created">, TLiteral<"project_card.deleted">, TLiteral<"project_card.edited">, TLiteral<"project_card.moved">, TLiteral<"project_column">, TLiteral<"project_column.created">, TLiteral<"project_column.deleted">, TLiteral<"project_column.edited">, TLiteral<"project_column.moved">, TLiteral<"projects_v2">, TLiteral<"projects_v2.closed">, TLiteral<"projects_v2.created">, TLiteral<"projects_v2.deleted">, TLiteral<"projects_v2.edited">, TLiteral<"projects_v2.reopened">, TLiteral<"projects_v2_item">, TLiteral<"projects_v2_item.archived">, TLiteral<"projects_v2_item.converted">, TLiteral<"projects_v2_item.created">, TLiteral<"projects_v2_item.deleted">, TLiteral<"projects_v2_item.edited">, TLiteral<"projects_v2_item.reordered">, TLiteral<"projects_v2_item.restored">, TLiteral<"projects_v2_status_update">, TLiteral<"projects_v2_status_update.created">, TLiteral<"projects_v2_status_update.deleted">, TLiteral<"projects_v2_status_update.edited">, TLiteral<"public">, TLiteral<"pull_request">, TLiteral<"pull_request.assigned">, TLiteral<"pull_request.auto_merge_disabled">, TLiteral<"pull_request.auto_merge_enabled">, TLiteral<"pull_request.closed">, TLiteral<"pull_request.converted_to_draft">, TLiteral<"pull_request.demilestoned">, TLiteral<"pull_request.dequeued">, TLiteral<"pull_request.edited">, TLiteral<"pull_request.enqueued">, TLiteral<"pull_request.labeled">, TLiteral<"pull_request.locked">, TLiteral<"pull_request.milestoned">, TLiteral<"pull_request.opened">, TLiteral<"pull_request.ready_for_review">, TLiteral<"pull_request.reopened">, TLiteral<"pull_request.review_request_removed">, TLiteral<"pull_request.review_requested">, TLiteral<"pull_request.synchronize">, TLiteral<"pull_request.unassigned">, TLiteral<"pull_request.unlabeled">, TLiteral<"pull_request.unlocked">, TLiteral<"pull_request_review">, TLiteral<"pull_request_review.dismissed">, TLiteral<"pull_request_review.edited">, TLiteral<"pull_request_review.submitted">, TLiteral<"pull_request_review_comment">, TLiteral<"pull_request_review_comment.created">, TLiteral<"pull_request_review_comment.deleted">, TLiteral<"pull_request_review_comment.edited">, TLiteral<"pull_request_review_thread">, TLiteral<"pull_request_review_thread.resolved">, TLiteral<"pull_request_review_thread.unresolved">, TLiteral<"push">, TLiteral<"registry_package">, TLiteral<"registry_package.published">, TLiteral<"registry_package.updated">, TLiteral<"release">, TLiteral<"release.created">, TLiteral<"release.deleted">, TLiteral<"release.edited">, TLiteral<"release.prereleased">, TLiteral<"release.published">, TLiteral<"release.released">, TLiteral<"release.unpublished">, TLiteral<"repository">, TLiteral<"repository.archived">, TLiteral<"repository.created">, TLiteral<"repository.deleted">, TLiteral<"repository.edited">, TLiteral<"repository.privatized">, TLiteral<"repository.publicized">, TLiteral<"repository.renamed">, TLiteral<"repository.transferred">, TLiteral<"repository.unarchived">, TLiteral<"repository_advisory">, TLiteral<"repository_advisory.published">, TLiteral<"repository_advisory.reported">, TLiteral<"repository_dispatch">, TLiteral<"repository_dispatch.sample.collected">, TLiteral<"repository_import">, TLiteral<"repository_ruleset">, TLiteral<"repository_ruleset.created">, TLiteral<"repository_ruleset.deleted">, TLiteral<"repository_ruleset.edited">, TLiteral<"repository_vulnerability_alert">, TLiteral<"repository_vulnerability_alert.create">, TLiteral<"repository_vulnerability_alert.dismiss">, TLiteral<"repository_vulnerability_alert.reopen">, TLiteral<"repository_vulnerability_alert.resolve">, TLiteral<"secret_scanning_alert">, TLiteral<"secret_scanning_alert.assigned">, TLiteral<"secret_scanning_alert.created">, TLiteral<"secret_scanning_alert.publicly_leaked">, TLiteral<"secret_scanning_alert.reopened">, TLiteral<"secret_scanning_alert.resolved">, TLiteral<"secret_scanning_alert.unassigned">, TLiteral<"secret_scanning_alert.validated">, TLiteral<"secret_scanning_alert_location">, TLiteral<"secret_scanning_alert_location.created">, TLiteral<"secret_scanning_scan">, TLiteral<"secret_scanning_scan.completed">, TLiteral<"security_advisory">, TLiteral<"security_advisory.published">, TLiteral<"security_advisory.updated">, TLiteral<"security_advisory.withdrawn">, TLiteral<"security_and_analysis">, TLiteral<"sponsorship">, TLiteral<"sponsorship.cancelled">, TLiteral<"sponsorship.created">, TLiteral<"sponsorship.edited">, TLiteral<"sponsorship.pending_cancellation">, TLiteral<"sponsorship.pending_tier_change">, TLiteral<"sponsorship.tier_changed">, TLiteral<"star">, TLiteral<"star.created">, TLiteral<"star.deleted">, TLiteral<"status">, TLiteral<"sub_issues">, TLiteral<"sub_issues.parent_issue_added">, TLiteral<"sub_issues.parent_issue_removed">, TLiteral<"sub_issues.sub_issue_added">, TLiteral<"sub_issues.sub_issue_removed">, TLiteral<"team">, TLiteral<"team.added_to_repository">, TLiteral<"team.created">, TLiteral<"team.deleted">, TLiteral<"team.edited">, TLiteral<"team.removed_from_repository">, TLiteral<"team_add">, TLiteral<"watch">, TLiteral<"watch.started">, TLiteral<"workflow_dispatch">, TLiteral<"workflow_job">, TLiteral<"workflow_job.completed">, TLiteral<"workflow_job.in_progress">, TLiteral<"workflow_job.queued">, TLiteral<"workflow_job.waiting">, TLiteral<"workflow_run">, TLiteral<"workflow_run.completed">, TLiteral<"workflow_run.in_progress">, TLiteral<"workflow_run.requested">]>>>;
34
34
  skipBotEvents: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
35
35
  }>]>>;
@@ -43,6 +43,10 @@ type Location = {
43
43
  owner: string;
44
44
  repo: string;
45
45
  };
46
+ type ConfigurationRefOptions = {
47
+ orgRef?: string;
48
+ repoRef?: string;
49
+ };
46
50
  type OctokitFactory = (location: Location) => Promise<Context["octokit"] | null>;
47
51
  interface LoggerInterface {
48
52
  debug(message: string, metadata?: Record<string, unknown>): void;
@@ -71,23 +75,25 @@ declare class ConfigurationHandler {
71
75
  * Retrieves the configuration for the current plugin based on its manifest.
72
76
  * @param manifest - The plugin manifest containing the `short_name` identifier
73
77
  * @param location - Optional repository location (`owner/repo`)
78
+ * @param options - Optional refs for organization/repository configuration lookups
74
79
  * @returns The plugin's configuration or null if not found
75
80
  **/
76
- getSelfConfiguration<T extends NonNullable<PluginSettings>["with"]>(manifest: Pick<Manifest, "short_name" | "homepage_url">, location?: Location): Promise<T | null>;
81
+ getSelfConfiguration<T extends NonNullable<PluginSettings>["with"]>(manifest: Pick<Manifest, "short_name" | "homepage_url">, location?: Location, options?: ConfigurationRefOptions): Promise<T | null>;
77
82
  /**
78
83
  * Retrieves and merges configuration from organization and repository levels.
79
84
  * @param location - Optional repository location (`owner` and `repo`). If not provided, returns the default configuration.
85
+ * @param options - Optional refs for organization/repository configuration lookups
80
86
  * @returns The merged plugin configuration with resolved plugin settings.
81
87
  */
82
- getConfiguration(location?: Location): Promise<{
88
+ getConfiguration(location?: Location, options?: ConfigurationRefOptions): Promise<{
83
89
  imports?: string[] | undefined;
84
90
  plugins: {
85
91
  [x: string]: {
92
+ with?: {
93
+ [x: string]: unknown;
94
+ } | undefined;
86
95
  runsOn?: ("branch_protection_configuration" | "branch_protection_configuration.disabled" | "branch_protection_configuration.enabled" | "branch_protection_rule" | "branch_protection_rule.created" | "branch_protection_rule.deleted" | "branch_protection_rule.edited" | "check_run" | "check_run.completed" | "check_run.created" | "check_run.requested_action" | "check_run.rerequested" | "check_suite" | "check_suite.completed" | "check_suite.requested" | "check_suite.rerequested" | "code_scanning_alert" | "code_scanning_alert.appeared_in_branch" | "code_scanning_alert.closed_by_user" | "code_scanning_alert.created" | "code_scanning_alert.fixed" | "code_scanning_alert.reopened" | "code_scanning_alert.reopened_by_user" | "commit_comment" | "commit_comment.created" | "create" | "custom_property" | "custom_property.created" | "custom_property.deleted" | "custom_property.promote_to_enterprise" | "custom_property.updated" | "custom_property_values" | "custom_property_values.updated" | "delete" | "dependabot_alert" | "dependabot_alert.auto_dismissed" | "dependabot_alert.auto_reopened" | "dependabot_alert.created" | "dependabot_alert.dismissed" | "dependabot_alert.fixed" | "dependabot_alert.reintroduced" | "dependabot_alert.reopened" | "deploy_key" | "deploy_key.created" | "deploy_key.deleted" | "deployment" | "deployment.created" | "deployment_protection_rule" | "deployment_protection_rule.requested" | "deployment_review" | "deployment_review.approved" | "deployment_review.rejected" | "deployment_review.requested" | "deployment_status" | "deployment_status.created" | "discussion" | "discussion.answered" | "discussion.category_changed" | "discussion.closed" | "discussion.created" | "discussion.deleted" | "discussion.edited" | "discussion.labeled" | "discussion.locked" | "discussion.pinned" | "discussion.reopened" | "discussion.transferred" | "discussion.unanswered" | "discussion.unlabeled" | "discussion.unlocked" | "discussion.unpinned" | "discussion_comment" | "discussion_comment.created" | "discussion_comment.deleted" | "discussion_comment.edited" | "fork" | "github_app_authorization" | "github_app_authorization.revoked" | "gollum" | "installation" | "installation.created" | "installation.deleted" | "installation.new_permissions_accepted" | "installation.suspend" | "installation.unsuspend" | "installation_repositories" | "installation_repositories.added" | "installation_repositories.removed" | "installation_target" | "installation_target.renamed" | "issue_comment" | "issue_comment.created" | "issue_comment.deleted" | "issue_comment.edited" | "issue_dependencies" | "issue_dependencies.blocked_by_added" | "issue_dependencies.blocked_by_removed" | "issue_dependencies.blocking_added" | "issue_dependencies.blocking_removed" | "issues" | "issues.assigned" | "issues.closed" | "issues.deleted" | "issues.demilestoned" | "issues.edited" | "issues.labeled" | "issues.locked" | "issues.milestoned" | "issues.opened" | "issues.pinned" | "issues.reopened" | "issues.transferred" | "issues.typed" | "issues.unassigned" | "issues.unlabeled" | "issues.unlocked" | "issues.unpinned" | "issues.untyped" | "label" | "label.created" | "label.deleted" | "label.edited" | "marketplace_purchase" | "marketplace_purchase.cancelled" | "marketplace_purchase.changed" | "marketplace_purchase.pending_change" | "marketplace_purchase.pending_change_cancelled" | "marketplace_purchase.purchased" | "member" | "member.added" | "member.edited" | "member.removed" | "membership" | "membership.added" | "membership.removed" | "merge_group" | "merge_group.checks_requested" | "merge_group.destroyed" | "meta" | "meta.deleted" | "milestone" | "milestone.closed" | "milestone.created" | "milestone.deleted" | "milestone.edited" | "milestone.opened" | "org_block" | "org_block.blocked" | "org_block.unblocked" | "organization" | "organization.deleted" | "organization.member_added" | "organization.member_invited" | "organization.member_removed" | "organization.renamed" | "package" | "package.published" | "package.updated" | "page_build" | "personal_access_token_request" | "personal_access_token_request.approved" | "personal_access_token_request.cancelled" | "personal_access_token_request.created" | "personal_access_token_request.denied" | "ping" | "project" | "project.closed" | "project.created" | "project.deleted" | "project.edited" | "project.reopened" | "project_card" | "project_card.converted" | "project_card.created" | "project_card.deleted" | "project_card.edited" | "project_card.moved" | "project_column" | "project_column.created" | "project_column.deleted" | "project_column.edited" | "project_column.moved" | "projects_v2" | "projects_v2.closed" | "projects_v2.created" | "projects_v2.deleted" | "projects_v2.edited" | "projects_v2.reopened" | "projects_v2_item" | "projects_v2_item.archived" | "projects_v2_item.converted" | "projects_v2_item.created" | "projects_v2_item.deleted" | "projects_v2_item.edited" | "projects_v2_item.reordered" | "projects_v2_item.restored" | "projects_v2_status_update" | "projects_v2_status_update.created" | "projects_v2_status_update.deleted" | "projects_v2_status_update.edited" | "public" | "pull_request" | "pull_request.assigned" | "pull_request.auto_merge_disabled" | "pull_request.auto_merge_enabled" | "pull_request.closed" | "pull_request.converted_to_draft" | "pull_request.demilestoned" | "pull_request.dequeued" | "pull_request.edited" | "pull_request.enqueued" | "pull_request.labeled" | "pull_request.locked" | "pull_request.milestoned" | "pull_request.opened" | "pull_request.ready_for_review" | "pull_request.reopened" | "pull_request.review_request_removed" | "pull_request.review_requested" | "pull_request.synchronize" | "pull_request.unassigned" | "pull_request.unlabeled" | "pull_request.unlocked" | "pull_request_review" | "pull_request_review.dismissed" | "pull_request_review.edited" | "pull_request_review.submitted" | "pull_request_review_comment" | "pull_request_review_comment.created" | "pull_request_review_comment.deleted" | "pull_request_review_comment.edited" | "pull_request_review_thread" | "pull_request_review_thread.resolved" | "pull_request_review_thread.unresolved" | "push" | "registry_package" | "registry_package.published" | "registry_package.updated" | "release" | "release.created" | "release.deleted" | "release.edited" | "release.prereleased" | "release.published" | "release.released" | "release.unpublished" | "repository" | "repository.archived" | "repository.created" | "repository.deleted" | "repository.edited" | "repository.privatized" | "repository.publicized" | "repository.renamed" | "repository.transferred" | "repository.unarchived" | "repository_advisory" | "repository_advisory.published" | "repository_advisory.reported" | "repository_dispatch" | "repository_dispatch.sample.collected" | "repository_import" | "repository_ruleset" | "repository_ruleset.created" | "repository_ruleset.deleted" | "repository_ruleset.edited" | "repository_vulnerability_alert" | "repository_vulnerability_alert.create" | "repository_vulnerability_alert.dismiss" | "repository_vulnerability_alert.reopen" | "repository_vulnerability_alert.resolve" | "secret_scanning_alert" | "secret_scanning_alert.assigned" | "secret_scanning_alert.created" | "secret_scanning_alert.publicly_leaked" | "secret_scanning_alert.reopened" | "secret_scanning_alert.resolved" | "secret_scanning_alert.unassigned" | "secret_scanning_alert.validated" | "secret_scanning_alert_location" | "secret_scanning_alert_location.created" | "secret_scanning_scan" | "secret_scanning_scan.completed" | "security_advisory" | "security_advisory.published" | "security_advisory.updated" | "security_advisory.withdrawn" | "security_and_analysis" | "sponsorship" | "sponsorship.cancelled" | "sponsorship.created" | "sponsorship.edited" | "sponsorship.pending_cancellation" | "sponsorship.pending_tier_change" | "sponsorship.tier_changed" | "star" | "star.created" | "star.deleted" | "status" | "sub_issues" | "sub_issues.parent_issue_added" | "sub_issues.parent_issue_removed" | "sub_issues.sub_issue_added" | "sub_issues.sub_issue_removed" | "team" | "team.added_to_repository" | "team.created" | "team.deleted" | "team.edited" | "team.removed_from_repository" | "team_add" | "watch" | "watch.started" | "workflow_dispatch" | "workflow_job" | "workflow_job.completed" | "workflow_job.in_progress" | "workflow_job.queued" | "workflow_job.waiting" | "workflow_run" | "workflow_run.completed" | "workflow_run.in_progress" | "workflow_run.requested")[] | undefined;
87
96
  skipBotEvents?: boolean | undefined;
88
- with: {
89
- [x: string]: unknown;
90
- };
91
97
  } | null;
92
98
  };
93
99
  }>;
@@ -99,8 +105,11 @@ declare class ConfigurationHandler {
99
105
  *
100
106
  * @param owner The repository owner
101
107
  * @param repository The repository name
108
+ * @param options - Optional ref (branch, tag, or commit SHA) for the configuration lookup
102
109
  */
103
- getConfigurationFromRepo(owner: string, repository: string): Promise<{
110
+ getConfigurationFromRepo(owner: string, repository: string, options?: {
111
+ ref?: string;
112
+ }): Promise<{
104
113
  config: null;
105
114
  errors: null;
106
115
  rawData: null;
@@ -109,11 +118,11 @@ declare class ConfigurationHandler {
109
118
  imports?: string[] | undefined;
110
119
  plugins: {
111
120
  [x: string]: {
121
+ with?: {
122
+ [x: string]: unknown;
123
+ } | undefined;
112
124
  runsOn?: ("branch_protection_configuration" | "branch_protection_configuration.disabled" | "branch_protection_configuration.enabled" | "branch_protection_rule" | "branch_protection_rule.created" | "branch_protection_rule.deleted" | "branch_protection_rule.edited" | "check_run" | "check_run.completed" | "check_run.created" | "check_run.requested_action" | "check_run.rerequested" | "check_suite" | "check_suite.completed" | "check_suite.requested" | "check_suite.rerequested" | "code_scanning_alert" | "code_scanning_alert.appeared_in_branch" | "code_scanning_alert.closed_by_user" | "code_scanning_alert.created" | "code_scanning_alert.fixed" | "code_scanning_alert.reopened" | "code_scanning_alert.reopened_by_user" | "commit_comment" | "commit_comment.created" | "create" | "custom_property" | "custom_property.created" | "custom_property.deleted" | "custom_property.promote_to_enterprise" | "custom_property.updated" | "custom_property_values" | "custom_property_values.updated" | "delete" | "dependabot_alert" | "dependabot_alert.auto_dismissed" | "dependabot_alert.auto_reopened" | "dependabot_alert.created" | "dependabot_alert.dismissed" | "dependabot_alert.fixed" | "dependabot_alert.reintroduced" | "dependabot_alert.reopened" | "deploy_key" | "deploy_key.created" | "deploy_key.deleted" | "deployment" | "deployment.created" | "deployment_protection_rule" | "deployment_protection_rule.requested" | "deployment_review" | "deployment_review.approved" | "deployment_review.rejected" | "deployment_review.requested" | "deployment_status" | "deployment_status.created" | "discussion" | "discussion.answered" | "discussion.category_changed" | "discussion.closed" | "discussion.created" | "discussion.deleted" | "discussion.edited" | "discussion.labeled" | "discussion.locked" | "discussion.pinned" | "discussion.reopened" | "discussion.transferred" | "discussion.unanswered" | "discussion.unlabeled" | "discussion.unlocked" | "discussion.unpinned" | "discussion_comment" | "discussion_comment.created" | "discussion_comment.deleted" | "discussion_comment.edited" | "fork" | "github_app_authorization" | "github_app_authorization.revoked" | "gollum" | "installation" | "installation.created" | "installation.deleted" | "installation.new_permissions_accepted" | "installation.suspend" | "installation.unsuspend" | "installation_repositories" | "installation_repositories.added" | "installation_repositories.removed" | "installation_target" | "installation_target.renamed" | "issue_comment" | "issue_comment.created" | "issue_comment.deleted" | "issue_comment.edited" | "issue_dependencies" | "issue_dependencies.blocked_by_added" | "issue_dependencies.blocked_by_removed" | "issue_dependencies.blocking_added" | "issue_dependencies.blocking_removed" | "issues" | "issues.assigned" | "issues.closed" | "issues.deleted" | "issues.demilestoned" | "issues.edited" | "issues.labeled" | "issues.locked" | "issues.milestoned" | "issues.opened" | "issues.pinned" | "issues.reopened" | "issues.transferred" | "issues.typed" | "issues.unassigned" | "issues.unlabeled" | "issues.unlocked" | "issues.unpinned" | "issues.untyped" | "label" | "label.created" | "label.deleted" | "label.edited" | "marketplace_purchase" | "marketplace_purchase.cancelled" | "marketplace_purchase.changed" | "marketplace_purchase.pending_change" | "marketplace_purchase.pending_change_cancelled" | "marketplace_purchase.purchased" | "member" | "member.added" | "member.edited" | "member.removed" | "membership" | "membership.added" | "membership.removed" | "merge_group" | "merge_group.checks_requested" | "merge_group.destroyed" | "meta" | "meta.deleted" | "milestone" | "milestone.closed" | "milestone.created" | "milestone.deleted" | "milestone.edited" | "milestone.opened" | "org_block" | "org_block.blocked" | "org_block.unblocked" | "organization" | "organization.deleted" | "organization.member_added" | "organization.member_invited" | "organization.member_removed" | "organization.renamed" | "package" | "package.published" | "package.updated" | "page_build" | "personal_access_token_request" | "personal_access_token_request.approved" | "personal_access_token_request.cancelled" | "personal_access_token_request.created" | "personal_access_token_request.denied" | "ping" | "project" | "project.closed" | "project.created" | "project.deleted" | "project.edited" | "project.reopened" | "project_card" | "project_card.converted" | "project_card.created" | "project_card.deleted" | "project_card.edited" | "project_card.moved" | "project_column" | "project_column.created" | "project_column.deleted" | "project_column.edited" | "project_column.moved" | "projects_v2" | "projects_v2.closed" | "projects_v2.created" | "projects_v2.deleted" | "projects_v2.edited" | "projects_v2.reopened" | "projects_v2_item" | "projects_v2_item.archived" | "projects_v2_item.converted" | "projects_v2_item.created" | "projects_v2_item.deleted" | "projects_v2_item.edited" | "projects_v2_item.reordered" | "projects_v2_item.restored" | "projects_v2_status_update" | "projects_v2_status_update.created" | "projects_v2_status_update.deleted" | "projects_v2_status_update.edited" | "public" | "pull_request" | "pull_request.assigned" | "pull_request.auto_merge_disabled" | "pull_request.auto_merge_enabled" | "pull_request.closed" | "pull_request.converted_to_draft" | "pull_request.demilestoned" | "pull_request.dequeued" | "pull_request.edited" | "pull_request.enqueued" | "pull_request.labeled" | "pull_request.locked" | "pull_request.milestoned" | "pull_request.opened" | "pull_request.ready_for_review" | "pull_request.reopened" | "pull_request.review_request_removed" | "pull_request.review_requested" | "pull_request.synchronize" | "pull_request.unassigned" | "pull_request.unlabeled" | "pull_request.unlocked" | "pull_request_review" | "pull_request_review.dismissed" | "pull_request_review.edited" | "pull_request_review.submitted" | "pull_request_review_comment" | "pull_request_review_comment.created" | "pull_request_review_comment.deleted" | "pull_request_review_comment.edited" | "pull_request_review_thread" | "pull_request_review_thread.resolved" | "pull_request_review_thread.unresolved" | "push" | "registry_package" | "registry_package.published" | "registry_package.updated" | "release" | "release.created" | "release.deleted" | "release.edited" | "release.prereleased" | "release.published" | "release.released" | "release.unpublished" | "repository" | "repository.archived" | "repository.created" | "repository.deleted" | "repository.edited" | "repository.privatized" | "repository.publicized" | "repository.renamed" | "repository.transferred" | "repository.unarchived" | "repository_advisory" | "repository_advisory.published" | "repository_advisory.reported" | "repository_dispatch" | "repository_dispatch.sample.collected" | "repository_import" | "repository_ruleset" | "repository_ruleset.created" | "repository_ruleset.deleted" | "repository_ruleset.edited" | "repository_vulnerability_alert" | "repository_vulnerability_alert.create" | "repository_vulnerability_alert.dismiss" | "repository_vulnerability_alert.reopen" | "repository_vulnerability_alert.resolve" | "secret_scanning_alert" | "secret_scanning_alert.assigned" | "secret_scanning_alert.created" | "secret_scanning_alert.publicly_leaked" | "secret_scanning_alert.reopened" | "secret_scanning_alert.resolved" | "secret_scanning_alert.unassigned" | "secret_scanning_alert.validated" | "secret_scanning_alert_location" | "secret_scanning_alert_location.created" | "secret_scanning_scan" | "secret_scanning_scan.completed" | "security_advisory" | "security_advisory.published" | "security_advisory.updated" | "security_advisory.withdrawn" | "security_and_analysis" | "sponsorship" | "sponsorship.cancelled" | "sponsorship.created" | "sponsorship.edited" | "sponsorship.pending_cancellation" | "sponsorship.pending_tier_change" | "sponsorship.tier_changed" | "star" | "star.created" | "star.deleted" | "status" | "sub_issues" | "sub_issues.parent_issue_added" | "sub_issues.parent_issue_removed" | "sub_issues.sub_issue_added" | "sub_issues.sub_issue_removed" | "team" | "team.added_to_repository" | "team.created" | "team.deleted" | "team.edited" | "team.removed_from_repository" | "team_add" | "watch" | "watch.started" | "workflow_dispatch" | "workflow_job" | "workflow_job.completed" | "workflow_job.in_progress" | "workflow_job.queued" | "workflow_job.waiting" | "workflow_run" | "workflow_run.completed" | "workflow_run.in_progress" | "workflow_run.requested")[] | undefined;
113
125
  skipBotEvents?: boolean | undefined;
114
- with: {
115
- [x: string]: unknown;
116
- };
117
126
  } | null;
118
127
  };
119
128
  } | null;
@@ -174,4 +183,4 @@ declare class ConfigurationHandler {
174
183
  private _decodeManifest;
175
184
  }
176
185
 
177
- export { CONFIG_DEV_FULL_PATH, CONFIG_ORG_REPO, CONFIG_PROD_FULL_PATH, ConfigurationHandler, type LoggerInterface, isGithubPlugin };
186
+ export { CONFIG_DEV_FULL_PATH, CONFIG_ORG_REPO, CONFIG_PROD_FULL_PATH, ConfigurationHandler, type ConfigurationRefOptions, type LoggerInterface, isGithubPlugin };
@@ -72,7 +72,7 @@ var pluginSettingsSchema = import_typebox.Type.Union(
72
72
  import_typebox.Type.Null(),
73
73
  import_typebox.Type.Object(
74
74
  {
75
- with: import_typebox.Type.Record(import_typebox.Type.String(), import_typebox.Type.Unknown(), { default: {} }),
75
+ with: import_typebox.Type.Optional(import_typebox.Type.Record(import_typebox.Type.String(), import_typebox.Type.Unknown(), { default: {} })),
76
76
  runsOn: import_typebox.Type.Optional(runsOnSchema),
77
77
  skipBotEvents: import_typebox.Type.Optional(import_typebox.Type.Boolean())
78
78
  },
@@ -268,15 +268,17 @@ var ConfigurationHandler = class {
268
268
  * Retrieves the configuration for the current plugin based on its manifest.
269
269
  * @param manifest - The plugin manifest containing the `short_name` identifier
270
270
  * @param location - Optional repository location (`owner/repo`)
271
+ * @param options - Optional refs for organization/repository configuration lookups
271
272
  * @returns The plugin's configuration or null if not found
272
273
  **/
273
- async getSelfConfiguration(manifest, location) {
274
- const cfg = await this.getConfiguration(location);
274
+ async getSelfConfiguration(manifest, location, options) {
275
+ const cfg = await this.getConfiguration(location, options);
275
276
  let selfConfig;
276
277
  if (manifest.homepage_url) {
277
278
  const name = manifest.homepage_url;
278
279
  selfConfig = Object.keys(cfg.plugins).find((key) => normalizeBaseUrl(key) === normalizeBaseUrl(name));
279
- } else {
280
+ }
281
+ if (!selfConfig) {
280
282
  const name = manifest.short_name.split("@")[0];
281
283
  selfConfig = Object.keys(cfg.plugins).find((key) => new RegExp(`^${name}(?:$|@.+)`).exec(key.replace(/:[^@]+/, "")));
282
284
  }
@@ -285,30 +287,31 @@ var ConfigurationHandler = class {
285
287
  /**
286
288
  * Retrieves and merges configuration from organization and repository levels.
287
289
  * @param location - Optional repository location (`owner` and `repo`). If not provided, returns the default configuration.
290
+ * @param options - Optional refs for organization/repository configuration lookups
288
291
  * @returns The merged plugin configuration with resolved plugin settings.
289
292
  */
290
- async getConfiguration(location) {
293
+ async getConfiguration(location, options) {
291
294
  const defaultConfiguration = stripImports(import_value.Value.Decode(configSchema, import_value.Value.Default(configSchema, {})));
292
295
  if (!location) {
293
296
  this._logger.info("No location was provided, using the default configuration");
294
297
  return defaultConfiguration;
295
298
  }
296
- const mergedConfiguration = await this._getMergedConfiguration(location, defaultConfiguration);
299
+ const mergedConfiguration = await this._getMergedConfiguration(location, defaultConfiguration, options);
297
300
  const resolvedPlugins = await this._resolvePlugins(mergedConfiguration, location);
298
301
  return {
299
302
  ...mergedConfiguration,
300
303
  plugins: resolvedPlugins
301
304
  };
302
305
  }
303
- async _getMergedConfiguration(location, defaultConfiguration) {
306
+ async _getMergedConfiguration(location, defaultConfiguration, options) {
304
307
  const { owner, repo } = location;
305
308
  let mergedConfiguration = defaultConfiguration;
306
309
  this._logger.info("Fetching configurations from the organization and repository", {
307
310
  orgRepo: `${owner}/${CONFIG_ORG_REPO}`,
308
311
  repo: `${owner}/${repo}`
309
312
  });
310
- const orgConfig = await this.getConfigurationFromRepo(owner, CONFIG_ORG_REPO);
311
- const repoConfig = await this.getConfigurationFromRepo(owner, repo);
313
+ const orgConfig = await this.getConfigurationFromRepo(owner, CONFIG_ORG_REPO, options?.orgRef ? { ref: options.orgRef } : void 0);
314
+ const repoConfig = await this.getConfigurationFromRepo(owner, repo, options?.repoRef ? { ref: options.repoRef } : void 0);
312
315
  if (orgConfig.config) {
313
316
  mergedConfiguration = this.mergeConfigurations(mergedConfiguration, orgConfig.config);
314
317
  }
@@ -366,8 +369,9 @@ var ConfigurationHandler = class {
366
369
  *
367
370
  * @param owner The repository owner
368
371
  * @param repository The repository name
372
+ * @param options - Optional ref (branch, tag, or commit SHA) for the configuration lookup
369
373
  */
370
- async getConfigurationFromRepo(owner, repository) {
374
+ async getConfigurationFromRepo(owner, repository, options) {
371
375
  const location = { owner, repo: repository };
372
376
  const state = this._createImportState();
373
377
  const octokit = await this._getOctokitForLocation(location, state);
@@ -375,7 +379,7 @@ var ConfigurationHandler = class {
375
379
  this._logger.warn("No Octokit available for configuration load", { owner, repository });
376
380
  return { config: null, errors: null, rawData: null };
377
381
  }
378
- const { config, imports, errors, rawData } = await this._loadConfigSource(location, octokit);
382
+ const { config, imports, errors, rawData } = await this._loadConfigSource(location, octokit, options?.ref);
379
383
  if (!rawData) {
380
384
  return { config: null, errors: null, rawData: null };
381
385
  }
@@ -421,11 +425,12 @@ var ConfigurationHandler = class {
421
425
  state.octokitByLocation.set(key, this._octokit);
422
426
  return this._octokit;
423
427
  }
424
- async _loadConfigSource(location, octokit) {
428
+ async _loadConfigSource(location, octokit, ref) {
425
429
  const rawData = await this._download({
426
430
  repository: location.repo,
427
431
  owner: location.owner,
428
- octokit
432
+ octokit,
433
+ ref
429
434
  });
430
435
  if (!rawData) {
431
436
  this._logger.warn("No raw configuration data", { owner: location.owner, repository: location.repo });
@@ -501,14 +506,19 @@ var ConfigurationHandler = class {
501
506
  }
502
507
  return resolved;
503
508
  }
504
- async _download({ repository, owner, octokit }) {
509
+ async _download({
510
+ repository,
511
+ owner,
512
+ octokit,
513
+ ref
514
+ }) {
505
515
  if (!repository || !owner) {
506
516
  this._logger.warn("Repo or owner is not defined, cannot download the requested file");
507
517
  return null;
508
518
  }
509
519
  const pathList = getConfigPathCandidatesForEnvironment(this._environment);
510
520
  for (const filePath of pathList) {
511
- const content = await this._tryDownloadPath({ repository, owner, octokit, filePath });
521
+ const content = await this._tryDownloadPath({ repository, owner, octokit, filePath, ref });
512
522
  if (content !== null) return content;
513
523
  }
514
524
  return null;
@@ -517,7 +527,8 @@ var ConfigurationHandler = class {
517
527
  repository,
518
528
  owner,
519
529
  octokit,
520
- filePath
530
+ filePath,
531
+ ref
521
532
  }) {
522
533
  try {
523
534
  this._logger.info("Attempting to fetch configuration", { owner, repository, filePath });
@@ -525,6 +536,7 @@ var ConfigurationHandler = class {
525
536
  owner,
526
537
  repo: repository,
527
538
  path: filePath,
539
+ ...ref ? { ref } : {},
528
540
  mediaType: { format: "raw" }
529
541
  });
530
542
  logOk(this._logger, "Configuration file found", { owner, repository, filePath, rateLimitRemaining: headers?.["x-ratelimit-remaining"] });
@@ -34,7 +34,7 @@ var pluginSettingsSchema = T.Union(
34
34
  T.Null(),
35
35
  T.Object(
36
36
  {
37
- with: T.Record(T.String(), T.Unknown(), { default: {} }),
37
+ with: T.Optional(T.Record(T.String(), T.Unknown(), { default: {} })),
38
38
  runsOn: T.Optional(runsOnSchema),
39
39
  skipBotEvents: T.Optional(T.Boolean())
40
40
  },
@@ -230,15 +230,17 @@ var ConfigurationHandler = class {
230
230
  * Retrieves the configuration for the current plugin based on its manifest.
231
231
  * @param manifest - The plugin manifest containing the `short_name` identifier
232
232
  * @param location - Optional repository location (`owner/repo`)
233
+ * @param options - Optional refs for organization/repository configuration lookups
233
234
  * @returns The plugin's configuration or null if not found
234
235
  **/
235
- async getSelfConfiguration(manifest, location) {
236
- const cfg = await this.getConfiguration(location);
236
+ async getSelfConfiguration(manifest, location, options) {
237
+ const cfg = await this.getConfiguration(location, options);
237
238
  let selfConfig;
238
239
  if (manifest.homepage_url) {
239
240
  const name = manifest.homepage_url;
240
241
  selfConfig = Object.keys(cfg.plugins).find((key) => normalizeBaseUrl(key) === normalizeBaseUrl(name));
241
- } else {
242
+ }
243
+ if (!selfConfig) {
242
244
  const name = manifest.short_name.split("@")[0];
243
245
  selfConfig = Object.keys(cfg.plugins).find((key) => new RegExp(`^${name}(?:$|@.+)`).exec(key.replace(/:[^@]+/, "")));
244
246
  }
@@ -247,30 +249,31 @@ var ConfigurationHandler = class {
247
249
  /**
248
250
  * Retrieves and merges configuration from organization and repository levels.
249
251
  * @param location - Optional repository location (`owner` and `repo`). If not provided, returns the default configuration.
252
+ * @param options - Optional refs for organization/repository configuration lookups
250
253
  * @returns The merged plugin configuration with resolved plugin settings.
251
254
  */
252
- async getConfiguration(location) {
255
+ async getConfiguration(location, options) {
253
256
  const defaultConfiguration = stripImports(Value.Decode(configSchema, Value.Default(configSchema, {})));
254
257
  if (!location) {
255
258
  this._logger.info("No location was provided, using the default configuration");
256
259
  return defaultConfiguration;
257
260
  }
258
- const mergedConfiguration = await this._getMergedConfiguration(location, defaultConfiguration);
261
+ const mergedConfiguration = await this._getMergedConfiguration(location, defaultConfiguration, options);
259
262
  const resolvedPlugins = await this._resolvePlugins(mergedConfiguration, location);
260
263
  return {
261
264
  ...mergedConfiguration,
262
265
  plugins: resolvedPlugins
263
266
  };
264
267
  }
265
- async _getMergedConfiguration(location, defaultConfiguration) {
268
+ async _getMergedConfiguration(location, defaultConfiguration, options) {
266
269
  const { owner, repo } = location;
267
270
  let mergedConfiguration = defaultConfiguration;
268
271
  this._logger.info("Fetching configurations from the organization and repository", {
269
272
  orgRepo: `${owner}/${CONFIG_ORG_REPO}`,
270
273
  repo: `${owner}/${repo}`
271
274
  });
272
- const orgConfig = await this.getConfigurationFromRepo(owner, CONFIG_ORG_REPO);
273
- const repoConfig = await this.getConfigurationFromRepo(owner, repo);
275
+ const orgConfig = await this.getConfigurationFromRepo(owner, CONFIG_ORG_REPO, options?.orgRef ? { ref: options.orgRef } : void 0);
276
+ const repoConfig = await this.getConfigurationFromRepo(owner, repo, options?.repoRef ? { ref: options.repoRef } : void 0);
274
277
  if (orgConfig.config) {
275
278
  mergedConfiguration = this.mergeConfigurations(mergedConfiguration, orgConfig.config);
276
279
  }
@@ -328,8 +331,9 @@ var ConfigurationHandler = class {
328
331
  *
329
332
  * @param owner The repository owner
330
333
  * @param repository The repository name
334
+ * @param options - Optional ref (branch, tag, or commit SHA) for the configuration lookup
331
335
  */
332
- async getConfigurationFromRepo(owner, repository) {
336
+ async getConfigurationFromRepo(owner, repository, options) {
333
337
  const location = { owner, repo: repository };
334
338
  const state = this._createImportState();
335
339
  const octokit = await this._getOctokitForLocation(location, state);
@@ -337,7 +341,7 @@ var ConfigurationHandler = class {
337
341
  this._logger.warn("No Octokit available for configuration load", { owner, repository });
338
342
  return { config: null, errors: null, rawData: null };
339
343
  }
340
- const { config, imports, errors, rawData } = await this._loadConfigSource(location, octokit);
344
+ const { config, imports, errors, rawData } = await this._loadConfigSource(location, octokit, options?.ref);
341
345
  if (!rawData) {
342
346
  return { config: null, errors: null, rawData: null };
343
347
  }
@@ -383,11 +387,12 @@ var ConfigurationHandler = class {
383
387
  state.octokitByLocation.set(key, this._octokit);
384
388
  return this._octokit;
385
389
  }
386
- async _loadConfigSource(location, octokit) {
390
+ async _loadConfigSource(location, octokit, ref) {
387
391
  const rawData = await this._download({
388
392
  repository: location.repo,
389
393
  owner: location.owner,
390
- octokit
394
+ octokit,
395
+ ref
391
396
  });
392
397
  if (!rawData) {
393
398
  this._logger.warn("No raw configuration data", { owner: location.owner, repository: location.repo });
@@ -463,14 +468,19 @@ var ConfigurationHandler = class {
463
468
  }
464
469
  return resolved;
465
470
  }
466
- async _download({ repository, owner, octokit }) {
471
+ async _download({
472
+ repository,
473
+ owner,
474
+ octokit,
475
+ ref
476
+ }) {
467
477
  if (!repository || !owner) {
468
478
  this._logger.warn("Repo or owner is not defined, cannot download the requested file");
469
479
  return null;
470
480
  }
471
481
  const pathList = getConfigPathCandidatesForEnvironment(this._environment);
472
482
  for (const filePath of pathList) {
473
- const content = await this._tryDownloadPath({ repository, owner, octokit, filePath });
483
+ const content = await this._tryDownloadPath({ repository, owner, octokit, filePath, ref });
474
484
  if (content !== null) return content;
475
485
  }
476
486
  return null;
@@ -479,7 +489,8 @@ var ConfigurationHandler = class {
479
489
  repository,
480
490
  owner,
481
491
  octokit,
482
- filePath
492
+ filePath,
493
+ ref
483
494
  }) {
484
495
  try {
485
496
  this._logger.info("Attempting to fetch configuration", { owner, repository, filePath });
@@ -487,6 +498,7 @@ var ConfigurationHandler = class {
487
498
  owner,
488
499
  repo: repository,
489
500
  path: filePath,
501
+ ...ref ? { ref } : {},
490
502
  mediaType: { format: "raw" }
491
503
  });
492
504
  logOk(this._logger, "Configuration file found", { owner, repository, filePath, rateLimitRemaining: headers?.["x-ratelimit-remaining"] });
package/dist/index.js CHANGED
@@ -986,7 +986,7 @@ function getAiBaseUrl(options) {
986
986
  }
987
987
  const envBaseUrl = getEnvString("UOS_AI_URL");
988
988
  if (envBaseUrl) return normalizeBaseUrl(envBaseUrl);
989
- return "https://ai.ubq.fi";
989
+ return "https://ai-ubq-fi.deno.dev";
990
990
  }
991
991
  async function callLlm(options, input) {
992
992
  const { baseUrl, model, stream: isStream, messages, aiAuthToken, ...rest } = options;
package/dist/index.mjs CHANGED
@@ -945,7 +945,7 @@ function getAiBaseUrl(options) {
945
945
  }
946
946
  const envBaseUrl = getEnvString("UOS_AI_URL");
947
947
  if (envBaseUrl) return normalizeBaseUrl(envBaseUrl);
948
- return "https://ai.ubq.fi";
948
+ return "https://ai-ubq-fi.deno.dev";
949
949
  }
950
950
  async function callLlm(options, input) {
951
951
  const { baseUrl, model, stream: isStream, messages, aiAuthToken, ...rest } = options;
package/dist/llm.js CHANGED
@@ -78,7 +78,7 @@ function getAiBaseUrl(options) {
78
78
  }
79
79
  const envBaseUrl = getEnvString("UOS_AI_URL");
80
80
  if (envBaseUrl) return normalizeBaseUrl(envBaseUrl);
81
- return "https://ai.ubq.fi";
81
+ return "https://ai-ubq-fi.deno.dev";
82
82
  }
83
83
  async function callLlm(options, input) {
84
84
  const { baseUrl, model, stream: isStream, messages, aiAuthToken, ...rest } = options;
package/dist/llm.mjs CHANGED
@@ -54,7 +54,7 @@ function getAiBaseUrl(options) {
54
54
  }
55
55
  const envBaseUrl = getEnvString("UOS_AI_URL");
56
56
  if (envBaseUrl) return normalizeBaseUrl(envBaseUrl);
57
- return "https://ai.ubq.fi";
57
+ return "https://ai-ubq-fi.deno.dev";
58
58
  }
59
59
  async function callLlm(options, input) {
60
60
  const { baseUrl, model, stream: isStream, messages, aiAuthToken, ...rest } = options;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ubiquity-os/plugin-sdk",
3
- "version": "3.9.0",
3
+ "version": "3.10.0",
4
4
  "description": "SDK for plugin support.",
5
5
  "author": "Ubiquity DAO",
6
6
  "license": "MIT",