UNPKG

27.6 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 AccessAnalyzer extends Service {
9 /**
10 * Constructs a service object. This object has one method for each API operation.
11 */
12 constructor(options?: AccessAnalyzer.Types.ClientConfiguration)
13 config: Config & AccessAnalyzer.Types.ClientConfiguration;
14 /**
15 * Creates an analyzer for your account.
16 */
17 createAnalyzer(params: AccessAnalyzer.Types.CreateAnalyzerRequest, callback?: (err: AWSError, data: AccessAnalyzer.Types.CreateAnalyzerResponse) => void): Request<AccessAnalyzer.Types.CreateAnalyzerResponse, AWSError>;
18 /**
19 * Creates an analyzer for your account.
20 */
21 createAnalyzer(callback?: (err: AWSError, data: AccessAnalyzer.Types.CreateAnalyzerResponse) => void): Request<AccessAnalyzer.Types.CreateAnalyzerResponse, AWSError>;
22 /**
23 * Creates an archive rule for the specified analyzer. Archive rules automatically archive findings that meet the criteria you define when you create the rule.
24 */
25 createArchiveRule(params: AccessAnalyzer.Types.CreateArchiveRuleRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
26 /**
27 * Creates an archive rule for the specified analyzer. Archive rules automatically archive findings that meet the criteria you define when you create the rule.
28 */
29 createArchiveRule(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
30 /**
31 * Deletes the specified analyzer. When you delete an analyzer, Access Analyzer is disabled for the account in the current or specific Region. All findings that were generated by the analyzer are deleted. You cannot undo this action.
32 */
33 deleteAnalyzer(params: AccessAnalyzer.Types.DeleteAnalyzerRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
34 /**
35 * Deletes the specified analyzer. When you delete an analyzer, Access Analyzer is disabled for the account in the current or specific Region. All findings that were generated by the analyzer are deleted. You cannot undo this action.
36 */
37 deleteAnalyzer(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
38 /**
39 * Deletes the specified archive rule.
40 */
41 deleteArchiveRule(params: AccessAnalyzer.Types.DeleteArchiveRuleRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
42 /**
43 * Deletes the specified archive rule.
44 */
45 deleteArchiveRule(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
46 /**
47 * Retrieves information about a resource that was analyzed.
48 */
49 getAnalyzedResource(params: AccessAnalyzer.Types.GetAnalyzedResourceRequest, callback?: (err: AWSError, data: AccessAnalyzer.Types.GetAnalyzedResourceResponse) => void): Request<AccessAnalyzer.Types.GetAnalyzedResourceResponse, AWSError>;
50 /**
51 * Retrieves information about a resource that was analyzed.
52 */
53 getAnalyzedResource(callback?: (err: AWSError, data: AccessAnalyzer.Types.GetAnalyzedResourceResponse) => void): Request<AccessAnalyzer.Types.GetAnalyzedResourceResponse, AWSError>;
54 /**
55 * Retrieves information about the specified analyzer.
56 */
57 getAnalyzer(params: AccessAnalyzer.Types.GetAnalyzerRequest, callback?: (err: AWSError, data: AccessAnalyzer.Types.GetAnalyzerResponse) => void): Request<AccessAnalyzer.Types.GetAnalyzerResponse, AWSError>;
58 /**
59 * Retrieves information about the specified analyzer.
60 */
61 getAnalyzer(callback?: (err: AWSError, data: AccessAnalyzer.Types.GetAnalyzerResponse) => void): Request<AccessAnalyzer.Types.GetAnalyzerResponse, AWSError>;
62 /**
63 * Retrieves information about an archive rule.
64 */
65 getArchiveRule(params: AccessAnalyzer.Types.GetArchiveRuleRequest, callback?: (err: AWSError, data: AccessAnalyzer.Types.GetArchiveRuleResponse) => void): Request<AccessAnalyzer.Types.GetArchiveRuleResponse, AWSError>;
66 /**
67 * Retrieves information about an archive rule.
68 */
69 getArchiveRule(callback?: (err: AWSError, data: AccessAnalyzer.Types.GetArchiveRuleResponse) => void): Request<AccessAnalyzer.Types.GetArchiveRuleResponse, AWSError>;
70 /**
71 * Retrieves information about the specified finding.
72 */
73 getFinding(params: AccessAnalyzer.Types.GetFindingRequest, callback?: (err: AWSError, data: AccessAnalyzer.Types.GetFindingResponse) => void): Request<AccessAnalyzer.Types.GetFindingResponse, AWSError>;
74 /**
75 * Retrieves information about the specified finding.
76 */
77 getFinding(callback?: (err: AWSError, data: AccessAnalyzer.Types.GetFindingResponse) => void): Request<AccessAnalyzer.Types.GetFindingResponse, AWSError>;
78 /**
79 * Retrieves a list of resources of the specified type that have been analyzed by the specified analyzer..
80 */
81 listAnalyzedResources(params: AccessAnalyzer.Types.ListAnalyzedResourcesRequest, callback?: (err: AWSError, data: AccessAnalyzer.Types.ListAnalyzedResourcesResponse) => void): Request<AccessAnalyzer.Types.ListAnalyzedResourcesResponse, AWSError>;
82 /**
83 * Retrieves a list of resources of the specified type that have been analyzed by the specified analyzer..
84 */
85 listAnalyzedResources(callback?: (err: AWSError, data: AccessAnalyzer.Types.ListAnalyzedResourcesResponse) => void): Request<AccessAnalyzer.Types.ListAnalyzedResourcesResponse, AWSError>;
86 /**
87 * Retrieves a list of analyzers.
88 */
89 listAnalyzers(params: AccessAnalyzer.Types.ListAnalyzersRequest, callback?: (err: AWSError, data: AccessAnalyzer.Types.ListAnalyzersResponse) => void): Request<AccessAnalyzer.Types.ListAnalyzersResponse, AWSError>;
90 /**
91 * Retrieves a list of analyzers.
92 */
93 listAnalyzers(callback?: (err: AWSError, data: AccessAnalyzer.Types.ListAnalyzersResponse) => void): Request<AccessAnalyzer.Types.ListAnalyzersResponse, AWSError>;
94 /**
95 * Retrieves a list of archive rules created for the specified analyzer.
96 */
97 listArchiveRules(params: AccessAnalyzer.Types.ListArchiveRulesRequest, callback?: (err: AWSError, data: AccessAnalyzer.Types.ListArchiveRulesResponse) => void): Request<AccessAnalyzer.Types.ListArchiveRulesResponse, AWSError>;
98 /**
99 * Retrieves a list of archive rules created for the specified analyzer.
100 */
101 listArchiveRules(callback?: (err: AWSError, data: AccessAnalyzer.Types.ListArchiveRulesResponse) => void): Request<AccessAnalyzer.Types.ListArchiveRulesResponse, AWSError>;
102 /**
103 * Retrieves a list of findings generated by the specified analyzer.
104 */
105 listFindings(params: AccessAnalyzer.Types.ListFindingsRequest, callback?: (err: AWSError, data: AccessAnalyzer.Types.ListFindingsResponse) => void): Request<AccessAnalyzer.Types.ListFindingsResponse, AWSError>;
106 /**
107 * Retrieves a list of findings generated by the specified analyzer.
108 */
109 listFindings(callback?: (err: AWSError, data: AccessAnalyzer.Types.ListFindingsResponse) => void): Request<AccessAnalyzer.Types.ListFindingsResponse, AWSError>;
110 /**
111 * Retrieves a list of tags applied to the specified resource.
112 */
113 listTagsForResource(params: AccessAnalyzer.Types.ListTagsForResourceRequest, callback?: (err: AWSError, data: AccessAnalyzer.Types.ListTagsForResourceResponse) => void): Request<AccessAnalyzer.Types.ListTagsForResourceResponse, AWSError>;
114 /**
115 * Retrieves a list of tags applied to the specified resource.
116 */
117 listTagsForResource(callback?: (err: AWSError, data: AccessAnalyzer.Types.ListTagsForResourceResponse) => void): Request<AccessAnalyzer.Types.ListTagsForResourceResponse, AWSError>;
118 /**
119 * Immediately starts a scan of the policies applied to the specified resource.
120 */
121 startResourceScan(params: AccessAnalyzer.Types.StartResourceScanRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
122 /**
123 * Immediately starts a scan of the policies applied to the specified resource.
124 */
125 startResourceScan(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
126 /**
127 * Adds a tag to the specified resource.
128 */
129 tagResource(params: AccessAnalyzer.Types.TagResourceRequest, callback?: (err: AWSError, data: AccessAnalyzer.Types.TagResourceResponse) => void): Request<AccessAnalyzer.Types.TagResourceResponse, AWSError>;
130 /**
131 * Adds a tag to the specified resource.
132 */
133 tagResource(callback?: (err: AWSError, data: AccessAnalyzer.Types.TagResourceResponse) => void): Request<AccessAnalyzer.Types.TagResourceResponse, AWSError>;
134 /**
135 * Removes a tag from the specified resource.
136 */
137 untagResource(params: AccessAnalyzer.Types.UntagResourceRequest, callback?: (err: AWSError, data: AccessAnalyzer.Types.UntagResourceResponse) => void): Request<AccessAnalyzer.Types.UntagResourceResponse, AWSError>;
138 /**
139 * Removes a tag from the specified resource.
140 */
141 untagResource(callback?: (err: AWSError, data: AccessAnalyzer.Types.UntagResourceResponse) => void): Request<AccessAnalyzer.Types.UntagResourceResponse, AWSError>;
142 /**
143 * Updates the criteria and values for the specified archive rule.
144 */
145 updateArchiveRule(params: AccessAnalyzer.Types.UpdateArchiveRuleRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
146 /**
147 * Updates the criteria and values for the specified archive rule.
148 */
149 updateArchiveRule(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
150 /**
151 * Updates the status for the specified findings.
152 */
153 updateFindings(params: AccessAnalyzer.Types.UpdateFindingsRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
154 /**
155 * Updates the status for the specified findings.
156 */
157 updateFindings(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
158}
159declare namespace AccessAnalyzer {
160 export type ActionList = String[];
161 export interface AnalyzedResource {
162 /**
163 * The actions that an external principal is granted permission to use by the policy that generated the finding.
164 */
165 actions?: ActionList;
166 /**
167 * The time at which the resource was analyzed.
168 */
169 analyzedAt: Timestamp;
170 /**
171 * The time at which the finding was created.
172 */
173 createdAt: Timestamp;
174 /**
175 * An error message.
176 */
177 error?: String;
178 /**
179 * Indicates whether the policy that generated the finding grants public access to the resource.
180 */
181 isPublic: Boolean;
182 /**
183 * The ARN of the resource that was analyzed.
184 */
185 resourceArn: ResourceArn;
186 /**
187 * The AWS account ID that owns the resource.
188 */
189 resourceOwnerAccount: String;
190 /**
191 * The type of the resource that was analyzed.
192 */
193 resourceType: ResourceType;
194 /**
195 * Indicates how the access that generated the finding is granted.
196 */
197 sharedVia?: SharedViaList;
198 /**
199 * The current status of the finding generated from the analyzed resource.
200 */
201 status?: FindingStatus;
202 /**
203 * The time at which the finding was updated.
204 */
205 updatedAt: Timestamp;
206 }
207 export interface AnalyzedResourceSummary {
208 /**
209 * The ARN of the analyzed resource.
210 */
211 resourceArn: ResourceArn;
212 /**
213 * The AWS account ID that owns the resource.
214 */
215 resourceOwnerAccount: String;
216 /**
217 * The type of resource that was analyzed.
218 */
219 resourceType: ResourceType;
220 }
221 export type AnalyzedResourcesList = AnalyzedResourceSummary[];
222 export type AnalyzerArn = string;
223 export type AnalyzerStatus = "ACTIVE"|"CREATING"|"DISABLED"|"FAILED"|string;
224 export interface AnalyzerSummary {
225 /**
226 * The ARN of the analyzer.
227 */
228 arn: AnalyzerArn;
229 /**
230 * A timestamp for the time at which the analyzer was created.
231 */
232 createdAt: Timestamp;
233 /**
234 * The resource that was most recently analyzed by the analyzer.
235 */
236 lastResourceAnalyzed?: String;
237 /**
238 * The time at which the most recently analyzed resource was analyzed.
239 */
240 lastResourceAnalyzedAt?: Timestamp;
241 /**
242 * The name of the analyzer.
243 */
244 name: Name;
245 /**
246 * The status of the analyzer. An Active analyzer successfully monitors supported resources and generates new findings. The analyzer is Disabled when a user action, such as removing trusted access for IAM Access Analyzer from AWS Organizations, causes the analyzer to stop generating new findings. The status is Creating when the analyzer creation is in progress and Failed when the analyzer creation has failed.
247 */
248 status: AnalyzerStatus;
249 /**
250 * The statusReason provides more details about the current status of the analyzer. For example, if the creation for the analyzer fails, a Failed status is displayed. For an analyzer with organization as the type, this failure can be due to an issue with creating the service-linked roles required in the member accounts of the AWS organization.
251 */
252 statusReason?: StatusReason;
253 /**
254 * The tags added to the analyzer.
255 */
256 tags?: TagsMap;
257 /**
258 * The type of analyzer, which corresponds to the zone of trust chosen for the analyzer.
259 */
260 type: Type;
261 }
262 export type AnalyzersList = AnalyzerSummary[];
263 export interface ArchiveRuleSummary {
264 /**
265 * The time at which the archive rule was created.
266 */
267 createdAt: Timestamp;
268 /**
269 * A filter used to define the archive rule.
270 */
271 filter: FilterCriteriaMap;
272 /**
273 * The name of the archive rule.
274 */
275 ruleName: Name;
276 /**
277 * The time at which the archive rule was last updated.
278 */
279 updatedAt: Timestamp;
280 }
281 export type ArchiveRulesList = ArchiveRuleSummary[];
282 export type Boolean = boolean;
283 export type ConditionKeyMap = {[key: string]: String};
284 export interface CreateAnalyzerRequest {
285 /**
286 * The name of the analyzer to create.
287 */
288 analyzerName: Name;
289 /**
290 * Specifies the archive rules to add for the analyzer. Archive rules automatically archive findings that meet the criteria you define for the rule.
291 */
292 archiveRules?: InlineArchiveRulesList;
293 /**
294 * A client token.
295 */
296 clientToken?: String;
297 /**
298 * The tags to apply to the analyzer.
299 */
300 tags?: TagsMap;
301 /**
302 * The type of analyzer to create. Only ACCOUNT analyzers are supported. You can create only one analyzer per account per Region.
303 */
304 type: Type;
305 }
306 export interface CreateAnalyzerResponse {
307 /**
308 * The ARN of the analyzer that was created by the request.
309 */
310 arn?: AnalyzerArn;
311 }
312 export interface CreateArchiveRuleRequest {
313 /**
314 * The name of the created analyzer.
315 */
316 analyzerName: Name;
317 /**
318 * A client token.
319 */
320 clientToken?: String;
321 /**
322 * The criteria for the rule.
323 */
324 filter: FilterCriteriaMap;
325 /**
326 * The name of the rule to create.
327 */
328 ruleName: Name;
329 }
330 export interface Criterion {
331 /**
332 * A "contains" operator to match for the filter used to create the rule.
333 */
334 contains?: ValueList;
335 /**
336 * An "equals" operator to match for the filter used to create the rule.
337 */
338 eq?: ValueList;
339 /**
340 * An "exists" operator to match for the filter used to create the rule.
341 */
342 exists?: Boolean;
343 /**
344 * A "not equals" operator to match for the filter used to create the rule.
345 */
346 neq?: ValueList;
347 }
348 export interface DeleteAnalyzerRequest {
349 /**
350 * The name of the analyzer to delete.
351 */
352 analyzerName: Name;
353 /**
354 * A client token.
355 */
356 clientToken?: String;
357 }
358 export interface DeleteArchiveRuleRequest {
359 /**
360 * The name of the analyzer that associated with the archive rule to delete.
361 */
362 analyzerName: Name;
363 /**
364 * A client token.
365 */
366 clientToken?: String;
367 /**
368 * The name of the rule to delete.
369 */
370 ruleName: Name;
371 }
372 export type FilterCriteriaMap = {[key: string]: Criterion};
373 export interface Finding {
374 /**
375 * The action in the analyzed policy statement that an external principal has permission to use.
376 */
377 action?: ActionList;
378 /**
379 * The time at which the resource was analyzed.
380 */
381 analyzedAt: Timestamp;
382 /**
383 * The condition in the analyzed policy statement that resulted in a finding.
384 */
385 condition: ConditionKeyMap;
386 /**
387 * The time at which the finding was generated.
388 */
389 createdAt: Timestamp;
390 /**
391 * An error.
392 */
393 error?: String;
394 /**
395 * The ID of the finding.
396 */
397 id: FindingId;
398 /**
399 * Indicates whether the policy that generated the finding allows public access to the resource.
400 */
401 isPublic?: Boolean;
402 /**
403 * The external principal that access to a resource within the zone of trust.
404 */
405 principal?: PrincipalMap;
406 /**
407 * The resource that an external principal has access to.
408 */
409 resource?: String;
410 /**
411 * The AWS account ID that owns the resource.
412 */
413 resourceOwnerAccount: String;
414 /**
415 * The type of the resource reported in the finding.
416 */
417 resourceType: ResourceType;
418 /**
419 * The current status of the finding.
420 */
421 status: FindingStatus;
422 /**
423 * The time at which the finding was updated.
424 */
425 updatedAt: Timestamp;
426 }
427 export type FindingId = string;
428 export type FindingIdList = FindingId[];
429 export type FindingStatus = "ACTIVE"|"ARCHIVED"|"RESOLVED"|string;
430 export type FindingStatusUpdate = "ACTIVE"|"ARCHIVED"|string;
431 export interface FindingSummary {
432 /**
433 * The action in the analyzed policy statement that an external principal has permission to use.
434 */
435 action?: ActionList;
436 /**
437 * The time at which the resource-based policy that generated the finding was analyzed.
438 */
439 analyzedAt: Timestamp;
440 /**
441 * The condition in the analyzed policy statement that resulted in a finding.
442 */
443 condition: ConditionKeyMap;
444 /**
445 * The time at which the finding was created.
446 */
447 createdAt: Timestamp;
448 /**
449 * The error that resulted in an Error finding.
450 */
451 error?: String;
452 /**
453 * The ID of the finding.
454 */
455 id: FindingId;
456 /**
457 * Indicates whether the finding reports a resource that has a policy that allows public access.
458 */
459 isPublic?: Boolean;
460 /**
461 * The external principal that has access to a resource within the zone of trust.
462 */
463 principal?: PrincipalMap;
464 /**
465 * The resource that the external principal has access to.
466 */
467 resource?: String;
468 /**
469 * The AWS account ID that owns the resource.
470 */
471 resourceOwnerAccount: String;
472 /**
473 * The type of the resource that the external principal has access to.
474 */
475 resourceType: ResourceType;
476 /**
477 * The status of the finding.
478 */
479 status: FindingStatus;
480 /**
481 * The time at which the finding was most recently updated.
482 */
483 updatedAt: Timestamp;
484 }
485 export type FindingsList = FindingSummary[];
486 export interface GetAnalyzedResourceRequest {
487 /**
488 * The ARN of the analyzer to retrieve information from.
489 */
490 analyzerArn: AnalyzerArn;
491 /**
492 * The ARN of the resource to retrieve information about.
493 */
494 resourceArn: ResourceArn;
495 }
496 export interface GetAnalyzedResourceResponse {
497 /**
498 * An AnalyedResource object that contains information that Access Analyzer found when it analyzed the resource.
499 */
500 resource?: AnalyzedResource;
501 }
502 export interface GetAnalyzerRequest {
503 /**
504 * The name of the analyzer retrieved.
505 */
506 analyzerName: Name;
507 }
508 export interface GetAnalyzerResponse {
509 /**
510 * An AnalyzerSummary object that contains information about the analyzer.
511 */
512 analyzer: AnalyzerSummary;
513 }
514 export interface GetArchiveRuleRequest {
515 /**
516 * The name of the analyzer to retrieve rules from.
517 */
518 analyzerName: Name;
519 /**
520 * The name of the rule to retrieve.
521 */
522 ruleName: Name;
523 }
524 export interface GetArchiveRuleResponse {
525 archiveRule: ArchiveRuleSummary;
526 }
527 export interface GetFindingRequest {
528 /**
529 * The ARN of the analyzer that generated the finding.
530 */
531 analyzerArn: AnalyzerArn;
532 /**
533 * The ID of the finding to retrieve.
534 */
535 id: FindingId;
536 }
537 export interface GetFindingResponse {
538 /**
539 * A finding object that contains finding details.
540 */
541 finding?: Finding;
542 }
543 export interface InlineArchiveRule {
544 /**
545 * The condition and values for a criterion.
546 */
547 filter: FilterCriteriaMap;
548 /**
549 * The name of the rule.
550 */
551 ruleName: Name;
552 }
553 export type InlineArchiveRulesList = InlineArchiveRule[];
554 export type Integer = number;
555 export interface ListAnalyzedResourcesRequest {
556 /**
557 * The ARN of the analyzer to retrieve a list of analyzed resources from.
558 */
559 analyzerArn: AnalyzerArn;
560 /**
561 * The maximum number of results to return in the response.
562 */
563 maxResults?: Integer;
564 /**
565 * A token used for pagination of results returned.
566 */
567 nextToken?: Token;
568 /**
569 * The type of resource.
570 */
571 resourceType?: ResourceType;
572 }
573 export interface ListAnalyzedResourcesResponse {
574 /**
575 * A list of resources that were analyzed.
576 */
577 analyzedResources: AnalyzedResourcesList;
578 /**
579 * A token used for pagination of results returned.
580 */
581 nextToken?: Token;
582 }
583 export interface ListAnalyzersRequest {
584 /**
585 * The maximum number of results to return in the response.
586 */
587 maxResults?: Integer;
588 /**
589 * A token used for pagination of results returned.
590 */
591 nextToken?: Token;
592 /**
593 * The type of analyzer.
594 */
595 type?: Type;
596 }
597 export interface ListAnalyzersResponse {
598 /**
599 * The analyzers retrieved.
600 */
601 analyzers: AnalyzersList;
602 /**
603 * A token used for pagination of results returned.
604 */
605 nextToken?: Token;
606 }
607 export interface ListArchiveRulesRequest {
608 /**
609 * The name of the analyzer to retrieve rules from.
610 */
611 analyzerName: Name;
612 /**
613 * The maximum number of results to return in the request.
614 */
615 maxResults?: Integer;
616 /**
617 * A token used for pagination of results returned.
618 */
619 nextToken?: Token;
620 }
621 export interface ListArchiveRulesResponse {
622 /**
623 * A list of archive rules created for the specified analyzer.
624 */
625 archiveRules: ArchiveRulesList;
626 /**
627 * A token used for pagination of results returned.
628 */
629 nextToken?: Token;
630 }
631 export interface ListFindingsRequest {
632 /**
633 * The ARN of the analyzer to retrieve findings from.
634 */
635 analyzerArn: AnalyzerArn;
636 /**
637 * A filter to match for the findings to return.
638 */
639 filter?: FilterCriteriaMap;
640 /**
641 * The maximum number of results to return in the response.
642 */
643 maxResults?: Integer;
644 /**
645 * A token used for pagination of results returned.
646 */
647 nextToken?: Token;
648 /**
649 * The sort order for the findings returned.
650 */
651 sort?: SortCriteria;
652 }
653 export interface ListFindingsResponse {
654 /**
655 * A list of findings retrieved from the analyzer that match the filter criteria specified, if any.
656 */
657 findings: FindingsList;
658 /**
659 * A token used for pagination of results returned.
660 */
661 nextToken?: Token;
662 }
663 export interface ListTagsForResourceRequest {
664 /**
665 * The ARN of the resource to retrieve tags from.
666 */
667 resourceArn: String;
668 }
669 export interface ListTagsForResourceResponse {
670 /**
671 * The tags that are applied to the specified resource.
672 */
673 tags?: TagsMap;
674 }
675 export type Name = string;
676 export type OrderBy = "ASC"|"DESC"|string;
677 export type PrincipalMap = {[key: string]: String};
678 export type ReasonCode = "AWS_SERVICE_ACCESS_DISABLED"|"DELEGATED_ADMINISTRATOR_DEREGISTERED"|"ORGANIZATION_DELETED"|"SERVICE_LINKED_ROLE_CREATION_FAILED"|string;
679 export type ResourceArn = string;
680 export type ResourceType = "AWS::IAM::Role"|"AWS::KMS::Key"|"AWS::Lambda::Function"|"AWS::Lambda::LayerVersion"|"AWS::S3::Bucket"|"AWS::SQS::Queue"|string;
681 export type SharedViaList = String[];
682 export interface SortCriteria {
683 /**
684 * The name of the attribute to sort on.
685 */
686 attributeName?: String;
687 /**
688 * The sort order, ascending or descending.
689 */
690 orderBy?: OrderBy;
691 }
692 export interface StartResourceScanRequest {
693 /**
694 * The ARN of the analyzer to use to scan the policies applied to the specified resource.
695 */
696 analyzerArn: AnalyzerArn;
697 /**
698 * The ARN of the resource to scan.
699 */
700 resourceArn: ResourceArn;
701 }
702 export interface StatusReason {
703 /**
704 * The reason code for the current status of the analyzer.
705 */
706 code: ReasonCode;
707 }
708 export type String = string;
709 export type TagKeys = String[];
710 export interface TagResourceRequest {
711 /**
712 * The ARN of the resource to add the tag to.
713 */
714 resourceArn: String;
715 /**
716 * The tags to add to the resource.
717 */
718 tags: TagsMap;
719 }
720 export interface TagResourceResponse {
721 }
722 export type TagsMap = {[key: string]: String};
723 export type Timestamp = Date;
724 export type Token = string;
725 export type Type = "ACCOUNT"|"ORGANIZATION"|string;
726 export interface UntagResourceRequest {
727 /**
728 * The ARN of the resource to remove the tag from.
729 */
730 resourceArn: String;
731 /**
732 * The key for the tag to add.
733 */
734 tagKeys: TagKeys;
735 }
736 export interface UntagResourceResponse {
737 }
738 export interface UpdateArchiveRuleRequest {
739 /**
740 * The name of the analyzer to update the archive rules for.
741 */
742 analyzerName: Name;
743 /**
744 * A client token.
745 */
746 clientToken?: String;
747 /**
748 * A filter to match for the rules to update. Only rules that match the filter are updated.
749 */
750 filter: FilterCriteriaMap;
751 /**
752 * The name of the rule to update.
753 */
754 ruleName: Name;
755 }
756 export interface UpdateFindingsRequest {
757 /**
758 * The ARN of the analyzer that generated the findings to update.
759 */
760 analyzerArn: AnalyzerArn;
761 /**
762 * A client token.
763 */
764 clientToken?: String;
765 /**
766 * The IDs of the findings to update.
767 */
768 ids?: FindingIdList;
769 /**
770 * The ARN of the resource identified in the finding.
771 */
772 resourceArn?: ResourceArn;
773 /**
774 * The state represents the action to take to update the finding Status. Use ARCHIVE to change an Active finding to an Archived finding. Use ACTIVE to change an Archived finding to an Active finding.
775 */
776 status: FindingStatusUpdate;
777 }
778 export type ValueList = String[];
779 /**
780 * 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.
781 */
782 export type apiVersion = "2019-11-01"|"latest"|string;
783 export interface ClientApiVersions {
784 /**
785 * 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.
786 */
787 apiVersion?: apiVersion;
788 }
789 export type ClientConfiguration = ServiceConfigurationOptions & ClientApiVersions;
790 /**
791 * Contains interfaces for use with the AccessAnalyzer client.
792 */
793 export import Types = AccessAnalyzer;
794}
795export = AccessAnalyzer;