@scoutflo/topology-contracts 0.7.3 → 0.7.5

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.
Files changed (36) hide show
  1. package/dist/src/correlation/contracts/families/argocd/index.d.ts +73 -0
  2. package/dist/src/correlation/contracts/families/argocd/index.js +71 -0
  3. package/dist/src/correlation/contracts/families/argocd/index.js.map +1 -0
  4. package/dist/src/correlation/contracts/families/aws/index.d.ts +181 -0
  5. package/dist/src/correlation/contracts/families/aws/index.js +138 -0
  6. package/dist/src/correlation/contracts/families/aws/index.js.map +1 -0
  7. package/dist/src/correlation/contracts/families/github/index.d.ts +71 -0
  8. package/dist/src/correlation/contracts/families/github/index.js +61 -0
  9. package/dist/src/correlation/contracts/families/github/index.js.map +1 -0
  10. package/dist/src/correlation/contracts/families/index.d.ts +906 -0
  11. package/dist/src/correlation/contracts/families/index.js +35 -0
  12. package/dist/src/correlation/contracts/families/index.js.map +1 -0
  13. package/dist/src/correlation/contracts/families/integrations/index.d.ts +467 -0
  14. package/dist/src/correlation/contracts/families/integrations/index.js +357 -0
  15. package/dist/src/correlation/contracts/families/integrations/index.js.map +1 -0
  16. package/dist/src/correlation/contracts/families/kubernetes/index.d.ts +113 -0
  17. package/dist/src/correlation/contracts/families/kubernetes/index.js +100 -0
  18. package/dist/src/correlation/contracts/families/kubernetes/index.js.map +1 -0
  19. package/dist/src/correlation/contracts/index.d.ts +4 -0
  20. package/dist/src/correlation/contracts/index.js +21 -0
  21. package/dist/src/correlation/contracts/index.js.map +1 -0
  22. package/dist/src/correlation/contracts/registry.d.ts +913 -0
  23. package/dist/src/correlation/contracts/registry.js +83 -0
  24. package/dist/src/correlation/contracts/registry.js.map +1 -0
  25. package/dist/src/correlation/contracts/status.d.ts +10 -0
  26. package/dist/src/correlation/contracts/status.js +18 -0
  27. package/dist/src/correlation/contracts/status.js.map +1 -0
  28. package/dist/src/correlation/contracts/types.d.ts +302 -0
  29. package/dist/src/correlation/contracts/types.js +114 -0
  30. package/dist/src/correlation/contracts/types.js.map +1 -0
  31. package/dist/src/correlation/index.d.ts +1 -0
  32. package/dist/src/correlation/index.js +1 -0
  33. package/dist/src/correlation/index.js.map +1 -1
  34. package/dist/test/contracts.test.js +93 -0
  35. package/dist/test/contracts.test.js.map +1 -1
  36. package/package.json +1 -1
