@fi-ts/api 0.0.0-pr.12.167eda91

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 (52) hide show
  1. package/buf/validate/validate_pb.d.ts +4766 -0
  2. package/buf/validate/validate_pb.js +356 -0
  3. package/buf/validate/validate_pb.ts +4967 -0
  4. package/fits/api/mvm/v1/location_pb.d.ts +83 -0
  5. package/fits/api/mvm/v1/location_pb.js +32 -0
  6. package/fits/api/mvm/v1/location_pb.ts +106 -0
  7. package/fits/api/mvm/v1/mvm_pb.d.ts +1451 -0
  8. package/fits/api/mvm/v1/mvm_pb.js +391 -0
  9. package/fits/api/mvm/v1/mvm_pb.ts +1679 -0
  10. package/fits/api/mvm/v1/os_pb.d.ts +111 -0
  11. package/fits/api/mvm/v1/os_pb.js +62 -0
  12. package/fits/api/mvm/v1/os_pb.ts +141 -0
  13. package/fits/api/mvm/v1/vlan_pb.d.ts +163 -0
  14. package/fits/api/mvm/v1/vlan_pb.js +76 -0
  15. package/fits/api/mvm/v1/vlan_pb.ts +199 -0
  16. package/fits/api/v1/common_pb.d.ts +372 -0
  17. package/fits/api/v1/common_pb.js +276 -0
  18. package/fits/api/v1/common_pb.ts +447 -0
  19. package/fits/api/v1/health_pb.d.ts +190 -0
  20. package/fits/api/v1/health_pb.js +100 -0
  21. package/fits/api/v1/health_pb.ts +229 -0
  22. package/fits/api/v1/ip_pb.d.ts +549 -0
  23. package/fits/api/v1/ip_pb.js +137 -0
  24. package/fits/api/v1/ip_pb.ts +643 -0
  25. package/fits/api/v1/method_pb.d.ts +116 -0
  26. package/fits/api/v1/method_pb.js +38 -0
  27. package/fits/api/v1/method_pb.ts +142 -0
  28. package/fits/api/v1/partition_pb.d.ts +251 -0
  29. package/fits/api/v1/partition_pb.js +62 -0
  30. package/fits/api/v1/partition_pb.ts +300 -0
  31. package/fits/api/v1/predefined_rules_pb.d.ts +126 -0
  32. package/fits/api/v1/predefined_rules_pb.js +129 -0
  33. package/fits/api/v1/predefined_rules_pb.ts +175 -0
  34. package/fits/api/v1/project_pb.d.ts +372 -0
  35. package/fits/api/v1/project_pb.js +72 -0
  36. package/fits/api/v1/project_pb.ts +436 -0
  37. package/fits/api/v1/tenant_pb.d.ts +370 -0
  38. package/fits/api/v1/tenant_pb.js +72 -0
  39. package/fits/api/v1/tenant_pb.ts +434 -0
  40. package/fits/api/v1/token_pb.d.ts +687 -0
  41. package/fits/api/v1/token_pb.js +148 -0
  42. package/fits/api/v1/token_pb.ts +782 -0
  43. package/fits/api/v1/user_pb.d.ts +108 -0
  44. package/fits/api/v1/user_pb.js +34 -0
  45. package/fits/api/v1/user_pb.ts +139 -0
  46. package/fits/api/v1/version_pb.d.ts +88 -0
  47. package/fits/api/v1/version_pb.js +32 -0
  48. package/fits/api/v1/version_pb.ts +114 -0
  49. package/fits/api/v1/vpn_pb.d.ts +55 -0
  50. package/fits/api/v1/vpn_pb.js +14 -0
  51. package/fits/api/v1/vpn_pb.ts +72 -0
  52. package/package.json +25 -0
