@aeolus-fleet/core 0.27.1 → 0.28.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/adapters/crypto/account-token-signatures.d.ts +12 -0
- package/dist/adapters/crypto/account-token-signatures.js +104 -0
- package/dist/adapters/crypto/account-token-signatures.js.map +1 -0
- package/dist/adapters/http/request-credentials.d.ts +7 -1
- package/dist/adapters/http/request-credentials.js +18 -5
- package/dist/adapters/http/request-credentials.js.map +1 -1
- package/dist/adapters/http/server.js +4 -2
- package/dist/adapters/http/server.js.map +1 -1
- package/dist/adapters/prisma/event-log.js +13 -1
- package/dist/adapters/prisma/event-log.js.map +1 -1
- package/dist/adapters/prisma/generated/browser.d.ts +30 -0
- package/dist/adapters/prisma/generated/client.d.ts +30 -0
- package/dist/adapters/prisma/generated/commonInputTypes.d.ts +120 -0
- package/dist/adapters/prisma/generated/enums.d.ts +25 -0
- package/dist/adapters/prisma/generated/enums.js +22 -1
- package/dist/adapters/prisma/generated/enums.js.map +1 -1
- package/dist/adapters/prisma/generated/internal/class.d.ts +44 -0
- package/dist/adapters/prisma/generated/internal/class.js +4 -4
- package/dist/adapters/prisma/generated/internal/class.js.map +1 -1
- package/dist/adapters/prisma/generated/internal/prismaNamespace.d.ts +372 -9
- package/dist/adapters/prisma/generated/internal/prismaNamespace.js +38 -11
- package/dist/adapters/prisma/generated/internal/prismaNamespace.js.map +1 -1
- package/dist/adapters/prisma/generated/internal/prismaNamespaceBrowser.d.ts +39 -8
- package/dist/adapters/prisma/generated/internal/prismaNamespaceBrowser.js +38 -11
- package/dist/adapters/prisma/generated/internal/prismaNamespaceBrowser.js.map +1 -1
- package/dist/adapters/prisma/generated/models/AccountCutOff.d.ts +944 -0
- package/dist/adapters/prisma/generated/models/AccountCutOff.js +2 -0
- package/dist/adapters/prisma/generated/models/AccountCutOff.js.map +1 -0
- package/dist/adapters/prisma/generated/models/ConsoleSession.d.ts +59 -1
- package/dist/adapters/prisma/generated/models/Event.d.ts +426 -1
- package/dist/adapters/prisma/generated/models/Fleet.d.ts +871 -0
- package/dist/adapters/prisma/generated/models/InstallationDeclaredNetworkRules.d.ts +1031 -0
- package/dist/adapters/prisma/generated/models/InstallationDeclaredNetworkRules.js +2 -0
- package/dist/adapters/prisma/generated/models/InstallationDeclaredNetworkRules.js.map +1 -0
- package/dist/adapters/prisma/generated/models/Label.d.ts +113 -39
- package/dist/adapters/prisma/generated/models/NetworkRulesDraft.d.ts +1133 -0
- package/dist/adapters/prisma/generated/models/NetworkRulesDraft.js +2 -0
- package/dist/adapters/prisma/generated/models/NetworkRulesDraft.js.map +1 -0
- package/dist/adapters/prisma/generated/models/NetworkSettings.d.ts +24 -255
- package/dist/adapters/prisma/generated/models/ReachRefusal.d.ts +1 -40
- package/dist/adapters/prisma/generated/models/Ship.d.ts +782 -6
- package/dist/adapters/prisma/generated/models/SignInTicket.d.ts +39 -1
- package/dist/adapters/prisma/generated/models/VerifiedFacts.d.ts +1325 -0
- package/dist/adapters/prisma/generated/models/VerifiedFacts.js +2 -0
- package/dist/adapters/prisma/generated/models/VerifiedFacts.js.map +1 -0
- package/dist/adapters/prisma/generated/models.d.ts +4 -0
- package/dist/adapters/prisma/history.js +1 -0
- package/dist/adapters/prisma/history.js.map +1 -1
- package/dist/adapters/prisma/identity.d.ts +3 -1
- package/dist/adapters/prisma/identity.js +41 -8
- package/dist/adapters/prisma/identity.js.map +1 -1
- package/dist/adapters/prisma/network.d.ts +7 -2
- package/dist/adapters/prisma/network.js +92 -65
- package/dist/adapters/prisma/network.js.map +1 -1
- package/dist/adapters/prisma/registry.js +19 -14
- package/dist/adapters/prisma/registry.js.map +1 -1
- package/dist/adapters/prisma/rows.d.ts +9 -4
- package/dist/adapters/prisma/rows.js +75 -19
- package/dist/adapters/prisma/rows.js.map +1 -1
- package/dist/adapters/prisma/unit-of-work.d.ts +4 -2
- package/dist/adapters/prisma/unit-of-work.js +5 -2
- package/dist/adapters/prisma/unit-of-work.js.map +1 -1
- package/dist/adapters/prisma/verified-facts.d.ts +4 -0
- package/dist/adapters/prisma/verified-facts.js +65 -0
- package/dist/adapters/prisma/verified-facts.js.map +1 -0
- package/dist/adapters/rest/rest-api.js +2 -2
- package/dist/adapters/rest/rest-api.js.map +1 -1
- package/dist/adapters/trpc/console.d.ts +3 -1
- package/dist/adapters/trpc/context.d.ts +22 -8
- package/dist/adapters/trpc/fleet.d.ts +259 -52
- package/dist/adapters/trpc/fleet.js +121 -84
- package/dist/adapters/trpc/fleet.js.map +1 -1
- package/dist/adapters/trpc/installation-token.d.ts +7 -0
- package/dist/adapters/trpc/installation-token.js +10 -0
- package/dist/adapters/trpc/installation-token.js.map +1 -0
- package/dist/adapters/trpc/installation.d.ts +32 -2
- package/dist/adapters/trpc/installation.js +14 -10
- package/dist/adapters/trpc/installation.js.map +1 -1
- package/dist/adapters/trpc/router.d.ts +307 -43
- package/dist/adapters/trpc/ship-contract.js +6 -4
- package/dist/adapters/trpc/ship-contract.js.map +1 -1
- package/dist/adapters/trpc/ship.d.ts +32 -1
- package/dist/adapters/trpc/ship.js +4 -2
- package/dist/adapters/trpc/ship.js.map +1 -1
- package/dist/adapters/trpc/trpc.d.ts +36 -13
- package/dist/adapters/trpc/trpc.js +117 -26
- package/dist/adapters/trpc/trpc.js.map +1 -1
- package/dist/app.d.ts +2 -0
- package/dist/app.js +22 -0
- package/dist/app.js.map +1 -1
- package/dist/config.d.ts +5 -0
- package/dist/config.js +3 -1
- package/dist/config.js.map +1 -1
- package/dist/domain/identity/authenticate-account.d.ts +35 -0
- package/dist/domain/identity/authenticate-account.js +54 -0
- package/dist/domain/identity/authenticate-account.js.map +1 -0
- package/dist/domain/identity/authenticate-installation.d.ts +23 -0
- package/dist/domain/identity/authenticate-installation.js +20 -0
- package/dist/domain/identity/authenticate-installation.js.map +1 -0
- package/dist/domain/identity/authenticate.d.ts +2 -2
- package/dist/domain/identity/console-session.d.ts +6 -3
- package/dist/domain/identity/console-session.js.map +1 -1
- package/dist/domain/identity/cut-off-account.d.ts +29 -0
- package/dist/domain/identity/cut-off-account.js +37 -0
- package/dist/domain/identity/cut-off-account.js.map +1 -0
- package/dist/domain/identity/dismiss-notice.d.ts +2 -2
- package/dist/domain/identity/issue-sign-in-ticket.d.ts +9 -3
- package/dist/domain/identity/issue-sign-in-ticket.js +8 -2
- package/dist/domain/identity/issue-sign-in-ticket.js.map +1 -1
- package/dist/domain/identity/ports.d.ts +52 -5
- package/dist/domain/identity/read-account.d.ts +8 -4
- package/dist/domain/identity/read-account.js +1 -1
- package/dist/domain/identity/read-account.js.map +1 -1
- package/dist/domain/identity/read-guide.d.ts +2 -2
- package/dist/domain/identity/read-notices.d.ts +2 -2
- package/dist/domain/identity/record-guide-progress.d.ts +2 -2
- package/dist/domain/identity/redeem-sign-in-ticket.d.ts +2 -1
- package/dist/domain/identity/redeem-sign-in-ticket.js +3 -2
- package/dist/domain/identity/redeem-sign-in-ticket.js.map +1 -1
- package/dist/domain/identity/set-theme.d.ts +2 -2
- package/dist/domain/identity/sign-in-ticket.d.ts +3 -1
- package/dist/domain/identity/sign-in.d.ts +2 -2
- package/dist/domain/identity/sign-in.js +2 -0
- package/dist/domain/identity/sign-in.js.map +1 -1
- package/dist/domain/identity/sign-out.d.ts +2 -2
- package/dist/domain/identity/sign-out.js +1 -1
- package/dist/domain/identity/sign-out.js.map +1 -1
- package/dist/domain/identity/start-console-session.d.ts +4 -2
- package/dist/domain/identity/start-console-session.js +6 -4
- package/dist/domain/identity/start-console-session.js.map +1 -1
- package/dist/domain/identity/start-viewer-session.js +1 -0
- package/dist/domain/identity/start-viewer-session.js.map +1 -1
- package/dist/domain/messaging/delivery.d.ts +3 -1
- package/dist/domain/messaging/delivery.js +9 -6
- package/dist/domain/messaging/delivery.js.map +1 -1
- package/dist/domain/messaging/dismiss-delivery.d.ts +2 -2
- package/dist/domain/messaging/message.d.ts +3 -1
- package/dist/domain/messaging/message.js +1 -1
- package/dist/domain/messaging/message.js.map +1 -1
- package/dist/domain/messaging/ping-ship.d.ts +2 -2
- package/dist/domain/messaging/ping-ship.js +1 -1
- package/dist/domain/messaging/ping-ship.js.map +1 -1
- package/dist/domain/messaging/resend-delivery.d.ts +2 -2
- package/dist/domain/messaging/resend-delivery.js +1 -0
- package/dist/domain/messaging/resend-delivery.js.map +1 -1
- package/dist/domain/messaging/send-message.d.ts +3 -3
- package/dist/domain/messaging/send-message.js +1 -0
- package/dist/domain/messaging/send-message.js.map +1 -1
- package/dist/domain/registry/apply-network-rules.d.ts +32 -0
- package/dist/domain/registry/apply-network-rules.js +33 -0
- package/dist/domain/registry/apply-network-rules.js.map +1 -0
- package/dist/domain/registry/assign-crew.d.ts +2 -2
- package/dist/domain/registry/assign-crew.js +3 -2
- package/dist/domain/registry/assign-crew.js.map +1 -1
- package/dist/domain/registry/assign-label.d.ts +7 -5
- package/dist/domain/registry/assign-label.js +16 -6
- package/dist/domain/registry/assign-label.js.map +1 -1
- package/dist/domain/registry/change-label-values.d.ts +1 -1
- package/dist/domain/registry/change-label-values.js +4 -3
- package/dist/domain/registry/change-label-values.js.map +1 -1
- package/dist/domain/registry/check-reach.d.ts +45 -24
- package/dist/domain/registry/check-reach.js +76 -42
- package/dist/domain/registry/check-reach.js.map +1 -1
- package/dist/domain/registry/clear-request.d.ts +1 -1
- package/dist/domain/registry/clear-request.js +1 -1
- package/dist/domain/registry/clear-request.js.map +1 -1
- package/dist/domain/registry/commission-ship.d.ts +23 -14
- package/dist/domain/registry/commission-ship.js +167 -21
- package/dist/domain/registry/commission-ship.js.map +1 -1
- package/dist/domain/registry/confirm-crew-release.d.ts +2 -2
- package/dist/domain/registry/confirm-crew-release.js +3 -2
- package/dist/domain/registry/confirm-crew-release.js.map +1 -1
- package/dist/domain/registry/confirm-worktree-cleared.d.ts +2 -2
- package/dist/domain/registry/confirm-worktree-cleared.js +3 -2
- package/dist/domain/registry/confirm-worktree-cleared.js.map +1 -1
- package/dist/domain/registry/connect-plugin.d.ts +5 -4
- package/dist/domain/registry/connect-plugin.js +6 -7
- package/dist/domain/registry/connect-plugin.js.map +1 -1
- package/dist/domain/registry/crew-request.d.ts +2 -2
- package/dist/domain/registry/crew-request.js.map +1 -1
- package/dist/domain/registry/declare-network-rules.d.ts +9 -6
- package/dist/domain/registry/declare-network-rules.js +13 -8
- package/dist/domain/registry/declare-network-rules.js.map +1 -1
- package/dist/domain/registry/declare-scopes.d.ts +2 -2
- package/dist/domain/registry/declared-network-rules.d.ts +30 -21
- package/dist/domain/registry/declared-network-rules.js +46 -22
- package/dist/domain/registry/declared-network-rules.js.map +1 -1
- package/dist/domain/registry/define-label.d.ts +1 -1
- package/dist/domain/registry/define-label.js +5 -5
- package/dist/domain/registry/define-label.js.map +1 -1
- package/dist/domain/registry/delete-label.d.ts +1 -1
- package/dist/domain/registry/delete-label.js +4 -3
- package/dist/domain/registry/delete-label.js.map +1 -1
- package/dist/domain/registry/discard-network-rules-draft.d.ts +23 -0
- package/dist/domain/registry/discard-network-rules-draft.js +24 -0
- package/dist/domain/registry/discard-network-rules-draft.js.map +1 -0
- package/dist/domain/registry/discover.d.ts +11 -10
- package/dist/domain/registry/discover.js +11 -5
- package/dist/domain/registry/discover.js.map +1 -1
- package/dist/domain/registry/explain-crew-request.d.ts +2 -2
- package/dist/domain/registry/explain-crew-request.js +3 -2
- package/dist/domain/registry/explain-crew-request.js.map +1 -1
- package/dist/domain/registry/explain-reach.d.ts +21 -14
- package/dist/domain/registry/explain-reach.js +53 -53
- package/dist/domain/registry/explain-reach.js.map +1 -1
- package/dist/domain/registry/get-ship.d.ts +2 -2
- package/dist/domain/registry/get-starting-prompt.d.ts +4 -2
- package/dist/domain/registry/get-starting-prompt.js +7 -5
- package/dist/domain/registry/get-starting-prompt.js.map +1 -1
- package/dist/domain/registry/give-back-crew-request.d.ts +2 -2
- package/dist/domain/registry/give-back-crew-request.js +3 -2
- package/dist/domain/registry/give-back-crew-request.js.map +1 -1
- package/dist/domain/registry/grant-scopes.d.ts +8 -5
- package/dist/domain/registry/grant-scopes.js +14 -5
- package/dist/domain/registry/grant-scopes.js.map +1 -1
- package/dist/domain/registry/label.d.ts +69 -18
- package/dist/domain/registry/label.js +79 -28
- package/dist/domain/registry/label.js.map +1 -1
- package/dist/domain/registry/lease.d.ts +1 -1
- package/dist/domain/registry/list-fleet.d.ts +2 -0
- package/dist/domain/registry/list-fleet.js +1 -0
- package/dist/domain/registry/list-fleet.js.map +1 -1
- package/dist/domain/registry/list-scopes.d.ts +2 -1
- package/dist/domain/registry/list-scopes.js +2 -1
- package/dist/domain/registry/list-scopes.js.map +1 -1
- package/dist/domain/registry/managed-or-assigned.d.ts +12 -4
- package/dist/domain/registry/managed-or-assigned.js +25 -7
- package/dist/domain/registry/managed-or-assigned.js.map +1 -1
- package/dist/domain/registry/network-rules-draft.d.ts +45 -0
- package/dist/domain/registry/network-rules-draft.js +41 -0
- package/dist/domain/registry/network-rules-draft.js.map +1 -0
- package/dist/domain/registry/network-settings.d.ts +92 -122
- package/dist/domain/registry/network-settings.js +99 -159
- package/dist/domain/registry/network-settings.js.map +1 -1
- package/dist/domain/registry/ports.d.ts +47 -11
- package/dist/domain/registry/reach-refusal.d.ts +18 -4
- package/dist/domain/registry/read-assigned-crew-requests.d.ts +2 -2
- package/dist/domain/registry/read-built-in-rules.d.ts +4 -3
- package/dist/domain/registry/read-built-in-rules.js +7 -6
- package/dist/domain/registry/read-built-in-rules.js.map +1 -1
- package/dist/domain/registry/read-clear-requests.d.ts +2 -2
- package/dist/domain/registry/read-clear-requests.js.map +1 -1
- package/dist/domain/registry/read-declared-network-rules.d.ts +5 -5
- package/dist/domain/registry/read-declared-network-rules.js +4 -4
- package/dist/domain/registry/read-declared-network-rules.js.map +1 -1
- package/dist/domain/registry/read-network-rules-draft-changes.d.ts +22 -0
- package/dist/domain/registry/read-network-rules-draft-changes.js +53 -0
- package/dist/domain/registry/read-network-rules-draft-changes.js.map +1 -0
- package/dist/domain/registry/read-network-rules.d.ts +30 -0
- package/dist/domain/registry/read-network-rules.js +18 -0
- package/dist/domain/registry/read-network-rules.js.map +1 -0
- package/dist/domain/registry/read-on-behalf.d.ts +3 -3
- package/dist/domain/registry/read-on-behalf.js.map +1 -1
- package/dist/domain/registry/read-reach-refusals.d.ts +6 -5
- package/dist/domain/registry/read-reach-refusals.js +13 -8
- package/dist/domain/registry/read-reach-refusals.js.map +1 -1
- package/dist/domain/registry/read-reach.d.ts +6 -8
- package/dist/domain/registry/read-reach.js +21 -16
- package/dist/domain/registry/read-reach.js.map +1 -1
- package/dist/domain/registry/recrew-ship.d.ts +2 -2
- package/dist/domain/registry/recrew-ship.js +3 -3
- package/dist/domain/registry/recrew-ship.js.map +1 -1
- package/dist/domain/registry/release-ship.d.ts +3 -2
- package/dist/domain/registry/release-ship.js +4 -3
- package/dist/domain/registry/release-ship.js.map +1 -1
- package/dist/domain/registry/remove-crew-request.d.ts +2 -2
- package/dist/domain/registry/remove-crew-request.js +4 -3
- package/dist/domain/registry/remove-crew-request.js.map +1 -1
- package/dist/domain/registry/rename-ship.d.ts +1 -1
- package/dist/domain/registry/rename-ship.js +4 -3
- package/dist/domain/registry/rename-ship.js.map +1 -1
- package/dist/domain/registry/report-crew-status.d.ts +2 -2
- package/dist/domain/registry/report-crew-status.js +3 -2
- package/dist/domain/registry/report-crew-status.js.map +1 -1
- package/dist/domain/registry/request-crew.d.ts +3 -3
- package/dist/domain/registry/request-crew.js +4 -3
- package/dist/domain/registry/request-crew.js.map +1 -1
- package/dist/domain/registry/request-worktree-clear.d.ts +2 -2
- package/dist/domain/registry/request-worktree-clear.js +4 -3
- package/dist/domain/registry/request-worktree-clear.js.map +1 -1
- package/dist/domain/registry/retire-ship.d.ts +16 -12
- package/dist/domain/registry/retire-ship.js +28 -21
- package/dist/domain/registry/retire-ship.js.map +1 -1
- package/dist/domain/registry/save-network-rules-draft.d.ts +31 -0
- package/dist/domain/registry/save-network-rules-draft.js +27 -0
- package/dist/domain/registry/save-network-rules-draft.js.map +1 -0
- package/dist/domain/registry/scope-grant.d.ts +19 -19
- package/dist/domain/registry/scope-grant.js +8 -9
- package/dist/domain/registry/scope-grant.js.map +1 -1
- package/dist/domain/registry/set-built-in-rule.d.ts +3 -3
- package/dist/domain/registry/set-built-in-rule.js +5 -9
- package/dist/domain/registry/set-built-in-rule.js.map +1 -1
- package/dist/domain/registry/set-owner.d.ts +9 -6
- package/dist/domain/registry/set-owner.js +14 -8
- package/dist/domain/registry/set-owner.js.map +1 -1
- package/dist/domain/registry/set-verified-facts.d.ts +36 -0
- package/dist/domain/registry/set-verified-facts.js +58 -0
- package/dist/domain/registry/set-verified-facts.js.map +1 -0
- package/dist/domain/registry/ship.d.ts +52 -18
- package/dist/domain/registry/ship.js +76 -18
- package/dist/domain/registry/ship.js.map +1 -1
- package/dist/domain/registry/statement.d.ts +2 -2
- package/dist/domain/registry/statement.js +2 -2
- package/dist/domain/registry/statement.js.map +1 -1
- package/dist/domain/registry/turn.d.ts +2 -2
- package/dist/domain/registry/turn.js +2 -2
- package/dist/domain/registry/turn.js.map +1 -1
- package/dist/domain/registry/unassign-label.d.ts +8 -5
- package/dist/domain/registry/unassign-label.js +17 -6
- package/dist/domain/registry/unassign-label.js.map +1 -1
- package/dist/domain/registry/verified-facts.d.ts +75 -0
- package/dist/domain/registry/verified-facts.js +107 -0
- package/dist/domain/registry/verified-facts.js.map +1 -0
- package/dist/domain/registry/whoami.d.ts +2 -2
- package/dist/domain/shared/caller.d.ts +40 -6
- package/dist/domain/shared/caller.js +20 -0
- package/dist/domain/shared/caller.js.map +1 -1
- package/dist/domain/shared/errors.d.ts +1 -1
- package/dist/domain/shared/errors.js.map +1 -1
- package/dist/domain/shared/events.d.ts +13 -2
- package/dist/domain/shared/events.js.map +1 -1
- package/dist/domain/shared/history.d.ts +3 -1
- package/dist/domain/shared/history.js.map +1 -1
- package/dist/domain/shared/read-fleet-limits.d.ts +2 -2
- package/dist/domain/shared/read-health.d.ts +2 -2
- package/dist/domain/shared/read-inbox.d.ts +2 -2
- package/dist/domain/shared/read-message.d.ts +2 -2
- package/dist/domain/shared/read-needs-attention.d.ts +2 -2
- package/dist/domain/shared/read-sent-message.d.ts +2 -2
- package/dist/domain/shared/read-ship-messages.d.ts +2 -2
- package/dist/domain/shared/read-ship-timeline.d.ts +2 -2
- package/dist/domain/shared/read-ship-way.d.ts +2 -2
- package/dist/domain/shared/read-ship-way.js +1 -1
- package/dist/domain/shared/read-ship-way.js.map +1 -1
- package/dist/start.js +1 -0
- package/dist/start.js.map +1 -1
- package/dist/testing/account-token-issuer.d.ts +30 -0
- package/dist/testing/account-token-issuer.js +48 -0
- package/dist/testing/account-token-issuer.js.map +1 -0
- package/dist/testing/fleet.d.ts +2 -2
- package/dist/testing/index.d.ts +1 -1
- package/dist/wiring.d.ts +21 -8
- package/dist/wiring.js +32 -13
- package/dist/wiring.js.map +1 -1
- package/package.json +2 -5
- package/src/adapters/prisma/migrations/20261019200000_account_cut_offs/migration.sql +10 -0
- package/src/adapters/prisma/migrations/20261019210000_event_actors/migration.sql +32 -0
- package/src/adapters/prisma/migrations/20261020090000_argos_jobs_as_scopes/migration.sql +65 -0
- package/src/adapters/prisma/migrations/20261020100000_installation_labels/migration.sql +7 -0
- package/src/adapters/prisma/migrations/20261020110000_installation_declared_network_rules/migration.sql +10 -0
- package/src/adapters/prisma/migrations/20261020120000_commissioning_actors/migration.sql +14 -0
- package/src/adapters/prisma/migrations/20261020130000_console_sign_in_accounts/migration.sql +4 -0
- package/src/adapters/prisma/migrations/20261020140000_event_signed_in_accounts/migration.sql +4 -0
- package/src/adapters/prisma/migrations/20261020150000_account_cut_off_ends_console_sessions/migration.sql +2 -0
- package/src/adapters/prisma/migrations/20261020160000_network_in_core/migration.sql +30 -0
- package/src/adapters/prisma/migrations/20261020170000_verify_scope/migration.sql +64 -0
- package/src/adapters/prisma/migrations/20261020180000_verified_facts/migration.sql +21 -0
- package/src/adapters/prisma/migrations/20261020190000_verified_facts_by_writer/migration.sql +3 -0
- package/src/adapters/prisma/schema.prisma +132 -23
- package/dist/domain/registry/read-network-plugin.d.ts +0 -23
- package/dist/domain/registry/read-network-plugin.js +0 -15
- package/dist/domain/registry/read-network-plugin.js.map +0 -1
- package/dist/domain/registry/register-network-plugin.d.ts +0 -28
- package/dist/domain/registry/register-network-plugin.js +0 -26
- package/dist/domain/registry/register-network-plugin.js.map +0 -1
- package/dist/domain/registry/set-network-rules.d.ts +0 -31
- package/dist/domain/registry/set-network-rules.js +0 -27
- package/dist/domain/registry/set-network-rules.js.map +0 -1
- package/dist/domain/registry/unregister-network-plugin.d.ts +0 -27
- package/dist/domain/registry/unregister-network-plugin.js +0 -25
- package/dist/domain/registry/unregister-network-plugin.js.map +0 -1
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { refuse } from '../shared/errors.js';
|
|
2
|
+
import { ok } from '../shared/result.js';
|
|
3
|
+
import { copyOfRule, invalidRules } from './network-settings.js';
|
|
4
|
+
/** The one refusal of a fleet without a draft. */
|
|
5
|
+
export function refuseNoDraft() {
|
|
6
|
+
return refuse('NO_NETWORK_RULES_DRAFT', 'The fleet has no draft of its network rules');
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* The fleet's draft from now on, in place of the one before, against the
|
|
10
|
+
* settings as they are, with NetworkRulesDraftSaved naming how many rules,
|
|
11
|
+
* none for all-to-all. The rules keep the limits an apply would hold them to.
|
|
12
|
+
* Nothing in force changes, so the version stays.
|
|
13
|
+
*/
|
|
14
|
+
export function saveNetworkRulesDraft(settings, change) {
|
|
15
|
+
const { rules } = change;
|
|
16
|
+
const invalid = invalidRules(rules);
|
|
17
|
+
if (invalid !== undefined) {
|
|
18
|
+
return refuse('INVALID_NETWORK_RULES', invalid);
|
|
19
|
+
}
|
|
20
|
+
const draft = { fleetId: settings.fleetId, rules: rules === null ? null : rules.map(copyOfRule), savedAt: change.at, savedAgainstVersion: settings.version };
|
|
21
|
+
return ok({
|
|
22
|
+
draft,
|
|
23
|
+
events: [
|
|
24
|
+
{
|
|
25
|
+
type: 'NetworkRulesDraftSaved',
|
|
26
|
+
fleetId: settings.fleetId,
|
|
27
|
+
occurredAt: change.at,
|
|
28
|
+
actor: change.actor,
|
|
29
|
+
details: { rules: rules === null ? null : rules.length, savedAgainstVersion: settings.version },
|
|
30
|
+
},
|
|
31
|
+
],
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
/** The draft goes, with NetworkRulesDraftDiscarded; the applied rules stay as they are. */
|
|
35
|
+
export function discardNetworkRulesDraft(draft, change) {
|
|
36
|
+
if (draft === undefined) {
|
|
37
|
+
return refuseNoDraft();
|
|
38
|
+
}
|
|
39
|
+
return ok({ events: [{ type: 'NetworkRulesDraftDiscarded', fleetId: change.fleetId, occurredAt: change.at, actor: change.actor, details: {} }] });
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=network-rules-draft.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"network-rules-draft.js","sourceRoot":"","sources":["../../../src/domain/registry/network-rules-draft.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,MAAM,EAAoB,MAAM,qBAAqB,CAAC;AAE/D,OAAO,EAAE,EAAE,EAAe,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,YAAY,EAAoE,MAAM,uBAAuB,CAAC;AAanI,kDAAkD;AAClD,MAAM,UAAU,aAAa;IAC3B,OAAO,MAAM,CAAC,wBAAwB,EAAE,6CAA6C,CAAC,CAAC;AACzF,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,qBAAqB,CACnC,QAAyB,EACzB,MAAwE;IAExE,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC;IACzB,MAAM,OAAO,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IACpC,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,MAAM,CAAC,uBAAuB,EAAE,OAAO,CAAC,CAAC;IAClD,CAAC;IACD,MAAM,KAAK,GAAsB,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,EAAE,mBAAmB,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC;IAChL,OAAO,EAAE,CAAC;QACR,KAAK;QACL,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,wBAAwB;gBAC9B,OAAO,EAAE,QAAQ,CAAC,OAAO;gBACzB,UAAU,EAAE,MAAM,CAAC,EAAE;gBACrB,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,OAAO,EAAE,EAAE,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,mBAAmB,EAAE,QAAQ,CAAC,OAAO,EAAE;aAChG;SACF;KACF,CAAC,CAAC;AACL,CAAC;AAED,2FAA2F;AAC3F,MAAM,UAAU,wBAAwB,CACtC,KAAoC,EACpC,MAAoD;IAEpD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,aAAa,EAAE,CAAC;IACzB,CAAC;IACD,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,4BAA4B,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;AACpJ,CAAC"}
|
|
@@ -2,121 +2,74 @@
|
|
|
2
2
|
* The fleet's network settings (decision 0034): which ships may send to,
|
|
3
3
|
* read or manage which. A rule names its verb and says that the ships
|
|
4
4
|
* matching one selector may do it to the ships matching another; allow-only,
|
|
5
|
-
* no deny rules, no precedence.
|
|
6
|
-
*
|
|
7
|
-
*
|
|
5
|
+
* no deny rules, no precedence. The fleet holds its own rules, set whole by
|
|
6
|
+
* applying a draft, or none for all-to-all, beside the switch of the viewer
|
|
7
|
+
* reading, with a version that moves on every change of what is in force, so
|
|
8
|
+
* a refusal names the settings that refused it.
|
|
8
9
|
*/
|
|
9
|
-
import { type FleetId, type LabelId, type LabelValueId, type BuiltInRule, type
|
|
10
|
+
import { type FleetId, type LabelId, type LabelValueId, type BuiltInRule, type NetworkVerb, type SelectorTerm, type SetBuiltInRuleInput, type ShipId, type ShipKind } from '@aeolus-fleet/common';
|
|
10
11
|
import { type DomainError } from '../shared/errors.js';
|
|
11
12
|
import type { Actor, NewEvent } from '../shared/events.js';
|
|
12
13
|
import { type Result } from '../shared/result.js';
|
|
14
|
+
import type { DeclaredNetworkRules } from './declared-network-rules.js';
|
|
15
|
+
import type { LabelOwner } from './label.js';
|
|
13
16
|
/** The ships for which every term of `from` holds may do its verb to the ships for which every term of `to` holds. */
|
|
14
17
|
export interface NetworkRule {
|
|
15
18
|
verb: NetworkVerb;
|
|
16
19
|
from: readonly SelectorTerm[];
|
|
17
20
|
to: readonly SelectorTerm[];
|
|
18
21
|
}
|
|
19
|
-
/**
|
|
20
|
-
* The fleet's networking plugin (decision 0035): the ship that alone sets the
|
|
21
|
-
* rules while registered, with what it declared for while it is unavailable.
|
|
22
|
-
*/
|
|
23
|
-
export interface NetworkPlugin extends NetworkPluginDeclaration {
|
|
24
|
-
shipId: ShipId;
|
|
25
|
-
/** When the ship first registered; registering again replaces what it declared, not this. */
|
|
26
|
-
registeredAt: Date;
|
|
27
|
-
}
|
|
28
|
-
/**
|
|
29
|
-
* The built-in rules that can be off (decision 0034): the viewer reading
|
|
30
|
-
* every ship, argo's to switch, and open, every ship to every ship, one per
|
|
31
|
-
* verb, the networking plugin's to switch. A fleet starts with all on.
|
|
32
|
-
*/
|
|
33
|
-
export interface BuiltInSwitches {
|
|
34
|
-
isViewerReadOn: boolean;
|
|
35
|
-
open: Readonly<Record<NetworkVerb, boolean>>;
|
|
36
|
-
}
|
|
37
22
|
export interface NetworkSettings {
|
|
38
23
|
fleetId: FleetId;
|
|
39
|
-
/** The rules beside the built-in
|
|
40
|
-
rules: readonly NetworkRule[];
|
|
41
|
-
|
|
42
|
-
|
|
24
|
+
/** The fleet's own rules beside the built-in and the declared ones, as last applied; none while none are, all-to-all with open on. */
|
|
25
|
+
rules: readonly NetworkRule[] | null;
|
|
26
|
+
/** The viewer reading every ship, the one built-in rule an actor turns (decision 0034); on at fleet create. */
|
|
27
|
+
isViewerReadOn: boolean;
|
|
28
|
+
/** 0 until the fleet first changes its settings; one more on every change of what is in force. */
|
|
43
29
|
version: number;
|
|
44
|
-
/** The fleet's networking plugin, or none: then the fleet has no rules, and nobody sets them. */
|
|
45
|
-
plugin: NetworkPlugin | null;
|
|
46
30
|
}
|
|
47
|
-
/**
|
|
48
|
-
export declare const BUILT_INS_ON: BuiltInSwitches;
|
|
49
|
-
/** A fleet that never set rules: none, every built-in rule on, at version 0, without a plugin. */
|
|
31
|
+
/** A fleet that never set rules: none applied, the viewer reading on, at version 0. */
|
|
50
32
|
export declare function noNetworkSettings(fleetId: FleetId): NetworkSettings;
|
|
51
|
-
export type
|
|
52
|
-
export type SetNetworkRulesRefusal = DomainError<'INVALID_NETWORK_RULES'> | NotTheNetworkPlugin;
|
|
53
|
-
export type RegisterNetworkPluginRefusal = DomainError<'NETWORK_PLUGIN_REGISTERED'>;
|
|
33
|
+
export type InvalidNetworkRules = DomainError<'INVALID_NETWORK_RULES'>;
|
|
54
34
|
/**
|
|
55
|
-
*
|
|
56
|
-
*
|
|
57
|
-
*
|
|
58
|
-
*
|
|
59
|
-
*
|
|
35
|
+
* What breaks the decisions' limits on the fleet's own rules, said for the
|
|
36
|
+
* caller with its decision, or undefined when they keep them: at most 200,
|
|
37
|
+
* counted alone, beside the declared ones (decision 0037); each selector at
|
|
38
|
+
* most 20 terms, as a ship carries no more label values, each term once, and
|
|
39
|
+
* a term of the same value on a label on both sides of its rule, as it binds
|
|
40
|
+
* that label there. An id need not exist: an unknown one matches no ship, as
|
|
41
|
+
* in label selection. None, all-to-all, keeps them.
|
|
60
42
|
*/
|
|
61
|
-
export declare function
|
|
62
|
-
shipId: ShipId;
|
|
63
|
-
declaration: NetworkPluginDeclaration;
|
|
64
|
-
at: Date;
|
|
65
|
-
actor: Actor;
|
|
66
|
-
}): Result<{
|
|
67
|
-
settings: NetworkSettings;
|
|
68
|
-
events: NewEvent[];
|
|
69
|
-
}, RegisterNetworkPluginRefusal>;
|
|
70
|
-
/**
|
|
71
|
-
* The fleet's plugin goes, and its rules with it, and the open rules are on
|
|
72
|
-
* again: no plugin is all-to-all (decision 0035), at the next version, with
|
|
73
|
-
* NetworkPluginUnregistered. The viewer reading stays as argo set it. Only
|
|
74
|
-
* the plugin's own ship unregisters it; its retirement does too.
|
|
75
|
-
*/
|
|
76
|
-
export declare function unregisterNetworkPlugin(current: NetworkSettings, change: {
|
|
77
|
-
shipId: ShipId;
|
|
78
|
-
at: Date;
|
|
79
|
-
actor: Actor;
|
|
80
|
-
}): Result<{
|
|
81
|
-
settings: NetworkSettings;
|
|
82
|
-
events: NewEvent[];
|
|
83
|
-
}, NotTheNetworkPlugin>;
|
|
43
|
+
export declare function invalidRules(rules: readonly NetworkRule[] | null): string | undefined;
|
|
84
44
|
/**
|
|
85
|
-
* The fleet's rules from now on, replacing the ones it had, at
|
|
86
|
-
* version, with NetworkRulesSet
|
|
87
|
-
*
|
|
88
|
-
*
|
|
89
|
-
*
|
|
90
|
-
* both sides of its rule, as it binds that label there. An id need not
|
|
91
|
-
* exist: an unknown one matches no ship, as in label selection. Only the
|
|
92
|
-
* fleet's registered networking plugin sets them, argo included: rules exist
|
|
93
|
-
* only through a plugin (decision 0035).
|
|
45
|
+
* The fleet's rules from now on, the draft's, replacing the ones it had, at
|
|
46
|
+
* the next version, with NetworkRulesSet naming how many, none for
|
|
47
|
+
* all-to-all. The caller saw the settings at `version`: once they moved, the
|
|
48
|
+
* draft's reach may differ from what the caller looked at, so the apply is
|
|
49
|
+
* refused and the draft kept.
|
|
94
50
|
*/
|
|
95
|
-
export declare function
|
|
96
|
-
rules: readonly NetworkRule[];
|
|
97
|
-
|
|
98
|
-
shipId: ShipId;
|
|
51
|
+
export declare function applyNetworkRules(current: NetworkSettings, change: {
|
|
52
|
+
rules: readonly NetworkRule[] | null;
|
|
53
|
+
version: number;
|
|
99
54
|
at: Date;
|
|
100
55
|
actor: Actor;
|
|
101
56
|
}): Result<{
|
|
102
57
|
settings: NetworkSettings;
|
|
103
58
|
events: NewEvent[];
|
|
104
|
-
},
|
|
105
|
-
|
|
59
|
+
}, DomainError<'NETWORK_SETTINGS_CHANGED'>>;
|
|
60
|
+
/** The settings at the next version, as the declared rules in force changed with them (decision 0037). */
|
|
61
|
+
export declare function withDeclaredRulesChanged(current: NetworkSettings): NetworkSettings;
|
|
62
|
+
export type SetBuiltInRuleRefusal = DomainError<'BUILT_IN_RULE_FIXED'>;
|
|
106
63
|
/**
|
|
107
64
|
* A built-in rule turned on or off, as its own action (decision 0034): the
|
|
108
|
-
* viewer reading by
|
|
109
|
-
*
|
|
110
|
-
* so turning them
|
|
111
|
-
* A change moves the version and writes BuiltInRuleChanged; a
|
|
112
|
-
* as asked changes nothing.
|
|
65
|
+
* viewer reading, by any actor holding fleet:network (decision 0053). argo,
|
|
66
|
+
* the owner, the answer, a connected plugin's reading and the installation's
|
|
67
|
+
* managing are never off, and open follows the applied rules, so turning them
|
|
68
|
+
* is refused. A change moves the version and writes BuiltInRuleChanged; a
|
|
69
|
+
* rule already as asked changes nothing.
|
|
113
70
|
*/
|
|
114
71
|
export declare function setBuiltInRule(current: NetworkSettings, change: {
|
|
115
72
|
input: SetBuiltInRuleInput;
|
|
116
|
-
caller: {
|
|
117
|
-
shipId: ShipId;
|
|
118
|
-
isOperator: boolean;
|
|
119
|
-
};
|
|
120
73
|
at: Date;
|
|
121
74
|
actor: Actor;
|
|
122
75
|
}): Result<{
|
|
@@ -130,31 +83,22 @@ export declare function termText(term: SelectorTerm): string;
|
|
|
130
83
|
/** A copy of the rule, so what is kept never changes with what was given. */
|
|
131
84
|
export declare function copyOfRule(rule: NetworkRule): NetworkRule;
|
|
132
85
|
/**
|
|
133
|
-
*
|
|
134
|
-
*
|
|
135
|
-
*
|
|
136
|
-
*
|
|
86
|
+
* What a check is made against (decisions 0034, 0037): open while the
|
|
87
|
+
* fleet's own rules are none, all-to-all; the viewer reading as it was
|
|
88
|
+
* turned; otherwise the fleet's own rules, then every declarer's, merged at
|
|
89
|
+
* check time, each named by its place in its own list.
|
|
137
90
|
*/
|
|
138
|
-
export declare function isNetworkPluginResponding(plugin: NetworkPlugin, crew: {
|
|
139
|
-
lastSeenAt: Date | undefined;
|
|
140
|
-
now: Date;
|
|
141
|
-
}): boolean;
|
|
142
|
-
/** The rules and built-in switches a send is checked against, and what the plugin declared when it is the reason. */
|
|
143
91
|
export interface RulesInForce {
|
|
92
|
+
isOpen: boolean;
|
|
93
|
+
isViewerReadOn: boolean;
|
|
144
94
|
rules: readonly NetworkRule[];
|
|
145
|
-
|
|
146
|
-
/** The fleet's registered networking plugin's ship, responding or not: it reads as a connected plugin does (decision 0034). */
|
|
147
|
-
networkPluginShipId: ShipId | null;
|
|
148
|
-
whilePluginUnavailable: Exclude<WhileUnavailable, 'open-all'> | null;
|
|
95
|
+
declared: readonly DeclaredNetworkRules[];
|
|
149
96
|
}
|
|
150
|
-
/**
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
* left last.
|
|
156
|
-
*/
|
|
157
|
-
export declare function rulesInForce(settings: NetworkSettings, isPluginResponding: boolean): RulesInForce;
|
|
97
|
+
/** The rules in force for the fleet's own rules, applied or a draft's, beside the declared ones. */
|
|
98
|
+
export declare function rulesInForce(own: {
|
|
99
|
+
rules: readonly NetworkRule[] | null;
|
|
100
|
+
isViewerReadOn: boolean;
|
|
101
|
+
}, declared: readonly DeclaredNetworkRules[]): RulesInForce;
|
|
158
102
|
/** A label value a ship carries, with the label it is of, so a term of any or the same value finds it. */
|
|
159
103
|
export interface ReachingLabel {
|
|
160
104
|
labelId: LabelId;
|
|
@@ -162,45 +106,71 @@ export interface ReachingLabel {
|
|
|
162
106
|
}
|
|
163
107
|
/**
|
|
164
108
|
* A ship as a send's check sees it: its id and owner, for the owner exception,
|
|
165
|
-
* its kind, for the argo exception, whether argo connected it as a plugin,
|
|
166
|
-
* the
|
|
109
|
+
* its kind, for the argo exception, whether argo connected it as a plugin,
|
|
110
|
+
* whether its owner is a person ship, for the installation's rule, and the
|
|
111
|
+
* label values it carries.
|
|
167
112
|
*/
|
|
168
113
|
export interface ReachingShip {
|
|
169
114
|
id: ShipId;
|
|
170
115
|
owner: ShipId | null;
|
|
171
116
|
kind: ShipKind;
|
|
172
117
|
isConnectedPlugin: boolean;
|
|
118
|
+
/** Whether it is owned by a person ship, a person ship owning itself (decision 0045). */
|
|
119
|
+
isOwnedByPerson: boolean;
|
|
120
|
+
labels: readonly ReachingLabel[];
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* An account as a check sees it (decision 0057): the label values of `group`
|
|
124
|
+
* its token carries, and its person ship, which owns itself and through
|
|
125
|
+
* which the account owns: a selector's owner terms see the person ship as
|
|
126
|
+
* the account's owner.
|
|
127
|
+
*/
|
|
128
|
+
export interface ReachingAccount {
|
|
129
|
+
kind: 'account';
|
|
130
|
+
personShipId: ShipId | null;
|
|
173
131
|
labels: readonly ReachingLabel[];
|
|
174
132
|
}
|
|
133
|
+
/** The installation as a check sees it: no labels, no owner; it manages person ships and what they own by its built-in rule. */
|
|
134
|
+
export interface ReachingInstallation {
|
|
135
|
+
kind: 'installation';
|
|
136
|
+
}
|
|
137
|
+
/** Whoever does the verb: a ship, an account or the installation (decision 0057). */
|
|
138
|
+
export type ReachingActor = ReachingShip | ReachingAccount | ReachingInstallation;
|
|
175
139
|
/**
|
|
176
140
|
* The rule that lets the sender do the verb to the recipient, or undefined
|
|
177
141
|
* when none does. The built-in rules that are never off hold whatever the
|
|
178
142
|
* rules: argo reaches every ship and every ship reaches argo, but reads argo
|
|
179
143
|
* only by a rule, so argo's messages are not every ship's to read; an owner's
|
|
180
|
-
* ship reaches the ships it owns (decision 0045),
|
|
181
|
-
*
|
|
182
|
-
*
|
|
183
|
-
*
|
|
184
|
-
*
|
|
185
|
-
*
|
|
186
|
-
*
|
|
144
|
+
* ship reaches the ships it owns (decision 0045), and an account the ships
|
|
145
|
+
* its person ship owns; a ship answers the sender of a message it received;
|
|
146
|
+
* a plugin argo connected reads every ship; and the installation manages
|
|
147
|
+
* person ships and the ships they own (decision 0020). The viewer reads
|
|
148
|
+
* every ship while that is on, and every actor reaches every ship by every
|
|
149
|
+
* verb while open is. Otherwise a rule of the verb must match the sender
|
|
150
|
+
* with its `from` and the recipient with its `to`: one of the fleet's own,
|
|
151
|
+
* named by its place in that list, or a declared one, named by its declarer
|
|
152
|
+
* and its place in the declarer's list. The built-in rules come first, in
|
|
153
|
+
* that order, as the rule list shows them.
|
|
187
154
|
*/
|
|
188
|
-
export declare function reachRuleOf(
|
|
155
|
+
export declare function reachRuleOf(inForce: RulesInForce, send: {
|
|
189
156
|
verb: NetworkVerb;
|
|
190
|
-
sender:
|
|
157
|
+
sender: ReachingActor;
|
|
191
158
|
recipient: ReachingShip;
|
|
192
159
|
isAnswerToSender: boolean;
|
|
193
160
|
}): ReachRule | undefined;
|
|
194
|
-
/** A built-in rule,
|
|
161
|
+
/** A built-in rule, one of the fleet's own rules by its place in that list, or a declared rule by its declarer and its place in the declarer's list. */
|
|
195
162
|
export type ReachRule = {
|
|
196
163
|
builtIn: BuiltInRule;
|
|
197
164
|
} | {
|
|
165
|
+
rule: number;
|
|
166
|
+
} | {
|
|
167
|
+
declared: LabelOwner;
|
|
198
168
|
index: number;
|
|
199
169
|
};
|
|
200
|
-
/** Whether the
|
|
201
|
-
export declare function allowsReach(
|
|
170
|
+
/** Whether the rules in force let the sender do the verb to the recipient: some rule does (see reachRuleOf). */
|
|
171
|
+
export declare function allowsReach(inForce: RulesInForce, send: {
|
|
202
172
|
verb: NetworkVerb;
|
|
203
|
-
sender:
|
|
173
|
+
sender: ReachingActor;
|
|
204
174
|
recipient: ReachingShip;
|
|
205
175
|
isAnswerToSender: boolean;
|
|
206
176
|
}): boolean;
|