@@ -0,0 +1,83 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CONNECTION_CONTRACT_FAMILY_ORDER = exports.ACTIVE_CONNECTION_CONTRACT_REFS = exports.CONNECTION_CONTRACT_REGISTRY_BY_REF = exports.CONNECTION_CONTRACT_REGISTRY = void 0;
4
+ exports.listConnectionContracts = listConnectionContracts;
5
+ exports.getConnectionContract = getConnectionContract;
6
+ exports.listConnectionContractsByStatus = listConnectionContractsByStatus;
7
+ exports.listActiveConnectionContracts = listActiveConnectionContracts;
8
+ exports.listConnectionContractsByFamily = listConnectionContractsByFamily;
9
+ exports.listNonActiveConnectionContracts = listNonActiveConnectionContracts;
10
+ exports.k8sWorkloadCandidateForProvider = k8sWorkloadCandidateForProvider;
11
+ const status_1 = require("./status");
12
+ const types_1 = require("./types");
13
+ const families_1 = require("./families");
14
+ const providers_1 = require("../../providers");
15
+ const topology_1 = require("../../topology");
16
+ exports.CONNECTION_CONTRACT_REGISTRY = families_1.CONNECTION_CONTRACT_FAMILY_REGISTRIES
17
+ .flat();
18
+ function buildConnectionContractIndex(contracts) {
19
+ const byCompositeKey = new Map();
20
+ for (const contract of contracts) {
21
+ const compositeKey = (0, types_1.connectionContractCompositeKey)(contract.key, contract.version);
22
+ if (byCompositeKey.has(compositeKey)) {
23
+ throw new Error(`Duplicate connection contract registration: ${compositeKey}`);
24
+ }
25
+ byCompositeKey.set(compositeKey, contract);
26
+ }
27
+ return byCompositeKey;
28
+ }
29
+ exports.CONNECTION_CONTRACT_REGISTRY_BY_REF = buildConnectionContractIndex(exports.CONNECTION_CONTRACT_REGISTRY);
30
+ exports.ACTIVE_CONNECTION_CONTRACT_REFS = exports.CONNECTION_CONTRACT_REGISTRY
31
+ .filter((contract) => contract.status === status_1.CONNECTION_CONTRACT_STATUS.ACTIVE)
32
+ .map(types_1.connectionContractRef);
33
+ function listConnectionContracts() {
34
+ return exports.CONNECTION_CONTRACT_REGISTRY;
35
+ }
36
+ function getConnectionContract(key, version) {
37
+ return exports.CONNECTION_CONTRACT_REGISTRY_BY_REF.get((0, types_1.connectionContractCompositeKey)(key, version));
38
+ }
39
+ function listConnectionContractsByStatus(status) {
40
+ return exports.CONNECTION_CONTRACT_REGISTRY.filter((contract) => contract.status === status);
41
+ }
42
+ function listActiveConnectionContracts() {
43
+ return listConnectionContractsByStatus(status_1.CONNECTION_CONTRACT_STATUS.ACTIVE);
44
+ }
45
+ function listConnectionContractsByFamily(family) {
46
+ return exports.CONNECTION_CONTRACT_REGISTRY.filter((contract) => contract.family === family);
47
+ }
48
+ function listNonActiveConnectionContracts() {
49
+ return exports.CONNECTION_CONTRACT_REGISTRY.filter((contract) => contract.status !== status_1.CONNECTION_CONTRACT_STATUS.ACTIVE);
50
+ }
51
+ const KUBERNETES_WORKLOAD_RESOURCE_TYPES = new Set([
52
+ topology_1.TOPOLOGY_RESOURCE_TYPE.KUBERNETES_DEPLOYMENT,
53
+ topology_1.TOPOLOGY_RESOURCE_TYPE.KUBERNETES_STATEFUL_SET,
54
+ topology_1.TOPOLOGY_RESOURCE_TYPE.KUBERNETES_DAEMON_SET,
55
+ topology_1.TOPOLOGY_RESOURCE_TYPE.KUBERNETES_JOB,
56
+ topology_1.TOPOLOGY_RESOURCE_TYPE.KUBERNETES_CRON_JOB,
57
+ ]);
58
+ function endpointIncludesKubernetesWorkload(contract) {
59
+ const endpoint = contract.source_endpoint;
60
+ const resourceTypes = endpoint.resource_types || (endpoint.resource_type ? [endpoint.resource_type] : []);
61
+ return (endpoint.entity_type === 'resource' &&
62
+ endpoint.provider === providers_1.TOPOLOGY_PROVIDER.K8S &&
63
+ resourceTypes.some((resourceType) => KUBERNETES_WORKLOAD_RESOURCE_TYPES.has(resourceType)));
64
+ }
65
+ function k8sWorkloadCandidateForProvider(provider) {
66
+ const parsedProvider = providers_1.topologyProviderSchema.safeParse(provider.trim().toLowerCase());
67
+ if (!parsedProvider.success) {
68
+ return undefined;
69
+ }
70
+ return exports.CONNECTION_CONTRACT_REGISTRY.find((contract) => contract.status === status_1.CONNECTION_CONTRACT_STATUS.CANDIDATE &&
71
+ contract.family === types_1.CONNECTION_CONTRACT_FAMILY.INTEGRATIONS &&
72
+ endpointIncludesKubernetesWorkload(contract) &&
73
+ contract.target_endpoint.entity_type === 'resource' &&
74
+ contract.target_endpoint.provider === parsedProvider.data);
75
+ }
76
+ exports.CONNECTION_CONTRACT_FAMILY_ORDER = [
77
+ types_1.CONNECTION_CONTRACT_FAMILY.AWS,
78
+ types_1.CONNECTION_CONTRACT_FAMILY.KUBERNETES,
79
+ types_1.CONNECTION_CONTRACT_FAMILY.GITHUB,
80
+ types_1.CONNECTION_CONTRACT_FAMILY.ARGOCD,
81
+ types_1.CONNECTION_CONTRACT_FAMILY.INTEGRATIONS,
82
+ ];
83
+ //# sourceMappingURL=registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../../src/correlation/contracts/registry.ts"],"names":[],"mappings":";;;AAuCA,0DAEC;AAED,sDAKC;AAED,0EAIC;AAED,sEAEC;AAED,0EAIC;AAED,4EAEC;AAqBD,0EAcC;AAvGD,qCAAqF;AACrF,mCAMiB;AACjB,yCAAmE;AACnE,+CAA4E;AAC5E,6CAAmF;AAEtE,QAAA,4BAA4B,GAAG,gDAAqC;KAC9E,IAAI,EAAkD,CAAC;AAE1D,SAAS,4BAA4B,CACnC,SAAgD;IAEhD,MAAM,cAAc,GAAG,IAAI,GAAG,EAAsC,CAAC;IAErE,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,MAAM,YAAY,GAAG,IAAA,sCAA8B,EAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;QACpF,IAAI,cAAc,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;YACrC,MAAM,IAAI,KAAK,CAAC,+CAA+C,YAAY,EAAE,CAAC,CAAC;QACjF,CAAC;QACD,cAAc,CAAC,GAAG,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IAC7C,CAAC;IAED,OAAO,cAAc,CAAC;AACxB,CAAC;AAEY,QAAA,mCAAmC,GAAG,4BAA4B,CAC7E,oCAA4B,CAC7B,CAAC;AAEW,QAAA,+BAA+B,GAAG,oCAA4B;KACxE,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,KAAK,mCAA0B,CAAC,MAAM,CAAC;KAC3E,GAAG,CAAC,6BAAqB,CAAC,CAAC;AAE9B,SAAgB,uBAAuB;IACrC,OAAO,oCAA4B,CAAC;AACtC,CAAC;AAED,SAAgB,qBAAqB,CACnC,GAAW,EACX,OAAe;IAEf,OAAO,2CAAmC,CAAC,GAAG,CAAC,IAAA,sCAA8B,EAAC,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC;AAC/F,CAAC;AAED,SAAgB,+BAA+B,CAC7C,MAAgC;IAEhC,OAAO,oCAA4B,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC;AACvF,CAAC;AAED,SAAgB,6BAA6B;IAC3C,OAAO,+BAA+B,CAAC,mCAA0B,CAAC,MAAM,CAAC,CAAC;AAC5E,CAAC;AAED,SAAgB,+BAA+B,CAC7C,MAAgC;IAEhC,OAAO,oCAA4B,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC;AACvF,CAAC;AAED,SAAgB,gCAAgC;IAC9C,OAAO,oCAA4B,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,KAAK,mCAA0B,CAAC,MAAM,CAAC,CAAC;AAClH,CAAC;AAED,MAAM,kCAAkC,GAAG,IAAI,GAAG,CAAuB;IACvE,iCAAsB,CAAC,qBAAqB;IAC5C,iCAAsB,CAAC,uBAAuB;IAC9C,iCAAsB,CAAC,qBAAqB;IAC5C,iCAAsB,CAAC,cAAc;IACrC,iCAAsB,CAAC,mBAAmB;CAC3C,CAAC,CAAC;AAEH,SAAS,kCAAkC,CAAC,QAAoC;IAC9E,MAAM,QAAQ,GAAG,QAAQ,CAAC,eAAe,CAAC;IAC1C,MAAM,aAAa,GAAG,QAAQ,CAAC,cAAc,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAE1G,OAAO,CACL,QAAQ,CAAC,WAAW,KAAK,UAAU;QACnC,QAAQ,CAAC,QAAQ,KAAK,6BAAiB,CAAC,GAAG;QAC3C,aAAa,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,kCAAkC,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAC3F,CAAC;AACJ,CAAC;AAED,SAAgB,+BAA+B,CAAC,QAAgB;IAC9D,MAAM,cAAc,GAAG,kCAAsB,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;IACvF,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC;QAC5B,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,OAAO,oCAA4B,CAAC,IAAI,CACtC,CAAC,QAAQ,EAAE,EAAE,CACX,QAAQ,CAAC,MAAM,KAAK,mCAA0B,CAAC,SAAS;QACxD,QAAQ,CAAC,MAAM,KAAK,kCAA0B,CAAC,YAAY;QAC3D,kCAAkC,CAAC,QAAQ,CAAC;QAC5C,QAAQ,CAAC,eAAe,CAAC,WAAW,KAAK,UAAU;QACnD,QAAQ,CAAC,eAAe,CAAC,QAAQ,KAAK,cAAc,CAAC,IAAI,CAC5D,CAAC;AACJ,CAAC;AAEY,QAAA,gCAAgC,GAAG;IAC9C,kCAA0B,CAAC,GAAG;IAC9B,kCAA0B,CAAC,UAAU;IACrC,kCAA0B,CAAC,MAAM;IACjC,kCAA0B,CAAC,MAAM;IACjC,kCAA0B,CAAC,YAAY;CAC/B,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { z } from 'zod';
2
+ export declare const CONNECTION_CONTRACT_STATUS: {
3
+ readonly ACTIVE: "active";
4
+ readonly CANDIDATE: "candidate";
5
+ readonly EXPERIMENTAL: "experimental";
6
+ readonly RESERVED: "reserved";
7
+ };
8
+ export declare const CONNECTION_CONTRACT_STATUS_VALUES: readonly ["active", "candidate", "experimental", "reserved"];
9
+ export declare const connectionContractStatusSchema: z.ZodEnum<["active", "candidate", "experimental", "reserved"]>;
10
+ export type ConnectionContractStatus = z.infer<typeof connectionContractStatusSchema>;
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.connectionContractStatusSchema = exports.CONNECTION_CONTRACT_STATUS_VALUES = exports.CONNECTION_CONTRACT_STATUS = void 0;
4
+ const zod_1 = require("zod");
5
+ exports.CONNECTION_CONTRACT_STATUS = {
6
+ ACTIVE: 'active',
7
+ CANDIDATE: 'candidate',
8
+ EXPERIMENTAL: 'experimental',
9
+ RESERVED: 'reserved',
10
+ };
11
+ exports.CONNECTION_CONTRACT_STATUS_VALUES = [
12
+ exports.CONNECTION_CONTRACT_STATUS.ACTIVE,
13
+ exports.CONNECTION_CONTRACT_STATUS.CANDIDATE,
14
+ exports.CONNECTION_CONTRACT_STATUS.EXPERIMENTAL,
15
+ exports.CONNECTION_CONTRACT_STATUS.RESERVED,
16
+ ];
17
+ exports.connectionContractStatusSchema = zod_1.z.enum(exports.CONNECTION_CONTRACT_STATUS_VALUES);
18
+ //# sourceMappingURL=status.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"status.js","sourceRoot":"","sources":["../../../../src/correlation/contracts/status.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AAEX,QAAA,0BAA0B,GAAG;IACxC,MAAM,EAAE,QAAQ;IAChB,SAAS,EAAE,WAAW;IACtB,YAAY,EAAE,cAAc;IAC5B,QAAQ,EAAE,UAAU;CACZ,CAAC;AAEE,QAAA,iCAAiC,GAAG;IAC/C,kCAA0B,CAAC,MAAM;IACjC,kCAA0B,CAAC,SAAS;IACpC,kCAA0B,CAAC,YAAY;IACvC,kCAA0B,CAAC,QAAQ;CAC3B,CAAC;AAEE,QAAA,8BAA8B,GAAG,OAAC,CAAC,IAAI,CAAC,yCAAiC,CAAC,CAAC"}
@@ -0,0 +1,302 @@
1
+ import { z } from 'zod';
2
+ import type { TopologyProvider } from '../../providers';
3
+ import type { TopologyRelationType, TopologyResourceType } from '../../topology';
4
+ import { type ConnectionContractStatus } from './status';
5
+ export declare const CONNECTION_CONTRACT_FAMILY: {
6
+ readonly AWS: "aws";
7
+ readonly KUBERNETES: "kubernetes";
8
+ readonly GITHUB: "github";
9
+ readonly ARGOCD: "argocd";
10
+ readonly INTEGRATIONS: "integrations";
11
+ };
12
+ export declare const CONNECTION_CONTRACT_FAMILY_VALUES: readonly ["aws", "kubernetes", "github", "argocd", "integrations"];
13
+ export declare const CONNECTION_CONTRACT_EVIDENCE_LEVEL: {
14
+ readonly IMPLEMENTED: "implemented";
15
+ readonly CODE_EVIDENCE: "code_evidence";
16
+ readonly PLANNED: "planned";
17
+ readonly PRE_PROD_VALIDATION: "pre_prod_validation";
18
+ readonly RESERVED_SHAPE: "reserved_shape";
19
+ };
20
+ export declare const CONNECTION_CONTRACT_EVIDENCE_LEVEL_VALUES: readonly ["implemented", "code_evidence", "planned", "pre_prod_validation", "reserved_shape"];
21
+ export declare const CONNECTION_CONTRACT_PROVIDER_CATEGORY: {
22
+ readonly CLOUD: "cloud";
23
+ readonly OBSERVABILITY: "observability";
24
+ readonly LOGGING: "logging";
25
+ readonly TRACING: "tracing";
26
+ readonly VCS: "vcs";
27
+ readonly TICKETING: "ticketing";
28
+ readonly DEPLOYMENT: "deployment";
29
+ readonly ALERTING: "alerting";
30
+ };
31
+ export declare const CONNECTION_CONTRACT_PROVIDER_CATEGORY_VALUES: readonly ["cloud", "observability", "logging", "tracing", "vcs", "ticketing", "deployment", "alerting"];
32
+ export declare const STRUCTURAL_CONTAINMENT_ATTRIBUTE_SCHEMA_KEY = "relationship.structural_containment.v1";
33
+ export declare const VCS_GITHUB_ATTRIBUTE_SCHEMA_KEY = "vcs.github";
34
+ export declare const DEPLOYMENT_ARGOCD_ATTRIBUTE_SCHEMA_KEY = "deployment.argocd";
35
+ export declare const CONTRACT_SCHEMA_MONITORING_PROMETHEUS = "monitoring.prometheus";
36
+ export declare const CONTRACT_SCHEMA_MONITORING_MIMIR = "monitoring.mimir";
37
+ export declare const CONTRACT_SCHEMA_MONITORING_VICTORIAMETRICS = "monitoring.victoriametrics";
38
+ export declare const CONTRACT_SCHEMA_MONITORING_SENTRY = "monitoring.sentry";
39
+ export declare const CONTRACT_SCHEMA_MONITORING_DATADOG = "monitoring.datadog";
40
+ export declare const CONTRACT_SCHEMA_MONITORING_GRAFANA = "monitoring.grafana";
41
+ export declare const CONTRACT_SCHEMA_MONITORING_GROUNDCOVER = "monitoring.groundcover";
42
+ export declare const CONTRACT_SCHEMA_LOGGING_ELK = "logging.elk";
43
+ export declare const CONTRACT_SCHEMA_LOGGING_LOKI = "logging.loki";
44
+ export declare const CONTRACT_SCHEMA_LOGGING_VICTORIALOGS = "logging.victorialogs";
45
+ export declare const CONTRACT_SCHEMA_TRACING_TEMPO = "tracing.tempo";
46
+ export declare const CONTRACT_SCHEMA_TRACING_VICTORIATRACES = "tracing.victoriatraces";
47
+ export declare const CONTRACT_SCHEMA_TICKETING_JIRA = "ticketing.jira";
48
+ export declare const CONTRACT_SCHEMA_TICKETING_JSM = "ticketing.jsm";
49
+ export declare const CONTRACT_SCHEMA_ALERTING_PROVIDER_RESERVED = "alerting.provider.reserved";
50
+ export declare const connectionContractFamilySchema: z.ZodEnum<["aws", "kubernetes", "github", "argocd", "integrations"]>;
51
+ export declare const connectionContractEvidenceLevelSchema: z.ZodEnum<["implemented", "code_evidence", "planned", "pre_prod_validation", "reserved_shape"]>;
52
+ export declare const connectionContractProviderCategorySchema: z.ZodEnum<["cloud", "observability", "logging", "tracing", "vcs", "ticketing", "deployment", "alerting"]>;
53
+ export declare const connectionContractEndpointSchema: z.ZodObject<{
54
+ entity_type: z.ZodEnum<["service", "resource"]>;
55
+ resource_type: z.ZodOptional<z.ZodEnum<["aws_account", "vpc", "subnet", "compute_instance", "serverless_function", "load_balancer", "dns_zone", "dns_record", "log_group", "alarm", "container_registry", "kubernetes_cluster", "kubernetes_namespace", "kubernetes_deployment", "kubernetes_stateful_set", "kubernetes_daemon_set", "kubernetes_job", "kubernetes_cron_job", "kubernetes_service", "database", "cache", "message_queue", "object_storage", "vcs", "ci_cd", "alerting", "monitoring", "infrastructure_management", "secrets_manager", "network", "web_application_firewall", "cdn", "saas_vendor", "custom"]>>;
56
+ resource_types: z.ZodOptional<z.ZodArray<z.ZodEnum<["aws_account", "vpc", "subnet", "compute_instance", "serverless_function", "load_balancer", "dns_zone", "dns_record", "log_group", "alarm", "container_registry", "kubernetes_cluster", "kubernetes_namespace", "kubernetes_deployment", "kubernetes_stateful_set", "kubernetes_daemon_set", "kubernetes_job", "kubernetes_cron_job", "kubernetes_service", "database", "cache", "message_queue", "object_storage", "vcs", "ci_cd", "alerting", "monitoring", "infrastructure_management", "secrets_manager", "network", "web_application_firewall", "cdn", "saas_vendor", "custom"]>, "many">>;
57
+ source_type: z.ZodOptional<z.ZodString>;
58
+ family: z.ZodOptional<z.ZodString>;
59
+ provider: z.ZodOptional<z.ZodEnum<["aws", "k8s", "gcp", "azure", "sentry", "prometheus", "grafana", "loki", "tempo", "mimir", "victoriametrics", "victorialogs", "victoriatraces", "github", "gitlab", "bitbucket", "argocd", "datadog", "groundcover", "elk", "pagerduty", "zenduty", "correlation", "jira", "confluence", "jsm", "custom"]>>;
60
+ label: z.ZodOptional<z.ZodString>;
61
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
62
+ entity_type: z.ZodEnum<["service", "resource"]>;
63
+ resource_type: z.ZodOptional<z.ZodEnum<["aws_account", "vpc", "subnet", "compute_instance", "serverless_function", "load_balancer", "dns_zone", "dns_record", "log_group", "alarm", "container_registry", "kubernetes_cluster", "kubernetes_namespace", "kubernetes_deployment", "kubernetes_stateful_set", "kubernetes_daemon_set", "kubernetes_job", "kubernetes_cron_job", "kubernetes_service", "database", "cache", "message_queue", "object_storage", "vcs", "ci_cd", "alerting", "monitoring", "infrastructure_management", "secrets_manager", "network", "web_application_firewall", "cdn", "saas_vendor", "custom"]>>;
64
+ resource_types: z.ZodOptional<z.ZodArray<z.ZodEnum<["aws_account", "vpc", "subnet", "compute_instance", "serverless_function", "load_balancer", "dns_zone", "dns_record", "log_group", "alarm", "container_registry", "kubernetes_cluster", "kubernetes_namespace", "kubernetes_deployment", "kubernetes_stateful_set", "kubernetes_daemon_set", "kubernetes_job", "kubernetes_cron_job", "kubernetes_service", "database", "cache", "message_queue", "object_storage", "vcs", "ci_cd", "alerting", "monitoring", "infrastructure_management", "secrets_manager", "network", "web_application_firewall", "cdn", "saas_vendor", "custom"]>, "many">>;
65
+ source_type: z.ZodOptional<z.ZodString>;
66
+ family: z.ZodOptional<z.ZodString>;
67
+ provider: z.ZodOptional<z.ZodEnum<["aws", "k8s", "gcp", "azure", "sentry", "prometheus", "grafana", "loki", "tempo", "mimir", "victoriametrics", "victorialogs", "victoriatraces", "github", "gitlab", "bitbucket", "argocd", "datadog", "groundcover", "elk", "pagerduty", "zenduty", "correlation", "jira", "confluence", "jsm", "custom"]>>;
68
+ label: z.ZodOptional<z.ZodString>;
69
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
70
+ entity_type: z.ZodEnum<["service", "resource"]>;
71
+ resource_type: z.ZodOptional<z.ZodEnum<["aws_account", "vpc", "subnet", "compute_instance", "serverless_function", "load_balancer", "dns_zone", "dns_record", "log_group", "alarm", "container_registry", "kubernetes_cluster", "kubernetes_namespace", "kubernetes_deployment", "kubernetes_stateful_set", "kubernetes_daemon_set", "kubernetes_job", "kubernetes_cron_job", "kubernetes_service", "database", "cache", "message_queue", "object_storage", "vcs", "ci_cd", "alerting", "monitoring", "infrastructure_management", "secrets_manager", "network", "web_application_firewall", "cdn", "saas_vendor", "custom"]>>;
72
+ resource_types: z.ZodOptional<z.ZodArray<z.ZodEnum<["aws_account", "vpc", "subnet", "compute_instance", "serverless_function", "load_balancer", "dns_zone", "dns_record", "log_group", "alarm", "container_registry", "kubernetes_cluster", "kubernetes_namespace", "kubernetes_deployment", "kubernetes_stateful_set", "kubernetes_daemon_set", "kubernetes_job", "kubernetes_cron_job", "kubernetes_service", "database", "cache", "message_queue", "object_storage", "vcs", "ci_cd", "alerting", "monitoring", "infrastructure_management", "secrets_manager", "network", "web_application_firewall", "cdn", "saas_vendor", "custom"]>, "many">>;
73
+ source_type: z.ZodOptional<z.ZodString>;
74
+ family: z.ZodOptional<z.ZodString>;
75
+ provider: z.ZodOptional<z.ZodEnum<["aws", "k8s", "gcp", "azure", "sentry", "prometheus", "grafana", "loki", "tempo", "mimir", "victoriametrics", "victorialogs", "victoriatraces", "github", "gitlab", "bitbucket", "argocd", "datadog", "groundcover", "elk", "pagerduty", "zenduty", "correlation", "jira", "confluence", "jsm", "custom"]>>;
76
+ label: z.ZodOptional<z.ZodString>;
77
+ }, z.ZodTypeAny, "passthrough">>;
78
+ export declare const connectionContractMetadataSchema: z.ZodObject<{
79
+ key: z.ZodString;
80
+ version: z.ZodString;
81
+ status: z.ZodEnum<["active", "candidate", "experimental", "reserved"]>;
82
+ family: z.ZodEnum<["aws", "kubernetes", "github", "argocd", "integrations"]>;
83
+ source_endpoint: z.ZodObject<{
84
+ entity_type: z.ZodEnum<["service", "resource"]>;
85
+ resource_type: z.ZodOptional<z.ZodEnum<["aws_account", "vpc", "subnet", "compute_instance", "serverless_function", "load_balancer", "dns_zone", "dns_record", "log_group", "alarm", "container_registry", "kubernetes_cluster", "kubernetes_namespace", "kubernetes_deployment", "kubernetes_stateful_set", "kubernetes_daemon_set", "kubernetes_job", "kubernetes_cron_job", "kubernetes_service", "database", "cache", "message_queue", "object_storage", "vcs", "ci_cd", "alerting", "monitoring", "infrastructure_management", "secrets_manager", "network", "web_application_firewall", "cdn", "saas_vendor", "custom"]>>;
86
+ resource_types: z.ZodOptional<z.ZodArray<z.ZodEnum<["aws_account", "vpc", "subnet", "compute_instance", "serverless_function", "load_balancer", "dns_zone", "dns_record", "log_group", "alarm", "container_registry", "kubernetes_cluster", "kubernetes_namespace", "kubernetes_deployment", "kubernetes_stateful_set", "kubernetes_daemon_set", "kubernetes_job", "kubernetes_cron_job", "kubernetes_service", "database", "cache", "message_queue", "object_storage", "vcs", "ci_cd", "alerting", "monitoring", "infrastructure_management", "secrets_manager", "network", "web_application_firewall", "cdn", "saas_vendor", "custom"]>, "many">>;
87
+ source_type: z.ZodOptional<z.ZodString>;
88
+ family: z.ZodOptional<z.ZodString>;
89
+ provider: z.ZodOptional<z.ZodEnum<["aws", "k8s", "gcp", "azure", "sentry", "prometheus", "grafana", "loki", "tempo", "mimir", "victoriametrics", "victorialogs", "victoriatraces", "github", "gitlab", "bitbucket", "argocd", "datadog", "groundcover", "elk", "pagerduty", "zenduty", "correlation", "jira", "confluence", "jsm", "custom"]>>;
90
+ label: z.ZodOptional<z.ZodString>;
91
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
92
+ entity_type: z.ZodEnum<["service", "resource"]>;
93
+ resource_type: z.ZodOptional<z.ZodEnum<["aws_account", "vpc", "subnet", "compute_instance", "serverless_function", "load_balancer", "dns_zone", "dns_record", "log_group", "alarm", "container_registry", "kubernetes_cluster", "kubernetes_namespace", "kubernetes_deployment", "kubernetes_stateful_set", "kubernetes_daemon_set", "kubernetes_job", "kubernetes_cron_job", "kubernetes_service", "database", "cache", "message_queue", "object_storage", "vcs", "ci_cd", "alerting", "monitoring", "infrastructure_management", "secrets_manager", "network", "web_application_firewall", "cdn", "saas_vendor", "custom"]>>;
94
+ resource_types: z.ZodOptional<z.ZodArray<z.ZodEnum<["aws_account", "vpc", "subnet", "compute_instance", "serverless_function", "load_balancer", "dns_zone", "dns_record", "log_group", "alarm", "container_registry", "kubernetes_cluster", "kubernetes_namespace", "kubernetes_deployment", "kubernetes_stateful_set", "kubernetes_daemon_set", "kubernetes_job", "kubernetes_cron_job", "kubernetes_service", "database", "cache", "message_queue", "object_storage", "vcs", "ci_cd", "alerting", "monitoring", "infrastructure_management", "secrets_manager", "network", "web_application_firewall", "cdn", "saas_vendor", "custom"]>, "many">>;
95
+ source_type: z.ZodOptional<z.ZodString>;
96
+ family: z.ZodOptional<z.ZodString>;
97
+ provider: z.ZodOptional<z.ZodEnum<["aws", "k8s", "gcp", "azure", "sentry", "prometheus", "grafana", "loki", "tempo", "mimir", "victoriametrics", "victorialogs", "victoriatraces", "github", "gitlab", "bitbucket", "argocd", "datadog", "groundcover", "elk", "pagerduty", "zenduty", "correlation", "jira", "confluence", "jsm", "custom"]>>;
98
+ label: z.ZodOptional<z.ZodString>;
99
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
100
+ entity_type: z.ZodEnum<["service", "resource"]>;
101
+ resource_type: z.ZodOptional<z.ZodEnum<["aws_account", "vpc", "subnet", "compute_instance", "serverless_function", "load_balancer", "dns_zone", "dns_record", "log_group", "alarm", "container_registry", "kubernetes_cluster", "kubernetes_namespace", "kubernetes_deployment", "kubernetes_stateful_set", "kubernetes_daemon_set", "kubernetes_job", "kubernetes_cron_job", "kubernetes_service", "database", "cache", "message_queue", "object_storage", "vcs", "ci_cd", "alerting", "monitoring", "infrastructure_management", "secrets_manager", "network", "web_application_firewall", "cdn", "saas_vendor", "custom"]>>;
102
+ resource_types: z.ZodOptional<z.ZodArray<z.ZodEnum<["aws_account", "vpc", "subnet", "compute_instance", "serverless_function", "load_balancer", "dns_zone", "dns_record", "log_group", "alarm", "container_registry", "kubernetes_cluster", "kubernetes_namespace", "kubernetes_deployment", "kubernetes_stateful_set", "kubernetes_daemon_set", "kubernetes_job", "kubernetes_cron_job", "kubernetes_service", "database", "cache", "message_queue", "object_storage", "vcs", "ci_cd", "alerting", "monitoring", "infrastructure_management", "secrets_manager", "network", "web_application_firewall", "cdn", "saas_vendor", "custom"]>, "many">>;
103
+ source_type: z.ZodOptional<z.ZodString>;
104
+ family: z.ZodOptional<z.ZodString>;
105
+ provider: z.ZodOptional<z.ZodEnum<["aws", "k8s", "gcp", "azure", "sentry", "prometheus", "grafana", "loki", "tempo", "mimir", "victoriametrics", "victorialogs", "victoriatraces", "github", "gitlab", "bitbucket", "argocd", "datadog", "groundcover", "elk", "pagerduty", "zenduty", "correlation", "jira", "confluence", "jsm", "custom"]>>;
106
+ label: z.ZodOptional<z.ZodString>;
107
+ }, z.ZodTypeAny, "passthrough">>;
108
+ relation: z.ZodEnum<["DEPLOYED_ON", "DEPLOYED_AS", "RUNS_ON", "PART_OF", "CALLS", "PUBLISHES_TO", "SUBSCRIBES_TO", "CONSUMES", "PROVIDES", "PROXIES", "ROUTES_TO", "DEPENDS_ON", "AGGREGATES", "COMPOSES", "USES", "STORES_DATA_IN", "CACHES_IN", "CONFIGURED_BY", "EXPOSED_VIA", "PROTECTED_BY", "AUTHENTICATES_WITH", "OWNS", "OBSERVES", "MONITORED_BY", "SENDS_METRICS_TO", "SENDS_LOGS_TO", "SENDS_TRACES_TO", "CONNECTS_TO", "REPLICATES", "BACKS_UP", "MIRRORS", "TRIGGERS", "MIGRATES_TO", "REPLACES", "REPLICATED_FROM"]>;
109
+ target_endpoint: z.ZodObject<{
110
+ entity_type: z.ZodEnum<["service", "resource"]>;
111
+ resource_type: z.ZodOptional<z.ZodEnum<["aws_account", "vpc", "subnet", "compute_instance", "serverless_function", "load_balancer", "dns_zone", "dns_record", "log_group", "alarm", "container_registry", "kubernetes_cluster", "kubernetes_namespace", "kubernetes_deployment", "kubernetes_stateful_set", "kubernetes_daemon_set", "kubernetes_job", "kubernetes_cron_job", "kubernetes_service", "database", "cache", "message_queue", "object_storage", "vcs", "ci_cd", "alerting", "monitoring", "infrastructure_management", "secrets_manager", "network", "web_application_firewall", "cdn", "saas_vendor", "custom"]>>;
112
+ resource_types: z.ZodOptional<z.ZodArray<z.ZodEnum<["aws_account", "vpc", "subnet", "compute_instance", "serverless_function", "load_balancer", "dns_zone", "dns_record", "log_group", "alarm", "container_registry", "kubernetes_cluster", "kubernetes_namespace", "kubernetes_deployment", "kubernetes_stateful_set", "kubernetes_daemon_set", "kubernetes_job", "kubernetes_cron_job", "kubernetes_service", "database", "cache", "message_queue", "object_storage", "vcs", "ci_cd", "alerting", "monitoring", "infrastructure_management", "secrets_manager", "network", "web_application_firewall", "cdn", "saas_vendor", "custom"]>, "many">>;
113
+ source_type: z.ZodOptional<z.ZodString>;
114
+ family: z.ZodOptional<z.ZodString>;
115
+ provider: z.ZodOptional<z.ZodEnum<["aws", "k8s", "gcp", "azure", "sentry", "prometheus", "grafana", "loki", "tempo", "mimir", "victoriametrics", "victorialogs", "victoriatraces", "github", "gitlab", "bitbucket", "argocd", "datadog", "groundcover", "elk", "pagerduty", "zenduty", "correlation", "jira", "confluence", "jsm", "custom"]>>;
116
+ label: z.ZodOptional<z.ZodString>;
117
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
118
+ entity_type: z.ZodEnum<["service", "resource"]>;
119
+ resource_type: z.ZodOptional<z.ZodEnum<["aws_account", "vpc", "subnet", "compute_instance", "serverless_function", "load_balancer", "dns_zone", "dns_record", "log_group", "alarm", "container_registry", "kubernetes_cluster", "kubernetes_namespace", "kubernetes_deployment", "kubernetes_stateful_set", "kubernetes_daemon_set", "kubernetes_job", "kubernetes_cron_job", "kubernetes_service", "database", "cache", "message_queue", "object_storage", "vcs", "ci_cd", "alerting", "monitoring", "infrastructure_management", "secrets_manager", "network", "web_application_firewall", "cdn", "saas_vendor", "custom"]>>;
120
+ resource_types: z.ZodOptional<z.ZodArray<z.ZodEnum<["aws_account", "vpc", "subnet", "compute_instance", "serverless_function", "load_balancer", "dns_zone", "dns_record", "log_group", "alarm", "container_registry", "kubernetes_cluster", "kubernetes_namespace", "kubernetes_deployment", "kubernetes_stateful_set", "kubernetes_daemon_set", "kubernetes_job", "kubernetes_cron_job", "kubernetes_service", "database", "cache", "message_queue", "object_storage", "vcs", "ci_cd", "alerting", "monitoring", "infrastructure_management", "secrets_manager", "network", "web_application_firewall", "cdn", "saas_vendor", "custom"]>, "many">>;
121
+ source_type: z.ZodOptional<z.ZodString>;
122
+ family: z.ZodOptional<z.ZodString>;
123
+ provider: z.ZodOptional<z.ZodEnum<["aws", "k8s", "gcp", "azure", "sentry", "prometheus", "grafana", "loki", "tempo", "mimir", "victoriametrics", "victorialogs", "victoriatraces", "github", "gitlab", "bitbucket", "argocd", "datadog", "groundcover", "elk", "pagerduty", "zenduty", "correlation", "jira", "confluence", "jsm", "custom"]>>;
124
+ label: z.ZodOptional<z.ZodString>;
125
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
126
+ entity_type: z.ZodEnum<["service", "resource"]>;
127
+ resource_type: z.ZodOptional<z.ZodEnum<["aws_account", "vpc", "subnet", "compute_instance", "serverless_function", "load_balancer", "dns_zone", "dns_record", "log_group", "alarm", "container_registry", "kubernetes_cluster", "kubernetes_namespace", "kubernetes_deployment", "kubernetes_stateful_set", "kubernetes_daemon_set", "kubernetes_job", "kubernetes_cron_job", "kubernetes_service", "database", "cache", "message_queue", "object_storage", "vcs", "ci_cd", "alerting", "monitoring", "infrastructure_management", "secrets_manager", "network", "web_application_firewall", "cdn", "saas_vendor", "custom"]>>;
128
+ resource_types: z.ZodOptional<z.ZodArray<z.ZodEnum<["aws_account", "vpc", "subnet", "compute_instance", "serverless_function", "load_balancer", "dns_zone", "dns_record", "log_group", "alarm", "container_registry", "kubernetes_cluster", "kubernetes_namespace", "kubernetes_deployment", "kubernetes_stateful_set", "kubernetes_daemon_set", "kubernetes_job", "kubernetes_cron_job", "kubernetes_service", "database", "cache", "message_queue", "object_storage", "vcs", "ci_cd", "alerting", "monitoring", "infrastructure_management", "secrets_manager", "network", "web_application_firewall", "cdn", "saas_vendor", "custom"]>, "many">>;
129
+ source_type: z.ZodOptional<z.ZodString>;
130
+ family: z.ZodOptional<z.ZodString>;
131
+ provider: z.ZodOptional<z.ZodEnum<["aws", "k8s", "gcp", "azure", "sentry", "prometheus", "grafana", "loki", "tempo", "mimir", "victoriametrics", "victorialogs", "victoriatraces", "github", "gitlab", "bitbucket", "argocd", "datadog", "groundcover", "elk", "pagerduty", "zenduty", "correlation", "jira", "confluence", "jsm", "custom"]>>;
132
+ label: z.ZodOptional<z.ZodString>;
133
+ }, z.ZodTypeAny, "passthrough">>;
134
+ relation_class: z.ZodEnum<["structural", "associative"]>;
135
+ attribute_schema_key: z.ZodString;
136
+ evidence_level: z.ZodEnum<["implemented", "code_evidence", "planned", "pre_prod_validation", "reserved_shape"]>;
137
+ provider_family: z.ZodOptional<z.ZodString>;
138
+ provider_category: z.ZodOptional<z.ZodEnum<["cloud", "observability", "logging", "tracing", "vcs", "ticketing", "deployment", "alerting"]>>;
139
+ notes: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
140
+ guardrails: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
141
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
142
+ key: z.ZodString;
143
+ version: z.ZodString;
144
+ status: z.ZodEnum<["active", "candidate", "experimental", "reserved"]>;
145
+ family: z.ZodEnum<["aws", "kubernetes", "github", "argocd", "integrations"]>;
146
+ source_endpoint: z.ZodObject<{
147
+ entity_type: z.ZodEnum<["service", "resource"]>;
148
+ resource_type: z.ZodOptional<z.ZodEnum<["aws_account", "vpc", "subnet", "compute_instance", "serverless_function", "load_balancer", "dns_zone", "dns_record", "log_group", "alarm", "container_registry", "kubernetes_cluster", "kubernetes_namespace", "kubernetes_deployment", "kubernetes_stateful_set", "kubernetes_daemon_set", "kubernetes_job", "kubernetes_cron_job", "kubernetes_service", "database", "cache", "message_queue", "object_storage", "vcs", "ci_cd", "alerting", "monitoring", "infrastructure_management", "secrets_manager", "network", "web_application_firewall", "cdn", "saas_vendor", "custom"]>>;
149
+ resource_types: z.ZodOptional<z.ZodArray<z.ZodEnum<["aws_account", "vpc", "subnet", "compute_instance", "serverless_function", "load_balancer", "dns_zone", "dns_record", "log_group", "alarm", "container_registry", "kubernetes_cluster", "kubernetes_namespace", "kubernetes_deployment", "kubernetes_stateful_set", "kubernetes_daemon_set", "kubernetes_job", "kubernetes_cron_job", "kubernetes_service", "database", "cache", "message_queue", "object_storage", "vcs", "ci_cd", "alerting", "monitoring", "infrastructure_management", "secrets_manager", "network", "web_application_firewall", "cdn", "saas_vendor", "custom"]>, "many">>;
150
+ source_type: z.ZodOptional<z.ZodString>;
151
+ family: z.ZodOptional<z.ZodString>;
152
+ provider: z.ZodOptional<z.ZodEnum<["aws", "k8s", "gcp", "azure", "sentry", "prometheus", "grafana", "loki", "tempo", "mimir", "victoriametrics", "victorialogs", "victoriatraces", "github", "gitlab", "bitbucket", "argocd", "datadog", "groundcover", "elk", "pagerduty", "zenduty", "correlation", "jira", "confluence", "jsm", "custom"]>>;
153
+ label: z.ZodOptional<z.ZodString>;
154
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
155
+ entity_type: z.ZodEnum<["service", "resource"]>;
156
+ resource_type: z.ZodOptional<z.ZodEnum<["aws_account", "vpc", "subnet", "compute_instance", "serverless_function", "load_balancer", "dns_zone", "dns_record", "log_group", "alarm", "container_registry", "kubernetes_cluster", "kubernetes_namespace", "kubernetes_deployment", "kubernetes_stateful_set", "kubernetes_daemon_set", "kubernetes_job", "kubernetes_cron_job", "kubernetes_service", "database", "cache", "message_queue", "object_storage", "vcs", "ci_cd", "alerting", "monitoring", "infrastructure_management", "secrets_manager", "network", "web_application_firewall", "cdn", "saas_vendor", "custom"]>>;
157
+ resource_types: z.ZodOptional<z.ZodArray<z.ZodEnum<["aws_account", "vpc", "subnet", "compute_instance", "serverless_function", "load_balancer", "dns_zone", "dns_record", "log_group", "alarm", "container_registry", "kubernetes_cluster", "kubernetes_namespace", "kubernetes_deployment", "kubernetes_stateful_set", "kubernetes_daemon_set", "kubernetes_job", "kubernetes_cron_job", "kubernetes_service", "database", "cache", "message_queue", "object_storage", "vcs", "ci_cd", "alerting", "monitoring", "infrastructure_management", "secrets_manager", "network", "web_application_firewall", "cdn", "saas_vendor", "custom"]>, "many">>;
158
+ source_type: z.ZodOptional<z.ZodString>;
159
+ family: z.ZodOptional<z.ZodString>;
160
+ provider: z.ZodOptional<z.ZodEnum<["aws", "k8s", "gcp", "azure", "sentry", "prometheus", "grafana", "loki", "tempo", "mimir", "victoriametrics", "victorialogs", "victoriatraces", "github", "gitlab", "bitbucket", "argocd", "datadog", "groundcover", "elk", "pagerduty", "zenduty", "correlation", "jira", "confluence", "jsm", "custom"]>>;
161
+ label: z.ZodOptional<z.ZodString>;
162
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
163
+ entity_type: z.ZodEnum<["service", "resource"]>;
164
+ resource_type: z.ZodOptional<z.ZodEnum<["aws_account", "vpc", "subnet", "compute_instance", "serverless_function", "load_balancer", "dns_zone", "dns_record", "log_group", "alarm", "container_registry", "kubernetes_cluster", "kubernetes_namespace", "kubernetes_deployment", "kubernetes_stateful_set", "kubernetes_daemon_set", "kubernetes_job", "kubernetes_cron_job", "kubernetes_service", "database", "cache", "message_queue", "object_storage", "vcs", "ci_cd", "alerting", "monitoring", "infrastructure_management", "secrets_manager", "network", "web_application_firewall", "cdn", "saas_vendor", "custom"]>>;
165
+ resource_types: z.ZodOptional<z.ZodArray<z.ZodEnum<["aws_account", "vpc", "subnet", "compute_instance", "serverless_function", "load_balancer", "dns_zone", "dns_record", "log_group", "alarm", "container_registry", "kubernetes_cluster", "kubernetes_namespace", "kubernetes_deployment", "kubernetes_stateful_set", "kubernetes_daemon_set", "kubernetes_job", "kubernetes_cron_job", "kubernetes_service", "database", "cache", "message_queue", "object_storage", "vcs", "ci_cd", "alerting", "monitoring", "infrastructure_management", "secrets_manager", "network", "web_application_firewall", "cdn", "saas_vendor", "custom"]>, "many">>;
166
+ source_type: z.ZodOptional<z.ZodString>;
167
+ family: z.ZodOptional<z.ZodString>;
168
+ provider: z.ZodOptional<z.ZodEnum<["aws", "k8s", "gcp", "azure", "sentry", "prometheus", "grafana", "loki", "tempo", "mimir", "victoriametrics", "victorialogs", "victoriatraces", "github", "gitlab", "bitbucket", "argocd", "datadog", "groundcover", "elk", "pagerduty", "zenduty", "correlation", "jira", "confluence", "jsm", "custom"]>>;
169
+ label: z.ZodOptional<z.ZodString>;
170
+ }, z.ZodTypeAny, "passthrough">>;
171
+ relation: z.ZodEnum<["DEPLOYED_ON", "DEPLOYED_AS", "RUNS_ON", "PART_OF", "CALLS", "PUBLISHES_TO", "SUBSCRIBES_TO", "CONSUMES", "PROVIDES", "PROXIES", "ROUTES_TO", "DEPENDS_ON", "AGGREGATES", "COMPOSES", "USES", "STORES_DATA_IN", "CACHES_IN", "CONFIGURED_BY", "EXPOSED_VIA", "PROTECTED_BY", "AUTHENTICATES_WITH", "OWNS", "OBSERVES", "MONITORED_BY", "SENDS_METRICS_TO", "SENDS_LOGS_TO", "SENDS_TRACES_TO", "CONNECTS_TO", "REPLICATES", "BACKS_UP", "MIRRORS", "TRIGGERS", "MIGRATES_TO", "REPLACES", "REPLICATED_FROM"]>;
172
+ target_endpoint: z.ZodObject<{
173
+ entity_type: z.ZodEnum<["service", "resource"]>;
174
+ resource_type: z.ZodOptional<z.ZodEnum<["aws_account", "vpc", "subnet", "compute_instance", "serverless_function", "load_balancer", "dns_zone", "dns_record", "log_group", "alarm", "container_registry", "kubernetes_cluster", "kubernetes_namespace", "kubernetes_deployment", "kubernetes_stateful_set", "kubernetes_daemon_set", "kubernetes_job", "kubernetes_cron_job", "kubernetes_service", "database", "cache", "message_queue", "object_storage", "vcs", "ci_cd", "alerting", "monitoring", "infrastructure_management", "secrets_manager", "network", "web_application_firewall", "cdn", "saas_vendor", "custom"]>>;
175
+ resource_types: z.ZodOptional<z.ZodArray<z.ZodEnum<["aws_account", "vpc", "subnet", "compute_instance", "serverless_function", "load_balancer", "dns_zone", "dns_record", "log_group", "alarm", "container_registry", "kubernetes_cluster", "kubernetes_namespace", "kubernetes_deployment", "kubernetes_stateful_set", "kubernetes_daemon_set", "kubernetes_job", "kubernetes_cron_job", "kubernetes_service", "database", "cache", "message_queue", "object_storage", "vcs", "ci_cd", "alerting", "monitoring", "infrastructure_management", "secrets_manager", "network", "web_application_firewall", "cdn", "saas_vendor", "custom"]>, "many">>;
176
+ source_type: z.ZodOptional<z.ZodString>;
177
+ family: z.ZodOptional<z.ZodString>;
178
+ provider: z.ZodOptional<z.ZodEnum<["aws", "k8s", "gcp", "azure", "sentry", "prometheus", "grafana", "loki", "tempo", "mimir", "victoriametrics", "victorialogs", "victoriatraces", "github", "gitlab", "bitbucket", "argocd", "datadog", "groundcover", "elk", "pagerduty", "zenduty", "correlation", "jira", "confluence", "jsm", "custom"]>>;
179
+ label: z.ZodOptional<z.ZodString>;
180
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
181
+ entity_type: z.ZodEnum<["service", "resource"]>;
182
+ resource_type: z.ZodOptional<z.ZodEnum<["aws_account", "vpc", "subnet", "compute_instance", "serverless_function", "load_balancer", "dns_zone", "dns_record", "log_group", "alarm", "container_registry", "kubernetes_cluster", "kubernetes_namespace", "kubernetes_deployment", "kubernetes_stateful_set", "kubernetes_daemon_set", "kubernetes_job", "kubernetes_cron_job", "kubernetes_service", "database", "cache", "message_queue", "object_storage", "vcs", "ci_cd", "alerting", "monitoring", "infrastructure_management", "secrets_manager", "network", "web_application_firewall", "cdn", "saas_vendor", "custom"]>>;
183
+ resource_types: z.ZodOptional<z.ZodArray<z.ZodEnum<["aws_account", "vpc", "subnet", "compute_instance", "serverless_function", "load_balancer", "dns_zone", "dns_record", "log_group", "alarm", "container_registry", "kubernetes_cluster", "kubernetes_namespace", "kubernetes_deployment", "kubernetes_stateful_set", "kubernetes_daemon_set", "kubernetes_job", "kubernetes_cron_job", "kubernetes_service", "database", "cache", "message_queue", "object_storage", "vcs", "ci_cd", "alerting", "monitoring", "infrastructure_management", "secrets_manager", "network", "web_application_firewall", "cdn", "saas_vendor", "custom"]>, "many">>;
184
+ source_type: z.ZodOptional<z.ZodString>;
185
+ family: z.ZodOptional<z.ZodString>;
186
+ provider: z.ZodOptional<z.ZodEnum<["aws", "k8s", "gcp", "azure", "sentry", "prometheus", "grafana", "loki", "tempo", "mimir", "victoriametrics", "victorialogs", "victoriatraces", "github", "gitlab", "bitbucket", "argocd", "datadog", "groundcover", "elk", "pagerduty", "zenduty", "correlation", "jira", "confluence", "jsm", "custom"]>>;
187
+ label: z.ZodOptional<z.ZodString>;
188
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
189
+ entity_type: z.ZodEnum<["service", "resource"]>;
190
+ resource_type: z.ZodOptional<z.ZodEnum<["aws_account", "vpc", "subnet", "compute_instance", "serverless_function", "load_balancer", "dns_zone", "dns_record", "log_group", "alarm", "container_registry", "kubernetes_cluster", "kubernetes_namespace", "kubernetes_deployment", "kubernetes_stateful_set", "kubernetes_daemon_set", "kubernetes_job", "kubernetes_cron_job", "kubernetes_service", "database", "cache", "message_queue", "object_storage", "vcs", "ci_cd", "alerting", "monitoring", "infrastructure_management", "secrets_manager", "network", "web_application_firewall", "cdn", "saas_vendor", "custom"]>>;
191
+ resource_types: z.ZodOptional<z.ZodArray<z.ZodEnum<["aws_account", "vpc", "subnet", "compute_instance", "serverless_function", "load_balancer", "dns_zone", "dns_record", "log_group", "alarm", "container_registry", "kubernetes_cluster", "kubernetes_namespace", "kubernetes_deployment", "kubernetes_stateful_set", "kubernetes_daemon_set", "kubernetes_job", "kubernetes_cron_job", "kubernetes_service", "database", "cache", "message_queue", "object_storage", "vcs", "ci_cd", "alerting", "monitoring", "infrastructure_management", "secrets_manager", "network", "web_application_firewall", "cdn", "saas_vendor", "custom"]>, "many">>;
192
+ source_type: z.ZodOptional<z.ZodString>;
193
+ family: z.ZodOptional<z.ZodString>;
194
+ provider: z.ZodOptional<z.ZodEnum<["aws", "k8s", "gcp", "azure", "sentry", "prometheus", "grafana", "loki", "tempo", "mimir", "victoriametrics", "victorialogs", "victoriatraces", "github", "gitlab", "bitbucket", "argocd", "datadog", "groundcover", "elk", "pagerduty", "zenduty", "correlation", "jira", "confluence", "jsm", "custom"]>>;
195
+ label: z.ZodOptional<z.ZodString>;
196
+ }, z.ZodTypeAny, "passthrough">>;
197
+ relation_class: z.ZodEnum<["structural", "associative"]>;
198
+ attribute_schema_key: z.ZodString;
199
+ evidence_level: z.ZodEnum<["implemented", "code_evidence", "planned", "pre_prod_validation", "reserved_shape"]>;
200
+ provider_family: z.ZodOptional<z.ZodString>;
201
+ provider_category: z.ZodOptional<z.ZodEnum<["cloud", "observability", "logging", "tracing", "vcs", "ticketing", "deployment", "alerting"]>>;
202
+ notes: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
203
+ guardrails: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
204
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
205
+ key: z.ZodString;
206
+ version: z.ZodString;
207
+ status: z.ZodEnum<["active", "candidate", "experimental", "reserved"]>;
208
+ family: z.ZodEnum<["aws", "kubernetes", "github", "argocd", "integrations"]>;
209
+ source_endpoint: z.ZodObject<{
210
+ entity_type: z.ZodEnum<["service", "resource"]>;
211
+ resource_type: z.ZodOptional<z.ZodEnum<["aws_account", "vpc", "subnet", "compute_instance", "serverless_function", "load_balancer", "dns_zone", "dns_record", "log_group", "alarm", "container_registry", "kubernetes_cluster", "kubernetes_namespace", "kubernetes_deployment", "kubernetes_stateful_set", "kubernetes_daemon_set", "kubernetes_job", "kubernetes_cron_job", "kubernetes_service", "database", "cache", "message_queue", "object_storage", "vcs", "ci_cd", "alerting", "monitoring", "infrastructure_management", "secrets_manager", "network", "web_application_firewall", "cdn", "saas_vendor", "custom"]>>;
212
+ resource_types: z.ZodOptional<z.ZodArray<z.ZodEnum<["aws_account", "vpc", "subnet", "compute_instance", "serverless_function", "load_balancer", "dns_zone", "dns_record", "log_group", "alarm", "container_registry", "kubernetes_cluster", "kubernetes_namespace", "kubernetes_deployment", "kubernetes_stateful_set", "kubernetes_daemon_set", "kubernetes_job", "kubernetes_cron_job", "kubernetes_service", "database", "cache", "message_queue", "object_storage", "vcs", "ci_cd", "alerting", "monitoring", "infrastructure_management", "secrets_manager", "network", "web_application_firewall", "cdn", "saas_vendor", "custom"]>, "many">>;
213
+ source_type: z.ZodOptional<z.ZodString>;
214
+ family: z.ZodOptional<z.ZodString>;
215
+ provider: z.ZodOptional<z.ZodEnum<["aws", "k8s", "gcp", "azure", "sentry", "prometheus", "grafana", "loki", "tempo", "mimir", "victoriametrics", "victorialogs", "victoriatraces", "github", "gitlab", "bitbucket", "argocd", "datadog", "groundcover", "elk", "pagerduty", "zenduty", "correlation", "jira", "confluence", "jsm", "custom"]>>;
216
+ label: z.ZodOptional<z.ZodString>;
217
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
218
+ entity_type: z.ZodEnum<["service", "resource"]>;
219
+ resource_type: z.ZodOptional<z.ZodEnum<["aws_account", "vpc", "subnet", "compute_instance", "serverless_function", "load_balancer", "dns_zone", "dns_record", "log_group", "alarm", "container_registry", "kubernetes_cluster", "kubernetes_namespace", "kubernetes_deployment", "kubernetes_stateful_set", "kubernetes_daemon_set", "kubernetes_job", "kubernetes_cron_job", "kubernetes_service", "database", "cache", "message_queue", "object_storage", "vcs", "ci_cd", "alerting", "monitoring", "infrastructure_management", "secrets_manager", "network", "web_application_firewall", "cdn", "saas_vendor", "custom"]>>;
220
+ resource_types: z.ZodOptional<z.ZodArray<z.ZodEnum<["aws_account", "vpc", "subnet", "compute_instance", "serverless_function", "load_balancer", "dns_zone", "dns_record", "log_group", "alarm", "container_registry", "kubernetes_cluster", "kubernetes_namespace", "kubernetes_deployment", "kubernetes_stateful_set", "kubernetes_daemon_set", "kubernetes_job", "kubernetes_cron_job", "kubernetes_service", "database", "cache", "message_queue", "object_storage", "vcs", "ci_cd", "alerting", "monitoring", "infrastructure_management", "secrets_manager", "network", "web_application_firewall", "cdn", "saas_vendor", "custom"]>, "many">>;
221
+ source_type: z.ZodOptional<z.ZodString>;
222
+ family: z.ZodOptional<z.ZodString>;
223
+ provider: z.ZodOptional<z.ZodEnum<["aws", "k8s", "gcp", "azure", "sentry", "prometheus", "grafana", "loki", "tempo", "mimir", "victoriametrics", "victorialogs", "victoriatraces", "github", "gitlab", "bitbucket", "argocd", "datadog", "groundcover", "elk", "pagerduty", "zenduty", "correlation", "jira", "confluence", "jsm", "custom"]>>;
224
+ label: z.ZodOptional<z.ZodString>;
225
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
226
+ entity_type: z.ZodEnum<["service", "resource"]>;
227
+ resource_type: z.ZodOptional<z.ZodEnum<["aws_account", "vpc", "subnet", "compute_instance", "serverless_function", "load_balancer", "dns_zone", "dns_record", "log_group", "alarm", "container_registry", "kubernetes_cluster", "kubernetes_namespace", "kubernetes_deployment", "kubernetes_stateful_set", "kubernetes_daemon_set", "kubernetes_job", "kubernetes_cron_job", "kubernetes_service", "database", "cache", "message_queue", "object_storage", "vcs", "ci_cd", "alerting", "monitoring", "infrastructure_management", "secrets_manager", "network", "web_application_firewall", "cdn", "saas_vendor", "custom"]>>;
228
+ resource_types: z.ZodOptional<z.ZodArray<z.ZodEnum<["aws_account", "vpc", "subnet", "compute_instance", "serverless_function", "load_balancer", "dns_zone", "dns_record", "log_group", "alarm", "container_registry", "kubernetes_cluster", "kubernetes_namespace", "kubernetes_deployment", "kubernetes_stateful_set", "kubernetes_daemon_set", "kubernetes_job", "kubernetes_cron_job", "kubernetes_service", "database", "cache", "message_queue", "object_storage", "vcs", "ci_cd", "alerting", "monitoring", "infrastructure_management", "secrets_manager", "network", "web_application_firewall", "cdn", "saas_vendor", "custom"]>, "many">>;
229
+ source_type: z.ZodOptional<z.ZodString>;
230
+ family: z.ZodOptional<z.ZodString>;
231
+ provider: z.ZodOptional<z.ZodEnum<["aws", "k8s", "gcp", "azure", "sentry", "prometheus", "grafana", "loki", "tempo", "mimir", "victoriametrics", "victorialogs", "victoriatraces", "github", "gitlab", "bitbucket", "argocd", "datadog", "groundcover", "elk", "pagerduty", "zenduty", "correlation", "jira", "confluence", "jsm", "custom"]>>;
232
+ label: z.ZodOptional<z.ZodString>;
233
+ }, z.ZodTypeAny, "passthrough">>;
234
+ relation: z.ZodEnum<["DEPLOYED_ON", "DEPLOYED_AS", "RUNS_ON", "PART_OF", "CALLS", "PUBLISHES_TO", "SUBSCRIBES_TO", "CONSUMES", "PROVIDES", "PROXIES", "ROUTES_TO", "DEPENDS_ON", "AGGREGATES", "COMPOSES", "USES", "STORES_DATA_IN", "CACHES_IN", "CONFIGURED_BY", "EXPOSED_VIA", "PROTECTED_BY", "AUTHENTICATES_WITH", "OWNS", "OBSERVES", "MONITORED_BY", "SENDS_METRICS_TO", "SENDS_LOGS_TO", "SENDS_TRACES_TO", "CONNECTS_TO", "REPLICATES", "BACKS_UP", "MIRRORS", "TRIGGERS", "MIGRATES_TO", "REPLACES", "REPLICATED_FROM"]>;
235
+ target_endpoint: z.ZodObject<{
236
+ entity_type: z.ZodEnum<["service", "resource"]>;
237
+ resource_type: z.ZodOptional<z.ZodEnum<["aws_account", "vpc", "subnet", "compute_instance", "serverless_function", "load_balancer", "dns_zone", "dns_record", "log_group", "alarm", "container_registry", "kubernetes_cluster", "kubernetes_namespace", "kubernetes_deployment", "kubernetes_stateful_set", "kubernetes_daemon_set", "kubernetes_job", "kubernetes_cron_job", "kubernetes_service", "database", "cache", "message_queue", "object_storage", "vcs", "ci_cd", "alerting", "monitoring", "infrastructure_management", "secrets_manager", "network", "web_application_firewall", "cdn", "saas_vendor", "custom"]>>;
238
+ resource_types: z.ZodOptional<z.ZodArray<z.ZodEnum<["aws_account", "vpc", "subnet", "compute_instance", "serverless_function", "load_balancer", "dns_zone", "dns_record", "log_group", "alarm", "container_registry", "kubernetes_cluster", "kubernetes_namespace", "kubernetes_deployment", "kubernetes_stateful_set", "kubernetes_daemon_set", "kubernetes_job", "kubernetes_cron_job", "kubernetes_service", "database", "cache", "message_queue", "object_storage", "vcs", "ci_cd", "alerting", "monitoring", "infrastructure_management", "secrets_manager", "network", "web_application_firewall", "cdn", "saas_vendor", "custom"]>, "many">>;
239
+ source_type: z.ZodOptional<z.ZodString>;
240
+ family: z.ZodOptional<z.ZodString>;
241
+ provider: z.ZodOptional<z.ZodEnum<["aws", "k8s", "gcp", "azure", "sentry", "prometheus", "grafana", "loki", "tempo", "mimir", "victoriametrics", "victorialogs", "victoriatraces", "github", "gitlab", "bitbucket", "argocd", "datadog", "groundcover", "elk", "pagerduty", "zenduty", "correlation", "jira", "confluence", "jsm", "custom"]>>;
242
+ label: z.ZodOptional<z.ZodString>;
243
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
244
+ entity_type: z.ZodEnum<["service", "resource"]>;
245
+ resource_type: z.ZodOptional<z.ZodEnum<["aws_account", "vpc", "subnet", "compute_instance", "serverless_function", "load_balancer", "dns_zone", "dns_record", "log_group", "alarm", "container_registry", "kubernetes_cluster", "kubernetes_namespace", "kubernetes_deployment", "kubernetes_stateful_set", "kubernetes_daemon_set", "kubernetes_job", "kubernetes_cron_job", "kubernetes_service", "database", "cache", "message_queue", "object_storage", "vcs", "ci_cd", "alerting", "monitoring", "infrastructure_management", "secrets_manager", "network", "web_application_firewall", "cdn", "saas_vendor", "custom"]>>;
246
+ resource_types: z.ZodOptional<z.ZodArray<z.ZodEnum<["aws_account", "vpc", "subnet", "compute_instance", "serverless_function", "load_balancer", "dns_zone", "dns_record", "log_group", "alarm", "container_registry", "kubernetes_cluster", "kubernetes_namespace", "kubernetes_deployment", "kubernetes_stateful_set", "kubernetes_daemon_set", "kubernetes_job", "kubernetes_cron_job", "kubernetes_service", "database", "cache", "message_queue", "object_storage", "vcs", "ci_cd", "alerting", "monitoring", "infrastructure_management", "secrets_manager", "network", "web_application_firewall", "cdn", "saas_vendor", "custom"]>, "many">>;
247
+ source_type: z.ZodOptional<z.ZodString>;
248
+ family: z.ZodOptional<z.ZodString>;
249
+ provider: z.ZodOptional<z.ZodEnum<["aws", "k8s", "gcp", "azure", "sentry", "prometheus", "grafana", "loki", "tempo", "mimir", "victoriametrics", "victorialogs", "victoriatraces", "github", "gitlab", "bitbucket", "argocd", "datadog", "groundcover", "elk", "pagerduty", "zenduty", "correlation", "jira", "confluence", "jsm", "custom"]>>;
250
+ label: z.ZodOptional<z.ZodString>;
251
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
252
+ entity_type: z.ZodEnum<["service", "resource"]>;
253
+ resource_type: z.ZodOptional<z.ZodEnum<["aws_account", "vpc", "subnet", "compute_instance", "serverless_function", "load_balancer", "dns_zone", "dns_record", "log_group", "alarm", "container_registry", "kubernetes_cluster", "kubernetes_namespace", "kubernetes_deployment", "kubernetes_stateful_set", "kubernetes_daemon_set", "kubernetes_job", "kubernetes_cron_job", "kubernetes_service", "database", "cache", "message_queue", "object_storage", "vcs", "ci_cd", "alerting", "monitoring", "infrastructure_management", "secrets_manager", "network", "web_application_firewall", "cdn", "saas_vendor", "custom"]>>;
254
+ resource_types: z.ZodOptional<z.ZodArray<z.ZodEnum<["aws_account", "vpc", "subnet", "compute_instance", "serverless_function", "load_balancer", "dns_zone", "dns_record", "log_group", "alarm", "container_registry", "kubernetes_cluster", "kubernetes_namespace", "kubernetes_deployment", "kubernetes_stateful_set", "kubernetes_daemon_set", "kubernetes_job", "kubernetes_cron_job", "kubernetes_service", "database", "cache", "message_queue", "object_storage", "vcs", "ci_cd", "alerting", "monitoring", "infrastructure_management", "secrets_manager", "network", "web_application_firewall", "cdn", "saas_vendor", "custom"]>, "many">>;
255
+ source_type: z.ZodOptional<z.ZodString>;
256
+ family: z.ZodOptional<z.ZodString>;
257
+ provider: z.ZodOptional<z.ZodEnum<["aws", "k8s", "gcp", "azure", "sentry", "prometheus", "grafana", "loki", "tempo", "mimir", "victoriametrics", "victorialogs", "victoriatraces", "github", "gitlab", "bitbucket", "argocd", "datadog", "groundcover", "elk", "pagerduty", "zenduty", "correlation", "jira", "confluence", "jsm", "custom"]>>;
258
+ label: z.ZodOptional<z.ZodString>;
259
+ }, z.ZodTypeAny, "passthrough">>;
260
+ relation_class: z.ZodEnum<["structural", "associative"]>;
261
+ attribute_schema_key: z.ZodString;
262
+ evidence_level: z.ZodEnum<["implemented", "code_evidence", "planned", "pre_prod_validation", "reserved_shape"]>;
263
+ provider_family: z.ZodOptional<z.ZodString>;
264
+ provider_category: z.ZodOptional<z.ZodEnum<["cloud", "observability", "logging", "tracing", "vcs", "ticketing", "deployment", "alerting"]>>;
265
+ notes: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
266
+ guardrails: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
267
+ }, z.ZodTypeAny, "passthrough">>;
268
+ export type ConnectionContractFamily = z.infer<typeof connectionContractFamilySchema>;
269
+ export type ConnectionContractEvidenceLevel = z.infer<typeof connectionContractEvidenceLevelSchema>;
270
+ export type ConnectionContractProviderCategory = z.infer<typeof connectionContractProviderCategorySchema>;
271
+ export type ConnectionContractRelationClass = 'structural' | 'associative';
272
+ export interface ConnectionContractEndpoint {
273
+ readonly entity_type: 'service' | 'resource';
274
+ readonly resource_type?: TopologyResourceType;
275
+ readonly resource_types?: readonly TopologyResourceType[];
276
+ readonly source_type?: string;
277
+ readonly family?: string;
278
+ readonly provider?: TopologyProvider;
279
+ readonly label?: string;
280
+ }
281
+ export interface ConnectionContractMetadata {
282
+ readonly key: string;
283
+ readonly version: string;
284
+ readonly status: ConnectionContractStatus;
285
+ readonly family: ConnectionContractFamily;
286
+ readonly source_endpoint: ConnectionContractEndpoint;
287
+ readonly relation: TopologyRelationType;
288
+ readonly target_endpoint: ConnectionContractEndpoint;
289
+ readonly relation_class: ConnectionContractRelationClass;
290
+ readonly attribute_schema_key: string;
291
+ readonly evidence_level: ConnectionContractEvidenceLevel;
292
+ readonly provider_family?: string;
293
+ readonly provider_category?: ConnectionContractProviderCategory;
294
+ readonly notes?: readonly string[];
295
+ readonly guardrails?: readonly string[];
296
+ }
297
+ export interface ConnectionContractRef {
298
+ readonly correlation_contract_key: string;
299
+ readonly correlation_contract_version: string;
300
+ }
301
+ export declare function connectionContractCompositeKey(key: string, version: string): string;
302
+ export declare function connectionContractRef(contract: Pick<ConnectionContractMetadata, 'key' | 'version'>): ConnectionContractRef;