@stigmer/protos 0.0.71 → 0.0.73
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/ai/stigmer/agentic/agent/v1/command_pb.js +2 -2
- package/ai/stigmer/agentic/agent/v1/command_pb.js.map +1 -1
- package/ai/stigmer/agentic/agent/v1/query_pb.js +2 -2
- package/ai/stigmer/agentic/agent/v1/query_pb.js.map +1 -1
- package/ai/stigmer/agentic/agentexecution/v1/command_pb.js +2 -2
- package/ai/stigmer/agentic/agentexecution/v1/command_pb.js.map +1 -1
- package/ai/stigmer/agentic/agentexecution/v1/query_connect.d.ts +2 -8
- package/ai/stigmer/agentic/agentexecution/v1/query_connect.js +2 -8
- package/ai/stigmer/agentic/agentexecution/v1/query_connect.js.map +1 -1
- package/ai/stigmer/agentic/agentexecution/v1/query_pb.d.ts +2 -8
- package/ai/stigmer/agentic/agentexecution/v1/query_pb.js +2 -2
- package/ai/stigmer/agentic/agentexecution/v1/query_pb.js.map +1 -1
- package/ai/stigmer/agentic/agentinstance/v1/command_pb.js +2 -2
- package/ai/stigmer/agentic/agentinstance/v1/command_pb.js.map +1 -1
- package/ai/stigmer/agentic/agentinstance/v1/query_pb.js +2 -2
- package/ai/stigmer/agentic/agentinstance/v1/query_pb.js.map +1 -1
- package/ai/stigmer/agentic/environment/v1/command_pb.js +2 -2
- package/ai/stigmer/agentic/environment/v1/command_pb.js.map +1 -1
- package/ai/stigmer/agentic/environment/v1/query_pb.js +2 -2
- package/ai/stigmer/agentic/environment/v1/query_pb.js.map +1 -1
- package/ai/stigmer/agentic/executioncontext/v1/command_pb.js +2 -2
- package/ai/stigmer/agentic/executioncontext/v1/command_pb.js.map +1 -1
- package/ai/stigmer/agentic/executioncontext/v1/query_pb.js +2 -2
- package/ai/stigmer/agentic/executioncontext/v1/query_pb.js.map +1 -1
- package/ai/stigmer/agentic/mcpserver/v1/command_pb.js +2 -2
- package/ai/stigmer/agentic/mcpserver/v1/command_pb.js.map +1 -1
- package/ai/stigmer/agentic/mcpserver/v1/query_pb.js +2 -2
- package/ai/stigmer/agentic/mcpserver/v1/query_pb.js.map +1 -1
- package/ai/stigmer/agentic/session/v1/command_pb.js +2 -2
- package/ai/stigmer/agentic/session/v1/command_pb.js.map +1 -1
- package/ai/stigmer/agentic/session/v1/query_pb.js +2 -2
- package/ai/stigmer/agentic/session/v1/query_pb.js.map +1 -1
- package/ai/stigmer/agentic/skill/v1/command_pb.js +2 -2
- package/ai/stigmer/agentic/skill/v1/command_pb.js.map +1 -1
- package/ai/stigmer/agentic/skill/v1/query_pb.js +2 -2
- package/ai/stigmer/agentic/skill/v1/query_pb.js.map +1 -1
- package/ai/stigmer/agentic/skill/v1/status_pb.d.ts +1 -1
- package/ai/stigmer/agentic/skill/v1/synth_pb.d.ts +1 -1
- package/ai/stigmer/agentic/workflow/v1/command_pb.js +2 -2
- package/ai/stigmer/agentic/workflow/v1/command_pb.js.map +1 -1
- package/ai/stigmer/agentic/workflow/v1/query_pb.js +2 -2
- package/ai/stigmer/agentic/workflow/v1/query_pb.js.map +1 -1
- package/ai/stigmer/agentic/workflowexecution/v1/command_pb.js +2 -2
- package/ai/stigmer/agentic/workflowexecution/v1/command_pb.js.map +1 -1
- package/ai/stigmer/agentic/workflowexecution/v1/query_pb.js +2 -2
- package/ai/stigmer/agentic/workflowexecution/v1/query_pb.js.map +1 -1
- package/ai/stigmer/agentic/workflowinstance/v1/command_pb.js +2 -2
- package/ai/stigmer/agentic/workflowinstance/v1/command_pb.js.map +1 -1
- package/ai/stigmer/agentic/workflowinstance/v1/query_pb.js +2 -2
- package/ai/stigmer/agentic/workflowinstance/v1/query_pb.js.map +1 -1
- package/ai/stigmer/commons/apiresource/apiresourcekind/api_resource_kind_pb.d.ts +6 -0
- package/ai/stigmer/commons/apiresource/apiresourcekind/api_resource_kind_pb.js +7 -1
- package/ai/stigmer/commons/apiresource/apiresourcekind/api_resource_kind_pb.js.map +1 -1
- package/ai/stigmer/commons/apiresource/apiresourcekind/authorization_config_pb.d.ts +28 -0
- package/ai/stigmer/commons/apiresource/apiresourcekind/authorization_config_pb.js +2 -1
- package/ai/stigmer/commons/apiresource/apiresourcekind/authorization_config_pb.js.map +1 -1
- package/ai/stigmer/{iam/iampolicy/v1/rpcauthorization/io_pb.d.ts → commons/rpc/authorization_config_pb.d.ts} +9 -9
- package/ai/stigmer/commons/rpc/authorization_config_pb.js +16 -0
- package/ai/stigmer/commons/rpc/authorization_config_pb.js.map +1 -0
- package/ai/stigmer/{iam/iampolicy/v1/rpcauthorization → commons/rpc}/method_options_pb.d.ts +4 -4
- package/ai/stigmer/commons/rpc/method_options_pb.js +29 -0
- package/ai/stigmer/commons/rpc/method_options_pb.js.map +1 -0
- package/ai/stigmer/iam/apikey/v1/command_pb.js +2 -2
- package/ai/stigmer/iam/apikey/v1/command_pb.js.map +1 -1
- package/ai/stigmer/iam/apikey/v1/query_pb.js +2 -2
- package/ai/stigmer/iam/apikey/v1/query_pb.js.map +1 -1
- package/ai/stigmer/iam/iampolicy/v1/command_connect.d.ts +33 -0
- package/ai/stigmer/iam/iampolicy/v1/command_connect.js +33 -0
- package/ai/stigmer/iam/iampolicy/v1/command_connect.js.map +1 -1
- package/ai/stigmer/iam/iampolicy/v1/command_pb.d.ts +33 -0
- package/ai/stigmer/iam/iampolicy/v1/command_pb.js +3 -2
- package/ai/stigmer/iam/iampolicy/v1/command_pb.js.map +1 -1
- package/ai/stigmer/iam/iampolicy/v1/query_connect.d.ts +66 -0
- package/ai/stigmer/iam/iampolicy/v1/query_connect.js +66 -0
- package/ai/stigmer/iam/iampolicy/v1/query_connect.js.map +1 -1
- package/ai/stigmer/iam/iampolicy/v1/query_pb.d.ts +64 -1
- package/ai/stigmer/iam/iampolicy/v1/query_pb.js +2 -2
- package/ai/stigmer/iam/iampolicy/v1/query_pb.js.map +1 -1
- package/ai/stigmer/iam/iampolicy/v1/spec_pb.d.ts +1 -1
- package/ai/stigmer/iam/identityaccount/v1/command_connect.d.ts +61 -1
- package/ai/stigmer/iam/identityaccount/v1/command_connect.js +61 -1
- package/ai/stigmer/iam/identityaccount/v1/command_connect.js.map +1 -1
- package/ai/stigmer/iam/identityaccount/v1/command_pb.d.ts +59 -2
- package/ai/stigmer/iam/identityaccount/v1/command_pb.js +2 -2
- package/ai/stigmer/iam/identityaccount/v1/command_pb.js.map +1 -1
- package/ai/stigmer/iam/identityaccount/v1/enum_pb.d.ts +1 -1
- package/ai/stigmer/iam/identityaccount/v1/enum_pb.js +1 -1
- package/ai/stigmer/iam/identityaccount/v1/io_pb.d.ts +219 -0
- package/ai/stigmer/iam/identityaccount/v1/io_pb.js +22 -1
- package/ai/stigmer/iam/identityaccount/v1/io_pb.js.map +1 -1
- package/ai/stigmer/iam/identityaccount/v1/query_connect.d.ts +26 -2
- package/ai/stigmer/iam/identityaccount/v1/query_connect.js +26 -2
- package/ai/stigmer/iam/identityaccount/v1/query_connect.js.map +1 -1
- package/ai/stigmer/iam/identityaccount/v1/query_pb.d.ts +26 -3
- package/ai/stigmer/iam/identityaccount/v1/query_pb.js +2 -2
- package/ai/stigmer/iam/identityaccount/v1/query_pb.js.map +1 -1
- package/ai/stigmer/iam/identityaccount/v1/spec_pb.d.ts +9 -7
- package/ai/stigmer/iam/identityaccount/v1/spec_pb.js.map +1 -1
- package/ai/stigmer/iam/identityprovider/v1/command_pb.js +2 -2
- package/ai/stigmer/iam/identityprovider/v1/command_pb.js.map +1 -1
- package/ai/stigmer/iam/identityprovider/v1/io_pb.d.ts +88 -0
- package/ai/stigmer/iam/identityprovider/v1/io_pb.js +16 -1
- package/ai/stigmer/iam/identityprovider/v1/io_pb.js.map +1 -1
- package/ai/stigmer/iam/identityprovider/v1/query_connect.d.ts +39 -0
- package/ai/stigmer/iam/identityprovider/v1/query_connect.js +39 -0
- package/ai/stigmer/iam/identityprovider/v1/query_connect.js.map +1 -1
- package/ai/stigmer/iam/identityprovider/v1/query_pb.d.ts +38 -0
- package/ai/stigmer/iam/identityprovider/v1/query_pb.js +3 -2
- package/ai/stigmer/iam/identityprovider/v1/query_pb.js.map +1 -1
- package/ai/stigmer/iam/identityprovider/v1/spec_pb.d.ts +60 -7
- package/ai/stigmer/iam/identityprovider/v1/spec_pb.js +1 -1
- package/ai/stigmer/iam/identityprovider/v1/spec_pb.js.map +1 -1
- package/ai/stigmer/iam/invitation/v1/api_pb.d.ts +132 -0
- package/ai/stigmer/iam/invitation/v1/api_pb.js +30 -0
- package/ai/stigmer/iam/invitation/v1/api_pb.js.map +1 -0
- package/ai/stigmer/iam/invitation/v1/command_connect.d.ts +79 -0
- package/ai/stigmer/iam/invitation/v1/command_connect.js +85 -0
- package/ai/stigmer/iam/invitation/v1/command_connect.js.map +1 -0
- package/ai/stigmer/iam/invitation/v1/command_pb.d.ts +80 -0
- package/ai/stigmer/iam/invitation/v1/command_pb.js +19 -0
- package/ai/stigmer/iam/invitation/v1/command_pb.js.map +1 -0
- package/ai/stigmer/iam/invitation/v1/enum_pb.d.ts +49 -0
- package/ai/stigmer/iam/invitation/v1/enum_pb.js +54 -0
- package/ai/stigmer/iam/invitation/v1/enum_pb.js.map +1 -0
- package/ai/stigmer/iam/invitation/v1/io_pb.d.ts +173 -0
- package/ai/stigmer/iam/invitation/v1/io_pb.js +43 -0
- package/ai/stigmer/iam/invitation/v1/io_pb.js.map +1 -0
- package/ai/stigmer/iam/invitation/v1/query_connect.d.ts +68 -0
- package/ai/stigmer/iam/invitation/v1/query_connect.js +74 -0
- package/ai/stigmer/iam/invitation/v1/query_connect.js.map +1 -0
- package/ai/stigmer/iam/invitation/v1/query_pb.d.ts +69 -0
- package/ai/stigmer/iam/invitation/v1/query_pb.js +19 -0
- package/ai/stigmer/iam/invitation/v1/query_pb.js.map +1 -0
- package/ai/stigmer/iam/invitation/v1/spec_pb.d.ts +77 -0
- package/ai/stigmer/iam/invitation/v1/spec_pb.js +17 -0
- package/ai/stigmer/iam/invitation/v1/spec_pb.js.map +1 -0
- package/ai/stigmer/iam/v1/enum_pb.d.ts +177 -0
- package/ai/stigmer/iam/v1/enum_pb.js +183 -0
- package/ai/stigmer/iam/v1/enum_pb.js.map +1 -0
- package/ai/stigmer/platform/github/v1/service_pb.js +2 -2
- package/ai/stigmer/platform/github/v1/service_pb.js.map +1 -1
- package/ai/stigmer/search/v1/io_pb.d.ts +15 -0
- package/ai/stigmer/search/v1/io_pb.js +1 -1
- package/ai/stigmer/search/v1/io_pb.js.map +1 -1
- package/ai/stigmer/search/v1/query_pb.js +2 -2
- package/ai/stigmer/search/v1/query_pb.js.map +1 -1
- package/ai/stigmer/tenancy/organization/v1/command_pb.js +2 -2
- package/ai/stigmer/tenancy/organization/v1/command_pb.js.map +1 -1
- package/ai/stigmer/tenancy/organization/v1/query_pb.js +2 -2
- package/ai/stigmer/tenancy/organization/v1/query_pb.js.map +1 -1
- package/ai/stigmer/tenancy/project/v1/command_pb.js +2 -2
- package/ai/stigmer/tenancy/project/v1/command_pb.js.map +1 -1
- package/ai/stigmer/tenancy/project/v1/query_pb.js +2 -2
- package/ai/stigmer/tenancy/project/v1/query_pb.js.map +1 -1
- package/package.json +1 -1
- package/ai/stigmer/iam/iampolicy/v1/rpcauthorization/iam_permission_pb.d.ts +0 -198
- package/ai/stigmer/iam/iampolicy/v1/rpcauthorization/iam_permission_pb.js +0 -203
- package/ai/stigmer/iam/iampolicy/v1/rpcauthorization/iam_permission_pb.js.map +0 -1
- package/ai/stigmer/iam/iampolicy/v1/rpcauthorization/io_pb.js +0 -16
- package/ai/stigmer/iam/iampolicy/v1/rpcauthorization/io_pb.js.map +0 -1
- package/ai/stigmer/iam/iampolicy/v1/rpcauthorization/method_options_pb.js +0 -29
- package/ai/stigmer/iam/iampolicy/v1/rpcauthorization/method_options_pb.js.map +0 -1
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* InvitationCommandController handles write operations for invitations.
|
|
3
|
+
*
|
|
4
|
+
* @generated from service ai.stigmer.iam.invitation.v1.InvitationCommandController
|
|
5
|
+
*/
|
|
6
|
+
export declare const InvitationCommandController: {
|
|
7
|
+
readonly typeName: "ai.stigmer.iam.invitation.v1.InvitationCommandController";
|
|
8
|
+
readonly methods: {
|
|
9
|
+
/**
|
|
10
|
+
* Create an invitation link for an organization.
|
|
11
|
+
*
|
|
12
|
+
* Generates a cryptographically random token and returns the full
|
|
13
|
+
* invitation resource including the token. The invite URL is
|
|
14
|
+
* constructed as: https://<host>/invite/<token>
|
|
15
|
+
*
|
|
16
|
+
* The specified role must be in the organization's grantable_roles.
|
|
17
|
+
* Platform-managed organizations cannot create invitations.
|
|
18
|
+
*
|
|
19
|
+
* @internal
|
|
20
|
+
* Authorization: Requires can_grant_access permission on the organization.
|
|
21
|
+
*
|
|
22
|
+
* @generated from rpc ai.stigmer.iam.invitation.v1.InvitationCommandController.create
|
|
23
|
+
*/
|
|
24
|
+
readonly create: {
|
|
25
|
+
readonly name: "create";
|
|
26
|
+
readonly I: any;
|
|
27
|
+
readonly O: any;
|
|
28
|
+
readonly kind: any;
|
|
29
|
+
};
|
|
30
|
+
/**
|
|
31
|
+
* Revoke an active invitation, preventing further redemptions.
|
|
32
|
+
*
|
|
33
|
+
* Sets the invitation state to revoked. Idempotent — revoking an
|
|
34
|
+
* already-revoked invitation is a no-op.
|
|
35
|
+
*
|
|
36
|
+
* @internal
|
|
37
|
+
* Authorization is handled in the handler: loads the invitation,
|
|
38
|
+
* resolves its organization, and checks can_grant_access on the org.
|
|
39
|
+
* Proto-level auth is skipped because the input (InvitationId) does
|
|
40
|
+
* not directly identify the org.
|
|
41
|
+
*
|
|
42
|
+
* @generated from rpc ai.stigmer.iam.invitation.v1.InvitationCommandController.revoke
|
|
43
|
+
*/
|
|
44
|
+
readonly revoke: {
|
|
45
|
+
readonly name: "revoke";
|
|
46
|
+
readonly I: any;
|
|
47
|
+
readonly O: any;
|
|
48
|
+
readonly kind: any;
|
|
49
|
+
};
|
|
50
|
+
/**
|
|
51
|
+
* Redeem an invitation to join an organization.
|
|
52
|
+
*
|
|
53
|
+
* Creates an IAM policy granting the invitation's configured role to
|
|
54
|
+
* the authenticated user on the invitation's organization. The
|
|
55
|
+
* redemption is atomic: the IAM policy is created and the redemption
|
|
56
|
+
* count is incremented in a single operation.
|
|
57
|
+
*
|
|
58
|
+
* Validation:
|
|
59
|
+
* - Invitation must be in active state
|
|
60
|
+
* - Invitation must not be expired
|
|
61
|
+
* - Invitation must not have reached max_redemptions (if > 0)
|
|
62
|
+
* - Redeemer must not already be a member of the organization
|
|
63
|
+
*
|
|
64
|
+
* @internal
|
|
65
|
+
* Authorization: The token itself is the authorization mechanism.
|
|
66
|
+
* The redeemer's identity is resolved from the authentication header.
|
|
67
|
+
* FGA authorization is skipped — any authenticated user with a valid
|
|
68
|
+
* token can redeem.
|
|
69
|
+
*
|
|
70
|
+
* @generated from rpc ai.stigmer.iam.invitation.v1.InvitationCommandController.redeem
|
|
71
|
+
*/
|
|
72
|
+
readonly redeem: {
|
|
73
|
+
readonly name: "redeem";
|
|
74
|
+
readonly I: any;
|
|
75
|
+
readonly O: any;
|
|
76
|
+
readonly kind: any;
|
|
77
|
+
};
|
|
78
|
+
};
|
|
79
|
+
};
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
// @generated by protoc-gen-connect-es v1.6.1 with parameter "target=ts"
|
|
2
|
+
// @generated from file ai/stigmer/iam/invitation/v1/command.proto (package ai.stigmer.iam.invitation.v1, syntax proto3)
|
|
3
|
+
/* eslint-disable */
|
|
4
|
+
// @ts-nocheck
|
|
5
|
+
import { MethodKind } from "@bufbuild/protobuf";
|
|
6
|
+
/**
|
|
7
|
+
* InvitationCommandController handles write operations for invitations.
|
|
8
|
+
*
|
|
9
|
+
* @generated from service ai.stigmer.iam.invitation.v1.InvitationCommandController
|
|
10
|
+
*/
|
|
11
|
+
export const InvitationCommandController = {
|
|
12
|
+
typeName: "ai.stigmer.iam.invitation.v1.InvitationCommandController",
|
|
13
|
+
methods: {
|
|
14
|
+
/**
|
|
15
|
+
* Create an invitation link for an organization.
|
|
16
|
+
*
|
|
17
|
+
* Generates a cryptographically random token and returns the full
|
|
18
|
+
* invitation resource including the token. The invite URL is
|
|
19
|
+
* constructed as: https://<host>/invite/<token>
|
|
20
|
+
*
|
|
21
|
+
* The specified role must be in the organization's grantable_roles.
|
|
22
|
+
* Platform-managed organizations cannot create invitations.
|
|
23
|
+
*
|
|
24
|
+
* @internal
|
|
25
|
+
* Authorization: Requires can_grant_access permission on the organization.
|
|
26
|
+
*
|
|
27
|
+
* @generated from rpc ai.stigmer.iam.invitation.v1.InvitationCommandController.create
|
|
28
|
+
*/
|
|
29
|
+
create: {
|
|
30
|
+
name: "create",
|
|
31
|
+
I: Invitation,
|
|
32
|
+
O: Invitation,
|
|
33
|
+
kind: MethodKind.Unary,
|
|
34
|
+
},
|
|
35
|
+
/**
|
|
36
|
+
* Revoke an active invitation, preventing further redemptions.
|
|
37
|
+
*
|
|
38
|
+
* Sets the invitation state to revoked. Idempotent — revoking an
|
|
39
|
+
* already-revoked invitation is a no-op.
|
|
40
|
+
*
|
|
41
|
+
* @internal
|
|
42
|
+
* Authorization is handled in the handler: loads the invitation,
|
|
43
|
+
* resolves its organization, and checks can_grant_access on the org.
|
|
44
|
+
* Proto-level auth is skipped because the input (InvitationId) does
|
|
45
|
+
* not directly identify the org.
|
|
46
|
+
*
|
|
47
|
+
* @generated from rpc ai.stigmer.iam.invitation.v1.InvitationCommandController.revoke
|
|
48
|
+
*/
|
|
49
|
+
revoke: {
|
|
50
|
+
name: "revoke",
|
|
51
|
+
I: InvitationId,
|
|
52
|
+
O: Invitation,
|
|
53
|
+
kind: MethodKind.Unary,
|
|
54
|
+
},
|
|
55
|
+
/**
|
|
56
|
+
* Redeem an invitation to join an organization.
|
|
57
|
+
*
|
|
58
|
+
* Creates an IAM policy granting the invitation's configured role to
|
|
59
|
+
* the authenticated user on the invitation's organization. The
|
|
60
|
+
* redemption is atomic: the IAM policy is created and the redemption
|
|
61
|
+
* count is incremented in a single operation.
|
|
62
|
+
*
|
|
63
|
+
* Validation:
|
|
64
|
+
* - Invitation must be in active state
|
|
65
|
+
* - Invitation must not be expired
|
|
66
|
+
* - Invitation must not have reached max_redemptions (if > 0)
|
|
67
|
+
* - Redeemer must not already be a member of the organization
|
|
68
|
+
*
|
|
69
|
+
* @internal
|
|
70
|
+
* Authorization: The token itself is the authorization mechanism.
|
|
71
|
+
* The redeemer's identity is resolved from the authentication header.
|
|
72
|
+
* FGA authorization is skipped — any authenticated user with a valid
|
|
73
|
+
* token can redeem.
|
|
74
|
+
*
|
|
75
|
+
* @generated from rpc ai.stigmer.iam.invitation.v1.InvitationCommandController.redeem
|
|
76
|
+
*/
|
|
77
|
+
redeem: {
|
|
78
|
+
name: "redeem",
|
|
79
|
+
I: RedeemInvitationInput,
|
|
80
|
+
O: Invitation,
|
|
81
|
+
kind: MethodKind.Unary,
|
|
82
|
+
},
|
|
83
|
+
}
|
|
84
|
+
};
|
|
85
|
+
//# sourceMappingURL=command_connect.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command_connect.js","sourceRoot":"","sources":["../../../../../../ai/stigmer/iam/invitation/v1/command_connect.ts"],"names":[],"mappings":"AAAA,wEAAwE;AACxE,wHAAwH;AACxH,oBAAoB;AACpB,cAAc;AAGd,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAGhD;;;;GAIG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG;IACzC,QAAQ,EAAE,0DAA0D;IACpE,OAAO,EAAE;QACP;;;;;;;;;;;;;;WAcG;QACH,MAAM,EAAE;YACN,IAAI,EAAE,QAAQ;YACd,CAAC,EAAE,UAAU;YACb,CAAC,EAAE,UAAU;YACb,IAAI,EAAE,UAAU,CAAC,KAAK;SACvB;QACD;;;;;;;;;;;;;WAaG;QACH,MAAM,EAAE;YACN,IAAI,EAAE,QAAQ;YACd,CAAC,EAAE,YAAY;YACf,CAAC,EAAE,UAAU;YACb,IAAI,EAAE,UAAU,CAAC,KAAK;SACvB;QACD;;;;;;;;;;;;;;;;;;;;;WAqBG;QACH,MAAM,EAAE;YACN,IAAI,EAAE,QAAQ;YACd,CAAC,EAAE,qBAAqB;YACxB,CAAC,EAAE,UAAU;YACb,IAAI,EAAE,UAAU,CAAC,KAAK;SACvB;KACF;CACO,CAAC"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import type { GenFile, GenService } from "@bufbuild/protobuf/codegenv1";
|
|
2
|
+
import type { InvitationSchema } from "./api_pb";
|
|
3
|
+
import type { InvitationIdSchema, RedeemInvitationInputSchema } from "./io_pb";
|
|
4
|
+
/**
|
|
5
|
+
* Describes the file ai/stigmer/iam/invitation/v1/command.proto.
|
|
6
|
+
*/
|
|
7
|
+
export declare const file_ai_stigmer_iam_invitation_v1_command: GenFile;
|
|
8
|
+
/**
|
|
9
|
+
* InvitationCommandController handles write operations for invitations.
|
|
10
|
+
*
|
|
11
|
+
* @generated from service ai.stigmer.iam.invitation.v1.InvitationCommandController
|
|
12
|
+
*/
|
|
13
|
+
export declare const InvitationCommandController: GenService<{
|
|
14
|
+
/**
|
|
15
|
+
* Create an invitation link for an organization.
|
|
16
|
+
*
|
|
17
|
+
* Generates a cryptographically random token and returns the full
|
|
18
|
+
* invitation resource including the token. The invite URL is
|
|
19
|
+
* constructed as: https://<host>/invite/<token>
|
|
20
|
+
*
|
|
21
|
+
* The specified role must be in the organization's grantable_roles.
|
|
22
|
+
* Platform-managed organizations cannot create invitations.
|
|
23
|
+
*
|
|
24
|
+
* @internal
|
|
25
|
+
* Authorization: Requires can_grant_access permission on the organization.
|
|
26
|
+
*
|
|
27
|
+
* @generated from rpc ai.stigmer.iam.invitation.v1.InvitationCommandController.create
|
|
28
|
+
*/
|
|
29
|
+
create: {
|
|
30
|
+
methodKind: "unary";
|
|
31
|
+
input: typeof InvitationSchema;
|
|
32
|
+
output: typeof InvitationSchema;
|
|
33
|
+
};
|
|
34
|
+
/**
|
|
35
|
+
* Revoke an active invitation, preventing further redemptions.
|
|
36
|
+
*
|
|
37
|
+
* Sets the invitation state to revoked. Idempotent — revoking an
|
|
38
|
+
* already-revoked invitation is a no-op.
|
|
39
|
+
*
|
|
40
|
+
* @internal
|
|
41
|
+
* Authorization is handled in the handler: loads the invitation,
|
|
42
|
+
* resolves its organization, and checks can_grant_access on the org.
|
|
43
|
+
* Proto-level auth is skipped because the input (InvitationId) does
|
|
44
|
+
* not directly identify the org.
|
|
45
|
+
*
|
|
46
|
+
* @generated from rpc ai.stigmer.iam.invitation.v1.InvitationCommandController.revoke
|
|
47
|
+
*/
|
|
48
|
+
revoke: {
|
|
49
|
+
methodKind: "unary";
|
|
50
|
+
input: typeof InvitationIdSchema;
|
|
51
|
+
output: typeof InvitationSchema;
|
|
52
|
+
};
|
|
53
|
+
/**
|
|
54
|
+
* Redeem an invitation to join an organization.
|
|
55
|
+
*
|
|
56
|
+
* Creates an IAM policy granting the invitation's configured role to
|
|
57
|
+
* the authenticated user on the invitation's organization. The
|
|
58
|
+
* redemption is atomic: the IAM policy is created and the redemption
|
|
59
|
+
* count is incremented in a single operation.
|
|
60
|
+
*
|
|
61
|
+
* Validation:
|
|
62
|
+
* - Invitation must be in active state
|
|
63
|
+
* - Invitation must not be expired
|
|
64
|
+
* - Invitation must not have reached max_redemptions (if > 0)
|
|
65
|
+
* - Redeemer must not already be a member of the organization
|
|
66
|
+
*
|
|
67
|
+
* @internal
|
|
68
|
+
* Authorization: The token itself is the authorization mechanism.
|
|
69
|
+
* The redeemer's identity is resolved from the authentication header.
|
|
70
|
+
* FGA authorization is skipped — any authenticated user with a valid
|
|
71
|
+
* token can redeem.
|
|
72
|
+
*
|
|
73
|
+
* @generated from rpc ai.stigmer.iam.invitation.v1.InvitationCommandController.redeem
|
|
74
|
+
*/
|
|
75
|
+
redeem: {
|
|
76
|
+
methodKind: "unary";
|
|
77
|
+
input: typeof RedeemInvitationInputSchema;
|
|
78
|
+
output: typeof InvitationSchema;
|
|
79
|
+
};
|
|
80
|
+
}>;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
// @generated by protoc-gen-es v2.2.2 with parameter "target=ts"
|
|
2
|
+
// @generated from file ai/stigmer/iam/invitation/v1/command.proto (package ai.stigmer.iam.invitation.v1, syntax proto3)
|
|
3
|
+
/* eslint-disable */
|
|
4
|
+
import { fileDesc, serviceDesc } from "@bufbuild/protobuf/codegenv1";
|
|
5
|
+
import { file_ai_stigmer_commons_apiresource_rpc_service_options } from "../../../commons/apiresource/rpc_service_options_pb";
|
|
6
|
+
import { file_ai_stigmer_commons_rpc_method_options } from "../../../commons/rpc/method_options_pb";
|
|
7
|
+
import { file_ai_stigmer_iam_invitation_v1_api } from "./api_pb";
|
|
8
|
+
import { file_ai_stigmer_iam_invitation_v1_io } from "./io_pb";
|
|
9
|
+
/**
|
|
10
|
+
* Describes the file ai/stigmer/iam/invitation/v1/command.proto.
|
|
11
|
+
*/
|
|
12
|
+
export const file_ai_stigmer_iam_invitation_v1_command = /*@__PURE__*/ fileDesc("CiphaS9zdGlnbWVyL2lhbS9pbnZpdGF0aW9uL3YxL2NvbW1hbmQucHJvdG8SHGFpLnN0aWdtZXIuaWFtLmludml0YXRpb24udjEypwMKG0ludml0YXRpb25Db21tYW5kQ29udHJvbGxlchKsAQoGY3JlYXRlEiguYWkuc3RpZ21lci5pYW0uaW52aXRhdGlvbi52MS5JbnZpdGF0aW9uGiguYWkuc3RpZ21lci5pYW0uaW52aXRhdGlvbi52MS5JbnZpdGF0aW9uIk7CuBhKCAQQHiIMbWV0YWRhdGEub3JnKjZ1bmF1dGhvcml6ZWQgdG8gY3JlYXRlIGludml0YXRpb24gaW4gdGhpcyBvcmdhbml6YXRpb24SZAoGcmV2b2tlEiouYWkuc3RpZ21lci5pYW0uaW52aXRhdGlvbi52MS5JbnZpdGF0aW9uSWQaKC5haS5zdGlnbWVyLmlhbS5pbnZpdGF0aW9uLnYxLkludml0YXRpb24iBNC4GAESbQoGcmVkZWVtEjMuYWkuc3RpZ21lci5pYW0uaW52aXRhdGlvbi52MS5SZWRlZW1JbnZpdGF0aW9uSW5wdXQaKC5haS5zdGlnbWVyLmlhbS5pbnZpdGF0aW9uLnYxLkludml0YXRpb24iBNC4GAEaBKD/KxRiBnByb3RvMw", [file_ai_stigmer_commons_apiresource_rpc_service_options, file_ai_stigmer_commons_rpc_method_options, file_ai_stigmer_iam_invitation_v1_api, file_ai_stigmer_iam_invitation_v1_io]);
|
|
13
|
+
/**
|
|
14
|
+
* InvitationCommandController handles write operations for invitations.
|
|
15
|
+
*
|
|
16
|
+
* @generated from service ai.stigmer.iam.invitation.v1.InvitationCommandController
|
|
17
|
+
*/
|
|
18
|
+
export const InvitationCommandController = /*@__PURE__*/ serviceDesc(file_ai_stigmer_iam_invitation_v1_command, 0);
|
|
19
|
+
//# sourceMappingURL=command_pb.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command_pb.js","sourceRoot":"","sources":["../../../../../../ai/stigmer/iam/invitation/v1/command_pb.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAChE,wHAAwH;AACxH,oBAAoB;AAGpB,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,uDAAuD,EAAE,MAAM,qDAAqD,CAAC;AAC9H,OAAO,EAAE,0CAA0C,EAAE,MAAM,wCAAwC,CAAC;AAEpG,OAAO,EAAE,qCAAqC,EAAE,MAAM,UAAU,CAAC;AAEjE,OAAO,EAAE,oCAAoC,EAAE,MAAM,SAAS,CAAC;AAE/D;;GAEG;AACH,MAAM,CAAC,MAAM,yCAAyC,GAAY,aAAa,CAC7E,QAAQ,CAAC,wqBAAwqB,EAAE,CAAC,uDAAuD,EAAE,0CAA0C,EAAE,qCAAqC,EAAE,oCAAoC,CAAC,CAAC,CAAC;AAEz2B;;;;GAIG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAmEnC,aAAa,CAChB,WAAW,CAAC,yCAAyC,EAAE,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import type { GenEnum, GenFile } from "@bufbuild/protobuf/codegenv1";
|
|
2
|
+
/**
|
|
3
|
+
* Describes the file ai/stigmer/iam/invitation/v1/enum.proto.
|
|
4
|
+
*/
|
|
5
|
+
export declare const file_ai_stigmer_iam_invitation_v1_enum: GenFile;
|
|
6
|
+
/**
|
|
7
|
+
* InvitationState tracks the lifecycle of an invitation link.
|
|
8
|
+
*
|
|
9
|
+
* State transitions:
|
|
10
|
+
* active -> expired (system: past expires_at)
|
|
11
|
+
* active -> revoked (admin: explicit revocation)
|
|
12
|
+
* active -> fully_redeemed (system: redemption_count >= max_redemptions)
|
|
13
|
+
*
|
|
14
|
+
* @generated from enum ai.stigmer.iam.invitation.v1.InvitationState
|
|
15
|
+
*/
|
|
16
|
+
export declare enum InvitationState {
|
|
17
|
+
/**
|
|
18
|
+
* @generated from enum value: invitation_state_unspecified = 0;
|
|
19
|
+
*/
|
|
20
|
+
invitation_state_unspecified = 0,
|
|
21
|
+
/**
|
|
22
|
+
* The invitation is valid and can be redeemed.
|
|
23
|
+
*
|
|
24
|
+
* @generated from enum value: active = 1;
|
|
25
|
+
*/
|
|
26
|
+
active = 1,
|
|
27
|
+
/**
|
|
28
|
+
* The invitation has passed its expires_at timestamp.
|
|
29
|
+
*
|
|
30
|
+
* @generated from enum value: expired = 2;
|
|
31
|
+
*/
|
|
32
|
+
expired = 2,
|
|
33
|
+
/**
|
|
34
|
+
* An org admin explicitly revoked the invitation.
|
|
35
|
+
*
|
|
36
|
+
* @generated from enum value: revoked = 3;
|
|
37
|
+
*/
|
|
38
|
+
revoked = 3,
|
|
39
|
+
/**
|
|
40
|
+
* The invitation reached its max_redemptions limit.
|
|
41
|
+
*
|
|
42
|
+
* @generated from enum value: fully_redeemed = 4;
|
|
43
|
+
*/
|
|
44
|
+
fully_redeemed = 4
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Describes the enum ai.stigmer.iam.invitation.v1.InvitationState.
|
|
48
|
+
*/
|
|
49
|
+
export declare const InvitationStateSchema: GenEnum<InvitationState>;
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
// @generated by protoc-gen-es v2.2.2 with parameter "target=ts"
|
|
2
|
+
// @generated from file ai/stigmer/iam/invitation/v1/enum.proto (package ai.stigmer.iam.invitation.v1, syntax proto3)
|
|
3
|
+
/* eslint-disable */
|
|
4
|
+
import { enumDesc, fileDesc } from "@bufbuild/protobuf/codegenv1";
|
|
5
|
+
/**
|
|
6
|
+
* Describes the file ai/stigmer/iam/invitation/v1/enum.proto.
|
|
7
|
+
*/
|
|
8
|
+
export const file_ai_stigmer_iam_invitation_v1_enum = /*@__PURE__*/ fileDesc("CidhaS9zdGlnbWVyL2lhbS9pbnZpdGF0aW9uL3YxL2VudW0ucHJvdG8SHGFpLnN0aWdtZXIuaWFtLmludml0YXRpb24udjEqbQoPSW52aXRhdGlvblN0YXRlEiAKHGludml0YXRpb25fc3RhdGVfdW5zcGVjaWZpZWQQABIKCgZhY3RpdmUQARILCgdleHBpcmVkEAISCwoHcmV2b2tlZBADEhIKDmZ1bGx5X3JlZGVlbWVkEARiBnByb3RvMw");
|
|
9
|
+
/**
|
|
10
|
+
* InvitationState tracks the lifecycle of an invitation link.
|
|
11
|
+
*
|
|
12
|
+
* State transitions:
|
|
13
|
+
* active -> expired (system: past expires_at)
|
|
14
|
+
* active -> revoked (admin: explicit revocation)
|
|
15
|
+
* active -> fully_redeemed (system: redemption_count >= max_redemptions)
|
|
16
|
+
*
|
|
17
|
+
* @generated from enum ai.stigmer.iam.invitation.v1.InvitationState
|
|
18
|
+
*/
|
|
19
|
+
export var InvitationState;
|
|
20
|
+
(function (InvitationState) {
|
|
21
|
+
/**
|
|
22
|
+
* @generated from enum value: invitation_state_unspecified = 0;
|
|
23
|
+
*/
|
|
24
|
+
InvitationState[InvitationState["invitation_state_unspecified"] = 0] = "invitation_state_unspecified";
|
|
25
|
+
/**
|
|
26
|
+
* The invitation is valid and can be redeemed.
|
|
27
|
+
*
|
|
28
|
+
* @generated from enum value: active = 1;
|
|
29
|
+
*/
|
|
30
|
+
InvitationState[InvitationState["active"] = 1] = "active";
|
|
31
|
+
/**
|
|
32
|
+
* The invitation has passed its expires_at timestamp.
|
|
33
|
+
*
|
|
34
|
+
* @generated from enum value: expired = 2;
|
|
35
|
+
*/
|
|
36
|
+
InvitationState[InvitationState["expired"] = 2] = "expired";
|
|
37
|
+
/**
|
|
38
|
+
* An org admin explicitly revoked the invitation.
|
|
39
|
+
*
|
|
40
|
+
* @generated from enum value: revoked = 3;
|
|
41
|
+
*/
|
|
42
|
+
InvitationState[InvitationState["revoked"] = 3] = "revoked";
|
|
43
|
+
/**
|
|
44
|
+
* The invitation reached its max_redemptions limit.
|
|
45
|
+
*
|
|
46
|
+
* @generated from enum value: fully_redeemed = 4;
|
|
47
|
+
*/
|
|
48
|
+
InvitationState[InvitationState["fully_redeemed"] = 4] = "fully_redeemed";
|
|
49
|
+
})(InvitationState || (InvitationState = {}));
|
|
50
|
+
/**
|
|
51
|
+
* Describes the enum ai.stigmer.iam.invitation.v1.InvitationState.
|
|
52
|
+
*/
|
|
53
|
+
export const InvitationStateSchema = /*@__PURE__*/ enumDesc(file_ai_stigmer_iam_invitation_v1_enum, 0);
|
|
54
|
+
//# sourceMappingURL=enum_pb.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"enum_pb.js","sourceRoot":"","sources":["../../../../../../ai/stigmer/iam/invitation/v1/enum_pb.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAChE,qHAAqH;AACrH,oBAAoB;AAGpB,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAElE;;GAEG;AACH,MAAM,CAAC,MAAM,sCAAsC,GAAY,aAAa,CAC1E,QAAQ,CAAC,gQAAgQ,CAAC,CAAC;AAE7Q;;;;;;;;;GASG;AACH,MAAM,CAAN,IAAY,eAiCX;AAjCD,WAAY,eAAe;IACzB;;OAEG;IACH,qGAAgC,CAAA;IAEhC;;;;OAIG;IACH,yDAAU,CAAA;IAEV;;;;OAIG;IACH,2DAAW,CAAA;IAEX;;;;OAIG;IACH,2DAAW,CAAA;IAEX;;;;OAIG;IACH,yEAAkB,CAAA;AACpB,CAAC,EAjCW,eAAe,KAAf,eAAe,QAiC1B;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAA6B,aAAa,CAC1E,QAAQ,CAAC,sCAAsC,EAAE,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
import type { GenFile, GenMessage } from "@bufbuild/protobuf/codegenv1";
|
|
2
|
+
import type { Invitation } from "./api_pb";
|
|
3
|
+
import type { IamRole } from "../../v1/enum_pb";
|
|
4
|
+
import type { Timestamp } from "@bufbuild/protobuf/wkt";
|
|
5
|
+
import type { Message } from "@bufbuild/protobuf";
|
|
6
|
+
/**
|
|
7
|
+
* Describes the file ai/stigmer/iam/invitation/v1/io.proto.
|
|
8
|
+
*/
|
|
9
|
+
export declare const file_ai_stigmer_iam_invitation_v1_io: GenFile;
|
|
10
|
+
/**
|
|
11
|
+
* InvitationId identifies an invitation by its unique identifier.
|
|
12
|
+
*
|
|
13
|
+
* @generated from message ai.stigmer.iam.invitation.v1.InvitationId
|
|
14
|
+
*/
|
|
15
|
+
export type InvitationId = Message<"ai.stigmer.iam.invitation.v1.InvitationId"> & {
|
|
16
|
+
/**
|
|
17
|
+
* Unique identifier of the invitation resource.
|
|
18
|
+
*
|
|
19
|
+
* @generated from field: string value = 1;
|
|
20
|
+
*/
|
|
21
|
+
value: string;
|
|
22
|
+
};
|
|
23
|
+
/**
|
|
24
|
+
* Describes the message ai.stigmer.iam.invitation.v1.InvitationId.
|
|
25
|
+
* Use `create(InvitationIdSchema)` to create a new message.
|
|
26
|
+
*/
|
|
27
|
+
export declare const InvitationIdSchema: GenMessage<InvitationId>;
|
|
28
|
+
/**
|
|
29
|
+
* Invitations contains a list of invitation resources.
|
|
30
|
+
*
|
|
31
|
+
* @generated from message ai.stigmer.iam.invitation.v1.Invitations
|
|
32
|
+
*/
|
|
33
|
+
export type Invitations = Message<"ai.stigmer.iam.invitation.v1.Invitations"> & {
|
|
34
|
+
/**
|
|
35
|
+
* Invitation entries.
|
|
36
|
+
*
|
|
37
|
+
* @generated from field: repeated ai.stigmer.iam.invitation.v1.Invitation entries = 1;
|
|
38
|
+
*/
|
|
39
|
+
entries: Invitation[];
|
|
40
|
+
};
|
|
41
|
+
/**
|
|
42
|
+
* Describes the message ai.stigmer.iam.invitation.v1.Invitations.
|
|
43
|
+
* Use `create(InvitationsSchema)` to create a new message.
|
|
44
|
+
*/
|
|
45
|
+
export declare const InvitationsSchema: GenMessage<Invitations>;
|
|
46
|
+
/**
|
|
47
|
+
* ListInvitationsByOrgInput specifies the organization whose invitations
|
|
48
|
+
* should be returned.
|
|
49
|
+
*
|
|
50
|
+
* @generated from message ai.stigmer.iam.invitation.v1.ListInvitationsByOrgInput
|
|
51
|
+
*/
|
|
52
|
+
export type ListInvitationsByOrgInput = Message<"ai.stigmer.iam.invitation.v1.ListInvitationsByOrgInput"> & {
|
|
53
|
+
/**
|
|
54
|
+
* Organization slug to list invitations for.
|
|
55
|
+
*
|
|
56
|
+
* @generated from field: string org = 1;
|
|
57
|
+
*/
|
|
58
|
+
org: string;
|
|
59
|
+
};
|
|
60
|
+
/**
|
|
61
|
+
* Describes the message ai.stigmer.iam.invitation.v1.ListInvitationsByOrgInput.
|
|
62
|
+
* Use `create(ListInvitationsByOrgInputSchema)` to create a new message.
|
|
63
|
+
*/
|
|
64
|
+
export declare const ListInvitationsByOrgInputSchema: GenMessage<ListInvitationsByOrgInput>;
|
|
65
|
+
/**
|
|
66
|
+
* InvitationTokenInput identifies an invitation by its shareable token.
|
|
67
|
+
*
|
|
68
|
+
* @generated from message ai.stigmer.iam.invitation.v1.InvitationTokenInput
|
|
69
|
+
*/
|
|
70
|
+
export type InvitationTokenInput = Message<"ai.stigmer.iam.invitation.v1.InvitationTokenInput"> & {
|
|
71
|
+
/**
|
|
72
|
+
* The cryptographically random token from the invite URL.
|
|
73
|
+
*
|
|
74
|
+
* @generated from field: string token = 1;
|
|
75
|
+
*/
|
|
76
|
+
token: string;
|
|
77
|
+
};
|
|
78
|
+
/**
|
|
79
|
+
* Describes the message ai.stigmer.iam.invitation.v1.InvitationTokenInput.
|
|
80
|
+
* Use `create(InvitationTokenInputSchema)` to create a new message.
|
|
81
|
+
*/
|
|
82
|
+
export declare const InvitationTokenInputSchema: GenMessage<InvitationTokenInput>;
|
|
83
|
+
/**
|
|
84
|
+
* RedeemInvitationInput is the request to redeem an invitation.
|
|
85
|
+
* The redeemer's identity is resolved from the authentication header.
|
|
86
|
+
*
|
|
87
|
+
* @generated from message ai.stigmer.iam.invitation.v1.RedeemInvitationInput
|
|
88
|
+
*/
|
|
89
|
+
export type RedeemInvitationInput = Message<"ai.stigmer.iam.invitation.v1.RedeemInvitationInput"> & {
|
|
90
|
+
/**
|
|
91
|
+
* The cryptographically random token from the invite URL.
|
|
92
|
+
*
|
|
93
|
+
* @generated from field: string token = 1;
|
|
94
|
+
*/
|
|
95
|
+
token: string;
|
|
96
|
+
};
|
|
97
|
+
/**
|
|
98
|
+
* Describes the message ai.stigmer.iam.invitation.v1.RedeemInvitationInput.
|
|
99
|
+
* Use `create(RedeemInvitationInputSchema)` to create a new message.
|
|
100
|
+
*/
|
|
101
|
+
export declare const RedeemInvitationInputSchema: GenMessage<RedeemInvitationInput>;
|
|
102
|
+
/**
|
|
103
|
+
* InvitationPreview is a safe projection of an invitation for unauthenticated
|
|
104
|
+
* users viewing an invite link.
|
|
105
|
+
*
|
|
106
|
+
* This message is returned by the getByToken query, which requires no
|
|
107
|
+
* authentication. It intentionally omits sensitive fields (token value,
|
|
108
|
+
* redemption history) and includes only the information needed to render
|
|
109
|
+
* the "You've been invited to join [org]" page.
|
|
110
|
+
*
|
|
111
|
+
* Information disclosure is acceptable here because the token is already
|
|
112
|
+
* a shared secret — knowing the org name is necessary to render the
|
|
113
|
+
* invitation acceptance page.
|
|
114
|
+
*
|
|
115
|
+
* @generated from message ai.stigmer.iam.invitation.v1.InvitationPreview
|
|
116
|
+
*/
|
|
117
|
+
export type InvitationPreview = Message<"ai.stigmer.iam.invitation.v1.InvitationPreview"> & {
|
|
118
|
+
/**
|
|
119
|
+
* Display name of the organization.
|
|
120
|
+
*
|
|
121
|
+
* @generated from field: string organization_name = 1;
|
|
122
|
+
*/
|
|
123
|
+
organizationName: string;
|
|
124
|
+
/**
|
|
125
|
+
* URL-friendly identifier of the organization.
|
|
126
|
+
*
|
|
127
|
+
* @generated from field: string organization_slug = 2;
|
|
128
|
+
*/
|
|
129
|
+
organizationSlug: string;
|
|
130
|
+
/**
|
|
131
|
+
* URL to the organization's logo image.
|
|
132
|
+
*
|
|
133
|
+
* @generated from field: string organization_logo_url = 3;
|
|
134
|
+
*/
|
|
135
|
+
organizationLogoUrl: string;
|
|
136
|
+
/**
|
|
137
|
+
* The role that will be granted upon redemption.
|
|
138
|
+
*
|
|
139
|
+
* @generated from field: ai.stigmer.iam.v1.IamRole role = 4;
|
|
140
|
+
*/
|
|
141
|
+
role: IamRole;
|
|
142
|
+
/**
|
|
143
|
+
* When this invitation expires.
|
|
144
|
+
*
|
|
145
|
+
* @generated from field: google.protobuf.Timestamp expires_at = 5;
|
|
146
|
+
*/
|
|
147
|
+
expiresAt?: Timestamp;
|
|
148
|
+
/**
|
|
149
|
+
* Human-readable label describing the invitation's purpose.
|
|
150
|
+
*
|
|
151
|
+
* @generated from field: string label = 6;
|
|
152
|
+
*/
|
|
153
|
+
label: string;
|
|
154
|
+
/**
|
|
155
|
+
* Whether this invitation can currently be redeemed.
|
|
156
|
+
* False if expired, revoked, or fully redeemed.
|
|
157
|
+
*
|
|
158
|
+
* @generated from field: bool is_valid = 7;
|
|
159
|
+
*/
|
|
160
|
+
isValid: boolean;
|
|
161
|
+
/**
|
|
162
|
+
* Human-readable reason when is_valid is false.
|
|
163
|
+
* Empty when the invitation is valid.
|
|
164
|
+
*
|
|
165
|
+
* @generated from field: string invalid_reason = 8;
|
|
166
|
+
*/
|
|
167
|
+
invalidReason: string;
|
|
168
|
+
};
|
|
169
|
+
/**
|
|
170
|
+
* Describes the message ai.stigmer.iam.invitation.v1.InvitationPreview.
|
|
171
|
+
* Use `create(InvitationPreviewSchema)` to create a new message.
|
|
172
|
+
*/
|
|
173
|
+
export declare const InvitationPreviewSchema: GenMessage<InvitationPreview>;
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
// @generated by protoc-gen-es v2.2.2 with parameter "target=ts"
|
|
2
|
+
// @generated from file ai/stigmer/iam/invitation/v1/io.proto (package ai.stigmer.iam.invitation.v1, syntax proto3)
|
|
3
|
+
/* eslint-disable */
|
|
4
|
+
import { fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv1";
|
|
5
|
+
import { file_ai_stigmer_iam_invitation_v1_api } from "./api_pb";
|
|
6
|
+
import { file_ai_stigmer_iam_v1_enum } from "../../v1/enum_pb";
|
|
7
|
+
import { file_buf_validate_validate } from "../../../../../buf/validate/validate_pb";
|
|
8
|
+
import { file_google_protobuf_timestamp } from "@bufbuild/protobuf/wkt";
|
|
9
|
+
/**
|
|
10
|
+
* Describes the file ai/stigmer/iam/invitation/v1/io.proto.
|
|
11
|
+
*/
|
|
12
|
+
export const file_ai_stigmer_iam_invitation_v1_io = /*@__PURE__*/ fileDesc("CiVhaS9zdGlnbWVyL2lhbS9pbnZpdGF0aW9uL3YxL2lvLnByb3RvEhxhaS5zdGlnbWVyLmlhbS5pbnZpdGF0aW9uLnYxIiUKDEludml0YXRpb25JZBIVCgV2YWx1ZRgBIAEoCUIGukgDyAEBIkgKC0ludml0YXRpb25zEjkKB2VudHJpZXMYASADKAsyKC5haS5zdGlnbWVyLmlhbS5pbnZpdGF0aW9uLnYxLkludml0YXRpb24iMQoZTGlzdEludml0YXRpb25zQnlPcmdJbnB1dBIUCgNvcmcYASABKAlCB7pIBHICEAEiLgoUSW52aXRhdGlvblRva2VuSW5wdXQSFgoFdG9rZW4YASABKAlCB7pIBHICEAEiLwoVUmVkZWVtSW52aXRhdGlvbklucHV0EhYKBXRva2VuGAEgASgJQge6SARyAhABIvsBChFJbnZpdGF0aW9uUHJldmlldxIZChFvcmdhbml6YXRpb25fbmFtZRgBIAEoCRIZChFvcmdhbml6YXRpb25fc2x1ZxgCIAEoCRIdChVvcmdhbml6YXRpb25fbG9nb191cmwYAyABKAkSKAoEcm9sZRgEIAEoDjIaLmFpLnN0aWdtZXIuaWFtLnYxLklhbVJvbGUSLgoKZXhwaXJlc19hdBgFIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASDQoFbGFiZWwYBiABKAkSEAoIaXNfdmFsaWQYByABKAgSFgoOaW52YWxpZF9yZWFzb24YCCABKAliBnByb3RvMw", [file_ai_stigmer_iam_invitation_v1_api, file_ai_stigmer_iam_v1_enum, file_buf_validate_validate, file_google_protobuf_timestamp]);
|
|
13
|
+
/**
|
|
14
|
+
* Describes the message ai.stigmer.iam.invitation.v1.InvitationId.
|
|
15
|
+
* Use `create(InvitationIdSchema)` to create a new message.
|
|
16
|
+
*/
|
|
17
|
+
export const InvitationIdSchema = /*@__PURE__*/ messageDesc(file_ai_stigmer_iam_invitation_v1_io, 0);
|
|
18
|
+
/**
|
|
19
|
+
* Describes the message ai.stigmer.iam.invitation.v1.Invitations.
|
|
20
|
+
* Use `create(InvitationsSchema)` to create a new message.
|
|
21
|
+
*/
|
|
22
|
+
export const InvitationsSchema = /*@__PURE__*/ messageDesc(file_ai_stigmer_iam_invitation_v1_io, 1);
|
|
23
|
+
/**
|
|
24
|
+
* Describes the message ai.stigmer.iam.invitation.v1.ListInvitationsByOrgInput.
|
|
25
|
+
* Use `create(ListInvitationsByOrgInputSchema)` to create a new message.
|
|
26
|
+
*/
|
|
27
|
+
export const ListInvitationsByOrgInputSchema = /*@__PURE__*/ messageDesc(file_ai_stigmer_iam_invitation_v1_io, 2);
|
|
28
|
+
/**
|
|
29
|
+
* Describes the message ai.stigmer.iam.invitation.v1.InvitationTokenInput.
|
|
30
|
+
* Use `create(InvitationTokenInputSchema)` to create a new message.
|
|
31
|
+
*/
|
|
32
|
+
export const InvitationTokenInputSchema = /*@__PURE__*/ messageDesc(file_ai_stigmer_iam_invitation_v1_io, 3);
|
|
33
|
+
/**
|
|
34
|
+
* Describes the message ai.stigmer.iam.invitation.v1.RedeemInvitationInput.
|
|
35
|
+
* Use `create(RedeemInvitationInputSchema)` to create a new message.
|
|
36
|
+
*/
|
|
37
|
+
export const RedeemInvitationInputSchema = /*@__PURE__*/ messageDesc(file_ai_stigmer_iam_invitation_v1_io, 4);
|
|
38
|
+
/**
|
|
39
|
+
* Describes the message ai.stigmer.iam.invitation.v1.InvitationPreview.
|
|
40
|
+
* Use `create(InvitationPreviewSchema)` to create a new message.
|
|
41
|
+
*/
|
|
42
|
+
export const InvitationPreviewSchema = /*@__PURE__*/ messageDesc(file_ai_stigmer_iam_invitation_v1_io, 5);
|
|
43
|
+
//# sourceMappingURL=io_pb.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"io_pb.js","sourceRoot":"","sources":["../../../../../../ai/stigmer/iam/invitation/v1/io_pb.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAChE,mHAAmH;AACnH,oBAAoB;AAGpB,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAErE,OAAO,EAAE,qCAAqC,EAAE,MAAM,UAAU,CAAC;AAEjE,OAAO,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAE,0BAA0B,EAAE,MAAM,yCAAyC,CAAC;AAErF,OAAO,EAAE,8BAA8B,EAAE,MAAM,wBAAwB,CAAC;AAGxE;;GAEG;AACH,MAAM,CAAC,MAAM,oCAAoC,GAAY,aAAa,CACxE,QAAQ,CAAC,wxBAAwxB,EAAE,CAAC,qCAAqC,EAAE,2BAA2B,EAAE,0BAA0B,EAAE,8BAA8B,CAAC,CAAC,CAAC;AAgBv6B;;;GAGG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAA6B,aAAa,CACvE,WAAW,CAAC,oCAAoC,EAAE,CAAC,CAAC,CAAC;AAgBvD;;;GAGG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAA4B,aAAa,CACrE,WAAW,CAAC,oCAAoC,EAAE,CAAC,CAAC,CAAC;AAiBvD;;;GAGG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAA0C,aAAa,CACjG,WAAW,CAAC,oCAAoC,EAAE,CAAC,CAAC,CAAC;AAgBvD;;;GAGG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAqC,aAAa,CACvF,WAAW,CAAC,oCAAoC,EAAE,CAAC,CAAC,CAAC;AAiBvD;;;GAGG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAsC,aAAa,CACzF,WAAW,CAAC,oCAAoC,EAAE,CAAC,CAAC,CAAC;AA6EvD;;;GAGG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAkC,aAAa,CACjF,WAAW,CAAC,oCAAoC,EAAE,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* InvitationQueryController handles read operations for invitations.
|
|
3
|
+
*
|
|
4
|
+
* @generated from service ai.stigmer.iam.invitation.v1.InvitationQueryController
|
|
5
|
+
*/
|
|
6
|
+
export declare const InvitationQueryController: {
|
|
7
|
+
readonly typeName: "ai.stigmer.iam.invitation.v1.InvitationQueryController";
|
|
8
|
+
readonly methods: {
|
|
9
|
+
/**
|
|
10
|
+
* Get an invitation by its unique identifier.
|
|
11
|
+
*
|
|
12
|
+
* @internal
|
|
13
|
+
* Authorization: Requires can_view permission on the invitation resource.
|
|
14
|
+
*
|
|
15
|
+
* @generated from rpc ai.stigmer.iam.invitation.v1.InvitationQueryController.get
|
|
16
|
+
*/
|
|
17
|
+
readonly get: {
|
|
18
|
+
readonly name: "get";
|
|
19
|
+
readonly I: any;
|
|
20
|
+
readonly O: any;
|
|
21
|
+
readonly kind: any;
|
|
22
|
+
};
|
|
23
|
+
/**
|
|
24
|
+
* List all invitations belonging to an organization.
|
|
25
|
+
*
|
|
26
|
+
* Returns invitations ordered by creation time (newest first).
|
|
27
|
+
*
|
|
28
|
+
* @internal
|
|
29
|
+
* Authorization: Requires can_view_access permission on the organization.
|
|
30
|
+
* This is intentionally stricter than can_view — only users who can
|
|
31
|
+
* manage org access (admins and owners) should see invitation links.
|
|
32
|
+
*
|
|
33
|
+
* @generated from rpc ai.stigmer.iam.invitation.v1.InvitationQueryController.listByOrg
|
|
34
|
+
*/
|
|
35
|
+
readonly listByOrg: {
|
|
36
|
+
readonly name: "listByOrg";
|
|
37
|
+
readonly I: any;
|
|
38
|
+
readonly O: any;
|
|
39
|
+
readonly kind: any;
|
|
40
|
+
};
|
|
41
|
+
/**
|
|
42
|
+
* Get a preview of an invitation by its shareable token.
|
|
43
|
+
*
|
|
44
|
+
* Returns a safe projection (InvitationPreview) containing only the
|
|
45
|
+
* information needed to render the invite acceptance page: organization
|
|
46
|
+
* name, logo, the role being offered, and whether the invitation is
|
|
47
|
+
* still valid.
|
|
48
|
+
*
|
|
49
|
+
* This endpoint is called by the web app's invite page before the user
|
|
50
|
+
* has authenticated, so it requires no authorization. The response
|
|
51
|
+
* intentionally omits the token value, redemption history, and internal
|
|
52
|
+
* invitation metadata.
|
|
53
|
+
*
|
|
54
|
+
* @internal
|
|
55
|
+
* Authorization: none — unauthenticated, public endpoint for rendering
|
|
56
|
+
* the invite acceptance page. Uses is_skip_authorization following the
|
|
57
|
+
* getSsoProvider precedent.
|
|
58
|
+
*
|
|
59
|
+
* @generated from rpc ai.stigmer.iam.invitation.v1.InvitationQueryController.getByToken
|
|
60
|
+
*/
|
|
61
|
+
readonly getByToken: {
|
|
62
|
+
readonly name: "getByToken";
|
|
63
|
+
readonly I: any;
|
|
64
|
+
readonly O: any;
|
|
65
|
+
readonly kind: any;
|
|
66
|
+
};
|
|
67
|
+
};
|
|
68
|
+
};
|