@@ -0,0 +1,782 @@
1
+ // @generated by protoc-gen-es v2.14.1 with parameter "target=ts"
2
+ // @generated from file fits/api/v1/token.proto (package fits.api.v1, syntax proto3)
3
+ /* eslint-disable */
4
+
5
+ import type { GenEnum, GenFile, GenMessage, GenService } from "@bufbuild/protobuf/codegenv2";
6
+ import { enumDesc, fileDesc, messageDesc, serviceDesc } from "@bufbuild/protobuf/codegenv2";
7
+ import { file_buf_validate_validate } from "../../../buf/validate/validate_pb";
8
+ import type { AdminRole, Labels, Meta, ProjectRole, TenantRole, UpdateLabels, UpdateMeta } from "./common_pb";
9
+ import { file_fits_api_v1_common } from "./common_pb";
10
+ import { file_fits_api_v1_predefined_rules } from "./predefined_rules_pb";
11
+ import type { Duration, Timestamp } from "@bufbuild/protobuf/wkt";
12
+ import { file_google_protobuf_duration, file_google_protobuf_timestamp } from "@bufbuild/protobuf/wkt";
13
+ import type { Message } from "@bufbuild/protobuf";
14
+
15
+ /**
16
+ * Describes the file fits/api/v1/token.proto.
17
+ */
18
+ export const file_fits_api_v1_token: GenFile = /*@__PURE__*/
19
+ fileDesc("ChdmaXRzL2FwaS92MS90b2tlbi5wcm90bxILZml0cy5hcGkudjEi7wYKBVRva2VuEhYKBHV1aWQYASABKAlCCLpIBXIDsAEBEhgKBHVzZXIYAiABKAlCCrpIB3IFEAIYgAQSHwoEbWV0YRgDIAEoCzIRLmZpdHMuYXBpLnYxLk1ldGESIAoLZGVzY3JpcHRpb24YBCABKAlCC7pICHIGyLOusQIBEkQKC3Blcm1pc3Npb25zGAUgAygLMiQuZml0cy5hcGkudjEuUGVybWlzc2lvbnNCeVZpc2liaWxpdHlCCbpIBpIBAxD0AxIrCgdleHBpcmVzGAYgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBItCglpc3N1ZWRfYXQYByABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEjQKCnRva2VuX3R5cGUYCCABKA4yFi5maXRzLmFwaS52MS5Ub2tlblR5cGVCCLpIBYIBAhABEjsKDXByb2plY3Rfcm9sZXMYCSADKAsyJC5maXRzLmFwaS52MS5Ub2tlbi5Qcm9qZWN0Um9sZXNFbnRyeRJUCgx0ZW5hbnRfcm9sZXMYCiADKAsyIy5maXRzLmFwaS52MS5Ub2tlbi5UZW5hbnRSb2xlc0VudHJ5Qhm6SBaaARPAlbixAgHQlbixAgEqBYIBAhABEjkKCmFkbWluX3JvbGUYCyABKA4yFi5maXRzLmFwaS52MS5BZG1pblJvbGVCCLpIBYIBAhABSACIAQEaTQoRUHJvamVjdFJvbGVzRW50cnkSCwoDa2V5GAEgASgJEicKBXZhbHVlGAIgASgOMhguZml0cy5hcGkudjEuUHJvamVjdFJvbGU6AjgBGksKEFRlbmFudFJvbGVzRW50cnkSCwoDa2V5GAEgASgJEiYKBXZhbHVlGAIgASgOMhcuZml0cy5hcGkudjEuVGVuYW50Um9sZToCOAE6nwG6SJsBGpgBCht0b2tlbi5wZXJtaXNzaW9ucy51c2VydG9rZW4SKXRva2VuIHR5cGUgdXNlciBtdXN0IG5vdCBoYXZlIHBlcm1pc3Npb25zGk4odGhpcy50b2tlbl90eXBlID09IDIgJiYgdGhpcy5wZXJtaXNzaW9ucy5zaXplKCkgPT0gMCkgfHwgdGhpcy50b2tlbl90eXBlICE9IDJCDQoLX2FkbWluX3JvbGUiqgUKGVRva2VuU2VydmljZUNyZWF0ZVJlcXVlc3QSIAoLZGVzY3JpcHRpb24YASABKAlCC7pICHIGyLOusQIBEkMKC3Blcm1pc3Npb25zGAIgAygLMiQuZml0cy5hcGkudjEuUGVybWlzc2lvbnNCeVZpc2liaWxpdHlCCLpIBZIBAhBkEj4KB2V4cGlyZXMYAyABKAsyGS5nb29nbGUucHJvdG9idWYuRHVyYXRpb25CErpID6oBDBoFCIHnhA8yAwjYBBJxCg1wcm9qZWN0X3JvbGVzGAQgAygLMjguZml0cy5hcGkudjEuVG9rZW5TZXJ2aWNlQ3JlYXRlUmVxdWVzdC5Qcm9qZWN0Um9sZXNFbnRyeUIgukgdmgEawJW4sQIByJW4sQIBIgVyA7ABASoFggECEAESaAoMdGVuYW50X3JvbGVzGAUgAygLMjcuZml0cy5hcGkudjEuVG9rZW5TZXJ2aWNlQ3JlYXRlUmVxdWVzdC5UZW5hbnRSb2xlc0VudHJ5Qhm6SBaaARPAlbixAgHQlbixAgEqBYIBAhABEjkKCmFkbWluX3JvbGUYBiABKA4yFi5maXRzLmFwaS52MS5BZG1pblJvbGVCCLpIBYIBAhABSACIAQESIwoGbGFiZWxzGAcgASgLMhMuZml0cy5hcGkudjEuTGFiZWxzGk0KEVByb2plY3RSb2xlc0VudHJ5EgsKA2tleRgBIAEoCRInCgV2YWx1ZRgCIAEoDjIYLmZpdHMuYXBpLnYxLlByb2plY3RSb2xlOgI4ARpLChBUZW5hbnRSb2xlc0VudHJ5EgsKA2tleRgBIAEoCRImCgV2YWx1ZRgCIAEoDjIXLmZpdHMuYXBpLnYxLlRlbmFudFJvbGU6AjgBQg0KC19hZG1pbl9yb2xlIkkKEE1ldGhvZFBlcm1pc3Npb24SGQoHc3ViamVjdBgBIAEoCUIIukgFcgMYgAISGgoHbWV0aG9kcxgCIAMoCUIJukgGkgEDEPQDIp0CChdQZXJtaXNzaW9uc0J5VmlzaWJpbGl0eRIwCgZwdWJsaWMYASABKAsyHi5maXRzLmFwaS52MS5QdWJsaWNQZXJtaXNzaW9uc0gAEiwKBHNlbGYYAiABKAsyHC5maXRzLmFwaS52MS5TZWxmUGVybWlzc2lvbnNIABIyCgdwcm9qZWN0GAMgASgLMh8uZml0cy5hcGkudjEuUHJvamVjdFBlcm1pc3Npb25zSAASMAoGdGVuYW50GAQgASgLMh4uZml0cy5hcGkudjEuVGVuYW50UGVybWlzc2lvbnNIABIuCgVhZG1pbhgFIAEoCzIdLmZpdHMuYXBpLnYxLkFkbWluUGVybWlzc2lvbnNIAEIMCgp2aXNpYmlsaXR5Ii8KEVB1YmxpY1Blcm1pc3Npb25zEhoKB21ldGhvZHMYASADKAlCCbpIBpIBAxD0AyItCg9TZWxmUGVybWlzc2lvbnMSGgoHbWV0aG9kcxgBIAMoCUIJukgGkgEDEPQDIk4KElByb2plY3RQZXJtaXNzaW9ucxIcCgdwcm9qZWN0GAEgASgJQgu6SAhyBpi0rrECARIaCgdtZXRob2RzGAIgAygJQgm6SAaSAQMQ9AMiSwoRVGVuYW50UGVybWlzc2lvbnMSGgoFbG9naW4YASABKAlCC7pICHIGkLSusQIBEhoKB21ldGhvZHMYAiADKAlCCbpIBpIBAxD0AyIuChBBZG1pblBlcm1pc3Npb25zEhoKB21ldGhvZHMYASADKAlCCbpIBpIBAxD0AyJPChpUb2tlblNlcnZpY2VDcmVhdGVSZXNwb25zZRIhCgV0b2tlbhgBIAEoCzISLmZpdHMuYXBpLnYxLlRva2VuEg4KBnNlY3JldBgCIAEoCSIZChdUb2tlblNlcnZpY2VMaXN0UmVxdWVzdCI+ChhUb2tlblNlcnZpY2VMaXN0UmVzcG9uc2USIgoGdG9rZW5zGAEgAygLMhIuZml0cy5hcGkudjEuVG9rZW4iMwoZVG9rZW5TZXJ2aWNlUmV2b2tlUmVxdWVzdBIWCgR1dWlkGAEgASgJQgi6SAVyA7ABASIcChpUb2tlblNlcnZpY2VSZXZva2VSZXNwb25zZSLJBQoZVG9rZW5TZXJ2aWNlVXBkYXRlUmVxdWVzdBIWCgR1dWlkGAEgASgJQgi6SAVyA7ABARI0Cgt1cGRhdGVfbWV0YRgCIAEoCzIXLmZpdHMuYXBpLnYxLlVwZGF0ZU1ldGFCBrpIA8gBABIlCgtkZXNjcmlwdGlvbhgDIAEoCUILukgIcgbIs66xAgFIAIgBARI5CgtwZXJtaXNzaW9ucxgEIAMoCzIkLmZpdHMuYXBpLnYxLlBlcm1pc3Npb25zQnlWaXNpYmlsaXR5EnEKDXByb2plY3Rfcm9sZXMYBSADKAsyOC5maXRzLmFwaS52MS5Ub2tlblNlcnZpY2VVcGRhdGVSZXF1ZXN0LlByb2plY3RSb2xlc0VudHJ5QiC6SB2aARrAlbixAgHIlbixAgEiBXIDsAEBKgWCAQIQARJoCgx0ZW5hbnRfcm9sZXMYBiADKAsyNy5maXRzLmFwaS52MS5Ub2tlblNlcnZpY2VVcGRhdGVSZXF1ZXN0LlRlbmFudFJvbGVzRW50cnlCGbpIFpoBE8CVuLECAdCVuLECASoFggECEAESOQoKYWRtaW5fcm9sZRgHIAEoDjIWLmZpdHMuYXBpLnYxLkFkbWluUm9sZUIIukgFggECEAFIAYgBARIpCgZsYWJlbHMYCCABKAsyGS5maXRzLmFwaS52MS5VcGRhdGVMYWJlbHMaTQoRUHJvamVjdFJvbGVzRW50cnkSCwoDa2V5GAEgASgJEicKBXZhbHVlGAIgASgOMhguZml0cy5hcGkudjEuUHJvamVjdFJvbGU6AjgBGksKEFRlbmFudFJvbGVzRW50cnkSCwoDa2V5GAEgASgJEiYKBXZhbHVlGAIgASgOMhcuZml0cy5hcGkudjEuVGVuYW50Um9sZToCOAFCDgoMX2Rlc2NyaXB0aW9uQg0KC19hZG1pbl9yb2xlIj8KGlRva2VuU2VydmljZVVwZGF0ZVJlc3BvbnNlEiEKBXRva2VuGAEgASgLMhIuZml0cy5hcGkudjEuVG9rZW4iMAoWVG9rZW5TZXJ2aWNlR2V0UmVxdWVzdBIWCgR1dWlkGAEgASgJQgi6SAVyA7ABASI8ChdUb2tlblNlcnZpY2VHZXRSZXNwb25zZRIhCgV0b2tlbhgBIAEoCzISLmZpdHMuYXBpLnYxLlRva2VuIhwKGlRva2VuU2VydmljZVJlZnJlc2hSZXF1ZXN0IlAKG1Rva2VuU2VydmljZVJlZnJlc2hSZXNwb25zZRIhCgV0b2tlbhgBIAEoCzISLmZpdHMuYXBpLnYxLlRva2VuEg4KBnNlY3JldBgCIAEoCSpQCglUb2tlblR5cGUSGgoWVE9LRU5fVFlQRV9VTlNQRUNJRklFRBAAEhIKDlRPS0VOX1RZUEVfQVBJEAESEwoPVE9LRU5fVFlQRV9VU0VSEAIy4AQKDFRva2VuU2VydmljZRJaCgNHZXQSIy5maXRzLmFwaS52MS5Ub2tlblNlcnZpY2VHZXRSZXF1ZXN0GiQuZml0cy5hcGkudjEuVG9rZW5TZXJ2aWNlR2V0UmVzcG9uc2UiCNjzGALg8xgBEmMKBkNyZWF0ZRImLmZpdHMuYXBpLnYxLlRva2VuU2VydmljZUNyZWF0ZVJlcXVlc3QaJy5maXRzLmFwaS52MS5Ub2tlblNlcnZpY2VDcmVhdGVSZXNwb25zZSII2PMYAuDzGAESYwoGVXBkYXRlEiYuZml0cy5hcGkudjEuVG9rZW5TZXJ2aWNlVXBkYXRlUmVxdWVzdBonLmZpdHMuYXBpLnYxLlRva2VuU2VydmljZVVwZGF0ZVJlc3BvbnNlIgjY8xgC4PMYARJdCgRMaXN0EiQuZml0cy5hcGkudjEuVG9rZW5TZXJ2aWNlTGlzdFJlcXVlc3QaJS5maXRzLmFwaS52MS5Ub2tlblNlcnZpY2VMaXN0UmVzcG9uc2UiCNjzGALg8xgBEmMKBlJldm9rZRImLmZpdHMuYXBpLnYxLlRva2VuU2VydmljZVJldm9rZVJlcXVlc3QaJy5maXRzLmFwaS52MS5Ub2tlblNlcnZpY2VSZXZva2VSZXNwb25zZSII2PMYAuDzGAESZgoHUmVmcmVzaBInLmZpdHMuYXBpLnYxLlRva2VuU2VydmljZVJlZnJlc2hSZXF1ZXN0GiguZml0cy5hcGkudjEuVG9rZW5TZXJ2aWNlUmVmcmVzaFJlc3BvbnNlIgjY8xgC4PMYAUKWAQoPY29tLmZpdHMuYXBpLnYxQgpUb2tlblByb3RvUAFaKWdpdGh1Yi5jb20vZmktdHMvYXBpL2dvL2ZpdHMvYXBpL3YxO2FwaXYxogIDRkFYqgILRml0cy5BcGkuVjHKAgtGaXRzXEFwaVxWMeICF0ZpdHNcQXBpXFYxXEdQQk1ldGFkYXRh6gINRml0czo6QXBpOjpWMWIGcHJvdG8z", [file_buf_validate_validate, file_fits_api_v1_common, file_fits_api_v1_predefined_rules, file_google_protobuf_duration, file_google_protobuf_timestamp]);
20
+
21
+ /**
22
+ * Token generates a jwt authentication token to access the api
23
+ *
24
+ * There are two different types of tokens, api- and user- tokens
25
+ *
26
+ * A user token is used to authenticate end user requests for example from a cli.
27
+ * The configured roles in a user token are expanded in the api server
28
+ * based on the memberships in other projects and tenants based on the role granted there.
29
+ * User tokens will never contain permissions.
30
+ * Permissions are always derived from the tenant and project roles and memberships.
31
+ *
32
+ * The api token should be used to authenticate services.
33
+ * In contrast to a user token, the api token permissions and roles apply as configured during the token create process.
34
+ *
35
+ * @generated from message fits.api.v1.Token
36
+ */
37
+ export type Token = Message<"fits.api.v1.Token"> & {
38
+ /**
39
+ * Uuid of the jwt token, used to reference it by revoke
40
+ *
41
+ * @generated from field: string uuid = 1;
42
+ */
43
+ uuid: string;
44
+
45
+ /**
46
+ * User who created this token
47
+ *
48
+ * @generated from field: string user = 2;
49
+ */
50
+ user: string;
51
+
52
+ /**
53
+ * Meta for this token
54
+ *
55
+ * @generated from field: fits.api.v1.Meta meta = 3;
56
+ */
57
+ meta?: Meta | undefined;
58
+
59
+ /**
60
+ * Description is a user given description of this token.
61
+ *
62
+ * @generated from field: string description = 4;
63
+ */
64
+ description: string;
65
+
66
+ /**
67
+ * Permissions is a list of service methods this token can be used for
68
+ *
69
+ * @generated from field: repeated fits.api.v1.PermissionsByVisibility permissions = 5;
70
+ */
71
+ permissions: PermissionsByVisibility[];
72
+
73
+ /**
74
+ * Expires gives the date in the future after which this token can not be used anymore
75
+ *
76
+ * @generated from field: google.protobuf.Timestamp expires = 6;
77
+ */
78
+ expires?: Timestamp | undefined;
79
+
80
+ /**
81
+ * IssuedAt gives the date when this token was created
82
+ *
83
+ * @generated from field: google.protobuf.Timestamp issued_at = 7;
84
+ */
85
+ issuedAt?: Timestamp | undefined;
86
+
87
+ /**
88
+ * TokenType describes the type of this token
89
+ *
90
+ * @generated from field: fits.api.v1.TokenType token_type = 8;
91
+ */
92
+ tokenType: TokenType;
93
+
94
+ /**
95
+ * ProjectRoles associates a project id with the corresponding role of the token owner
96
+ *
97
+ * @generated from field: map<string, fits.api.v1.ProjectRole> project_roles = 9;
98
+ */
99
+ projectRoles: { [key: string]: ProjectRole };
100
+
101
+ /**
102
+ * TenantRoles associates a tenant id with the corresponding role of the token owner.
103
+ *
104
+ * @generated from field: map<string, fits.api.v1.TenantRole> tenant_roles = 10;
105
+ */
106
+ tenantRoles: { [key: string]: TenantRole };
107
+
108
+ /**
109
+ * AdminRole defines the admin role of the token owner
110
+ *
111
+ * @generated from field: optional fits.api.v1.AdminRole admin_role = 11;
112
+ */
113
+ adminRole?: AdminRole | undefined;
114
+ };
115
+
116
+ /**
117
+ * Describes the message fits.api.v1.Token.
118
+ * Use `create(TokenSchema)` to create a new message.
119
+ */
120
+ export const TokenSchema: GenMessage<Token> = /*@__PURE__*/
121
+ messageDesc(file_fits_api_v1_token, 0);
122
+
123
+ /**
124
+ * TokenServiceCreateRequest is the request payload to create a token
125
+ *
126
+ * @generated from message fits.api.v1.TokenServiceCreateRequest
127
+ */
128
+ export type TokenServiceCreateRequest = Message<"fits.api.v1.TokenServiceCreateRequest"> & {
129
+ /**
130
+ * Description of the token
131
+ *
132
+ * @generated from field: string description = 1;
133
+ */
134
+ description: string;
135
+
136
+ /**
137
+ * Permissions is a list of service methods this token can be used for.
138
+ *
139
+ * @generated from field: repeated fits.api.v1.PermissionsByVisibility permissions = 2;
140
+ */
141
+ permissions: PermissionsByVisibility[];
142
+
143
+ /**
144
+ * Expires gives the duration since now, after which this token can not be used anymore
145
+ *
146
+ * @generated from field: google.protobuf.Duration expires = 3;
147
+ */
148
+ expires?: Duration | undefined;
149
+
150
+ /**
151
+ * ProjectRoles associates a project id with the corresponding role of the token owner
152
+ *
153
+ * @generated from field: map<string, fits.api.v1.ProjectRole> project_roles = 4;
154
+ */
155
+ projectRoles: { [key: string]: ProjectRole };
156
+
157
+ /**
158
+ * TenantRoles associates a tenant id with the corresponding role of the token owner.
159
+ *
160
+ * @generated from field: map<string, fits.api.v1.TenantRole> tenant_roles = 5;
161
+ */
162
+ tenantRoles: { [key: string]: TenantRole };
163
+
164
+ /**
165
+ * AdminRole defines the admin role of the token owner
166
+ *
167
+ * @generated from field: optional fits.api.v1.AdminRole admin_role = 6;
168
+ */
169
+ adminRole?: AdminRole | undefined;
170
+
171
+ /**
172
+ * Labels on this token
173
+ *
174
+ * @generated from field: fits.api.v1.Labels labels = 7;
175
+ */
176
+ labels?: Labels | undefined;
177
+ };
178
+
179
+ /**
180
+ * Describes the message fits.api.v1.TokenServiceCreateRequest.
181
+ * Use `create(TokenServiceCreateRequestSchema)` to create a new message.
182
+ */
183
+ export const TokenServiceCreateRequestSchema: GenMessage<TokenServiceCreateRequest> = /*@__PURE__*/
184
+ messageDesc(file_fits_api_v1_token, 1);
185
+
186
+ /**
187
+ * MethodPermission is a mapping from a subject/project to a service method
188
+ *
189
+ * @generated from message fits.api.v1.MethodPermission
190
+ */
191
+ export type MethodPermission = Message<"fits.api.v1.MethodPermission"> & {
192
+ /**
193
+ * Subject maybe either the project or the tenant
194
+ * for which the methods should be allowed
195
+ *
196
+ * asterisk (*) can be specified to match any subject
197
+ * empty string ("") can be specified for requests that do not require a subject, e.g. partition list
198
+ * otherwise either a projectid or a tenant login should be specified
199
+ *
200
+ * @generated from field: string subject = 1;
201
+ */
202
+ subject: string;
203
+
204
+ /**
205
+ * Methods which should be accessible
206
+ *
207
+ * @generated from field: repeated string methods = 2;
208
+ */
209
+ methods: string[];
210
+ };
211
+
212
+ /**
213
+ * Describes the message fits.api.v1.MethodPermission.
214
+ * Use `create(MethodPermissionSchema)` to create a new message.
215
+ */
216
+ export const MethodPermissionSchema: GenMessage<MethodPermission> = /*@__PURE__*/
217
+ messageDesc(file_fits_api_v1_token, 2);
218
+
219
+ /**
220
+ * PermissionsByVisibility contains method permissions by visibility.
221
+ *
222
+ * @generated from message fits.api.v1.PermissionsByVisibility
223
+ */
224
+ export type PermissionsByVisibility = Message<"fits.api.v1.PermissionsByVisibility"> & {
225
+ /**
226
+ * Visibility defines the visibility of the requested method permissions.
227
+ *
228
+ * @generated from oneof fits.api.v1.PermissionsByVisibility.visibility
229
+ */
230
+ visibility: {
231
+ /**
232
+ * PublicPermissions carries public method permissions.
233
+ *
234
+ * @generated from field: fits.api.v1.PublicPermissions public = 1;
235
+ */
236
+ value: PublicPermissions;
237
+ case: "public";
238
+ } | {
239
+ /**
240
+ * SelfPermissions carries self method permissions.
241
+ *
242
+ * @generated from field: fits.api.v1.SelfPermissions self = 2;
243
+ */
244
+ value: SelfPermissions;
245
+ case: "self";
246
+ } | {
247
+ /**
248
+ * ProjectPermissions carries project method permissions.
249
+ *
250
+ * @generated from field: fits.api.v1.ProjectPermissions project = 3;
251
+ */
252
+ value: ProjectPermissions;
253
+ case: "project";
254
+ } | {
255
+ /**
256
+ * TenantPermissions carries tenant method permissions.
257
+ *
258
+ * @generated from field: fits.api.v1.TenantPermissions tenant = 4;
259
+ */
260
+ value: TenantPermissions;
261
+ case: "tenant";
262
+ } | {
263
+ /**
264
+ * AdminPermissions carries admin method permissions.
265
+ *
266
+ * @generated from field: fits.api.v1.AdminPermissions admin = 5;
267
+ */
268
+ value: AdminPermissions;
269
+ case: "admin";
270
+ } | { case: undefined; value?: undefined };
271
+ };
272
+
273
+ /**
274
+ * Describes the message fits.api.v1.PermissionsByVisibility.
275
+ * Use `create(PermissionsByVisibilitySchema)` to create a new message.
276
+ */
277
+ export const PermissionsByVisibilitySchema: GenMessage<PermissionsByVisibility> = /*@__PURE__*/
278
+ messageDesc(file_fits_api_v1_token, 3);
279
+
280
+ /**
281
+ * PublicPermissions carries public method permissions.
282
+ *
283
+ * @generated from message fits.api.v1.PublicPermissions
284
+ */
285
+ export type PublicPermissions = Message<"fits.api.v1.PublicPermissions"> & {
286
+ /**
287
+ * Methods which should be accessible.
288
+ *
289
+ * @generated from field: repeated string methods = 1;
290
+ */
291
+ methods: string[];
292
+ };
293
+
294
+ /**
295
+ * Describes the message fits.api.v1.PublicPermissions.
296
+ * Use `create(PublicPermissionsSchema)` to create a new message.
297
+ */
298
+ export const PublicPermissionsSchema: GenMessage<PublicPermissions> = /*@__PURE__*/
299
+ messageDesc(file_fits_api_v1_token, 4);
300
+
301
+ /**
302
+ * SelfPermissions carries self method permissions.
303
+ *
304
+ * @generated from message fits.api.v1.SelfPermissions
305
+ */
306
+ export type SelfPermissions = Message<"fits.api.v1.SelfPermissions"> & {
307
+ /**
308
+ * Methods which should be accessible.
309
+ *
310
+ * @generated from field: repeated string methods = 1;
311
+ */
312
+ methods: string[];
313
+ };
314
+
315
+ /**
316
+ * Describes the message fits.api.v1.SelfPermissions.
317
+ * Use `create(SelfPermissionsSchema)` to create a new message.
318
+ */
319
+ export const SelfPermissionsSchema: GenMessage<SelfPermissions> = /*@__PURE__*/
320
+ messageDesc(file_fits_api_v1_token, 5);
321
+
322
+ /**
323
+ * ProjectPermissions carries project method permissions.
324
+ *
325
+ * @generated from message fits.api.v1.ProjectPermissions
326
+ */
327
+ export type ProjectPermissions = Message<"fits.api.v1.ProjectPermissions"> & {
328
+ /**
329
+ * Project scope for the permissions.
330
+ * Asterisk (*) can be specified to match any subject.
331
+ *
332
+ * @generated from field: string project = 1;
333
+ */
334
+ project: string;
335
+
336
+ /**
337
+ * Methods which should be accessible.
338
+ *
339
+ * @generated from field: repeated string methods = 2;
340
+ */
341
+ methods: string[];
342
+ };
343
+
344
+ /**
345
+ * Describes the message fits.api.v1.ProjectPermissions.
346
+ * Use `create(ProjectPermissionsSchema)` to create a new message.
347
+ */
348
+ export const ProjectPermissionsSchema: GenMessage<ProjectPermissions> = /*@__PURE__*/
349
+ messageDesc(file_fits_api_v1_token, 6);
350
+
351
+ /**
352
+ * TenantPermissions carries tenant method permissions.
353
+ *
354
+ * @generated from message fits.api.v1.TenantPermissions
355
+ */
356
+ export type TenantPermissions = Message<"fits.api.v1.TenantPermissions"> & {
357
+ /**
358
+ * Login of the tenant.
359
+ * Asterisk (*) can be specified to match any subject.
360
+ *
361
+ * @generated from field: string login = 1;
362
+ */
363
+ login: string;
364
+
365
+ /**
366
+ * Methods which should be accessible.
367
+ *
368
+ * @generated from field: repeated string methods = 2;
369
+ */
370
+ methods: string[];
371
+ };
372
+
373
+ /**
374
+ * Describes the message fits.api.v1.TenantPermissions.
375
+ * Use `create(TenantPermissionsSchema)` to create a new message.
376
+ */
377
+ export const TenantPermissionsSchema: GenMessage<TenantPermissions> = /*@__PURE__*/
378
+ messageDesc(file_fits_api_v1_token, 7);
379
+
380
+ /**
381
+ * AdminPermissions carries admin method permissions.
382
+ *
383
+ * @generated from message fits.api.v1.AdminPermissions
384
+ */
385
+ export type AdminPermissions = Message<"fits.api.v1.AdminPermissions"> & {
386
+ /**
387
+ * Methods which should be accessible.
388
+ *
389
+ * @generated from field: repeated string methods = 1;
390
+ */
391
+ methods: string[];
392
+ };
393
+
394
+ /**
395
+ * Describes the message fits.api.v1.AdminPermissions.
396
+ * Use `create(AdminPermissionsSchema)` to create a new message.
397
+ */
398
+ export const AdminPermissionsSchema: GenMessage<AdminPermissions> = /*@__PURE__*/
399
+ messageDesc(file_fits_api_v1_token, 8);
400
+
401
+ /**
402
+ * TokenServiceCreateResponse is the response payload of a token create request
403
+ *
404
+ * @generated from message fits.api.v1.TokenServiceCreateResponse
405
+ */
406
+ export type TokenServiceCreateResponse = Message<"fits.api.v1.TokenServiceCreateResponse"> & {
407
+ /**
408
+ * Token which was created
409
+ *
410
+ * @generated from field: fits.api.v1.Token token = 1;
411
+ */
412
+ token?: Token | undefined;
413
+
414
+ /**
415
+ * Secret is the body if the jwt token, should be used in api requests as bearer token
416
+ *
417
+ * @generated from field: string secret = 2;
418
+ */
419
+ secret: string;
420
+ };
421
+
422
+ /**
423
+ * Describes the message fits.api.v1.TokenServiceCreateResponse.
424
+ * Use `create(TokenServiceCreateResponseSchema)` to create a new message.
425
+ */
426
+ export const TokenServiceCreateResponseSchema: GenMessage<TokenServiceCreateResponse> = /*@__PURE__*/
427
+ messageDesc(file_fits_api_v1_token, 9);
428
+
429
+ /**
430
+ * TokenServiceListRequest is the request payload to list tokens
431
+ *
432
+ * @generated from message fits.api.v1.TokenServiceListRequest
433
+ */
434
+ export type TokenServiceListRequest = Message<"fits.api.v1.TokenServiceListRequest"> & {
435
+ };
436
+
437
+ /**
438
+ * Describes the message fits.api.v1.TokenServiceListRequest.
439
+ * Use `create(TokenServiceListRequestSchema)` to create a new message.
440
+ */
441
+ export const TokenServiceListRequestSchema: GenMessage<TokenServiceListRequest> = /*@__PURE__*/
442
+ messageDesc(file_fits_api_v1_token, 10);
443
+
444
+ /**
445
+ * TokenServiceListResponse is the response payload of a token list request
446
+ *
447
+ * @generated from message fits.api.v1.TokenServiceListResponse
448
+ */
449
+ export type TokenServiceListResponse = Message<"fits.api.v1.TokenServiceListResponse"> & {
450
+ /**
451
+ * Tokens is a list of tokens without the secrets
452
+ *
453
+ * @generated from field: repeated fits.api.v1.Token tokens = 1;
454
+ */
455
+ tokens: Token[];
456
+ };
457
+
458
+ /**
459
+ * Describes the message fits.api.v1.TokenServiceListResponse.
460
+ * Use `create(TokenServiceListResponseSchema)` to create a new message.
461
+ */
462
+ export const TokenServiceListResponseSchema: GenMessage<TokenServiceListResponse> = /*@__PURE__*/
463
+ messageDesc(file_fits_api_v1_token, 11);
464
+
465
+ /**
466
+ * TokenServiceRevokeRequest is the request payload of a token revoke request
467
+ *
468
+ * @generated from message fits.api.v1.TokenServiceRevokeRequest
469
+ */
470
+ export type TokenServiceRevokeRequest = Message<"fits.api.v1.TokenServiceRevokeRequest"> & {
471
+ /**
472
+ * Uuid of the token to revoke
473
+ *
474
+ * @generated from field: string uuid = 1;
475
+ */
476
+ uuid: string;
477
+ };
478
+
479
+ /**
480
+ * Describes the message fits.api.v1.TokenServiceRevokeRequest.
481
+ * Use `create(TokenServiceRevokeRequestSchema)` to create a new message.
482
+ */
483
+ export const TokenServiceRevokeRequestSchema: GenMessage<TokenServiceRevokeRequest> = /*@__PURE__*/
484
+ messageDesc(file_fits_api_v1_token, 12);
485
+
486
+ /**
487
+ * TokenServiceRevokeResponse is the response payload of a token revoke request
488
+ *
489
+ * @generated from message fits.api.v1.TokenServiceRevokeResponse
490
+ */
491
+ export type TokenServiceRevokeResponse = Message<"fits.api.v1.TokenServiceRevokeResponse"> & {
492
+ };
493
+
494
+ /**
495
+ * Describes the message fits.api.v1.TokenServiceRevokeResponse.
496
+ * Use `create(TokenServiceRevokeResponseSchema)` to create a new message.
497
+ */
498
+ export const TokenServiceRevokeResponseSchema: GenMessage<TokenServiceRevokeResponse> = /*@__PURE__*/
499
+ messageDesc(file_fits_api_v1_token, 13);
500
+
501
+ /**
502
+ * TokenServiceUpdateRequest is the request payload of a token update request
503
+ *
504
+ * @generated from message fits.api.v1.TokenServiceUpdateRequest
505
+ */
506
+ export type TokenServiceUpdateRequest = Message<"fits.api.v1.TokenServiceUpdateRequest"> & {
507
+ /**
508
+ * Uuid of the token to update
509
+ *
510
+ * @generated from field: string uuid = 1;
511
+ */
512
+ uuid: string;
513
+
514
+ /**
515
+ * UpdateMeta contains the timestamp and strategy to be used in this update request
516
+ * TokenUpdate is not guarded with optlock in the backend
517
+ *
518
+ * @generated from field: fits.api.v1.UpdateMeta update_meta = 2;
519
+ */
520
+ updateMeta?: UpdateMeta | undefined;
521
+
522
+ /**
523
+ * Description is a user given description of this token.
524
+ *
525
+ * @generated from field: optional string description = 3;
526
+ */
527
+ description?: string | undefined;
528
+
529
+ /**
530
+ * Permissions is a list of service methods this token can be used for.
531
+ *
532
+ * @generated from field: repeated fits.api.v1.PermissionsByVisibility permissions = 4;
533
+ */
534
+ permissions: PermissionsByVisibility[];
535
+
536
+ /**
537
+ * ProjectRoles associates a project id with the corresponding role of the token owner
538
+ *
539
+ * @generated from field: map<string, fits.api.v1.ProjectRole> project_roles = 5;
540
+ */
541
+ projectRoles: { [key: string]: ProjectRole };
542
+
543
+ /**
544
+ * TenantRoles associates a tenant id with the corresponding role of the token owner.
545
+ *
546
+ * @generated from field: map<string, fits.api.v1.TenantRole> tenant_roles = 6;
547
+ */
548
+ tenantRoles: { [key: string]: TenantRole };
549
+
550
+ /**
551
+ * AdminRole defines the admin role of the token owner
552
+ *
553
+ * @generated from field: optional fits.api.v1.AdminRole admin_role = 7;
554
+ */
555
+ adminRole?: AdminRole | undefined;
556
+
557
+ /**
558
+ * Labels on this token
559
+ *
560
+ * @generated from field: fits.api.v1.UpdateLabels labels = 8;
561
+ */
562
+ labels?: UpdateLabels | undefined;
563
+ };
564
+
565
+ /**
566
+ * Describes the message fits.api.v1.TokenServiceUpdateRequest.
567
+ * Use `create(TokenServiceUpdateRequestSchema)` to create a new message.
568
+ */
569
+ export const TokenServiceUpdateRequestSchema: GenMessage<TokenServiceUpdateRequest> = /*@__PURE__*/
570
+ messageDesc(file_fits_api_v1_token, 14);
571
+
572
+ /**
573
+ * TokenServiceUpdateResponse is the response payload of a token update request
574
+ *
575
+ * @generated from message fits.api.v1.TokenServiceUpdateResponse
576
+ */
577
+ export type TokenServiceUpdateResponse = Message<"fits.api.v1.TokenServiceUpdateResponse"> & {
578
+ /**
579
+ * Token is the updated token
580
+ *
581
+ * @generated from field: fits.api.v1.Token token = 1;
582
+ */
583
+ token?: Token | undefined;
584
+ };
585
+
586
+ /**
587
+ * Describes the message fits.api.v1.TokenServiceUpdateResponse.
588
+ * Use `create(TokenServiceUpdateResponseSchema)` to create a new message.
589
+ */
590
+ export const TokenServiceUpdateResponseSchema: GenMessage<TokenServiceUpdateResponse> = /*@__PURE__*/
591
+ messageDesc(file_fits_api_v1_token, 15);
592
+
593
+ /**
594
+ * TokenServiceGetRequest is the request payload of a token get request
595
+ *
596
+ * @generated from message fits.api.v1.TokenServiceGetRequest
597
+ */
598
+ export type TokenServiceGetRequest = Message<"fits.api.v1.TokenServiceGetRequest"> & {
599
+ /**
600
+ * Uuid of the token to get
601
+ *
602
+ * @generated from field: string uuid = 1;
603
+ */
604
+ uuid: string;
605
+ };
606
+
607
+ /**
608
+ * Describes the message fits.api.v1.TokenServiceGetRequest.
609
+ * Use `create(TokenServiceGetRequestSchema)` to create a new message.
610
+ */
611
+ export const TokenServiceGetRequestSchema: GenMessage<TokenServiceGetRequest> = /*@__PURE__*/
612
+ messageDesc(file_fits_api_v1_token, 16);
613
+
614
+ /**
615
+ * TokenServiceGetResponse is the response payload of a token get request
616
+ *
617
+ * @generated from message fits.api.v1.TokenServiceGetResponse
618
+ */
619
+ export type TokenServiceGetResponse = Message<"fits.api.v1.TokenServiceGetResponse"> & {
620
+ /**
621
+ * Token is the token
622
+ *
623
+ * @generated from field: fits.api.v1.Token token = 1;
624
+ */
625
+ token?: Token | undefined;
626
+ };
627
+
628
+ /**
629
+ * Describes the message fits.api.v1.TokenServiceGetResponse.
630
+ * Use `create(TokenServiceGetResponseSchema)` to create a new message.
631
+ */
632
+ export const TokenServiceGetResponseSchema: GenMessage<TokenServiceGetResponse> = /*@__PURE__*/
633
+ messageDesc(file_fits_api_v1_token, 17);
634
+
635
+ /**
636
+ * TokenServiceRefreshRequest is the request payload of a token refresh request
637
+ * Permissions, Roles and Expiration duration and all other properties are inherited from the calling token.
638
+ * The expiration duration will be calculated from the existing token (exp - iat)
639
+ *
640
+ * @generated from message fits.api.v1.TokenServiceRefreshRequest
641
+ */
642
+ export type TokenServiceRefreshRequest = Message<"fits.api.v1.TokenServiceRefreshRequest"> & {
643
+ };
644
+
645
+ /**
646
+ * Describes the message fits.api.v1.TokenServiceRefreshRequest.
647
+ * Use `create(TokenServiceRefreshRequestSchema)` to create a new message.
648
+ */
649
+ export const TokenServiceRefreshRequestSchema: GenMessage<TokenServiceRefreshRequest> = /*@__PURE__*/
650
+ messageDesc(file_fits_api_v1_token, 18);
651
+
652
+ /**
653
+ * TokenServiceRefreshResponse is the response payload of a token refresh request
654
+ *
655
+ * @generated from message fits.api.v1.TokenServiceRefreshResponse
656
+ */
657
+ export type TokenServiceRefreshResponse = Message<"fits.api.v1.TokenServiceRefreshResponse"> & {
658
+ /**
659
+ * Token which was refreshed
660
+ *
661
+ * @generated from field: fits.api.v1.Token token = 1;
662
+ */
663
+ token?: Token | undefined;
664
+
665
+ /**
666
+ * Secret is the body if the jwt token, should be used in api requests as bearer token
667
+ *
668
+ * @generated from field: string secret = 2;
669
+ */
670
+ secret: string;
671
+ };
672
+
673
+ /**
674
+ * Describes the message fits.api.v1.TokenServiceRefreshResponse.
675
+ * Use `create(TokenServiceRefreshResponseSchema)` to create a new message.
676
+ */
677
+ export const TokenServiceRefreshResponseSchema: GenMessage<TokenServiceRefreshResponse> = /*@__PURE__*/
678
+ messageDesc(file_fits_api_v1_token, 19);
679
+
680
+ /**
681
+ * TokenType specifies different use cases of tokens
682
+ *
683
+ * @generated from enum fits.api.v1.TokenType
684
+ */
685
+ export enum TokenType {
686
+ /**
687
+ * TOKEN_TYPE_UNSPECIFIED is not specified
688
+ *
689
+ * @generated from enum value: TOKEN_TYPE_UNSPECIFIED = 0;
690
+ */
691
+ UNSPECIFIED = 0,
692
+
693
+ /**
694
+ * TOKEN_TYPE_API is a token for api usage
695
+ *
696
+ * @generated from enum value: TOKEN_TYPE_API = 1;
697
+ */
698
+ API = 1,
699
+
700
+ /**
701
+ * TOKEN_TYPE_USER is a token to access the api with cli, a web application or other user induced actions.
702
+ *
703
+ * @generated from enum value: TOKEN_TYPE_USER = 2;
704
+ */
705
+ USER = 2,
706
+ }
707
+
708
+ /**
709
+ * Describes the enum fits.api.v1.TokenType.
710
+ */
711
+ export const TokenTypeSchema: GenEnum<TokenType> = /*@__PURE__*/
712
+ enumDesc(file_fits_api_v1_token, 0);
713
+
714
+ /**
715
+ * TokenService provides token management operations.
716
+ *
717
+ * @generated from service fits.api.v1.TokenService
718
+ */
719
+ export const TokenService: GenService<{
720
+ /**
721
+ * Returns the token with the specified UUID.
722
+ *
723
+ * @generated from rpc fits.api.v1.TokenService.Get
724
+ */
725
+ get: {
726
+ methodKind: "unary";
727
+ input: typeof TokenServiceGetRequestSchema;
728
+ output: typeof TokenServiceGetResponseSchema;
729
+ },
730
+ /**
731
+ * Creates a token to authenticate against the platform, the secret will be only visible in the response.
732
+ *
733
+ * @generated from rpc fits.api.v1.TokenService.Create
734
+ */
735
+ create: {
736
+ methodKind: "unary";
737
+ input: typeof TokenServiceCreateRequestSchema;
738
+ output: typeof TokenServiceCreateResponseSchema;
739
+ },
740
+ /**
741
+ * Updates a token.
742
+ *
743
+ * @generated from rpc fits.api.v1.TokenService.Update
744
+ */
745
+ update: {
746
+ methodKind: "unary";
747
+ input: typeof TokenServiceUpdateRequestSchema;
748
+ output: typeof TokenServiceUpdateResponseSchema;
749
+ },
750
+ /**
751
+ * Returns the list of all user tokens.
752
+ *
753
+ * @generated from rpc fits.api.v1.TokenService.List
754
+ */
755
+ list: {
756
+ methodKind: "unary";
757
+ input: typeof TokenServiceListRequestSchema;
758
+ output: typeof TokenServiceListResponseSchema;
759
+ },
760
+ /**
761
+ * Revokes a token, no further usage is possible afterwards.
762
+ *
763
+ * @generated from rpc fits.api.v1.TokenService.Revoke
764
+ */
765
+ revoke: {
766
+ methodKind: "unary";
767
+ input: typeof TokenServiceRevokeRequestSchema;
768
+ output: typeof TokenServiceRevokeResponseSchema;
769
+ },
770
+ /**
771
+ * Refreshes a token, this will create a new token with the exact same permissions as the calling token contains.
772
+ *
773
+ * @generated from rpc fits.api.v1.TokenService.Refresh
774
+ */
775
+ refresh: {
776
+ methodKind: "unary";
777
+ input: typeof TokenServiceRefreshRequestSchema;
778
+ output: typeof TokenServiceRefreshResponseSchema;
779
+ },
780
+ }> = /*@__PURE__*/
781
+ serviceDesc(file_fits_api_v1_token, 0);
782
+