UNPKG

46.5 kBTypeScriptView Raw
1import {Request} from '../lib/request';
2import {Response} from '../lib/response';
3import {AWSError} from '../lib/error';
4import {Service} from '../lib/service';
5import {ServiceConfigurationOptions} from '../lib/service';
6import {ConfigBase as Config} from '../lib/config';
7interface Blob {}
8declare class WorkMail extends Service {
9 /**
10 * Constructs a service object. This object has one method for each API operation.
11 */
12 constructor(options?: WorkMail.Types.ClientConfiguration)
13 config: Config & WorkMail.Types.ClientConfiguration;
14 /**
15 * Adds a member to the resource's set of delegates.
16 */
17 associateDelegateToResource(params: WorkMail.Types.AssociateDelegateToResourceRequest, callback?: (err: AWSError, data: WorkMail.Types.AssociateDelegateToResourceResponse) => void): Request<WorkMail.Types.AssociateDelegateToResourceResponse, AWSError>;
18 /**
19 * Adds a member to the resource's set of delegates.
20 */
21 associateDelegateToResource(callback?: (err: AWSError, data: WorkMail.Types.AssociateDelegateToResourceResponse) => void): Request<WorkMail.Types.AssociateDelegateToResourceResponse, AWSError>;
22 /**
23 * Adds a member to the group's set.
24 */
25 associateMemberToGroup(params: WorkMail.Types.AssociateMemberToGroupRequest, callback?: (err: AWSError, data: WorkMail.Types.AssociateMemberToGroupResponse) => void): Request<WorkMail.Types.AssociateMemberToGroupResponse, AWSError>;
26 /**
27 * Adds a member to the group's set.
28 */
29 associateMemberToGroup(callback?: (err: AWSError, data: WorkMail.Types.AssociateMemberToGroupResponse) => void): Request<WorkMail.Types.AssociateMemberToGroupResponse, AWSError>;
30 /**
31 * Adds an alias to the set of a given member of Amazon WorkMail.
32 */
33 createAlias(params: WorkMail.Types.CreateAliasRequest, callback?: (err: AWSError, data: WorkMail.Types.CreateAliasResponse) => void): Request<WorkMail.Types.CreateAliasResponse, AWSError>;
34 /**
35 * Adds an alias to the set of a given member of Amazon WorkMail.
36 */
37 createAlias(callback?: (err: AWSError, data: WorkMail.Types.CreateAliasResponse) => void): Request<WorkMail.Types.CreateAliasResponse, AWSError>;
38 /**
39 * Creates a group that can be used in Amazon WorkMail by calling the RegisterToWorkMail operation.
40 */
41 createGroup(params: WorkMail.Types.CreateGroupRequest, callback?: (err: AWSError, data: WorkMail.Types.CreateGroupResponse) => void): Request<WorkMail.Types.CreateGroupResponse, AWSError>;
42 /**
43 * Creates a group that can be used in Amazon WorkMail by calling the RegisterToWorkMail operation.
44 */
45 createGroup(callback?: (err: AWSError, data: WorkMail.Types.CreateGroupResponse) => void): Request<WorkMail.Types.CreateGroupResponse, AWSError>;
46 /**
47 * Creates a new Amazon WorkMail resource. The available types are equipment and room.
48 */
49 createResource(params: WorkMail.Types.CreateResourceRequest, callback?: (err: AWSError, data: WorkMail.Types.CreateResourceResponse) => void): Request<WorkMail.Types.CreateResourceResponse, AWSError>;
50 /**
51 * Creates a new Amazon WorkMail resource. The available types are equipment and room.
52 */
53 createResource(callback?: (err: AWSError, data: WorkMail.Types.CreateResourceResponse) => void): Request<WorkMail.Types.CreateResourceResponse, AWSError>;
54 /**
55 * Creates a user who can be used in Amazon WorkMail by calling the RegisterToWorkMail operation.
56 */
57 createUser(params: WorkMail.Types.CreateUserRequest, callback?: (err: AWSError, data: WorkMail.Types.CreateUserResponse) => void): Request<WorkMail.Types.CreateUserResponse, AWSError>;
58 /**
59 * Creates a user who can be used in Amazon WorkMail by calling the RegisterToWorkMail operation.
60 */
61 createUser(callback?: (err: AWSError, data: WorkMail.Types.CreateUserResponse) => void): Request<WorkMail.Types.CreateUserResponse, AWSError>;
62 /**
63 * Remove the alias from a set of aliases for a given user.
64 */
65 deleteAlias(params: WorkMail.Types.DeleteAliasRequest, callback?: (err: AWSError, data: WorkMail.Types.DeleteAliasResponse) => void): Request<WorkMail.Types.DeleteAliasResponse, AWSError>;
66 /**
67 * Remove the alias from a set of aliases for a given user.
68 */
69 deleteAlias(callback?: (err: AWSError, data: WorkMail.Types.DeleteAliasResponse) => void): Request<WorkMail.Types.DeleteAliasResponse, AWSError>;
70 /**
71 * Deletes a group from Amazon WorkMail.
72 */
73 deleteGroup(params: WorkMail.Types.DeleteGroupRequest, callback?: (err: AWSError, data: WorkMail.Types.DeleteGroupResponse) => void): Request<WorkMail.Types.DeleteGroupResponse, AWSError>;
74 /**
75 * Deletes a group from Amazon WorkMail.
76 */
77 deleteGroup(callback?: (err: AWSError, data: WorkMail.Types.DeleteGroupResponse) => void): Request<WorkMail.Types.DeleteGroupResponse, AWSError>;
78 /**
79 * Deletes permissions granted to a user or group.
80 */
81 deleteMailboxPermissions(params: WorkMail.Types.DeleteMailboxPermissionsRequest, callback?: (err: AWSError, data: WorkMail.Types.DeleteMailboxPermissionsResponse) => void): Request<WorkMail.Types.DeleteMailboxPermissionsResponse, AWSError>;
82 /**
83 * Deletes permissions granted to a user or group.
84 */
85 deleteMailboxPermissions(callback?: (err: AWSError, data: WorkMail.Types.DeleteMailboxPermissionsResponse) => void): Request<WorkMail.Types.DeleteMailboxPermissionsResponse, AWSError>;
86 /**
87 * Deletes the specified resource.
88 */
89 deleteResource(params: WorkMail.Types.DeleteResourceRequest, callback?: (err: AWSError, data: WorkMail.Types.DeleteResourceResponse) => void): Request<WorkMail.Types.DeleteResourceResponse, AWSError>;
90 /**
91 * Deletes the specified resource.
92 */
93 deleteResource(callback?: (err: AWSError, data: WorkMail.Types.DeleteResourceResponse) => void): Request<WorkMail.Types.DeleteResourceResponse, AWSError>;
94 /**
95 * Deletes a user from Amazon WorkMail and all subsequent systems. The action can't be undone. The mailbox is kept as-is for a minimum of 30 days, without any means to restore it.
96 */
97 deleteUser(params: WorkMail.Types.DeleteUserRequest, callback?: (err: AWSError, data: WorkMail.Types.DeleteUserResponse) => void): Request<WorkMail.Types.DeleteUserResponse, AWSError>;
98 /**
99 * Deletes a user from Amazon WorkMail and all subsequent systems. The action can't be undone. The mailbox is kept as-is for a minimum of 30 days, without any means to restore it.
100 */
101 deleteUser(callback?: (err: AWSError, data: WorkMail.Types.DeleteUserResponse) => void): Request<WorkMail.Types.DeleteUserResponse, AWSError>;
102 /**
103 * Mark a user, group, or resource as no longer used in Amazon WorkMail. This action disassociates the mailbox and schedules it for clean-up. Amazon WorkMail keeps mailboxes for 30 days before they are permanently removed. The functionality in the console is Disable.
104 */
105 deregisterFromWorkMail(params: WorkMail.Types.DeregisterFromWorkMailRequest, callback?: (err: AWSError, data: WorkMail.Types.DeregisterFromWorkMailResponse) => void): Request<WorkMail.Types.DeregisterFromWorkMailResponse, AWSError>;
106 /**
107 * Mark a user, group, or resource as no longer used in Amazon WorkMail. This action disassociates the mailbox and schedules it for clean-up. Amazon WorkMail keeps mailboxes for 30 days before they are permanently removed. The functionality in the console is Disable.
108 */
109 deregisterFromWorkMail(callback?: (err: AWSError, data: WorkMail.Types.DeregisterFromWorkMailResponse) => void): Request<WorkMail.Types.DeregisterFromWorkMailResponse, AWSError>;
110 /**
111 * Returns the data available for the group.
112 */
113 describeGroup(params: WorkMail.Types.DescribeGroupRequest, callback?: (err: AWSError, data: WorkMail.Types.DescribeGroupResponse) => void): Request<WorkMail.Types.DescribeGroupResponse, AWSError>;
114 /**
115 * Returns the data available for the group.
116 */
117 describeGroup(callback?: (err: AWSError, data: WorkMail.Types.DescribeGroupResponse) => void): Request<WorkMail.Types.DescribeGroupResponse, AWSError>;
118 /**
119 * Provides more information regarding a given organization based on its identifier.
120 */
121 describeOrganization(params: WorkMail.Types.DescribeOrganizationRequest, callback?: (err: AWSError, data: WorkMail.Types.DescribeOrganizationResponse) => void): Request<WorkMail.Types.DescribeOrganizationResponse, AWSError>;
122 /**
123 * Provides more information regarding a given organization based on its identifier.
124 */
125 describeOrganization(callback?: (err: AWSError, data: WorkMail.Types.DescribeOrganizationResponse) => void): Request<WorkMail.Types.DescribeOrganizationResponse, AWSError>;
126 /**
127 * Returns the data available for the resource.
128 */
129 describeResource(params: WorkMail.Types.DescribeResourceRequest, callback?: (err: AWSError, data: WorkMail.Types.DescribeResourceResponse) => void): Request<WorkMail.Types.DescribeResourceResponse, AWSError>;
130 /**
131 * Returns the data available for the resource.
132 */
133 describeResource(callback?: (err: AWSError, data: WorkMail.Types.DescribeResourceResponse) => void): Request<WorkMail.Types.DescribeResourceResponse, AWSError>;
134 /**
135 * Provides information regarding the user.
136 */
137 describeUser(params: WorkMail.Types.DescribeUserRequest, callback?: (err: AWSError, data: WorkMail.Types.DescribeUserResponse) => void): Request<WorkMail.Types.DescribeUserResponse, AWSError>;
138 /**
139 * Provides information regarding the user.
140 */
141 describeUser(callback?: (err: AWSError, data: WorkMail.Types.DescribeUserResponse) => void): Request<WorkMail.Types.DescribeUserResponse, AWSError>;
142 /**
143 * Removes a member from the resource's set of delegates.
144 */
145 disassociateDelegateFromResource(params: WorkMail.Types.DisassociateDelegateFromResourceRequest, callback?: (err: AWSError, data: WorkMail.Types.DisassociateDelegateFromResourceResponse) => void): Request<WorkMail.Types.DisassociateDelegateFromResourceResponse, AWSError>;
146 /**
147 * Removes a member from the resource's set of delegates.
148 */
149 disassociateDelegateFromResource(callback?: (err: AWSError, data: WorkMail.Types.DisassociateDelegateFromResourceResponse) => void): Request<WorkMail.Types.DisassociateDelegateFromResourceResponse, AWSError>;
150 /**
151 * Removes a member from a group.
152 */
153 disassociateMemberFromGroup(params: WorkMail.Types.DisassociateMemberFromGroupRequest, callback?: (err: AWSError, data: WorkMail.Types.DisassociateMemberFromGroupResponse) => void): Request<WorkMail.Types.DisassociateMemberFromGroupResponse, AWSError>;
154 /**
155 * Removes a member from a group.
156 */
157 disassociateMemberFromGroup(callback?: (err: AWSError, data: WorkMail.Types.DisassociateMemberFromGroupResponse) => void): Request<WorkMail.Types.DisassociateMemberFromGroupResponse, AWSError>;
158 /**
159 * Creates a paginated call to list the aliases associated with a given entity.
160 */
161 listAliases(params: WorkMail.Types.ListAliasesRequest, callback?: (err: AWSError, data: WorkMail.Types.ListAliasesResponse) => void): Request<WorkMail.Types.ListAliasesResponse, AWSError>;
162 /**
163 * Creates a paginated call to list the aliases associated with a given entity.
164 */
165 listAliases(callback?: (err: AWSError, data: WorkMail.Types.ListAliasesResponse) => void): Request<WorkMail.Types.ListAliasesResponse, AWSError>;
166 /**
167 * Returns an overview of the members of a group.
168 */
169 listGroupMembers(params: WorkMail.Types.ListGroupMembersRequest, callback?: (err: AWSError, data: WorkMail.Types.ListGroupMembersResponse) => void): Request<WorkMail.Types.ListGroupMembersResponse, AWSError>;
170 /**
171 * Returns an overview of the members of a group.
172 */
173 listGroupMembers(callback?: (err: AWSError, data: WorkMail.Types.ListGroupMembersResponse) => void): Request<WorkMail.Types.ListGroupMembersResponse, AWSError>;
174 /**
175 * Returns summaries of the organization's groups.
176 */
177 listGroups(params: WorkMail.Types.ListGroupsRequest, callback?: (err: AWSError, data: WorkMail.Types.ListGroupsResponse) => void): Request<WorkMail.Types.ListGroupsResponse, AWSError>;
178 /**
179 * Returns summaries of the organization's groups.
180 */
181 listGroups(callback?: (err: AWSError, data: WorkMail.Types.ListGroupsResponse) => void): Request<WorkMail.Types.ListGroupsResponse, AWSError>;
182 /**
183 * Lists the mailbox permissions associated with a mailbox.
184 */
185 listMailboxPermissions(params: WorkMail.Types.ListMailboxPermissionsRequest, callback?: (err: AWSError, data: WorkMail.Types.ListMailboxPermissionsResponse) => void): Request<WorkMail.Types.ListMailboxPermissionsResponse, AWSError>;
186 /**
187 * Lists the mailbox permissions associated with a mailbox.
188 */
189 listMailboxPermissions(callback?: (err: AWSError, data: WorkMail.Types.ListMailboxPermissionsResponse) => void): Request<WorkMail.Types.ListMailboxPermissionsResponse, AWSError>;
190 /**
191 * Returns summaries of the customer's non-deleted organizations.
192 */
193 listOrganizations(params: WorkMail.Types.ListOrganizationsRequest, callback?: (err: AWSError, data: WorkMail.Types.ListOrganizationsResponse) => void): Request<WorkMail.Types.ListOrganizationsResponse, AWSError>;
194 /**
195 * Returns summaries of the customer's non-deleted organizations.
196 */
197 listOrganizations(callback?: (err: AWSError, data: WorkMail.Types.ListOrganizationsResponse) => void): Request<WorkMail.Types.ListOrganizationsResponse, AWSError>;
198 /**
199 * Lists the delegates associated with a resource. Users and groups can be resource delegates and answer requests on behalf of the resource.
200 */
201 listResourceDelegates(params: WorkMail.Types.ListResourceDelegatesRequest, callback?: (err: AWSError, data: WorkMail.Types.ListResourceDelegatesResponse) => void): Request<WorkMail.Types.ListResourceDelegatesResponse, AWSError>;
202 /**
203 * Lists the delegates associated with a resource. Users and groups can be resource delegates and answer requests on behalf of the resource.
204 */
205 listResourceDelegates(callback?: (err: AWSError, data: WorkMail.Types.ListResourceDelegatesResponse) => void): Request<WorkMail.Types.ListResourceDelegatesResponse, AWSError>;
206 /**
207 * Returns summaries of the organization's resources.
208 */
209 listResources(params: WorkMail.Types.ListResourcesRequest, callback?: (err: AWSError, data: WorkMail.Types.ListResourcesResponse) => void): Request<WorkMail.Types.ListResourcesResponse, AWSError>;
210 /**
211 * Returns summaries of the organization's resources.
212 */
213 listResources(callback?: (err: AWSError, data: WorkMail.Types.ListResourcesResponse) => void): Request<WorkMail.Types.ListResourcesResponse, AWSError>;
214 /**
215 * Returns summaries of the organization's users.
216 */
217 listUsers(params: WorkMail.Types.ListUsersRequest, callback?: (err: AWSError, data: WorkMail.Types.ListUsersResponse) => void): Request<WorkMail.Types.ListUsersResponse, AWSError>;
218 /**
219 * Returns summaries of the organization's users.
220 */
221 listUsers(callback?: (err: AWSError, data: WorkMail.Types.ListUsersResponse) => void): Request<WorkMail.Types.ListUsersResponse, AWSError>;
222 /**
223 * Sets permissions for a user or group. This replaces any pre-existing permissions set for the entity.
224 */
225 putMailboxPermissions(params: WorkMail.Types.PutMailboxPermissionsRequest, callback?: (err: AWSError, data: WorkMail.Types.PutMailboxPermissionsResponse) => void): Request<WorkMail.Types.PutMailboxPermissionsResponse, AWSError>;
226 /**
227 * Sets permissions for a user or group. This replaces any pre-existing permissions set for the entity.
228 */
229 putMailboxPermissions(callback?: (err: AWSError, data: WorkMail.Types.PutMailboxPermissionsResponse) => void): Request<WorkMail.Types.PutMailboxPermissionsResponse, AWSError>;
230 /**
231 * Registers an existing and disabled user, group, or resource/entity for Amazon WorkMail use by associating a mailbox and calendaring capabilities. It performs no change if the entity is enabled and fails if the entity is deleted. This operation results in the accumulation of costs. For more information, see Pricing. The equivalent console functionality for this operation is Enable. Users can either be created by calling the CreateUser API or they can be synchronized from your directory. For more information, see DeregisterFromWorkMail.
232 */
233 registerToWorkMail(params: WorkMail.Types.RegisterToWorkMailRequest, callback?: (err: AWSError, data: WorkMail.Types.RegisterToWorkMailResponse) => void): Request<WorkMail.Types.RegisterToWorkMailResponse, AWSError>;
234 /**
235 * Registers an existing and disabled user, group, or resource/entity for Amazon WorkMail use by associating a mailbox and calendaring capabilities. It performs no change if the entity is enabled and fails if the entity is deleted. This operation results in the accumulation of costs. For more information, see Pricing. The equivalent console functionality for this operation is Enable. Users can either be created by calling the CreateUser API or they can be synchronized from your directory. For more information, see DeregisterFromWorkMail.
236 */
237 registerToWorkMail(callback?: (err: AWSError, data: WorkMail.Types.RegisterToWorkMailResponse) => void): Request<WorkMail.Types.RegisterToWorkMailResponse, AWSError>;
238 /**
239 * Allows the administrator to reset the password for a user.
240 */
241 resetPassword(params: WorkMail.Types.ResetPasswordRequest, callback?: (err: AWSError, data: WorkMail.Types.ResetPasswordResponse) => void): Request<WorkMail.Types.ResetPasswordResponse, AWSError>;
242 /**
243 * Allows the administrator to reset the password for a user.
244 */
245 resetPassword(callback?: (err: AWSError, data: WorkMail.Types.ResetPasswordResponse) => void): Request<WorkMail.Types.ResetPasswordResponse, AWSError>;
246 /**
247 * Updates the primary email for an entity. The current email is moved into the list of aliases (or swapped between an existing alias and the current primary email) and the email provided in the input is promoted as the primary.
248 */
249 updatePrimaryEmailAddress(params: WorkMail.Types.UpdatePrimaryEmailAddressRequest, callback?: (err: AWSError, data: WorkMail.Types.UpdatePrimaryEmailAddressResponse) => void): Request<WorkMail.Types.UpdatePrimaryEmailAddressResponse, AWSError>;
250 /**
251 * Updates the primary email for an entity. The current email is moved into the list of aliases (or swapped between an existing alias and the current primary email) and the email provided in the input is promoted as the primary.
252 */
253 updatePrimaryEmailAddress(callback?: (err: AWSError, data: WorkMail.Types.UpdatePrimaryEmailAddressResponse) => void): Request<WorkMail.Types.UpdatePrimaryEmailAddressResponse, AWSError>;
254 /**
255 * Updates data for the resource. It must be preceded by a describe call in order to have the latest information. The dataset in the request should be the one expected when performing another describe call.
256 */
257 updateResource(params: WorkMail.Types.UpdateResourceRequest, callback?: (err: AWSError, data: WorkMail.Types.UpdateResourceResponse) => void): Request<WorkMail.Types.UpdateResourceResponse, AWSError>;
258 /**
259 * Updates data for the resource. It must be preceded by a describe call in order to have the latest information. The dataset in the request should be the one expected when performing another describe call.
260 */
261 updateResource(callback?: (err: AWSError, data: WorkMail.Types.UpdateResourceResponse) => void): Request<WorkMail.Types.UpdateResourceResponse, AWSError>;
262}
263declare namespace WorkMail {
264 export type Aliases = EmailAddress[];
265 export interface AssociateDelegateToResourceRequest {
266 /**
267 * The organization under which the resource exists.
268 */
269 OrganizationId: OrganizationId;
270 /**
271 * The resource for which members are associated.
272 */
273 ResourceId: ResourceId;
274 /**
275 * The member (user or group) to associate to the resource.
276 */
277 EntityId: WorkMailIdentifier;
278 }
279 export interface AssociateDelegateToResourceResponse {
280 }
281 export interface AssociateMemberToGroupRequest {
282 /**
283 * The organization under which the group exists.
284 */
285 OrganizationId: OrganizationId;
286 /**
287 * The group for which the member is associated.
288 */
289 GroupId: WorkMailIdentifier;
290 /**
291 * The member to associate to the group.
292 */
293 MemberId: WorkMailIdentifier;
294 }
295 export interface AssociateMemberToGroupResponse {
296 }
297 export interface BookingOptions {
298 /**
299 * The resource's ability to automatically reply to requests. If disabled, delegates must be associated to the resource.
300 */
301 AutoAcceptRequests?: Boolean;
302 /**
303 * The resource's ability to automatically decline any recurring requests.
304 */
305 AutoDeclineRecurringRequests?: Boolean;
306 /**
307 * The resource's ability to automatically decline any conflicting requests.
308 */
309 AutoDeclineConflictingRequests?: Boolean;
310 }
311 export type Boolean = boolean;
312 export interface CreateAliasRequest {
313 /**
314 * The organization under which the member exists.
315 */
316 OrganizationId: OrganizationId;
317 /**
318 * The alias is added to this Amazon WorkMail entity.
319 */
320 EntityId: WorkMailIdentifier;
321 /**
322 * The alias to add to the user.
323 */
324 Alias: EmailAddress;
325 }
326 export interface CreateAliasResponse {
327 }
328 export interface CreateGroupRequest {
329 /**
330 * The organization under which the group is to be created.
331 */
332 OrganizationId: OrganizationId;
333 /**
334 * The name of the group.
335 */
336 Name: GroupName;
337 }
338 export interface CreateGroupResponse {
339 /**
340 * The ID of the group.
341 */
342 GroupId?: WorkMailIdentifier;
343 }
344 export interface CreateResourceRequest {
345 /**
346 * The identifier associated with the organization for which the resource is created.
347 */
348 OrganizationId: OrganizationId;
349 /**
350 * The name of the created resource.
351 */
352 Name: ResourceName;
353 /**
354 * The type of the created resource.
355 */
356 Type: ResourceType;
357 }
358 export interface CreateResourceResponse {
359 /**
360 * The identifier of the created resource.
361 */
362 ResourceId?: ResourceId;
363 }
364 export interface CreateUserRequest {
365 /**
366 * The identifier of the organization for which the user is created.
367 */
368 OrganizationId: OrganizationId;
369 /**
370 * The name for the user to be created.
371 */
372 Name: UserName;
373 /**
374 * The display name for the user to be created.
375 */
376 DisplayName: String;
377 /**
378 * The password for the user to be created.
379 */
380 Password: Password;
381 }
382 export interface CreateUserResponse {
383 /**
384 * The information regarding the newly created user.
385 */
386 UserId?: WorkMailIdentifier;
387 }
388 export interface Delegate {
389 /**
390 * The identifier for the user or group is associated as the resource's delegate.
391 */
392 Id: String;
393 /**
394 * The type of the delegate: user or group.
395 */
396 Type: MemberType;
397 }
398 export interface DeleteAliasRequest {
399 /**
400 * The identifier for the organization under which the user exists.
401 */
402 OrganizationId: OrganizationId;
403 /**
404 * The identifier for the Amazon WorkMail entity to have the aliases removed.
405 */
406 EntityId: WorkMailIdentifier;
407 /**
408 * The aliases to be removed from the user's set of aliases. Duplicate entries in the list are collapsed into single entries (the list is transformed into a set).
409 */
410 Alias: EmailAddress;
411 }
412 export interface DeleteAliasResponse {
413 }
414 export interface DeleteGroupRequest {
415 /**
416 * The organization that contains the group.
417 */
418 OrganizationId: OrganizationId;
419 /**
420 * The identifier of the group to be deleted.
421 */
422 GroupId: WorkMailIdentifier;
423 }
424 export interface DeleteGroupResponse {
425 }
426 export interface DeleteMailboxPermissionsRequest {
427 /**
428 * The identifier of the organization under which the entity (user or group) exists.
429 */
430 OrganizationId: OrganizationId;
431 /**
432 * The identifier of the entity (user or group) for which to delete mailbox permissions.
433 */
434 EntityId: WorkMailIdentifier;
435 /**
436 * The identifier of the entity (user or group) for which to delete granted permissions.
437 */
438 GranteeId: WorkMailIdentifier;
439 }
440 export interface DeleteMailboxPermissionsResponse {
441 }
442 export interface DeleteResourceRequest {
443 /**
444 * The identifier associated with the organization for which the resource is deleted.
445 */
446 OrganizationId: OrganizationId;
447 /**
448 * The identifier of the resource to be deleted.
449 */
450 ResourceId: ResourceId;
451 }
452 export interface DeleteResourceResponse {
453 }
454 export interface DeleteUserRequest {
455 /**
456 * The organization that contains the user.
457 */
458 OrganizationId: OrganizationId;
459 /**
460 * The identifier of the user to be deleted.
461 */
462 UserId: WorkMailIdentifier;
463 }
464 export interface DeleteUserResponse {
465 }
466 export interface DeregisterFromWorkMailRequest {
467 /**
468 * The identifier for the organization under which the Amazon WorkMail entity exists.
469 */
470 OrganizationId: OrganizationId;
471 /**
472 * The identifier for the entity to be updated.
473 */
474 EntityId: WorkMailIdentifier;
475 }
476 export interface DeregisterFromWorkMailResponse {
477 }
478 export interface DescribeGroupRequest {
479 /**
480 * The identifier for the organization under which the group exists.
481 */
482 OrganizationId: OrganizationId;
483 /**
484 * The identifier for the group to be described.
485 */
486 GroupId: WorkMailIdentifier;
487 }
488 export interface DescribeGroupResponse {
489 /**
490 * The identifier of the described group.
491 */
492 GroupId?: WorkMailIdentifier;
493 /**
494 * The name of the described group.
495 */
496 Name?: GroupName;
497 /**
498 * The email of the described group.
499 */
500 Email?: EmailAddress;
501 /**
502 * The state of the user: enabled (registered to Amazon WorkMail) or disabled (deregistered or never registered to Amazon WorkMail).
503 */
504 State?: EntityState;
505 /**
506 * The date and time when a user was registered to Amazon WorkMail, in UNIX epoch time format.
507 */
508 EnabledDate?: Timestamp;
509 /**
510 * The date and time when a user was deregistered from Amazon WorkMail, in UNIX epoch time format.
511 */
512 DisabledDate?: Timestamp;
513 }
514 export interface DescribeOrganizationRequest {
515 /**
516 * The identifier for the organization to be described.
517 */
518 OrganizationId: OrganizationId;
519 }
520 export interface DescribeOrganizationResponse {
521 /**
522 * The identifier of an organization.
523 */
524 OrganizationId?: OrganizationId;
525 /**
526 * The alias for an organization.
527 */
528 Alias?: OrganizationName;
529 /**
530 * The state of an organization.
531 */
532 State?: String;
533 /**
534 * The identifier for the directory associated with an Amazon WorkMail organization.
535 */
536 DirectoryId?: String;
537 /**
538 * The type of directory associated with the Amazon WorkMail organization.
539 */
540 DirectoryType?: String;
541 /**
542 * The default mail domain associated with the organization.
543 */
544 DefaultMailDomain?: String;
545 /**
546 * The date at which the organization became usable in the Amazon WorkMail context, in UNIX epoch time format.
547 */
548 CompletedDate?: Timestamp;
549 /**
550 * The (optional) error message indicating if unexpected behavior was encountered with regards to the organization.
551 */
552 ErrorMessage?: String;
553 }
554 export interface DescribeResourceRequest {
555 /**
556 * The identifier associated with the organization for which the resource is described.
557 */
558 OrganizationId: OrganizationId;
559 /**
560 * The identifier of the resource to be described.
561 */
562 ResourceId: ResourceId;
563 }
564 export interface DescribeResourceResponse {
565 /**
566 * The identifier of the described resource.
567 */
568 ResourceId?: ResourceId;
569 /**
570 * The email of the described resource.
571 */
572 Email?: EmailAddress;
573 /**
574 * The name of the described resource.
575 */
576 Name?: ResourceName;
577 /**
578 * The type of the described resource.
579 */
580 Type?: ResourceType;
581 /**
582 * The booking options for the described resource.
583 */
584 BookingOptions?: BookingOptions;
585 /**
586 * The state of the resource: enabled (registered to Amazon WorkMail) or disabled (deregistered or never registered to Amazon WorkMail).
587 */
588 State?: EntityState;
589 /**
590 * The date and time when a resource was registered to Amazon WorkMail, in UNIX epoch time format.
591 */
592 EnabledDate?: Timestamp;
593 /**
594 * The date and time when a resource was registered from Amazon WorkMail, in UNIX epoch time format.
595 */
596 DisabledDate?: Timestamp;
597 }
598 export interface DescribeUserRequest {
599 /**
600 * The identifier for the organization under which the user exists.
601 */
602 OrganizationId: OrganizationId;
603 /**
604 * The identifier for the user to be described.
605 */
606 UserId: WorkMailIdentifier;
607 }
608 export interface DescribeUserResponse {
609 /**
610 * The identifier for the described user.
611 */
612 UserId?: WorkMailIdentifier;
613 /**
614 * The name for the user.
615 */
616 Name?: UserName;
617 /**
618 * The email of the user.
619 */
620 Email?: EmailAddress;
621 /**
622 * The display name of the user.
623 */
624 DisplayName?: String;
625 /**
626 * The state of a user: enabled (registered to Amazon WorkMail) or disabled (deregistered or never registered to Amazon WorkMail).
627 */
628 State?: EntityState;
629 /**
630 * In certain cases other entities are modeled as users. If interoperability is enabled, resources are imported into Amazon WorkMail as users. Because different Amazon WorkMail organizations rely on different directory types, administrators can distinguish between a user that is not registered to Amazon WorkMail (is disabled and has a user role) and the administrative users of the directory. The values are USER, RESOURCE, and SYSTEM_USER.
631 */
632 UserRole?: UserRole;
633 /**
634 * The date and time at which the user was enabled for Amazon WorkMail usage, in UNIX epoch time format.
635 */
636 EnabledDate?: Timestamp;
637 /**
638 * The date and time at which the user was disabled for Amazon WorkMail usage, in UNIX epoch time format.
639 */
640 DisabledDate?: Timestamp;
641 }
642 export interface DisassociateDelegateFromResourceRequest {
643 /**
644 * The identifier for the organization under which the resource exists.
645 */
646 OrganizationId: OrganizationId;
647 /**
648 * The identifier of the resource from which delegates' set members are removed.
649 */
650 ResourceId: ResourceId;
651 /**
652 * The identifier for the member (user, group) to be removed from the resource's delegates.
653 */
654 EntityId: WorkMailIdentifier;
655 }
656 export interface DisassociateDelegateFromResourceResponse {
657 }
658 export interface DisassociateMemberFromGroupRequest {
659 /**
660 * The identifier for the organization under which the group exists.
661 */
662 OrganizationId: OrganizationId;
663 /**
664 * The identifier for the group from which members are removed.
665 */
666 GroupId: WorkMailIdentifier;
667 /**
668 * The identifier for the member to be removed to the group.
669 */
670 MemberId: WorkMailIdentifier;
671 }
672 export interface DisassociateMemberFromGroupResponse {
673 }
674 export type EmailAddress = string;
675 export type EntityState = "ENABLED"|"DISABLED"|"DELETED"|string;
676 export interface Group {
677 /**
678 * The identifier of the group.
679 */
680 Id?: WorkMailIdentifier;
681 /**
682 * The email of the group.
683 */
684 Email?: EmailAddress;
685 /**
686 * The name of the group.
687 */
688 Name?: GroupName;
689 /**
690 * The state of the group, which can be ENABLED, DISABLED, or DELETED.
691 */
692 State?: EntityState;
693 /**
694 * The date indicating when the group was enabled for Amazon WorkMail use.
695 */
696 EnabledDate?: Timestamp;
697 /**
698 * The date indicating when the group was disabled from Amazon WorkMail use.
699 */
700 DisabledDate?: Timestamp;
701 }
702 export type GroupName = string;
703 export type Groups = Group[];
704 export interface ListAliasesRequest {
705 /**
706 * The identifier for the organization under which the entity exists.
707 */
708 OrganizationId: OrganizationId;
709 /**
710 * The identifier for the entity for which to list the aliases.
711 */
712 EntityId: WorkMailIdentifier;
713 /**
714 * The token to use to retrieve the next page of results. The first call does not contain any tokens.
715 */
716 NextToken?: NextToken;
717 /**
718 * The maximum number of results to return in a single call.
719 */
720 MaxResults?: MaxResults;
721 }
722 export interface ListAliasesResponse {
723 /**
724 * The entity's paginated aliases.
725 */
726 Aliases?: Aliases;
727 /**
728 * The token to use to retrieve the next page of results. The value is "null" when there are no more results to return.
729 */
730 NextToken?: NextToken;
731 }
732 export interface ListGroupMembersRequest {
733 /**
734 * The identifier for the organization under which the group exists.
735 */
736 OrganizationId: OrganizationId;
737 /**
738 * The identifier for the group to which the members are associated.
739 */
740 GroupId: WorkMailIdentifier;
741 /**
742 * The token to use to retrieve the next page of results. The first call does not contain any tokens.
743 */
744 NextToken?: NextToken;
745 /**
746 * The maximum number of results to return in a single call.
747 */
748 MaxResults?: MaxResults;
749 }
750 export interface ListGroupMembersResponse {
751 /**
752 * The members associated to the group.
753 */
754 Members?: Members;
755 /**
756 * The token to use to retrieve the next page of results. The first call does not contain any tokens.
757 */
758 NextToken?: NextToken;
759 }
760 export interface ListGroupsRequest {
761 /**
762 * The identifier for the organization under which the groups exist.
763 */
764 OrganizationId: OrganizationId;
765 /**
766 * The token to use to retrieve the next page of results. The first call does not contain any tokens.
767 */
768 NextToken?: NextToken;
769 /**
770 * The maximum number of results to return in a single call.
771 */
772 MaxResults?: MaxResults;
773 }
774 export interface ListGroupsResponse {
775 /**
776 * The overview of groups for an organization.
777 */
778 Groups?: Groups;
779 /**
780 * The token to use to retrieve the next page of results. The value is "null" when there are no more results to return.
781 */
782 NextToken?: NextToken;
783 }
784 export interface ListMailboxPermissionsRequest {
785 /**
786 * The identifier of the organization under which the entity (user or group) exists.
787 */
788 OrganizationId: OrganizationId;
789 /**
790 * The identifier of the entity (user or group) for which to list mailbox permissions.
791 */
792 EntityId: WorkMailIdentifier;
793 /**
794 * The token to use to retrieve the next page of results. The first call does not contain any tokens.
795 */
796 NextToken?: NextToken;
797 /**
798 * The maximum number of results to return in a single call.
799 */
800 MaxResults?: MaxResults;
801 }
802 export interface ListMailboxPermissionsResponse {
803 /**
804 * One page of the entity's mailbox permissions.
805 */
806 Permissions?: Permissions;
807 /**
808 * The token to use to retrieve the next page of results. The value is "null" when there are no more results to return.
809 */
810 NextToken?: NextToken;
811 }
812 export interface ListOrganizationsRequest {
813 /**
814 * The token to use to retrieve the next page of results. The first call does not contain any tokens.
815 */
816 NextToken?: NextToken;
817 /**
818 * The maximum number of results to return in a single call.
819 */
820 MaxResults?: MaxResults;
821 }
822 export interface ListOrganizationsResponse {
823 /**
824 * The overview of owned organizations presented as a list of organization summaries.
825 */
826 OrganizationSummaries?: OrganizationSummaries;
827 /**
828 * The token to use to retrieve the next page of results. The value is "null" when there are no more results to return.
829 */
830 NextToken?: NextToken;
831 }
832 export interface ListResourceDelegatesRequest {
833 /**
834 * The identifier for the organization that contains the resource for which delegates are listed.
835 */
836 OrganizationId: OrganizationId;
837 /**
838 * The identifier for the resource whose delegates are listed.
839 */
840 ResourceId: WorkMailIdentifier;
841 /**
842 * The token used to paginate through the delegates associated with a resource.
843 */
844 NextToken?: NextToken;
845 /**
846 * The number of maximum results in a page.
847 */
848 MaxResults?: MaxResults;
849 }
850 export interface ListResourceDelegatesResponse {
851 /**
852 * One page of the resource's delegates.
853 */
854 Delegates?: ResourceDelegates;
855 /**
856 * The token used to paginate through the delegates associated with a resource. While results are still available, it has an associated value. When the last page is reached, the token is empty.
857 */
858 NextToken?: NextToken;
859 }
860 export interface ListResourcesRequest {
861 /**
862 * The identifier for the organization under which the resources exist.
863 */
864 OrganizationId: OrganizationId;
865 /**
866 * The token to use to retrieve the next page of results. The first call does not contain any tokens.
867 */
868 NextToken?: NextToken;
869 /**
870 * The maximum number of results to return in a single call.
871 */
872 MaxResults?: MaxResults;
873 }
874 export interface ListResourcesResponse {
875 /**
876 * One page of the organization's resource representation.
877 */
878 Resources?: Resources;
879 /**
880 * The token used to paginate through all the organization's resources. While results are still available, it has an associated value. When the last page is reached, the token is empty.
881 */
882 NextToken?: NextToken;
883 }
884 export interface ListUsersRequest {
885 /**
886 * The identifier for the organization under which the users exist.
887 */
888 OrganizationId: OrganizationId;
889 /**
890 * TBD
891 */
892 NextToken?: NextToken;
893 /**
894 * The maximum number of results to return in a single call.
895 */
896 MaxResults?: MaxResults;
897 }
898 export interface ListUsersResponse {
899 /**
900 * The overview of users for an organization.
901 */
902 Users?: Users;
903 /**
904 * The token to use to retrieve the next page of results. This value is `null` when there are no more results to return.
905 */
906 NextToken?: NextToken;
907 }
908 export type MaxResults = number;
909 export interface Member {
910 /**
911 * The identifier of the member.
912 */
913 Id?: String;
914 /**
915 * The name of the member.
916 */
917 Name?: String;
918 /**
919 * A member can be a user or group.
920 */
921 Type?: MemberType;
922 /**
923 * The state of the member, which can be ENABLED, DISABLED, or DELETED.
924 */
925 State?: EntityState;
926 /**
927 * The date indicating when the member was enabled for Amazon WorkMail use.
928 */
929 EnabledDate?: Timestamp;
930 /**
931 * The date indicating when the member was disabled from Amazon WorkMail use.
932 */
933 DisabledDate?: Timestamp;
934 }
935 export type MemberType = "GROUP"|"USER"|string;
936 export type Members = Member[];
937 export type NextToken = string;
938 export type OrganizationId = string;
939 export type OrganizationName = string;
940 export type OrganizationSummaries = OrganizationSummary[];
941 export interface OrganizationSummary {
942 /**
943 * The identifier associated with the organization.
944 */
945 OrganizationId?: OrganizationId;
946 /**
947 * The alias associated with the organization.
948 */
949 Alias?: OrganizationName;
950 /**
951 * The error message associated with the organization. It is only present if unexpected behavior has occurred with regards to the organization. It provides insight or solutions regarding unexpected behavior.
952 */
953 ErrorMessage?: String;
954 /**
955 * The state associated with the organization.
956 */
957 State?: String;
958 }
959 export type Password = string;
960 export interface Permission {
961 /**
962 * The identifier of the entity (user or group) to which the permissions are granted.
963 */
964 GranteeId: WorkMailIdentifier;
965 /**
966 * The type of entity (user, group) of the entity referred to in GranteeId.
967 */
968 GranteeType: MemberType;
969 /**
970 * The permissions granted to the grantee. SEND_AS allows the grantee to send email as the owner of the mailbox (the grantee is not mentioned on these emails). SEND_ON_BEHALF allows the grantee to send email on behalf of the owner of the mailbox (the grantee is not mentioned as the physical sender of these emails). FULL_ACCESS allows the grantee full access to the mailbox, irrespective of other folder-level permissions set on the mailbox.
971 */
972 PermissionValues: PermissionValues;
973 }
974 export type PermissionType = "FULL_ACCESS"|"SEND_AS"|"SEND_ON_BEHALF"|string;
975 export type PermissionValues = PermissionType[];
976 export type Permissions = Permission[];
977 export interface PutMailboxPermissionsRequest {
978 /**
979 * The identifier of the organization under which the entity (user or group) exists.
980 */
981 OrganizationId: OrganizationId;
982 /**
983 * The identifier of the entity (user or group) for which to update mailbox permissions.
984 */
985 EntityId: WorkMailIdentifier;
986 /**
987 * The identifier of the entity (user or group) to which to grant the permissions.
988 */
989 GranteeId: WorkMailIdentifier;
990 /**
991 * The permissions granted to the grantee. SEND_AS allows the grantee to send email as the owner of the mailbox (the grantee is not mentioned on these emails). SEND_ON_BEHALF allows the grantee to send email on behalf of the owner of the mailbox (the grantee is not mentioned as the physical sender of these emails). FULL_ACCESS allows the grantee full access to the mailbox, irrespective of other folder-level permissions set on the mailbox.
992 */
993 PermissionValues: PermissionValues;
994 }
995 export interface PutMailboxPermissionsResponse {
996 }
997 export interface RegisterToWorkMailRequest {
998 /**
999 * The identifier for the organization under which the Amazon WorkMail entity exists.
1000 */
1001 OrganizationId: OrganizationId;
1002 /**
1003 * The identifier for the entity to be updated.
1004 */
1005 EntityId: WorkMailIdentifier;
1006 /**
1007 * The email for the entity to be updated.
1008 */
1009 Email: EmailAddress;
1010 }
1011 export interface RegisterToWorkMailResponse {
1012 }
1013 export interface ResetPasswordRequest {
1014 /**
1015 * The identifier of the organization that contains the user for which the password is reset.
1016 */
1017 OrganizationId: OrganizationId;
1018 /**
1019 * The identifier of the user for whom the password is reset.
1020 */
1021 UserId: WorkMailIdentifier;
1022 /**
1023 * The new password for the user.
1024 */
1025 Password: Password;
1026 }
1027 export interface ResetPasswordResponse {
1028 }
1029 export interface Resource {
1030 /**
1031 * The identifier of the resource.
1032 */
1033 Id?: WorkMailIdentifier;
1034 /**
1035 * The email of the resource.
1036 */
1037 Email?: EmailAddress;
1038 /**
1039 * The name of the resource.
1040 */
1041 Name?: ResourceName;
1042 /**
1043 * The type of the resource: equipment or room.
1044 */
1045 Type?: ResourceType;
1046 /**
1047 * The state of the resource, which can be ENABLED, DISABLED, or DELETED.
1048 */
1049 State?: EntityState;
1050 /**
1051 * The date indicating when the resource was enabled for Amazon WorkMail use.
1052 */
1053 EnabledDate?: Timestamp;
1054 /**
1055 * The date indicating when the resource was disabled from Amazon WorkMail use.
1056 */
1057 DisabledDate?: Timestamp;
1058 }
1059 export type ResourceDelegates = Delegate[];
1060 export type ResourceId = string;
1061 export type ResourceName = string;
1062 export type ResourceType = "ROOM"|"EQUIPMENT"|string;
1063 export type Resources = Resource[];
1064 export type String = string;
1065 export type Timestamp = Date;
1066 export interface UpdatePrimaryEmailAddressRequest {
1067 /**
1068 * The organization that contains the entity to update.
1069 */
1070 OrganizationId: OrganizationId;
1071 /**
1072 * The entity to update (user, group, or resource).
1073 */
1074 EntityId: WorkMailIdentifier;
1075 /**
1076 * The value of the email to be updated as primary.
1077 */
1078 Email: EmailAddress;
1079 }
1080 export interface UpdatePrimaryEmailAddressResponse {
1081 }
1082 export interface UpdateResourceRequest {
1083 /**
1084 * The identifier associated with the organization for which the resource is updated.
1085 */
1086 OrganizationId: OrganizationId;
1087 /**
1088 * The identifier of the resource to be updated.
1089 */
1090 ResourceId: ResourceId;
1091 /**
1092 * The name of the resource to be updated.
1093 */
1094 Name?: ResourceName;
1095 /**
1096 * The resource's booking options to be updated.
1097 */
1098 BookingOptions?: BookingOptions;
1099 }
1100 export interface UpdateResourceResponse {
1101 }
1102 export interface User {
1103 /**
1104 * The identifier of the user.
1105 */
1106 Id?: WorkMailIdentifier;
1107 /**
1108 * The email of the user.
1109 */
1110 Email?: EmailAddress;
1111 /**
1112 * The name of the user.
1113 */
1114 Name?: UserName;
1115 /**
1116 * The display name of the user.
1117 */
1118 DisplayName?: String;
1119 /**
1120 * The state of the user, which can be ENABLED, DISABLED, or DELETED.
1121 */
1122 State?: EntityState;
1123 /**
1124 * The role of the user.
1125 */
1126 UserRole?: UserRole;
1127 /**
1128 * The date indicating when the user was enabled for Amazon WorkMail use.
1129 */
1130 EnabledDate?: Timestamp;
1131 /**
1132 * The date indicating when the user was disabled from Amazon WorkMail use.
1133 */
1134 DisabledDate?: Timestamp;
1135 }
1136 export type UserName = string;
1137 export type UserRole = "USER"|"RESOURCE"|"SYSTEM_USER"|string;
1138 export type Users = User[];
1139 export type WorkMailIdentifier = string;
1140 /**
1141 * A string in YYYY-MM-DD format that represents the latest possible API version that can be used in this service. Specify 'latest' to use the latest possible version.
1142 */
1143 export type apiVersion = "2017-10-01"|"latest"|string;
1144 export interface ClientApiVersions {
1145 /**
1146 * A string in YYYY-MM-DD format that represents the latest possible API version that can be used in this service. Specify 'latest' to use the latest possible version.
1147 */
1148 apiVersion?: apiVersion;
1149 }
1150 export type ClientConfiguration = ServiceConfigurationOptions & ClientApiVersions;
1151 /**
1152 * Contains interfaces for use with the WorkMail client.
1153 */
1154 export import Types = WorkMail;
1155}
1156export = WorkMail;