UNPKG

135 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 CloudDirectory extends Service {
9 /**
10 * Constructs a service object. This object has one method for each API operation.
11 */
12 constructor(options?: CloudDirectory.Types.ClientConfiguration)
13 config: Config & CloudDirectory.Types.ClientConfiguration;
14 /**
15 * Adds a new Facet to an object. An object can have more than one facet applied on it.
16 */
17 addFacetToObject(params: CloudDirectory.Types.AddFacetToObjectRequest, callback?: (err: AWSError, data: CloudDirectory.Types.AddFacetToObjectResponse) => void): Request<CloudDirectory.Types.AddFacetToObjectResponse, AWSError>;
18 /**
19 * Adds a new Facet to an object. An object can have more than one facet applied on it.
20 */
21 addFacetToObject(callback?: (err: AWSError, data: CloudDirectory.Types.AddFacetToObjectResponse) => void): Request<CloudDirectory.Types.AddFacetToObjectResponse, AWSError>;
22 /**
23 * Copies the input published schema, at the specified version, into the Directory with the same name and version as that of the published schema.
24 */
25 applySchema(params: CloudDirectory.Types.ApplySchemaRequest, callback?: (err: AWSError, data: CloudDirectory.Types.ApplySchemaResponse) => void): Request<CloudDirectory.Types.ApplySchemaResponse, AWSError>;
26 /**
27 * Copies the input published schema, at the specified version, into the Directory with the same name and version as that of the published schema.
28 */
29 applySchema(callback?: (err: AWSError, data: CloudDirectory.Types.ApplySchemaResponse) => void): Request<CloudDirectory.Types.ApplySchemaResponse, AWSError>;
30 /**
31 * Attaches an existing object to another object. An object can be accessed in two ways: Using the path Using ObjectIdentifier
32 */
33 attachObject(params: CloudDirectory.Types.AttachObjectRequest, callback?: (err: AWSError, data: CloudDirectory.Types.AttachObjectResponse) => void): Request<CloudDirectory.Types.AttachObjectResponse, AWSError>;
34 /**
35 * Attaches an existing object to another object. An object can be accessed in two ways: Using the path Using ObjectIdentifier
36 */
37 attachObject(callback?: (err: AWSError, data: CloudDirectory.Types.AttachObjectResponse) => void): Request<CloudDirectory.Types.AttachObjectResponse, AWSError>;
38 /**
39 * Attaches a policy object to a regular object. An object can have a limited number of attached policies.
40 */
41 attachPolicy(params: CloudDirectory.Types.AttachPolicyRequest, callback?: (err: AWSError, data: CloudDirectory.Types.AttachPolicyResponse) => void): Request<CloudDirectory.Types.AttachPolicyResponse, AWSError>;
42 /**
43 * Attaches a policy object to a regular object. An object can have a limited number of attached policies.
44 */
45 attachPolicy(callback?: (err: AWSError, data: CloudDirectory.Types.AttachPolicyResponse) => void): Request<CloudDirectory.Types.AttachPolicyResponse, AWSError>;
46 /**
47 * Attaches the specified object to the specified index.
48 */
49 attachToIndex(params: CloudDirectory.Types.AttachToIndexRequest, callback?: (err: AWSError, data: CloudDirectory.Types.AttachToIndexResponse) => void): Request<CloudDirectory.Types.AttachToIndexResponse, AWSError>;
50 /**
51 * Attaches the specified object to the specified index.
52 */
53 attachToIndex(callback?: (err: AWSError, data: CloudDirectory.Types.AttachToIndexResponse) => void): Request<CloudDirectory.Types.AttachToIndexResponse, AWSError>;
54 /**
55 * Attaches a typed link to a specified source and target object. For more information, see Typed Links.
56 */
57 attachTypedLink(params: CloudDirectory.Types.AttachTypedLinkRequest, callback?: (err: AWSError, data: CloudDirectory.Types.AttachTypedLinkResponse) => void): Request<CloudDirectory.Types.AttachTypedLinkResponse, AWSError>;
58 /**
59 * Attaches a typed link to a specified source and target object. For more information, see Typed Links.
60 */
61 attachTypedLink(callback?: (err: AWSError, data: CloudDirectory.Types.AttachTypedLinkResponse) => void): Request<CloudDirectory.Types.AttachTypedLinkResponse, AWSError>;
62 /**
63 * Performs all the read operations in a batch.
64 */
65 batchRead(params: CloudDirectory.Types.BatchReadRequest, callback?: (err: AWSError, data: CloudDirectory.Types.BatchReadResponse) => void): Request<CloudDirectory.Types.BatchReadResponse, AWSError>;
66 /**
67 * Performs all the read operations in a batch.
68 */
69 batchRead(callback?: (err: AWSError, data: CloudDirectory.Types.BatchReadResponse) => void): Request<CloudDirectory.Types.BatchReadResponse, AWSError>;
70 /**
71 * Performs all the write operations in a batch. Either all the operations succeed or none.
72 */
73 batchWrite(params: CloudDirectory.Types.BatchWriteRequest, callback?: (err: AWSError, data: CloudDirectory.Types.BatchWriteResponse) => void): Request<CloudDirectory.Types.BatchWriteResponse, AWSError>;
74 /**
75 * Performs all the write operations in a batch. Either all the operations succeed or none.
76 */
77 batchWrite(callback?: (err: AWSError, data: CloudDirectory.Types.BatchWriteResponse) => void): Request<CloudDirectory.Types.BatchWriteResponse, AWSError>;
78 /**
79 * Creates a Directory by copying the published schema into the directory. A directory cannot be created without a schema. You can also quickly create a directory using a managed schema, called the QuickStartSchema. For more information, see Managed Schema in the Amazon Cloud Directory Developer Guide.
80 */
81 createDirectory(params: CloudDirectory.Types.CreateDirectoryRequest, callback?: (err: AWSError, data: CloudDirectory.Types.CreateDirectoryResponse) => void): Request<CloudDirectory.Types.CreateDirectoryResponse, AWSError>;
82 /**
83 * Creates a Directory by copying the published schema into the directory. A directory cannot be created without a schema. You can also quickly create a directory using a managed schema, called the QuickStartSchema. For more information, see Managed Schema in the Amazon Cloud Directory Developer Guide.
84 */
85 createDirectory(callback?: (err: AWSError, data: CloudDirectory.Types.CreateDirectoryResponse) => void): Request<CloudDirectory.Types.CreateDirectoryResponse, AWSError>;
86 /**
87 * Creates a new Facet in a schema. Facet creation is allowed only in development or applied schemas.
88 */
89 createFacet(params: CloudDirectory.Types.CreateFacetRequest, callback?: (err: AWSError, data: CloudDirectory.Types.CreateFacetResponse) => void): Request<CloudDirectory.Types.CreateFacetResponse, AWSError>;
90 /**
91 * Creates a new Facet in a schema. Facet creation is allowed only in development or applied schemas.
92 */
93 createFacet(callback?: (err: AWSError, data: CloudDirectory.Types.CreateFacetResponse) => void): Request<CloudDirectory.Types.CreateFacetResponse, AWSError>;
94 /**
95 * Creates an index object. See Indexing and search for more information.
96 */
97 createIndex(params: CloudDirectory.Types.CreateIndexRequest, callback?: (err: AWSError, data: CloudDirectory.Types.CreateIndexResponse) => void): Request<CloudDirectory.Types.CreateIndexResponse, AWSError>;
98 /**
99 * Creates an index object. See Indexing and search for more information.
100 */
101 createIndex(callback?: (err: AWSError, data: CloudDirectory.Types.CreateIndexResponse) => void): Request<CloudDirectory.Types.CreateIndexResponse, AWSError>;
102 /**
103 * Creates an object in a Directory. Additionally attaches the object to a parent, if a parent reference and LinkName is specified. An object is simply a collection of Facet attributes. You can also use this API call to create a policy object, if the facet from which you create the object is a policy facet.
104 */
105 createObject(params: CloudDirectory.Types.CreateObjectRequest, callback?: (err: AWSError, data: CloudDirectory.Types.CreateObjectResponse) => void): Request<CloudDirectory.Types.CreateObjectResponse, AWSError>;
106 /**
107 * Creates an object in a Directory. Additionally attaches the object to a parent, if a parent reference and LinkName is specified. An object is simply a collection of Facet attributes. You can also use this API call to create a policy object, if the facet from which you create the object is a policy facet.
108 */
109 createObject(callback?: (err: AWSError, data: CloudDirectory.Types.CreateObjectResponse) => void): Request<CloudDirectory.Types.CreateObjectResponse, AWSError>;
110 /**
111 * Creates a new schema in a development state. A schema can exist in three phases: Development: This is a mutable phase of the schema. All new schemas are in the development phase. Once the schema is finalized, it can be published. Published: Published schemas are immutable and have a version associated with them. Applied: Applied schemas are mutable in a way that allows you to add new schema facets. You can also add new, nonrequired attributes to existing schema facets. You can apply only published schemas to directories.
112 */
113 createSchema(params: CloudDirectory.Types.CreateSchemaRequest, callback?: (err: AWSError, data: CloudDirectory.Types.CreateSchemaResponse) => void): Request<CloudDirectory.Types.CreateSchemaResponse, AWSError>;
114 /**
115 * Creates a new schema in a development state. A schema can exist in three phases: Development: This is a mutable phase of the schema. All new schemas are in the development phase. Once the schema is finalized, it can be published. Published: Published schemas are immutable and have a version associated with them. Applied: Applied schemas are mutable in a way that allows you to add new schema facets. You can also add new, nonrequired attributes to existing schema facets. You can apply only published schemas to directories.
116 */
117 createSchema(callback?: (err: AWSError, data: CloudDirectory.Types.CreateSchemaResponse) => void): Request<CloudDirectory.Types.CreateSchemaResponse, AWSError>;
118 /**
119 * Creates a TypedLinkFacet. For more information, see Typed Links.
120 */
121 createTypedLinkFacet(params: CloudDirectory.Types.CreateTypedLinkFacetRequest, callback?: (err: AWSError, data: CloudDirectory.Types.CreateTypedLinkFacetResponse) => void): Request<CloudDirectory.Types.CreateTypedLinkFacetResponse, AWSError>;
122 /**
123 * Creates a TypedLinkFacet. For more information, see Typed Links.
124 */
125 createTypedLinkFacet(callback?: (err: AWSError, data: CloudDirectory.Types.CreateTypedLinkFacetResponse) => void): Request<CloudDirectory.Types.CreateTypedLinkFacetResponse, AWSError>;
126 /**
127 * Deletes a directory. Only disabled directories can be deleted. A deleted directory cannot be undone. Exercise extreme caution when deleting directories.
128 */
129 deleteDirectory(params: CloudDirectory.Types.DeleteDirectoryRequest, callback?: (err: AWSError, data: CloudDirectory.Types.DeleteDirectoryResponse) => void): Request<CloudDirectory.Types.DeleteDirectoryResponse, AWSError>;
130 /**
131 * Deletes a directory. Only disabled directories can be deleted. A deleted directory cannot be undone. Exercise extreme caution when deleting directories.
132 */
133 deleteDirectory(callback?: (err: AWSError, data: CloudDirectory.Types.DeleteDirectoryResponse) => void): Request<CloudDirectory.Types.DeleteDirectoryResponse, AWSError>;
134 /**
135 * Deletes a given Facet. All attributes and Rules that are associated with the facet will be deleted. Only development schema facets are allowed deletion.
136 */
137 deleteFacet(params: CloudDirectory.Types.DeleteFacetRequest, callback?: (err: AWSError, data: CloudDirectory.Types.DeleteFacetResponse) => void): Request<CloudDirectory.Types.DeleteFacetResponse, AWSError>;
138 /**
139 * Deletes a given Facet. All attributes and Rules that are associated with the facet will be deleted. Only development schema facets are allowed deletion.
140 */
141 deleteFacet(callback?: (err: AWSError, data: CloudDirectory.Types.DeleteFacetResponse) => void): Request<CloudDirectory.Types.DeleteFacetResponse, AWSError>;
142 /**
143 * Deletes an object and its associated attributes. Only objects with no children and no parents can be deleted. The maximum number of attributes that can be deleted during an object deletion is 30. For more information, see Amazon Cloud Directory Limits.
144 */
145 deleteObject(params: CloudDirectory.Types.DeleteObjectRequest, callback?: (err: AWSError, data: CloudDirectory.Types.DeleteObjectResponse) => void): Request<CloudDirectory.Types.DeleteObjectResponse, AWSError>;
146 /**
147 * Deletes an object and its associated attributes. Only objects with no children and no parents can be deleted. The maximum number of attributes that can be deleted during an object deletion is 30. For more information, see Amazon Cloud Directory Limits.
148 */
149 deleteObject(callback?: (err: AWSError, data: CloudDirectory.Types.DeleteObjectResponse) => void): Request<CloudDirectory.Types.DeleteObjectResponse, AWSError>;
150 /**
151 * Deletes a given schema. Schemas in a development and published state can only be deleted.
152 */
153 deleteSchema(params: CloudDirectory.Types.DeleteSchemaRequest, callback?: (err: AWSError, data: CloudDirectory.Types.DeleteSchemaResponse) => void): Request<CloudDirectory.Types.DeleteSchemaResponse, AWSError>;
154 /**
155 * Deletes a given schema. Schemas in a development and published state can only be deleted.
156 */
157 deleteSchema(callback?: (err: AWSError, data: CloudDirectory.Types.DeleteSchemaResponse) => void): Request<CloudDirectory.Types.DeleteSchemaResponse, AWSError>;
158 /**
159 * Deletes a TypedLinkFacet. For more information, see Typed Links.
160 */
161 deleteTypedLinkFacet(params: CloudDirectory.Types.DeleteTypedLinkFacetRequest, callback?: (err: AWSError, data: CloudDirectory.Types.DeleteTypedLinkFacetResponse) => void): Request<CloudDirectory.Types.DeleteTypedLinkFacetResponse, AWSError>;
162 /**
163 * Deletes a TypedLinkFacet. For more information, see Typed Links.
164 */
165 deleteTypedLinkFacet(callback?: (err: AWSError, data: CloudDirectory.Types.DeleteTypedLinkFacetResponse) => void): Request<CloudDirectory.Types.DeleteTypedLinkFacetResponse, AWSError>;
166 /**
167 * Detaches the specified object from the specified index.
168 */
169 detachFromIndex(params: CloudDirectory.Types.DetachFromIndexRequest, callback?: (err: AWSError, data: CloudDirectory.Types.DetachFromIndexResponse) => void): Request<CloudDirectory.Types.DetachFromIndexResponse, AWSError>;
170 /**
171 * Detaches the specified object from the specified index.
172 */
173 detachFromIndex(callback?: (err: AWSError, data: CloudDirectory.Types.DetachFromIndexResponse) => void): Request<CloudDirectory.Types.DetachFromIndexResponse, AWSError>;
174 /**
175 * Detaches a given object from the parent object. The object that is to be detached from the parent is specified by the link name.
176 */
177 detachObject(params: CloudDirectory.Types.DetachObjectRequest, callback?: (err: AWSError, data: CloudDirectory.Types.DetachObjectResponse) => void): Request<CloudDirectory.Types.DetachObjectResponse, AWSError>;
178 /**
179 * Detaches a given object from the parent object. The object that is to be detached from the parent is specified by the link name.
180 */
181 detachObject(callback?: (err: AWSError, data: CloudDirectory.Types.DetachObjectResponse) => void): Request<CloudDirectory.Types.DetachObjectResponse, AWSError>;
182 /**
183 * Detaches a policy from an object.
184 */
185 detachPolicy(params: CloudDirectory.Types.DetachPolicyRequest, callback?: (err: AWSError, data: CloudDirectory.Types.DetachPolicyResponse) => void): Request<CloudDirectory.Types.DetachPolicyResponse, AWSError>;
186 /**
187 * Detaches a policy from an object.
188 */
189 detachPolicy(callback?: (err: AWSError, data: CloudDirectory.Types.DetachPolicyResponse) => void): Request<CloudDirectory.Types.DetachPolicyResponse, AWSError>;
190 /**
191 * Detaches a typed link from a specified source and target object. For more information, see Typed Links.
192 */
193 detachTypedLink(params: CloudDirectory.Types.DetachTypedLinkRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
194 /**
195 * Detaches a typed link from a specified source and target object. For more information, see Typed Links.
196 */
197 detachTypedLink(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
198 /**
199 * Disables the specified directory. Disabled directories cannot be read or written to. Only enabled directories can be disabled. Disabled directories may be reenabled.
200 */
201 disableDirectory(params: CloudDirectory.Types.DisableDirectoryRequest, callback?: (err: AWSError, data: CloudDirectory.Types.DisableDirectoryResponse) => void): Request<CloudDirectory.Types.DisableDirectoryResponse, AWSError>;
202 /**
203 * Disables the specified directory. Disabled directories cannot be read or written to. Only enabled directories can be disabled. Disabled directories may be reenabled.
204 */
205 disableDirectory(callback?: (err: AWSError, data: CloudDirectory.Types.DisableDirectoryResponse) => void): Request<CloudDirectory.Types.DisableDirectoryResponse, AWSError>;
206 /**
207 * Enables the specified directory. Only disabled directories can be enabled. Once enabled, the directory can then be read and written to.
208 */
209 enableDirectory(params: CloudDirectory.Types.EnableDirectoryRequest, callback?: (err: AWSError, data: CloudDirectory.Types.EnableDirectoryResponse) => void): Request<CloudDirectory.Types.EnableDirectoryResponse, AWSError>;
210 /**
211 * Enables the specified directory. Only disabled directories can be enabled. Once enabled, the directory can then be read and written to.
212 */
213 enableDirectory(callback?: (err: AWSError, data: CloudDirectory.Types.EnableDirectoryResponse) => void): Request<CloudDirectory.Types.EnableDirectoryResponse, AWSError>;
214 /**
215 * Returns current applied schema version ARN, including the minor version in use.
216 */
217 getAppliedSchemaVersion(params: CloudDirectory.Types.GetAppliedSchemaVersionRequest, callback?: (err: AWSError, data: CloudDirectory.Types.GetAppliedSchemaVersionResponse) => void): Request<CloudDirectory.Types.GetAppliedSchemaVersionResponse, AWSError>;
218 /**
219 * Returns current applied schema version ARN, including the minor version in use.
220 */
221 getAppliedSchemaVersion(callback?: (err: AWSError, data: CloudDirectory.Types.GetAppliedSchemaVersionResponse) => void): Request<CloudDirectory.Types.GetAppliedSchemaVersionResponse, AWSError>;
222 /**
223 * Retrieves metadata about a directory.
224 */
225 getDirectory(params: CloudDirectory.Types.GetDirectoryRequest, callback?: (err: AWSError, data: CloudDirectory.Types.GetDirectoryResponse) => void): Request<CloudDirectory.Types.GetDirectoryResponse, AWSError>;
226 /**
227 * Retrieves metadata about a directory.
228 */
229 getDirectory(callback?: (err: AWSError, data: CloudDirectory.Types.GetDirectoryResponse) => void): Request<CloudDirectory.Types.GetDirectoryResponse, AWSError>;
230 /**
231 * Gets details of the Facet, such as facet name, attributes, Rules, or ObjectType. You can call this on all kinds of schema facets -- published, development, or applied.
232 */
233 getFacet(params: CloudDirectory.Types.GetFacetRequest, callback?: (err: AWSError, data: CloudDirectory.Types.GetFacetResponse) => void): Request<CloudDirectory.Types.GetFacetResponse, AWSError>;
234 /**
235 * Gets details of the Facet, such as facet name, attributes, Rules, or ObjectType. You can call this on all kinds of schema facets -- published, development, or applied.
236 */
237 getFacet(callback?: (err: AWSError, data: CloudDirectory.Types.GetFacetResponse) => void): Request<CloudDirectory.Types.GetFacetResponse, AWSError>;
238 /**
239 * Retrieves attributes that are associated with a typed link.
240 */
241 getLinkAttributes(params: CloudDirectory.Types.GetLinkAttributesRequest, callback?: (err: AWSError, data: CloudDirectory.Types.GetLinkAttributesResponse) => void): Request<CloudDirectory.Types.GetLinkAttributesResponse, AWSError>;
242 /**
243 * Retrieves attributes that are associated with a typed link.
244 */
245 getLinkAttributes(callback?: (err: AWSError, data: CloudDirectory.Types.GetLinkAttributesResponse) => void): Request<CloudDirectory.Types.GetLinkAttributesResponse, AWSError>;
246 /**
247 * Retrieves attributes within a facet that are associated with an object.
248 */
249 getObjectAttributes(params: CloudDirectory.Types.GetObjectAttributesRequest, callback?: (err: AWSError, data: CloudDirectory.Types.GetObjectAttributesResponse) => void): Request<CloudDirectory.Types.GetObjectAttributesResponse, AWSError>;
250 /**
251 * Retrieves attributes within a facet that are associated with an object.
252 */
253 getObjectAttributes(callback?: (err: AWSError, data: CloudDirectory.Types.GetObjectAttributesResponse) => void): Request<CloudDirectory.Types.GetObjectAttributesResponse, AWSError>;
254 /**
255 * Retrieves metadata about an object.
256 */
257 getObjectInformation(params: CloudDirectory.Types.GetObjectInformationRequest, callback?: (err: AWSError, data: CloudDirectory.Types.GetObjectInformationResponse) => void): Request<CloudDirectory.Types.GetObjectInformationResponse, AWSError>;
258 /**
259 * Retrieves metadata about an object.
260 */
261 getObjectInformation(callback?: (err: AWSError, data: CloudDirectory.Types.GetObjectInformationResponse) => void): Request<CloudDirectory.Types.GetObjectInformationResponse, AWSError>;
262 /**
263 * Retrieves a JSON representation of the schema. See JSON Schema Format for more information.
264 */
265 getSchemaAsJson(params: CloudDirectory.Types.GetSchemaAsJsonRequest, callback?: (err: AWSError, data: CloudDirectory.Types.GetSchemaAsJsonResponse) => void): Request<CloudDirectory.Types.GetSchemaAsJsonResponse, AWSError>;
266 /**
267 * Retrieves a JSON representation of the schema. See JSON Schema Format for more information.
268 */
269 getSchemaAsJson(callback?: (err: AWSError, data: CloudDirectory.Types.GetSchemaAsJsonResponse) => void): Request<CloudDirectory.Types.GetSchemaAsJsonResponse, AWSError>;
270 /**
271 * Returns the identity attribute order for a specific TypedLinkFacet. For more information, see Typed Links.
272 */
273 getTypedLinkFacetInformation(params: CloudDirectory.Types.GetTypedLinkFacetInformationRequest, callback?: (err: AWSError, data: CloudDirectory.Types.GetTypedLinkFacetInformationResponse) => void): Request<CloudDirectory.Types.GetTypedLinkFacetInformationResponse, AWSError>;
274 /**
275 * Returns the identity attribute order for a specific TypedLinkFacet. For more information, see Typed Links.
276 */
277 getTypedLinkFacetInformation(callback?: (err: AWSError, data: CloudDirectory.Types.GetTypedLinkFacetInformationResponse) => void): Request<CloudDirectory.Types.GetTypedLinkFacetInformationResponse, AWSError>;
278 /**
279 * Lists schema major versions applied to a directory. If SchemaArn is provided, lists the minor version.
280 */
281 listAppliedSchemaArns(params: CloudDirectory.Types.ListAppliedSchemaArnsRequest, callback?: (err: AWSError, data: CloudDirectory.Types.ListAppliedSchemaArnsResponse) => void): Request<CloudDirectory.Types.ListAppliedSchemaArnsResponse, AWSError>;
282 /**
283 * Lists schema major versions applied to a directory. If SchemaArn is provided, lists the minor version.
284 */
285 listAppliedSchemaArns(callback?: (err: AWSError, data: CloudDirectory.Types.ListAppliedSchemaArnsResponse) => void): Request<CloudDirectory.Types.ListAppliedSchemaArnsResponse, AWSError>;
286 /**
287 * Lists indices attached to the specified object.
288 */
289 listAttachedIndices(params: CloudDirectory.Types.ListAttachedIndicesRequest, callback?: (err: AWSError, data: CloudDirectory.Types.ListAttachedIndicesResponse) => void): Request<CloudDirectory.Types.ListAttachedIndicesResponse, AWSError>;
290 /**
291 * Lists indices attached to the specified object.
292 */
293 listAttachedIndices(callback?: (err: AWSError, data: CloudDirectory.Types.ListAttachedIndicesResponse) => void): Request<CloudDirectory.Types.ListAttachedIndicesResponse, AWSError>;
294 /**
295 * Retrieves each Amazon Resource Name (ARN) of schemas in the development state.
296 */
297 listDevelopmentSchemaArns(params: CloudDirectory.Types.ListDevelopmentSchemaArnsRequest, callback?: (err: AWSError, data: CloudDirectory.Types.ListDevelopmentSchemaArnsResponse) => void): Request<CloudDirectory.Types.ListDevelopmentSchemaArnsResponse, AWSError>;
298 /**
299 * Retrieves each Amazon Resource Name (ARN) of schemas in the development state.
300 */
301 listDevelopmentSchemaArns(callback?: (err: AWSError, data: CloudDirectory.Types.ListDevelopmentSchemaArnsResponse) => void): Request<CloudDirectory.Types.ListDevelopmentSchemaArnsResponse, AWSError>;
302 /**
303 * Lists directories created within an account.
304 */
305 listDirectories(params: CloudDirectory.Types.ListDirectoriesRequest, callback?: (err: AWSError, data: CloudDirectory.Types.ListDirectoriesResponse) => void): Request<CloudDirectory.Types.ListDirectoriesResponse, AWSError>;
306 /**
307 * Lists directories created within an account.
308 */
309 listDirectories(callback?: (err: AWSError, data: CloudDirectory.Types.ListDirectoriesResponse) => void): Request<CloudDirectory.Types.ListDirectoriesResponse, AWSError>;
310 /**
311 * Retrieves attributes attached to the facet.
312 */
313 listFacetAttributes(params: CloudDirectory.Types.ListFacetAttributesRequest, callback?: (err: AWSError, data: CloudDirectory.Types.ListFacetAttributesResponse) => void): Request<CloudDirectory.Types.ListFacetAttributesResponse, AWSError>;
314 /**
315 * Retrieves attributes attached to the facet.
316 */
317 listFacetAttributes(callback?: (err: AWSError, data: CloudDirectory.Types.ListFacetAttributesResponse) => void): Request<CloudDirectory.Types.ListFacetAttributesResponse, AWSError>;
318 /**
319 * Retrieves the names of facets that exist in a schema.
320 */
321 listFacetNames(params: CloudDirectory.Types.ListFacetNamesRequest, callback?: (err: AWSError, data: CloudDirectory.Types.ListFacetNamesResponse) => void): Request<CloudDirectory.Types.ListFacetNamesResponse, AWSError>;
322 /**
323 * Retrieves the names of facets that exist in a schema.
324 */
325 listFacetNames(callback?: (err: AWSError, data: CloudDirectory.Types.ListFacetNamesResponse) => void): Request<CloudDirectory.Types.ListFacetNamesResponse, AWSError>;
326 /**
327 * Returns a paginated list of all the incoming TypedLinkSpecifier information for an object. It also supports filtering by typed link facet and identity attributes. For more information, see Typed Links.
328 */
329 listIncomingTypedLinks(params: CloudDirectory.Types.ListIncomingTypedLinksRequest, callback?: (err: AWSError, data: CloudDirectory.Types.ListIncomingTypedLinksResponse) => void): Request<CloudDirectory.Types.ListIncomingTypedLinksResponse, AWSError>;
330 /**
331 * Returns a paginated list of all the incoming TypedLinkSpecifier information for an object. It also supports filtering by typed link facet and identity attributes. For more information, see Typed Links.
332 */
333 listIncomingTypedLinks(callback?: (err: AWSError, data: CloudDirectory.Types.ListIncomingTypedLinksResponse) => void): Request<CloudDirectory.Types.ListIncomingTypedLinksResponse, AWSError>;
334 /**
335 * Lists objects attached to the specified index.
336 */
337 listIndex(params: CloudDirectory.Types.ListIndexRequest, callback?: (err: AWSError, data: CloudDirectory.Types.ListIndexResponse) => void): Request<CloudDirectory.Types.ListIndexResponse, AWSError>;
338 /**
339 * Lists objects attached to the specified index.
340 */
341 listIndex(callback?: (err: AWSError, data: CloudDirectory.Types.ListIndexResponse) => void): Request<CloudDirectory.Types.ListIndexResponse, AWSError>;
342 /**
343 * Lists the major version families of each managed schema. If a major version ARN is provided as SchemaArn, the minor version revisions in that family are listed instead.
344 */
345 listManagedSchemaArns(params: CloudDirectory.Types.ListManagedSchemaArnsRequest, callback?: (err: AWSError, data: CloudDirectory.Types.ListManagedSchemaArnsResponse) => void): Request<CloudDirectory.Types.ListManagedSchemaArnsResponse, AWSError>;
346 /**
347 * Lists the major version families of each managed schema. If a major version ARN is provided as SchemaArn, the minor version revisions in that family are listed instead.
348 */
349 listManagedSchemaArns(callback?: (err: AWSError, data: CloudDirectory.Types.ListManagedSchemaArnsResponse) => void): Request<CloudDirectory.Types.ListManagedSchemaArnsResponse, AWSError>;
350 /**
351 * Lists all attributes that are associated with an object.
352 */
353 listObjectAttributes(params: CloudDirectory.Types.ListObjectAttributesRequest, callback?: (err: AWSError, data: CloudDirectory.Types.ListObjectAttributesResponse) => void): Request<CloudDirectory.Types.ListObjectAttributesResponse, AWSError>;
354 /**
355 * Lists all attributes that are associated with an object.
356 */
357 listObjectAttributes(callback?: (err: AWSError, data: CloudDirectory.Types.ListObjectAttributesResponse) => void): Request<CloudDirectory.Types.ListObjectAttributesResponse, AWSError>;
358 /**
359 * Returns a paginated list of child objects that are associated with a given object.
360 */
361 listObjectChildren(params: CloudDirectory.Types.ListObjectChildrenRequest, callback?: (err: AWSError, data: CloudDirectory.Types.ListObjectChildrenResponse) => void): Request<CloudDirectory.Types.ListObjectChildrenResponse, AWSError>;
362 /**
363 * Returns a paginated list of child objects that are associated with a given object.
364 */
365 listObjectChildren(callback?: (err: AWSError, data: CloudDirectory.Types.ListObjectChildrenResponse) => void): Request<CloudDirectory.Types.ListObjectChildrenResponse, AWSError>;
366 /**
367 * Retrieves all available parent paths for any object type such as node, leaf node, policy node, and index node objects. For more information about objects, see Directory Structure. Use this API to evaluate all parents for an object. The call returns all objects from the root of the directory up to the requested object. The API returns the number of paths based on user-defined MaxResults, in case there are multiple paths to the parent. The order of the paths and nodes returned is consistent among multiple API calls unless the objects are deleted or moved. Paths not leading to the directory root are ignored from the target object.
368 */
369 listObjectParentPaths(params: CloudDirectory.Types.ListObjectParentPathsRequest, callback?: (err: AWSError, data: CloudDirectory.Types.ListObjectParentPathsResponse) => void): Request<CloudDirectory.Types.ListObjectParentPathsResponse, AWSError>;
370 /**
371 * Retrieves all available parent paths for any object type such as node, leaf node, policy node, and index node objects. For more information about objects, see Directory Structure. Use this API to evaluate all parents for an object. The call returns all objects from the root of the directory up to the requested object. The API returns the number of paths based on user-defined MaxResults, in case there are multiple paths to the parent. The order of the paths and nodes returned is consistent among multiple API calls unless the objects are deleted or moved. Paths not leading to the directory root are ignored from the target object.
372 */
373 listObjectParentPaths(callback?: (err: AWSError, data: CloudDirectory.Types.ListObjectParentPathsResponse) => void): Request<CloudDirectory.Types.ListObjectParentPathsResponse, AWSError>;
374 /**
375 * Lists parent objects that are associated with a given object in pagination fashion.
376 */
377 listObjectParents(params: CloudDirectory.Types.ListObjectParentsRequest, callback?: (err: AWSError, data: CloudDirectory.Types.ListObjectParentsResponse) => void): Request<CloudDirectory.Types.ListObjectParentsResponse, AWSError>;
378 /**
379 * Lists parent objects that are associated with a given object in pagination fashion.
380 */
381 listObjectParents(callback?: (err: AWSError, data: CloudDirectory.Types.ListObjectParentsResponse) => void): Request<CloudDirectory.Types.ListObjectParentsResponse, AWSError>;
382 /**
383 * Returns policies attached to an object in pagination fashion.
384 */
385 listObjectPolicies(params: CloudDirectory.Types.ListObjectPoliciesRequest, callback?: (err: AWSError, data: CloudDirectory.Types.ListObjectPoliciesResponse) => void): Request<CloudDirectory.Types.ListObjectPoliciesResponse, AWSError>;
386 /**
387 * Returns policies attached to an object in pagination fashion.
388 */
389 listObjectPolicies(callback?: (err: AWSError, data: CloudDirectory.Types.ListObjectPoliciesResponse) => void): Request<CloudDirectory.Types.ListObjectPoliciesResponse, AWSError>;
390 /**
391 * Returns a paginated list of all the outgoing TypedLinkSpecifier information for an object. It also supports filtering by typed link facet and identity attributes. For more information, see Typed Links.
392 */
393 listOutgoingTypedLinks(params: CloudDirectory.Types.ListOutgoingTypedLinksRequest, callback?: (err: AWSError, data: CloudDirectory.Types.ListOutgoingTypedLinksResponse) => void): Request<CloudDirectory.Types.ListOutgoingTypedLinksResponse, AWSError>;
394 /**
395 * Returns a paginated list of all the outgoing TypedLinkSpecifier information for an object. It also supports filtering by typed link facet and identity attributes. For more information, see Typed Links.
396 */
397 listOutgoingTypedLinks(callback?: (err: AWSError, data: CloudDirectory.Types.ListOutgoingTypedLinksResponse) => void): Request<CloudDirectory.Types.ListOutgoingTypedLinksResponse, AWSError>;
398 /**
399 * Returns all of the ObjectIdentifiers to which a given policy is attached.
400 */
401 listPolicyAttachments(params: CloudDirectory.Types.ListPolicyAttachmentsRequest, callback?: (err: AWSError, data: CloudDirectory.Types.ListPolicyAttachmentsResponse) => void): Request<CloudDirectory.Types.ListPolicyAttachmentsResponse, AWSError>;
402 /**
403 * Returns all of the ObjectIdentifiers to which a given policy is attached.
404 */
405 listPolicyAttachments(callback?: (err: AWSError, data: CloudDirectory.Types.ListPolicyAttachmentsResponse) => void): Request<CloudDirectory.Types.ListPolicyAttachmentsResponse, AWSError>;
406 /**
407 * Lists the major version families of each published schema. If a major version ARN is provided as SchemaArn, the minor version revisions in that family are listed instead.
408 */
409 listPublishedSchemaArns(params: CloudDirectory.Types.ListPublishedSchemaArnsRequest, callback?: (err: AWSError, data: CloudDirectory.Types.ListPublishedSchemaArnsResponse) => void): Request<CloudDirectory.Types.ListPublishedSchemaArnsResponse, AWSError>;
410 /**
411 * Lists the major version families of each published schema. If a major version ARN is provided as SchemaArn, the minor version revisions in that family are listed instead.
412 */
413 listPublishedSchemaArns(callback?: (err: AWSError, data: CloudDirectory.Types.ListPublishedSchemaArnsResponse) => void): Request<CloudDirectory.Types.ListPublishedSchemaArnsResponse, AWSError>;
414 /**
415 * Returns tags for a resource. Tagging is currently supported only for directories with a limit of 50 tags per directory. All 50 tags are returned for a given directory with this API call.
416 */
417 listTagsForResource(params: CloudDirectory.Types.ListTagsForResourceRequest, callback?: (err: AWSError, data: CloudDirectory.Types.ListTagsForResourceResponse) => void): Request<CloudDirectory.Types.ListTagsForResourceResponse, AWSError>;
418 /**
419 * Returns tags for a resource. Tagging is currently supported only for directories with a limit of 50 tags per directory. All 50 tags are returned for a given directory with this API call.
420 */
421 listTagsForResource(callback?: (err: AWSError, data: CloudDirectory.Types.ListTagsForResourceResponse) => void): Request<CloudDirectory.Types.ListTagsForResourceResponse, AWSError>;
422 /**
423 * Returns a paginated list of all attribute definitions for a particular TypedLinkFacet. For more information, see Typed Links.
424 */
425 listTypedLinkFacetAttributes(params: CloudDirectory.Types.ListTypedLinkFacetAttributesRequest, callback?: (err: AWSError, data: CloudDirectory.Types.ListTypedLinkFacetAttributesResponse) => void): Request<CloudDirectory.Types.ListTypedLinkFacetAttributesResponse, AWSError>;
426 /**
427 * Returns a paginated list of all attribute definitions for a particular TypedLinkFacet. For more information, see Typed Links.
428 */
429 listTypedLinkFacetAttributes(callback?: (err: AWSError, data: CloudDirectory.Types.ListTypedLinkFacetAttributesResponse) => void): Request<CloudDirectory.Types.ListTypedLinkFacetAttributesResponse, AWSError>;
430 /**
431 * Returns a paginated list of TypedLink facet names for a particular schema. For more information, see Typed Links.
432 */
433 listTypedLinkFacetNames(params: CloudDirectory.Types.ListTypedLinkFacetNamesRequest, callback?: (err: AWSError, data: CloudDirectory.Types.ListTypedLinkFacetNamesResponse) => void): Request<CloudDirectory.Types.ListTypedLinkFacetNamesResponse, AWSError>;
434 /**
435 * Returns a paginated list of TypedLink facet names for a particular schema. For more information, see Typed Links.
436 */
437 listTypedLinkFacetNames(callback?: (err: AWSError, data: CloudDirectory.Types.ListTypedLinkFacetNamesResponse) => void): Request<CloudDirectory.Types.ListTypedLinkFacetNamesResponse, AWSError>;
438 /**
439 * Lists all policies from the root of the Directory to the object specified. If there are no policies present, an empty list is returned. If policies are present, and if some objects don't have the policies attached, it returns the ObjectIdentifier for such objects. If policies are present, it returns ObjectIdentifier, policyId, and policyType. Paths that don't lead to the root from the target object are ignored. For more information, see Policies.
440 */
441 lookupPolicy(params: CloudDirectory.Types.LookupPolicyRequest, callback?: (err: AWSError, data: CloudDirectory.Types.LookupPolicyResponse) => void): Request<CloudDirectory.Types.LookupPolicyResponse, AWSError>;
442 /**
443 * Lists all policies from the root of the Directory to the object specified. If there are no policies present, an empty list is returned. If policies are present, and if some objects don't have the policies attached, it returns the ObjectIdentifier for such objects. If policies are present, it returns ObjectIdentifier, policyId, and policyType. Paths that don't lead to the root from the target object are ignored. For more information, see Policies.
444 */
445 lookupPolicy(callback?: (err: AWSError, data: CloudDirectory.Types.LookupPolicyResponse) => void): Request<CloudDirectory.Types.LookupPolicyResponse, AWSError>;
446 /**
447 * Publishes a development schema with a major version and a recommended minor version.
448 */
449 publishSchema(params: CloudDirectory.Types.PublishSchemaRequest, callback?: (err: AWSError, data: CloudDirectory.Types.PublishSchemaResponse) => void): Request<CloudDirectory.Types.PublishSchemaResponse, AWSError>;
450 /**
451 * Publishes a development schema with a major version and a recommended minor version.
452 */
453 publishSchema(callback?: (err: AWSError, data: CloudDirectory.Types.PublishSchemaResponse) => void): Request<CloudDirectory.Types.PublishSchemaResponse, AWSError>;
454 /**
455 * Allows a schema to be updated using JSON upload. Only available for development schemas. See JSON Schema Format for more information.
456 */
457 putSchemaFromJson(params: CloudDirectory.Types.PutSchemaFromJsonRequest, callback?: (err: AWSError, data: CloudDirectory.Types.PutSchemaFromJsonResponse) => void): Request<CloudDirectory.Types.PutSchemaFromJsonResponse, AWSError>;
458 /**
459 * Allows a schema to be updated using JSON upload. Only available for development schemas. See JSON Schema Format for more information.
460 */
461 putSchemaFromJson(callback?: (err: AWSError, data: CloudDirectory.Types.PutSchemaFromJsonResponse) => void): Request<CloudDirectory.Types.PutSchemaFromJsonResponse, AWSError>;
462 /**
463 * Removes the specified facet from the specified object.
464 */
465 removeFacetFromObject(params: CloudDirectory.Types.RemoveFacetFromObjectRequest, callback?: (err: AWSError, data: CloudDirectory.Types.RemoveFacetFromObjectResponse) => void): Request<CloudDirectory.Types.RemoveFacetFromObjectResponse, AWSError>;
466 /**
467 * Removes the specified facet from the specified object.
468 */
469 removeFacetFromObject(callback?: (err: AWSError, data: CloudDirectory.Types.RemoveFacetFromObjectResponse) => void): Request<CloudDirectory.Types.RemoveFacetFromObjectResponse, AWSError>;
470 /**
471 * An API operation for adding tags to a resource.
472 */
473 tagResource(params: CloudDirectory.Types.TagResourceRequest, callback?: (err: AWSError, data: CloudDirectory.Types.TagResourceResponse) => void): Request<CloudDirectory.Types.TagResourceResponse, AWSError>;
474 /**
475 * An API operation for adding tags to a resource.
476 */
477 tagResource(callback?: (err: AWSError, data: CloudDirectory.Types.TagResourceResponse) => void): Request<CloudDirectory.Types.TagResourceResponse, AWSError>;
478 /**
479 * An API operation for removing tags from a resource.
480 */
481 untagResource(params: CloudDirectory.Types.UntagResourceRequest, callback?: (err: AWSError, data: CloudDirectory.Types.UntagResourceResponse) => void): Request<CloudDirectory.Types.UntagResourceResponse, AWSError>;
482 /**
483 * An API operation for removing tags from a resource.
484 */
485 untagResource(callback?: (err: AWSError, data: CloudDirectory.Types.UntagResourceResponse) => void): Request<CloudDirectory.Types.UntagResourceResponse, AWSError>;
486 /**
487 * Does the following: Adds new Attributes, Rules, or ObjectTypes. Updates existing Attributes, Rules, or ObjectTypes. Deletes existing Attributes, Rules, or ObjectTypes.
488 */
489 updateFacet(params: CloudDirectory.Types.UpdateFacetRequest, callback?: (err: AWSError, data: CloudDirectory.Types.UpdateFacetResponse) => void): Request<CloudDirectory.Types.UpdateFacetResponse, AWSError>;
490 /**
491 * Does the following: Adds new Attributes, Rules, or ObjectTypes. Updates existing Attributes, Rules, or ObjectTypes. Deletes existing Attributes, Rules, or ObjectTypes.
492 */
493 updateFacet(callback?: (err: AWSError, data: CloudDirectory.Types.UpdateFacetResponse) => void): Request<CloudDirectory.Types.UpdateFacetResponse, AWSError>;
494 /**
495 * Updates a given typed link’s attributes. Attributes to be updated must not contribute to the typed link’s identity, as defined by its IdentityAttributeOrder.
496 */
497 updateLinkAttributes(params: CloudDirectory.Types.UpdateLinkAttributesRequest, callback?: (err: AWSError, data: CloudDirectory.Types.UpdateLinkAttributesResponse) => void): Request<CloudDirectory.Types.UpdateLinkAttributesResponse, AWSError>;
498 /**
499 * Updates a given typed link’s attributes. Attributes to be updated must not contribute to the typed link’s identity, as defined by its IdentityAttributeOrder.
500 */
501 updateLinkAttributes(callback?: (err: AWSError, data: CloudDirectory.Types.UpdateLinkAttributesResponse) => void): Request<CloudDirectory.Types.UpdateLinkAttributesResponse, AWSError>;
502 /**
503 * Updates a given object's attributes.
504 */
505 updateObjectAttributes(params: CloudDirectory.Types.UpdateObjectAttributesRequest, callback?: (err: AWSError, data: CloudDirectory.Types.UpdateObjectAttributesResponse) => void): Request<CloudDirectory.Types.UpdateObjectAttributesResponse, AWSError>;
506 /**
507 * Updates a given object's attributes.
508 */
509 updateObjectAttributes(callback?: (err: AWSError, data: CloudDirectory.Types.UpdateObjectAttributesResponse) => void): Request<CloudDirectory.Types.UpdateObjectAttributesResponse, AWSError>;
510 /**
511 * Updates the schema name with a new name. Only development schema names can be updated.
512 */
513 updateSchema(params: CloudDirectory.Types.UpdateSchemaRequest, callback?: (err: AWSError, data: CloudDirectory.Types.UpdateSchemaResponse) => void): Request<CloudDirectory.Types.UpdateSchemaResponse, AWSError>;
514 /**
515 * Updates the schema name with a new name. Only development schema names can be updated.
516 */
517 updateSchema(callback?: (err: AWSError, data: CloudDirectory.Types.UpdateSchemaResponse) => void): Request<CloudDirectory.Types.UpdateSchemaResponse, AWSError>;
518 /**
519 * Updates a TypedLinkFacet. For more information, see Typed Links.
520 */
521 updateTypedLinkFacet(params: CloudDirectory.Types.UpdateTypedLinkFacetRequest, callback?: (err: AWSError, data: CloudDirectory.Types.UpdateTypedLinkFacetResponse) => void): Request<CloudDirectory.Types.UpdateTypedLinkFacetResponse, AWSError>;
522 /**
523 * Updates a TypedLinkFacet. For more information, see Typed Links.
524 */
525 updateTypedLinkFacet(callback?: (err: AWSError, data: CloudDirectory.Types.UpdateTypedLinkFacetResponse) => void): Request<CloudDirectory.Types.UpdateTypedLinkFacetResponse, AWSError>;
526 /**
527 * Upgrades a single directory in-place using the PublishedSchemaArn with schema updates found in MinorVersion. Backwards-compatible minor version upgrades are instantaneously available for readers on all objects in the directory. Note: This is a synchronous API call and upgrades only one schema on a given directory per call. To upgrade multiple directories from one schema, you would need to call this API on each directory.
528 */
529 upgradeAppliedSchema(params: CloudDirectory.Types.UpgradeAppliedSchemaRequest, callback?: (err: AWSError, data: CloudDirectory.Types.UpgradeAppliedSchemaResponse) => void): Request<CloudDirectory.Types.UpgradeAppliedSchemaResponse, AWSError>;
530 /**
531 * Upgrades a single directory in-place using the PublishedSchemaArn with schema updates found in MinorVersion. Backwards-compatible minor version upgrades are instantaneously available for readers on all objects in the directory. Note: This is a synchronous API call and upgrades only one schema on a given directory per call. To upgrade multiple directories from one schema, you would need to call this API on each directory.
532 */
533 upgradeAppliedSchema(callback?: (err: AWSError, data: CloudDirectory.Types.UpgradeAppliedSchemaResponse) => void): Request<CloudDirectory.Types.UpgradeAppliedSchemaResponse, AWSError>;
534 /**
535 * Upgrades a published schema under a new minor version revision using the current contents of DevelopmentSchemaArn.
536 */
537 upgradePublishedSchema(params: CloudDirectory.Types.UpgradePublishedSchemaRequest, callback?: (err: AWSError, data: CloudDirectory.Types.UpgradePublishedSchemaResponse) => void): Request<CloudDirectory.Types.UpgradePublishedSchemaResponse, AWSError>;
538 /**
539 * Upgrades a published schema under a new minor version revision using the current contents of DevelopmentSchemaArn.
540 */
541 upgradePublishedSchema(callback?: (err: AWSError, data: CloudDirectory.Types.UpgradePublishedSchemaResponse) => void): Request<CloudDirectory.Types.UpgradePublishedSchemaResponse, AWSError>;
542}
543declare namespace CloudDirectory {
544 export interface AddFacetToObjectRequest {
545 /**
546 * The Amazon Resource Name (ARN) that is associated with the Directory where the object resides. For more information, see arns.
547 */
548 DirectoryArn: Arn;
549 /**
550 * Identifiers for the facet that you are adding to the object. See SchemaFacet for details.
551 */
552 SchemaFacet: SchemaFacet;
553 /**
554 * Attributes on the facet that you are adding to the object.
555 */
556 ObjectAttributeList?: AttributeKeyAndValueList;
557 /**
558 * A reference to the object you are adding the specified facet to.
559 */
560 ObjectReference: ObjectReference;
561 }
562 export interface AddFacetToObjectResponse {
563 }
564 export interface ApplySchemaRequest {
565 /**
566 * Published schema Amazon Resource Name (ARN) that needs to be copied. For more information, see arns.
567 */
568 PublishedSchemaArn: Arn;
569 /**
570 * The Amazon Resource Name (ARN) that is associated with the Directory into which the schema is copied. For more information, see arns.
571 */
572 DirectoryArn: Arn;
573 }
574 export interface ApplySchemaResponse {
575 /**
576 * The applied schema ARN that is associated with the copied schema in the Directory. You can use this ARN to describe the schema information applied on this directory. For more information, see arns.
577 */
578 AppliedSchemaArn?: Arn;
579 /**
580 * The ARN that is associated with the Directory. For more information, see arns.
581 */
582 DirectoryArn?: Arn;
583 }
584 export type Arn = string;
585 export type Arns = Arn[];
586 export interface AttachObjectRequest {
587 /**
588 * Amazon Resource Name (ARN) that is associated with the Directory where both objects reside. For more information, see arns.
589 */
590 DirectoryArn: Arn;
591 /**
592 * The parent object reference.
593 */
594 ParentReference: ObjectReference;
595 /**
596 * The child object reference to be attached to the object.
597 */
598 ChildReference: ObjectReference;
599 /**
600 * The link name with which the child object is attached to the parent.
601 */
602 LinkName: LinkName;
603 }
604 export interface AttachObjectResponse {
605 /**
606 * The attached ObjectIdentifier, which is the child ObjectIdentifier.
607 */
608 AttachedObjectIdentifier?: ObjectIdentifier;
609 }
610 export interface AttachPolicyRequest {
611 /**
612 * The Amazon Resource Name (ARN) that is associated with the Directory where both objects reside. For more information, see arns.
613 */
614 DirectoryArn: Arn;
615 /**
616 * The reference that is associated with the policy object.
617 */
618 PolicyReference: ObjectReference;
619 /**
620 * The reference that identifies the object to which the policy will be attached.
621 */
622 ObjectReference: ObjectReference;
623 }
624 export interface AttachPolicyResponse {
625 }
626 export interface AttachToIndexRequest {
627 /**
628 * The Amazon Resource Name (ARN) of the directory where the object and index exist.
629 */
630 DirectoryArn: Arn;
631 /**
632 * A reference to the index that you are attaching the object to.
633 */
634 IndexReference: ObjectReference;
635 /**
636 * A reference to the object that you are attaching to the index.
637 */
638 TargetReference: ObjectReference;
639 }
640 export interface AttachToIndexResponse {
641 /**
642 * The ObjectIdentifier of the object that was attached to the index.
643 */
644 AttachedObjectIdentifier?: ObjectIdentifier;
645 }
646 export interface AttachTypedLinkRequest {
647 /**
648 * The Amazon Resource Name (ARN) of the directory where you want to attach the typed link.
649 */
650 DirectoryArn: Arn;
651 /**
652 * Identifies the source object that the typed link will attach to.
653 */
654 SourceObjectReference: ObjectReference;
655 /**
656 * Identifies the target object that the typed link will attach to.
657 */
658 TargetObjectReference: ObjectReference;
659 /**
660 * Identifies the typed link facet that is associated with the typed link.
661 */
662 TypedLinkFacet: TypedLinkSchemaAndFacetName;
663 /**
664 * A set of attributes that are associated with the typed link.
665 */
666 Attributes: AttributeNameAndValueList;
667 }
668 export interface AttachTypedLinkResponse {
669 /**
670 * Returns a typed link specifier as output.
671 */
672 TypedLinkSpecifier?: TypedLinkSpecifier;
673 }
674 export interface AttributeKey {
675 /**
676 * The Amazon Resource Name (ARN) of the schema that contains the facet and attribute.
677 */
678 SchemaArn: Arn;
679 /**
680 * The name of the facet that the attribute exists within.
681 */
682 FacetName: FacetName;
683 /**
684 * The name of the attribute.
685 */
686 Name: AttributeName;
687 }
688 export interface AttributeKeyAndValue {
689 /**
690 * The key of the attribute.
691 */
692 Key: AttributeKey;
693 /**
694 * The value of the attribute.
695 */
696 Value: TypedAttributeValue;
697 }
698 export type AttributeKeyAndValueList = AttributeKeyAndValue[];
699 export type AttributeKeyList = AttributeKey[];
700 export type AttributeName = string;
701 export interface AttributeNameAndValue {
702 /**
703 * The attribute name of the typed link.
704 */
705 AttributeName: AttributeName;
706 /**
707 * The value for the typed link.
708 */
709 Value: TypedAttributeValue;
710 }
711 export type AttributeNameAndValueList = AttributeNameAndValue[];
712 export type AttributeNameList = AttributeName[];
713 export interface BatchAddFacetToObject {
714 /**
715 * Represents the facet being added to the object.
716 */
717 SchemaFacet: SchemaFacet;
718 /**
719 * The attributes to set on the object.
720 */
721 ObjectAttributeList: AttributeKeyAndValueList;
722 /**
723 * A reference to the object being mutated.
724 */
725 ObjectReference: ObjectReference;
726 }
727 export interface BatchAddFacetToObjectResponse {
728 }
729 export interface BatchAttachObject {
730 /**
731 * The parent object reference.
732 */
733 ParentReference: ObjectReference;
734 /**
735 * The child object reference that is to be attached to the object.
736 */
737 ChildReference: ObjectReference;
738 /**
739 * The name of the link.
740 */
741 LinkName: LinkName;
742 }
743 export interface BatchAttachObjectResponse {
744 /**
745 * The ObjectIdentifier of the object that has been attached.
746 */
747 attachedObjectIdentifier?: ObjectIdentifier;
748 }
749 export interface BatchAttachPolicy {
750 /**
751 * The reference that is associated with the policy object.
752 */
753 PolicyReference: ObjectReference;
754 /**
755 * The reference that identifies the object to which the policy will be attached.
756 */
757 ObjectReference: ObjectReference;
758 }
759 export interface BatchAttachPolicyResponse {
760 }
761 export interface BatchAttachToIndex {
762 /**
763 * A reference to the index that you are attaching the object to.
764 */
765 IndexReference: ObjectReference;
766 /**
767 * A reference to the object that you are attaching to the index.
768 */
769 TargetReference: ObjectReference;
770 }
771 export interface BatchAttachToIndexResponse {
772 /**
773 * The ObjectIdentifier of the object that was attached to the index.
774 */
775 AttachedObjectIdentifier?: ObjectIdentifier;
776 }
777 export interface BatchAttachTypedLink {
778 /**
779 * Identifies the source object that the typed link will attach to.
780 */
781 SourceObjectReference: ObjectReference;
782 /**
783 * Identifies the target object that the typed link will attach to.
784 */
785 TargetObjectReference: ObjectReference;
786 /**
787 * Identifies the typed link facet that is associated with the typed link.
788 */
789 TypedLinkFacet: TypedLinkSchemaAndFacetName;
790 /**
791 * A set of attributes that are associated with the typed link.
792 */
793 Attributes: AttributeNameAndValueList;
794 }
795 export interface BatchAttachTypedLinkResponse {
796 /**
797 * Returns a typed link specifier as output.
798 */
799 TypedLinkSpecifier?: TypedLinkSpecifier;
800 }
801 export interface BatchCreateIndex {
802 /**
803 * Specifies the attributes that should be indexed on. Currently only a single attribute is supported.
804 */
805 OrderedIndexedAttributeList: AttributeKeyList;
806 /**
807 * Indicates whether the attribute that is being indexed has unique values or not.
808 */
809 IsUnique: Bool;
810 /**
811 * A reference to the parent object that contains the index object.
812 */
813 ParentReference?: ObjectReference;
814 /**
815 * The name of the link between the parent object and the index object.
816 */
817 LinkName?: LinkName;
818 /**
819 * The batch reference name. See Transaction Support for more information.
820 */
821 BatchReferenceName?: BatchReferenceName;
822 }
823 export interface BatchCreateIndexResponse {
824 /**
825 * The ObjectIdentifier of the index created by this operation.
826 */
827 ObjectIdentifier?: ObjectIdentifier;
828 }
829 export interface BatchCreateObject {
830 /**
831 * A list of FacetArns that will be associated with the object. For more information, see arns.
832 */
833 SchemaFacet: SchemaFacetList;
834 /**
835 * An attribute map, which contains an attribute ARN as the key and attribute value as the map value.
836 */
837 ObjectAttributeList: AttributeKeyAndValueList;
838 /**
839 * If specified, the parent reference to which this object will be attached.
840 */
841 ParentReference?: ObjectReference;
842 /**
843 * The name of the link.
844 */
845 LinkName?: LinkName;
846 /**
847 * The batch reference name. See Transaction Support for more information.
848 */
849 BatchReferenceName?: BatchReferenceName;
850 }
851 export interface BatchCreateObjectResponse {
852 /**
853 * The ID that is associated with the object.
854 */
855 ObjectIdentifier?: ObjectIdentifier;
856 }
857 export interface BatchDeleteObject {
858 /**
859 * The reference that identifies the object.
860 */
861 ObjectReference: ObjectReference;
862 }
863 export interface BatchDeleteObjectResponse {
864 }
865 export interface BatchDetachFromIndex {
866 /**
867 * A reference to the index object.
868 */
869 IndexReference: ObjectReference;
870 /**
871 * A reference to the object being detached from the index.
872 */
873 TargetReference: ObjectReference;
874 }
875 export interface BatchDetachFromIndexResponse {
876 /**
877 * The ObjectIdentifier of the object that was detached from the index.
878 */
879 DetachedObjectIdentifier?: ObjectIdentifier;
880 }
881 export interface BatchDetachObject {
882 /**
883 * Parent reference from which the object with the specified link name is detached.
884 */
885 ParentReference: ObjectReference;
886 /**
887 * The name of the link.
888 */
889 LinkName: LinkName;
890 /**
891 * The batch reference name. See Transaction Support for more information.
892 */
893 BatchReferenceName?: BatchReferenceName;
894 }
895 export interface BatchDetachObjectResponse {
896 /**
897 * The ObjectIdentifier of the detached object.
898 */
899 detachedObjectIdentifier?: ObjectIdentifier;
900 }
901 export interface BatchDetachPolicy {
902 /**
903 * Reference that identifies the policy object.
904 */
905 PolicyReference: ObjectReference;
906 /**
907 * Reference that identifies the object whose policy object will be detached.
908 */
909 ObjectReference: ObjectReference;
910 }
911 export interface BatchDetachPolicyResponse {
912 }
913 export interface BatchDetachTypedLink {
914 /**
915 * Used to accept a typed link specifier as input.
916 */
917 TypedLinkSpecifier: TypedLinkSpecifier;
918 }
919 export interface BatchDetachTypedLinkResponse {
920 }
921 export interface BatchGetLinkAttributes {
922 /**
923 * Allows a typed link specifier to be accepted as input.
924 */
925 TypedLinkSpecifier: TypedLinkSpecifier;
926 /**
927 * A list of attribute names whose values will be retrieved.
928 */
929 AttributeNames: AttributeNameList;
930 }
931 export interface BatchGetLinkAttributesResponse {
932 /**
933 * The attributes that are associated with the typed link.
934 */
935 Attributes?: AttributeKeyAndValueList;
936 }
937 export interface BatchGetObjectAttributes {
938 /**
939 * Reference that identifies the object whose attributes will be retrieved.
940 */
941 ObjectReference: ObjectReference;
942 /**
943 * Identifier for the facet whose attributes will be retrieved. See SchemaFacet for details.
944 */
945 SchemaFacet: SchemaFacet;
946 /**
947 * List of attribute names whose values will be retrieved.
948 */
949 AttributeNames: AttributeNameList;
950 }
951 export interface BatchGetObjectAttributesResponse {
952 /**
953 * The attribute values that are associated with an object.
954 */
955 Attributes?: AttributeKeyAndValueList;
956 }
957 export interface BatchGetObjectInformation {
958 /**
959 * A reference to the object.
960 */
961 ObjectReference: ObjectReference;
962 }
963 export interface BatchGetObjectInformationResponse {
964 /**
965 * The facets attached to the specified object.
966 */
967 SchemaFacets?: SchemaFacetList;
968 /**
969 * The ObjectIdentifier of the specified object.
970 */
971 ObjectIdentifier?: ObjectIdentifier;
972 }
973 export interface BatchListAttachedIndices {
974 /**
975 * A reference to the object that has indices attached.
976 */
977 TargetReference: ObjectReference;
978 /**
979 * The pagination token.
980 */
981 NextToken?: NextToken;
982 /**
983 * The maximum number of results to retrieve.
984 */
985 MaxResults?: NumberResults;
986 }
987 export interface BatchListAttachedIndicesResponse {
988 /**
989 * The indices attached to the specified object.
990 */
991 IndexAttachments?: IndexAttachmentList;
992 /**
993 * The pagination token.
994 */
995 NextToken?: NextToken;
996 }
997 export interface BatchListIncomingTypedLinks {
998 /**
999 * The reference that identifies the object whose attributes will be listed.
1000 */
1001 ObjectReference: ObjectReference;
1002 /**
1003 * Provides range filters for multiple attributes. When providing ranges to typed link selection, any inexact ranges must be specified at the end. Any attributes that do not have a range specified are presumed to match the entire range.
1004 */
1005 FilterAttributeRanges?: TypedLinkAttributeRangeList;
1006 /**
1007 * Filters are interpreted in the order of the attributes on the typed link facet, not the order in which they are supplied to any API calls.
1008 */
1009 FilterTypedLink?: TypedLinkSchemaAndFacetName;
1010 /**
1011 * The pagination token.
1012 */
1013 NextToken?: NextToken;
1014 /**
1015 * The maximum number of results to retrieve.
1016 */
1017 MaxResults?: NumberResults;
1018 }
1019 export interface BatchListIncomingTypedLinksResponse {
1020 /**
1021 * Returns one or more typed link specifiers as output.
1022 */
1023 LinkSpecifiers?: TypedLinkSpecifierList;
1024 /**
1025 * The pagination token.
1026 */
1027 NextToken?: NextToken;
1028 }
1029 export interface BatchListIndex {
1030 /**
1031 * Specifies the ranges of indexed values that you want to query.
1032 */
1033 RangesOnIndexedValues?: ObjectAttributeRangeList;
1034 /**
1035 * The reference to the index to list.
1036 */
1037 IndexReference: ObjectReference;
1038 /**
1039 * The maximum number of results to retrieve.
1040 */
1041 MaxResults?: NumberResults;
1042 /**
1043 * The pagination token.
1044 */
1045 NextToken?: NextToken;
1046 }
1047 export interface BatchListIndexResponse {
1048 /**
1049 * The objects and indexed values attached to the index.
1050 */
1051 IndexAttachments?: IndexAttachmentList;
1052 /**
1053 * The pagination token.
1054 */
1055 NextToken?: NextToken;
1056 }
1057 export interface BatchListObjectAttributes {
1058 /**
1059 * Reference of the object whose attributes need to be listed.
1060 */
1061 ObjectReference: ObjectReference;
1062 /**
1063 * The pagination token.
1064 */
1065 NextToken?: NextToken;
1066 /**
1067 * The maximum number of items to be retrieved in a single call. This is an approximate number.
1068 */
1069 MaxResults?: NumberResults;
1070 /**
1071 * Used to filter the list of object attributes that are associated with a certain facet.
1072 */
1073 FacetFilter?: SchemaFacet;
1074 }
1075 export interface BatchListObjectAttributesResponse {
1076 /**
1077 * The attributes map that is associated with the object. AttributeArn is the key; attribute value is the value.
1078 */
1079 Attributes?: AttributeKeyAndValueList;
1080 /**
1081 * The pagination token.
1082 */
1083 NextToken?: NextToken;
1084 }
1085 export interface BatchListObjectChildren {
1086 /**
1087 * Reference of the object for which child objects are being listed.
1088 */
1089 ObjectReference: ObjectReference;
1090 /**
1091 * The pagination token.
1092 */
1093 NextToken?: NextToken;
1094 /**
1095 * Maximum number of items to be retrieved in a single call. This is an approximate number.
1096 */
1097 MaxResults?: NumberResults;
1098 }
1099 export interface BatchListObjectChildrenResponse {
1100 /**
1101 * The children structure, which is a map with the key as the LinkName and ObjectIdentifier as the value.
1102 */
1103 Children?: LinkNameToObjectIdentifierMap;
1104 /**
1105 * The pagination token.
1106 */
1107 NextToken?: NextToken;
1108 }
1109 export interface BatchListObjectParentPaths {
1110 /**
1111 * The reference that identifies the object whose attributes will be listed.
1112 */
1113 ObjectReference: ObjectReference;
1114 /**
1115 * The pagination token.
1116 */
1117 NextToken?: NextToken;
1118 /**
1119 * The maximum number of results to retrieve.
1120 */
1121 MaxResults?: NumberResults;
1122 }
1123 export interface BatchListObjectParentPathsResponse {
1124 /**
1125 * Returns the path to the ObjectIdentifiers that are associated with the directory.
1126 */
1127 PathToObjectIdentifiersList?: PathToObjectIdentifiersList;
1128 /**
1129 * The pagination token.
1130 */
1131 NextToken?: NextToken;
1132 }
1133 export interface BatchListObjectParents {
1134 ObjectReference: ObjectReference;
1135 NextToken?: NextToken;
1136 MaxResults?: NumberResults;
1137 }
1138 export interface BatchListObjectParentsResponse {
1139 ParentLinks?: ObjectIdentifierAndLinkNameList;
1140 NextToken?: NextToken;
1141 }
1142 export interface BatchListObjectPolicies {
1143 /**
1144 * The reference that identifies the object whose attributes will be listed.
1145 */
1146 ObjectReference: ObjectReference;
1147 /**
1148 * The pagination token.
1149 */
1150 NextToken?: NextToken;
1151 /**
1152 * The maximum number of results to retrieve.
1153 */
1154 MaxResults?: NumberResults;
1155 }
1156 export interface BatchListObjectPoliciesResponse {
1157 /**
1158 * A list of policy ObjectIdentifiers, that are attached to the object.
1159 */
1160 AttachedPolicyIds?: ObjectIdentifierList;
1161 /**
1162 * The pagination token.
1163 */
1164 NextToken?: NextToken;
1165 }
1166 export interface BatchListOutgoingTypedLinks {
1167 /**
1168 * The reference that identifies the object whose attributes will be listed.
1169 */
1170 ObjectReference: ObjectReference;
1171 /**
1172 * Provides range filters for multiple attributes. When providing ranges to typed link selection, any inexact ranges must be specified at the end. Any attributes that do not have a range specified are presumed to match the entire range.
1173 */
1174 FilterAttributeRanges?: TypedLinkAttributeRangeList;
1175 /**
1176 * Filters are interpreted in the order of the attributes defined on the typed link facet, not the order they are supplied to any API calls.
1177 */
1178 FilterTypedLink?: TypedLinkSchemaAndFacetName;
1179 /**
1180 * The pagination token.
1181 */
1182 NextToken?: NextToken;
1183 /**
1184 * The maximum number of results to retrieve.
1185 */
1186 MaxResults?: NumberResults;
1187 }
1188 export interface BatchListOutgoingTypedLinksResponse {
1189 /**
1190 * Returns a typed link specifier as output.
1191 */
1192 TypedLinkSpecifiers?: TypedLinkSpecifierList;
1193 /**
1194 * The pagination token.
1195 */
1196 NextToken?: NextToken;
1197 }
1198 export interface BatchListPolicyAttachments {
1199 /**
1200 * The reference that identifies the policy object.
1201 */
1202 PolicyReference: ObjectReference;
1203 /**
1204 * The pagination token.
1205 */
1206 NextToken?: NextToken;
1207 /**
1208 * The maximum number of results to retrieve.
1209 */
1210 MaxResults?: NumberResults;
1211 }
1212 export interface BatchListPolicyAttachmentsResponse {
1213 /**
1214 * A list of ObjectIdentifiers to which the policy is attached.
1215 */
1216 ObjectIdentifiers?: ObjectIdentifierList;
1217 /**
1218 * The pagination token.
1219 */
1220 NextToken?: NextToken;
1221 }
1222 export interface BatchLookupPolicy {
1223 /**
1224 * Reference that identifies the object whose policies will be looked up.
1225 */
1226 ObjectReference: ObjectReference;
1227 /**
1228 * The pagination token.
1229 */
1230 NextToken?: NextToken;
1231 /**
1232 * The maximum number of results to retrieve.
1233 */
1234 MaxResults?: NumberResults;
1235 }
1236 export interface BatchLookupPolicyResponse {
1237 /**
1238 * Provides list of path to policies. Policies contain PolicyId, ObjectIdentifier, and PolicyType. For more information, see Policies.
1239 */
1240 PolicyToPathList?: PolicyToPathList;
1241 /**
1242 * The pagination token.
1243 */
1244 NextToken?: NextToken;
1245 }
1246 export interface BatchReadException {
1247 /**
1248 * A type of exception, such as InvalidArnException.
1249 */
1250 Type?: BatchReadExceptionType;
1251 /**
1252 * An exception message that is associated with the failure.
1253 */
1254 Message?: ExceptionMessage;
1255 }
1256 export type BatchReadExceptionType = "ValidationException"|"InvalidArnException"|"ResourceNotFoundException"|"InvalidNextTokenException"|"AccessDeniedException"|"NotNodeException"|"FacetValidationException"|"CannotListParentOfRootException"|"NotIndexException"|"NotPolicyException"|"DirectoryNotEnabledException"|"LimitExceededException"|"InternalServiceException"|string;
1257 export interface BatchReadOperation {
1258 /**
1259 * Lists all attributes that are associated with an object.
1260 */
1261 ListObjectAttributes?: BatchListObjectAttributes;
1262 /**
1263 * Returns a paginated list of child objects that are associated with a given object.
1264 */
1265 ListObjectChildren?: BatchListObjectChildren;
1266 /**
1267 * Lists indices attached to an object.
1268 */
1269 ListAttachedIndices?: BatchListAttachedIndices;
1270 /**
1271 * Retrieves all available parent paths for any object type such as node, leaf node, policy node, and index node objects. For more information about objects, see Directory Structure.
1272 */
1273 ListObjectParentPaths?: BatchListObjectParentPaths;
1274 /**
1275 * Retrieves metadata about an object.
1276 */
1277 GetObjectInformation?: BatchGetObjectInformation;
1278 /**
1279 * Retrieves attributes within a facet that are associated with an object.
1280 */
1281 GetObjectAttributes?: BatchGetObjectAttributes;
1282 ListObjectParents?: BatchListObjectParents;
1283 /**
1284 * Returns policies attached to an object in pagination fashion.
1285 */
1286 ListObjectPolicies?: BatchListObjectPolicies;
1287 /**
1288 * Returns all of the ObjectIdentifiers to which a given policy is attached.
1289 */
1290 ListPolicyAttachments?: BatchListPolicyAttachments;
1291 /**
1292 * Lists all policies from the root of the Directory to the object specified. If there are no policies present, an empty list is returned. If policies are present, and if some objects don't have the policies attached, it returns the ObjectIdentifier for such objects. If policies are present, it returns ObjectIdentifier, policyId, and policyType. Paths that don't lead to the root from the target object are ignored. For more information, see Policies.
1293 */
1294 LookupPolicy?: BatchLookupPolicy;
1295 /**
1296 * Lists objects attached to the specified index.
1297 */
1298 ListIndex?: BatchListIndex;
1299 /**
1300 * Returns a paginated list of all the outgoing TypedLinkSpecifier information for an object. It also supports filtering by typed link facet and identity attributes. For more information, see Typed Links.
1301 */
1302 ListOutgoingTypedLinks?: BatchListOutgoingTypedLinks;
1303 /**
1304 * Returns a paginated list of all the incoming TypedLinkSpecifier information for an object. It also supports filtering by typed link facet and identity attributes. For more information, see Typed Links.
1305 */
1306 ListIncomingTypedLinks?: BatchListIncomingTypedLinks;
1307 /**
1308 * Retrieves attributes that are associated with a typed link.
1309 */
1310 GetLinkAttributes?: BatchGetLinkAttributes;
1311 }
1312 export type BatchReadOperationList = BatchReadOperation[];
1313 export interface BatchReadOperationResponse {
1314 /**
1315 * Identifies which operation in a batch has succeeded.
1316 */
1317 SuccessfulResponse?: BatchReadSuccessfulResponse;
1318 /**
1319 * Identifies which operation in a batch has failed.
1320 */
1321 ExceptionResponse?: BatchReadException;
1322 }
1323 export type BatchReadOperationResponseList = BatchReadOperationResponse[];
1324 export interface BatchReadRequest {
1325 /**
1326 * The Amazon Resource Name (ARN) that is associated with the Directory. For more information, see arns.
1327 */
1328 DirectoryArn: Arn;
1329 /**
1330 * A list of operations that are part of the batch.
1331 */
1332 Operations: BatchReadOperationList;
1333 /**
1334 * Represents the manner and timing in which the successful write or update of an object is reflected in a subsequent read operation of that same object.
1335 */
1336 ConsistencyLevel?: ConsistencyLevel;
1337 }
1338 export interface BatchReadResponse {
1339 /**
1340 * A list of all the responses for each batch read.
1341 */
1342 Responses?: BatchReadOperationResponseList;
1343 }
1344 export interface BatchReadSuccessfulResponse {
1345 /**
1346 * Lists all attributes that are associated with an object.
1347 */
1348 ListObjectAttributes?: BatchListObjectAttributesResponse;
1349 /**
1350 * Returns a paginated list of child objects that are associated with a given object.
1351 */
1352 ListObjectChildren?: BatchListObjectChildrenResponse;
1353 /**
1354 * Retrieves metadata about an object.
1355 */
1356 GetObjectInformation?: BatchGetObjectInformationResponse;
1357 /**
1358 * Retrieves attributes within a facet that are associated with an object.
1359 */
1360 GetObjectAttributes?: BatchGetObjectAttributesResponse;
1361 /**
1362 * Lists indices attached to an object.
1363 */
1364 ListAttachedIndices?: BatchListAttachedIndicesResponse;
1365 /**
1366 * Retrieves all available parent paths for any object type such as node, leaf node, policy node, and index node objects. For more information about objects, see Directory Structure.
1367 */
1368 ListObjectParentPaths?: BatchListObjectParentPathsResponse;
1369 /**
1370 * Returns policies attached to an object in pagination fashion.
1371 */
1372 ListObjectPolicies?: BatchListObjectPoliciesResponse;
1373 /**
1374 * Returns all of the ObjectIdentifiers to which a given policy is attached.
1375 */
1376 ListPolicyAttachments?: BatchListPolicyAttachmentsResponse;
1377 /**
1378 * Lists all policies from the root of the Directory to the object specified. If there are no policies present, an empty list is returned. If policies are present, and if some objects don't have the policies attached, it returns the ObjectIdentifier for such objects. If policies are present, it returns ObjectIdentifier, policyId, and policyType. Paths that don't lead to the root from the target object are ignored. For more information, see Policies.
1379 */
1380 LookupPolicy?: BatchLookupPolicyResponse;
1381 /**
1382 * Lists objects attached to the specified index.
1383 */
1384 ListIndex?: BatchListIndexResponse;
1385 /**
1386 * Returns a paginated list of all the outgoing TypedLinkSpecifier information for an object. It also supports filtering by typed link facet and identity attributes. For more information, see Typed Links.
1387 */
1388 ListOutgoingTypedLinks?: BatchListOutgoingTypedLinksResponse;
1389 /**
1390 * Returns a paginated list of all the incoming TypedLinkSpecifier information for an object. It also supports filtering by typed link facet and identity attributes. For more information, see Typed Links.
1391 */
1392 ListIncomingTypedLinks?: BatchListIncomingTypedLinksResponse;
1393 /**
1394 * The list of attributes to retrieve from the typed link.
1395 */
1396 GetLinkAttributes?: BatchGetLinkAttributesResponse;
1397 ListObjectParents?: BatchListObjectParentsResponse;
1398 }
1399 export type BatchReferenceName = string;
1400 export interface BatchRemoveFacetFromObject {
1401 /**
1402 * The facet to remove from the object.
1403 */
1404 SchemaFacet: SchemaFacet;
1405 /**
1406 * A reference to the object whose facet will be removed.
1407 */
1408 ObjectReference: ObjectReference;
1409 }
1410 export interface BatchRemoveFacetFromObjectResponse {
1411 }
1412 export interface BatchUpdateLinkAttributes {
1413 /**
1414 * Allows a typed link specifier to be accepted as input.
1415 */
1416 TypedLinkSpecifier: TypedLinkSpecifier;
1417 /**
1418 * The attributes update structure.
1419 */
1420 AttributeUpdates: LinkAttributeUpdateList;
1421 }
1422 export interface BatchUpdateLinkAttributesResponse {
1423 }
1424 export interface BatchUpdateObjectAttributes {
1425 /**
1426 * Reference that identifies the object.
1427 */
1428 ObjectReference: ObjectReference;
1429 /**
1430 * Attributes update structure.
1431 */
1432 AttributeUpdates: ObjectAttributeUpdateList;
1433 }
1434 export interface BatchUpdateObjectAttributesResponse {
1435 /**
1436 * ID that is associated with the object.
1437 */
1438 ObjectIdentifier?: ObjectIdentifier;
1439 }
1440 export interface BatchWriteOperation {
1441 /**
1442 * Creates an object.
1443 */
1444 CreateObject?: BatchCreateObject;
1445 /**
1446 * Attaches an object to a Directory.
1447 */
1448 AttachObject?: BatchAttachObject;
1449 /**
1450 * Detaches an object from a Directory.
1451 */
1452 DetachObject?: BatchDetachObject;
1453 /**
1454 * Updates a given object's attributes.
1455 */
1456 UpdateObjectAttributes?: BatchUpdateObjectAttributes;
1457 /**
1458 * Deletes an object in a Directory.
1459 */
1460 DeleteObject?: BatchDeleteObject;
1461 /**
1462 * A batch operation that adds a facet to an object.
1463 */
1464 AddFacetToObject?: BatchAddFacetToObject;
1465 /**
1466 * A batch operation that removes a facet from an object.
1467 */
1468 RemoveFacetFromObject?: BatchRemoveFacetFromObject;
1469 /**
1470 * Attaches a policy object to a regular object. An object can have a limited number of attached policies.
1471 */
1472 AttachPolicy?: BatchAttachPolicy;
1473 /**
1474 * Detaches a policy from a Directory.
1475 */
1476 DetachPolicy?: BatchDetachPolicy;
1477 /**
1478 * Creates an index object. See Indexing and search for more information.
1479 */
1480 CreateIndex?: BatchCreateIndex;
1481 /**
1482 * Attaches the specified object to the specified index.
1483 */
1484 AttachToIndex?: BatchAttachToIndex;
1485 /**
1486 * Detaches the specified object from the specified index.
1487 */
1488 DetachFromIndex?: BatchDetachFromIndex;
1489 /**
1490 * Attaches a typed link to a specified source and target object. For more information, see Typed Links.
1491 */
1492 AttachTypedLink?: BatchAttachTypedLink;
1493 /**
1494 * Detaches a typed link from a specified source and target object. For more information, see Typed Links.
1495 */
1496 DetachTypedLink?: BatchDetachTypedLink;
1497 /**
1498 * Updates a given object's attributes.
1499 */
1500 UpdateLinkAttributes?: BatchUpdateLinkAttributes;
1501 }
1502 export type BatchWriteOperationList = BatchWriteOperation[];
1503 export interface BatchWriteOperationResponse {
1504 /**
1505 * Creates an object in a Directory.
1506 */
1507 CreateObject?: BatchCreateObjectResponse;
1508 /**
1509 * Attaches an object to a Directory.
1510 */
1511 AttachObject?: BatchAttachObjectResponse;
1512 /**
1513 * Detaches an object from a Directory.
1514 */
1515 DetachObject?: BatchDetachObjectResponse;
1516 /**
1517 * Updates a given object’s attributes.
1518 */
1519 UpdateObjectAttributes?: BatchUpdateObjectAttributesResponse;
1520 /**
1521 * Deletes an object in a Directory.
1522 */
1523 DeleteObject?: BatchDeleteObjectResponse;
1524 /**
1525 * The result of an add facet to object batch operation.
1526 */
1527 AddFacetToObject?: BatchAddFacetToObjectResponse;
1528 /**
1529 * The result of a batch remove facet from object operation.
1530 */
1531 RemoveFacetFromObject?: BatchRemoveFacetFromObjectResponse;
1532 /**
1533 * Attaches a policy object to a regular object. An object can have a limited number of attached policies.
1534 */
1535 AttachPolicy?: BatchAttachPolicyResponse;
1536 /**
1537 * Detaches a policy from a Directory.
1538 */
1539 DetachPolicy?: BatchDetachPolicyResponse;
1540 /**
1541 * Creates an index object. See Indexing and search for more information.
1542 */
1543 CreateIndex?: BatchCreateIndexResponse;
1544 /**
1545 * Attaches the specified object to the specified index.
1546 */
1547 AttachToIndex?: BatchAttachToIndexResponse;
1548 /**
1549 * Detaches the specified object from the specified index.
1550 */
1551 DetachFromIndex?: BatchDetachFromIndexResponse;
1552 /**
1553 * Attaches a typed link to a specified source and target object. For more information, see Typed Links.
1554 */
1555 AttachTypedLink?: BatchAttachTypedLinkResponse;
1556 /**
1557 * Detaches a typed link from a specified source and target object. For more information, see Typed Links.
1558 */
1559 DetachTypedLink?: BatchDetachTypedLinkResponse;
1560 /**
1561 * Represents the output of a BatchWrite response operation.
1562 */
1563 UpdateLinkAttributes?: BatchUpdateLinkAttributesResponse;
1564 }
1565 export type BatchWriteOperationResponseList = BatchWriteOperationResponse[];
1566 export interface BatchWriteRequest {
1567 /**
1568 * The Amazon Resource Name (ARN) that is associated with the Directory. For more information, see arns.
1569 */
1570 DirectoryArn: Arn;
1571 /**
1572 * A list of operations that are part of the batch.
1573 */
1574 Operations: BatchWriteOperationList;
1575 }
1576 export interface BatchWriteResponse {
1577 /**
1578 * A list of all the responses for each batch write.
1579 */
1580 Responses?: BatchWriteOperationResponseList;
1581 }
1582 export type BinaryAttributeValue = Buffer|Uint8Array|Blob|string;
1583 export type Bool = boolean;
1584 export type BooleanAttributeValue = boolean;
1585 export type ConsistencyLevel = "SERIALIZABLE"|"EVENTUAL"|string;
1586 export interface CreateDirectoryRequest {
1587 /**
1588 * The name of the Directory. Should be unique per account, per region.
1589 */
1590 Name: DirectoryName;
1591 /**
1592 * The Amazon Resource Name (ARN) of the published schema that will be copied into the data Directory. For more information, see arns.
1593 */
1594 SchemaArn: Arn;
1595 }
1596 export interface CreateDirectoryResponse {
1597 /**
1598 * The ARN that is associated with the Directory. For more information, see arns.
1599 */
1600 DirectoryArn: DirectoryArn;
1601 /**
1602 * The name of the Directory.
1603 */
1604 Name: DirectoryName;
1605 /**
1606 * The root object node of the created directory.
1607 */
1608 ObjectIdentifier: ObjectIdentifier;
1609 /**
1610 * The ARN of the published schema in the Directory. Once a published schema is copied into the directory, it has its own ARN, which is referred to applied schema ARN. For more information, see arns.
1611 */
1612 AppliedSchemaArn: Arn;
1613 }
1614 export interface CreateFacetRequest {
1615 /**
1616 * The schema ARN in which the new Facet will be created. For more information, see arns.
1617 */
1618 SchemaArn: Arn;
1619 /**
1620 * The name of the Facet, which is unique for a given schema.
1621 */
1622 Name: FacetName;
1623 /**
1624 * The attributes that are associated with the Facet.
1625 */
1626 Attributes?: FacetAttributeList;
1627 /**
1628 * Specifies whether a given object created from this facet is of type node, leaf node, policy or index. Node: Can have multiple children but one parent. Leaf node: Cannot have children but can have multiple parents. Policy: Allows you to store a policy document and policy type. For more information, see Policies. Index: Can be created with the Index API.
1629 */
1630 ObjectType?: ObjectType;
1631 /**
1632 * There are two different styles that you can define on any given facet, Static and Dynamic. For static facets, all attributes must be defined in the schema. For dynamic facets, attributes can be defined during data plane operations.
1633 */
1634 FacetStyle?: FacetStyle;
1635 }
1636 export interface CreateFacetResponse {
1637 }
1638 export interface CreateIndexRequest {
1639 /**
1640 * The ARN of the directory where the index should be created.
1641 */
1642 DirectoryArn: Arn;
1643 /**
1644 * Specifies the attributes that should be indexed on. Currently only a single attribute is supported.
1645 */
1646 OrderedIndexedAttributeList: AttributeKeyList;
1647 /**
1648 * Indicates whether the attribute that is being indexed has unique values or not.
1649 */
1650 IsUnique: Bool;
1651 /**
1652 * A reference to the parent object that contains the index object.
1653 */
1654 ParentReference?: ObjectReference;
1655 /**
1656 * The name of the link between the parent object and the index object.
1657 */
1658 LinkName?: LinkName;
1659 }
1660 export interface CreateIndexResponse {
1661 /**
1662 * The ObjectIdentifier of the index created by this operation.
1663 */
1664 ObjectIdentifier?: ObjectIdentifier;
1665 }
1666 export interface CreateObjectRequest {
1667 /**
1668 * The Amazon Resource Name (ARN) that is associated with the Directory in which the object will be created. For more information, see arns.
1669 */
1670 DirectoryArn: Arn;
1671 /**
1672 * A list of schema facets to be associated with the object. Do not provide minor version components. See SchemaFacet for details.
1673 */
1674 SchemaFacets: SchemaFacetList;
1675 /**
1676 * The attribute map whose attribute ARN contains the key and attribute value as the map value.
1677 */
1678 ObjectAttributeList?: AttributeKeyAndValueList;
1679 /**
1680 * If specified, the parent reference to which this object will be attached.
1681 */
1682 ParentReference?: ObjectReference;
1683 /**
1684 * The name of link that is used to attach this object to a parent.
1685 */
1686 LinkName?: LinkName;
1687 }
1688 export interface CreateObjectResponse {
1689 /**
1690 * The identifier that is associated with the object.
1691 */
1692 ObjectIdentifier?: ObjectIdentifier;
1693 }
1694 export interface CreateSchemaRequest {
1695 /**
1696 * The name that is associated with the schema. This is unique to each account and in each region.
1697 */
1698 Name: SchemaName;
1699 }
1700 export interface CreateSchemaResponse {
1701 /**
1702 * The Amazon Resource Name (ARN) that is associated with the schema. For more information, see arns.
1703 */
1704 SchemaArn?: Arn;
1705 }
1706 export interface CreateTypedLinkFacetRequest {
1707 /**
1708 * The Amazon Resource Name (ARN) that is associated with the schema. For more information, see arns.
1709 */
1710 SchemaArn: Arn;
1711 /**
1712 * Facet structure that is associated with the typed link facet.
1713 */
1714 Facet: TypedLinkFacet;
1715 }
1716 export interface CreateTypedLinkFacetResponse {
1717 }
1718 export type _Date = Date;
1719 export type DatetimeAttributeValue = Date;
1720 export interface DeleteDirectoryRequest {
1721 /**
1722 * The ARN of the directory to delete.
1723 */
1724 DirectoryArn: Arn;
1725 }
1726 export interface DeleteDirectoryResponse {
1727 /**
1728 * The ARN of the deleted directory.
1729 */
1730 DirectoryArn: Arn;
1731 }
1732 export interface DeleteFacetRequest {
1733 /**
1734 * The Amazon Resource Name (ARN) that is associated with the Facet. For more information, see arns.
1735 */
1736 SchemaArn: Arn;
1737 /**
1738 * The name of the facet to delete.
1739 */
1740 Name: FacetName;
1741 }
1742 export interface DeleteFacetResponse {
1743 }
1744 export interface DeleteObjectRequest {
1745 /**
1746 * The Amazon Resource Name (ARN) that is associated with the Directory where the object resides. For more information, see arns.
1747 */
1748 DirectoryArn: Arn;
1749 /**
1750 * A reference that identifies the object.
1751 */
1752 ObjectReference: ObjectReference;
1753 }
1754 export interface DeleteObjectResponse {
1755 }
1756 export interface DeleteSchemaRequest {
1757 /**
1758 * The Amazon Resource Name (ARN) of the development schema. For more information, see arns.
1759 */
1760 SchemaArn: Arn;
1761 }
1762 export interface DeleteSchemaResponse {
1763 /**
1764 * The input ARN that is returned as part of the response. For more information, see arns.
1765 */
1766 SchemaArn?: Arn;
1767 }
1768 export interface DeleteTypedLinkFacetRequest {
1769 /**
1770 * The Amazon Resource Name (ARN) that is associated with the schema. For more information, see arns.
1771 */
1772 SchemaArn: Arn;
1773 /**
1774 * The unique name of the typed link facet.
1775 */
1776 Name: TypedLinkName;
1777 }
1778 export interface DeleteTypedLinkFacetResponse {
1779 }
1780 export interface DetachFromIndexRequest {
1781 /**
1782 * The Amazon Resource Name (ARN) of the directory the index and object exist in.
1783 */
1784 DirectoryArn: Arn;
1785 /**
1786 * A reference to the index object.
1787 */
1788 IndexReference: ObjectReference;
1789 /**
1790 * A reference to the object being detached from the index.
1791 */
1792 TargetReference: ObjectReference;
1793 }
1794 export interface DetachFromIndexResponse {
1795 /**
1796 * The ObjectIdentifier of the object that was detached from the index.
1797 */
1798 DetachedObjectIdentifier?: ObjectIdentifier;
1799 }
1800 export interface DetachObjectRequest {
1801 /**
1802 * The Amazon Resource Name (ARN) that is associated with the Directory where objects reside. For more information, see arns.
1803 */
1804 DirectoryArn: Arn;
1805 /**
1806 * The parent reference from which the object with the specified link name is detached.
1807 */
1808 ParentReference: ObjectReference;
1809 /**
1810 * The link name associated with the object that needs to be detached.
1811 */
1812 LinkName: LinkName;
1813 }
1814 export interface DetachObjectResponse {
1815 /**
1816 * The ObjectIdentifier that was detached from the object.
1817 */
1818 DetachedObjectIdentifier?: ObjectIdentifier;
1819 }
1820 export interface DetachPolicyRequest {
1821 /**
1822 * The Amazon Resource Name (ARN) that is associated with the Directory where both objects reside. For more information, see arns.
1823 */
1824 DirectoryArn: Arn;
1825 /**
1826 * Reference that identifies the policy object.
1827 */
1828 PolicyReference: ObjectReference;
1829 /**
1830 * Reference that identifies the object whose policy object will be detached.
1831 */
1832 ObjectReference: ObjectReference;
1833 }
1834 export interface DetachPolicyResponse {
1835 }
1836 export interface DetachTypedLinkRequest {
1837 /**
1838 * The Amazon Resource Name (ARN) of the directory where you want to detach the typed link.
1839 */
1840 DirectoryArn: Arn;
1841 /**
1842 * Used to accept a typed link specifier as input.
1843 */
1844 TypedLinkSpecifier: TypedLinkSpecifier;
1845 }
1846 export interface Directory {
1847 /**
1848 * The name of the directory.
1849 */
1850 Name?: DirectoryName;
1851 /**
1852 * The Amazon Resource Name (ARN) that is associated with the directory. For more information, see arns.
1853 */
1854 DirectoryArn?: DirectoryArn;
1855 /**
1856 * The state of the directory. Can be either Enabled, Disabled, or Deleted.
1857 */
1858 State?: DirectoryState;
1859 /**
1860 * The date and time when the directory was created.
1861 */
1862 CreationDateTime?: _Date;
1863 }
1864 export type DirectoryArn = string;
1865 export type DirectoryList = Directory[];
1866 export type DirectoryName = string;
1867 export type DirectoryState = "ENABLED"|"DISABLED"|"DELETED"|string;
1868 export interface DisableDirectoryRequest {
1869 /**
1870 * The ARN of the directory to disable.
1871 */
1872 DirectoryArn: Arn;
1873 }
1874 export interface DisableDirectoryResponse {
1875 /**
1876 * The ARN of the directory that has been disabled.
1877 */
1878 DirectoryArn: Arn;
1879 }
1880 export interface EnableDirectoryRequest {
1881 /**
1882 * The ARN of the directory to enable.
1883 */
1884 DirectoryArn: Arn;
1885 }
1886 export interface EnableDirectoryResponse {
1887 /**
1888 * The ARN of the enabled directory.
1889 */
1890 DirectoryArn: Arn;
1891 }
1892 export type ExceptionMessage = string;
1893 export interface Facet {
1894 /**
1895 * The name of the Facet.
1896 */
1897 Name?: FacetName;
1898 /**
1899 * The object type that is associated with the facet. See CreateFacetRequest$ObjectType for more details.
1900 */
1901 ObjectType?: ObjectType;
1902 /**
1903 * There are two different styles that you can define on any given facet, Static and Dynamic. For static facets, all attributes must be defined in the schema. For dynamic facets, attributes can be defined during data plane operations.
1904 */
1905 FacetStyle?: FacetStyle;
1906 }
1907 export interface FacetAttribute {
1908 /**
1909 * The name of the facet attribute.
1910 */
1911 Name: AttributeName;
1912 /**
1913 * A facet attribute consists of either a definition or a reference. This structure contains the attribute definition. See Attribute References for more information.
1914 */
1915 AttributeDefinition?: FacetAttributeDefinition;
1916 /**
1917 * An attribute reference that is associated with the attribute. See Attribute References for more information.
1918 */
1919 AttributeReference?: FacetAttributeReference;
1920 /**
1921 * The required behavior of the FacetAttribute.
1922 */
1923 RequiredBehavior?: RequiredAttributeBehavior;
1924 }
1925 export interface FacetAttributeDefinition {
1926 /**
1927 * The type of the attribute.
1928 */
1929 Type: FacetAttributeType;
1930 /**
1931 * The default value of the attribute (if configured).
1932 */
1933 DefaultValue?: TypedAttributeValue;
1934 /**
1935 * Whether the attribute is mutable or not.
1936 */
1937 IsImmutable?: Bool;
1938 /**
1939 * Validation rules attached to the attribute definition.
1940 */
1941 Rules?: RuleMap;
1942 }
1943 export type FacetAttributeList = FacetAttribute[];
1944 export interface FacetAttributeReference {
1945 /**
1946 * The target facet name that is associated with the facet reference. See Attribute References for more information.
1947 */
1948 TargetFacetName: FacetName;
1949 /**
1950 * The target attribute name that is associated with the facet reference. See Attribute References for more information.
1951 */
1952 TargetAttributeName: AttributeName;
1953 }
1954 export type FacetAttributeType = "STRING"|"BINARY"|"BOOLEAN"|"NUMBER"|"DATETIME"|"VARIANT"|string;
1955 export interface FacetAttributeUpdate {
1956 /**
1957 * The attribute to update.
1958 */
1959 Attribute?: FacetAttribute;
1960 /**
1961 * The action to perform when updating the attribute.
1962 */
1963 Action?: UpdateActionType;
1964 }
1965 export type FacetAttributeUpdateList = FacetAttributeUpdate[];
1966 export type FacetName = string;
1967 export type FacetNameList = FacetName[];
1968 export type FacetStyle = "STATIC"|"DYNAMIC"|string;
1969 export interface GetAppliedSchemaVersionRequest {
1970 /**
1971 * The ARN of the applied schema.
1972 */
1973 SchemaArn: Arn;
1974 }
1975 export interface GetAppliedSchemaVersionResponse {
1976 /**
1977 * Current applied schema ARN, including the minor version in use if one was provided.
1978 */
1979 AppliedSchemaArn?: Arn;
1980 }
1981 export interface GetDirectoryRequest {
1982 /**
1983 * The ARN of the directory.
1984 */
1985 DirectoryArn: DirectoryArn;
1986 }
1987 export interface GetDirectoryResponse {
1988 /**
1989 * Metadata about the directory.
1990 */
1991 Directory: Directory;
1992 }
1993 export interface GetFacetRequest {
1994 /**
1995 * The Amazon Resource Name (ARN) that is associated with the Facet. For more information, see arns.
1996 */
1997 SchemaArn: Arn;
1998 /**
1999 * The name of the facet to retrieve.
2000 */
2001 Name: FacetName;
2002 }
2003 export interface GetFacetResponse {
2004 /**
2005 * The Facet structure that is associated with the facet.
2006 */
2007 Facet?: Facet;
2008 }
2009 export interface GetLinkAttributesRequest {
2010 /**
2011 * The Amazon Resource Name (ARN) that is associated with the Directory where the typed link resides. For more information, see arns or Typed Links.
2012 */
2013 DirectoryArn: Arn;
2014 /**
2015 * Allows a typed link specifier to be accepted as input.
2016 */
2017 TypedLinkSpecifier: TypedLinkSpecifier;
2018 /**
2019 * A list of attribute names whose values will be retrieved.
2020 */
2021 AttributeNames: AttributeNameList;
2022 /**
2023 * The consistency level at which to retrieve the attributes on a typed link.
2024 */
2025 ConsistencyLevel?: ConsistencyLevel;
2026 }
2027 export interface GetLinkAttributesResponse {
2028 /**
2029 * The attributes that are associated with the typed link.
2030 */
2031 Attributes?: AttributeKeyAndValueList;
2032 }
2033 export interface GetObjectAttributesRequest {
2034 /**
2035 * The Amazon Resource Name (ARN) that is associated with the Directory where the object resides.
2036 */
2037 DirectoryArn: Arn;
2038 /**
2039 * Reference that identifies the object whose attributes will be retrieved.
2040 */
2041 ObjectReference: ObjectReference;
2042 /**
2043 * The consistency level at which to retrieve the attributes on an object.
2044 */
2045 ConsistencyLevel?: ConsistencyLevel;
2046 /**
2047 * Identifier for the facet whose attributes will be retrieved. See SchemaFacet for details.
2048 */
2049 SchemaFacet: SchemaFacet;
2050 /**
2051 * List of attribute names whose values will be retrieved.
2052 */
2053 AttributeNames: AttributeNameList;
2054 }
2055 export interface GetObjectAttributesResponse {
2056 /**
2057 * The attributes that are associated with the object.
2058 */
2059 Attributes?: AttributeKeyAndValueList;
2060 }
2061 export interface GetObjectInformationRequest {
2062 /**
2063 * The ARN of the directory being retrieved.
2064 */
2065 DirectoryArn: Arn;
2066 /**
2067 * A reference to the object.
2068 */
2069 ObjectReference: ObjectReference;
2070 /**
2071 * The consistency level at which to retrieve the object information.
2072 */
2073 ConsistencyLevel?: ConsistencyLevel;
2074 }
2075 export interface GetObjectInformationResponse {
2076 /**
2077 * The facets attached to the specified object. Although the response does not include minor version information, the most recently applied minor version of each Facet is in effect. See GetAppliedSchemaVersion for details.
2078 */
2079 SchemaFacets?: SchemaFacetList;
2080 /**
2081 * The ObjectIdentifier of the specified object.
2082 */
2083 ObjectIdentifier?: ObjectIdentifier;
2084 }
2085 export interface GetSchemaAsJsonRequest {
2086 /**
2087 * The ARN of the schema to retrieve.
2088 */
2089 SchemaArn: Arn;
2090 }
2091 export interface GetSchemaAsJsonResponse {
2092 /**
2093 * The name of the retrieved schema.
2094 */
2095 Name?: SchemaName;
2096 /**
2097 * The JSON representation of the schema document.
2098 */
2099 Document?: SchemaJsonDocument;
2100 }
2101 export interface GetTypedLinkFacetInformationRequest {
2102 /**
2103 * The Amazon Resource Name (ARN) that is associated with the schema. For more information, see arns.
2104 */
2105 SchemaArn: Arn;
2106 /**
2107 * The unique name of the typed link facet.
2108 */
2109 Name: TypedLinkName;
2110 }
2111 export interface GetTypedLinkFacetInformationResponse {
2112 /**
2113 * The order of identity attributes for the facet, from most significant to least significant. The ability to filter typed links considers the order that the attributes are defined on the typed link facet. When providing ranges to typed link selection, any inexact ranges must be specified at the end. Any attributes that do not have a range specified are presumed to match the entire range. Filters are interpreted in the order of the attributes on the typed link facet, not the order in which they are supplied to any API calls. For more information about identity attributes, see Typed Links.
2114 */
2115 IdentityAttributeOrder?: AttributeNameList;
2116 }
2117 export interface IndexAttachment {
2118 /**
2119 * The indexed attribute values.
2120 */
2121 IndexedAttributes?: AttributeKeyAndValueList;
2122 /**
2123 * In response to ListIndex, the ObjectIdentifier of the object attached to the index. In response to ListAttachedIndices, the ObjectIdentifier of the index attached to the object. This field will always contain the ObjectIdentifier of the object on the opposite side of the attachment specified in the query.
2124 */
2125 ObjectIdentifier?: ObjectIdentifier;
2126 }
2127 export type IndexAttachmentList = IndexAttachment[];
2128 export interface LinkAttributeAction {
2129 /**
2130 * A type that can be either UPDATE_OR_CREATE or DELETE.
2131 */
2132 AttributeActionType?: UpdateActionType;
2133 /**
2134 * The value that you want to update to.
2135 */
2136 AttributeUpdateValue?: TypedAttributeValue;
2137 }
2138 export interface LinkAttributeUpdate {
2139 /**
2140 * The key of the attribute being updated.
2141 */
2142 AttributeKey?: AttributeKey;
2143 /**
2144 * The action to perform as part of the attribute update.
2145 */
2146 AttributeAction?: LinkAttributeAction;
2147 }
2148 export type LinkAttributeUpdateList = LinkAttributeUpdate[];
2149 export type LinkName = string;
2150 export type LinkNameToObjectIdentifierMap = {[key: string]: ObjectIdentifier};
2151 export interface ListAppliedSchemaArnsRequest {
2152 /**
2153 * The ARN of the directory you are listing.
2154 */
2155 DirectoryArn: Arn;
2156 /**
2157 * The response for ListAppliedSchemaArns when this parameter is used will list all minor version ARNs for a major version.
2158 */
2159 SchemaArn?: Arn;
2160 /**
2161 * The pagination token.
2162 */
2163 NextToken?: NextToken;
2164 /**
2165 * The maximum number of results to retrieve.
2166 */
2167 MaxResults?: NumberResults;
2168 }
2169 export interface ListAppliedSchemaArnsResponse {
2170 /**
2171 * The ARNs of schemas that are applied to the directory.
2172 */
2173 SchemaArns?: Arns;
2174 /**
2175 * The pagination token.
2176 */
2177 NextToken?: NextToken;
2178 }
2179 export interface ListAttachedIndicesRequest {
2180 /**
2181 * The ARN of the directory.
2182 */
2183 DirectoryArn: Arn;
2184 /**
2185 * A reference to the object that has indices attached.
2186 */
2187 TargetReference: ObjectReference;
2188 /**
2189 * The pagination token.
2190 */
2191 NextToken?: NextToken;
2192 /**
2193 * The maximum number of results to retrieve.
2194 */
2195 MaxResults?: NumberResults;
2196 /**
2197 * The consistency level to use for this operation.
2198 */
2199 ConsistencyLevel?: ConsistencyLevel;
2200 }
2201 export interface ListAttachedIndicesResponse {
2202 /**
2203 * The indices attached to the specified object.
2204 */
2205 IndexAttachments?: IndexAttachmentList;
2206 /**
2207 * The pagination token.
2208 */
2209 NextToken?: NextToken;
2210 }
2211 export interface ListDevelopmentSchemaArnsRequest {
2212 /**
2213 * The pagination token.
2214 */
2215 NextToken?: NextToken;
2216 /**
2217 * The maximum number of results to retrieve.
2218 */
2219 MaxResults?: NumberResults;
2220 }
2221 export interface ListDevelopmentSchemaArnsResponse {
2222 /**
2223 * The ARNs of retrieved development schemas.
2224 */
2225 SchemaArns?: Arns;
2226 /**
2227 * The pagination token.
2228 */
2229 NextToken?: NextToken;
2230 }
2231 export interface ListDirectoriesRequest {
2232 /**
2233 * The pagination token.
2234 */
2235 NextToken?: NextToken;
2236 /**
2237 * The maximum number of results to retrieve.
2238 */
2239 MaxResults?: NumberResults;
2240 /**
2241 * The state of the directories in the list. Can be either Enabled, Disabled, or Deleted.
2242 */
2243 state?: DirectoryState;
2244 }
2245 export interface ListDirectoriesResponse {
2246 /**
2247 * Lists all directories that are associated with your account in pagination fashion.
2248 */
2249 Directories: DirectoryList;
2250 /**
2251 * The pagination token.
2252 */
2253 NextToken?: NextToken;
2254 }
2255 export interface ListFacetAttributesRequest {
2256 /**
2257 * The ARN of the schema where the facet resides.
2258 */
2259 SchemaArn: Arn;
2260 /**
2261 * The name of the facet whose attributes will be retrieved.
2262 */
2263 Name: FacetName;
2264 /**
2265 * The pagination token.
2266 */
2267 NextToken?: NextToken;
2268 /**
2269 * The maximum number of results to retrieve.
2270 */
2271 MaxResults?: NumberResults;
2272 }
2273 export interface ListFacetAttributesResponse {
2274 /**
2275 * The attributes attached to the facet.
2276 */
2277 Attributes?: FacetAttributeList;
2278 /**
2279 * The pagination token.
2280 */
2281 NextToken?: NextToken;
2282 }
2283 export interface ListFacetNamesRequest {
2284 /**
2285 * The Amazon Resource Name (ARN) to retrieve facet names from.
2286 */
2287 SchemaArn: Arn;
2288 /**
2289 * The pagination token.
2290 */
2291 NextToken?: NextToken;
2292 /**
2293 * The maximum number of results to retrieve.
2294 */
2295 MaxResults?: NumberResults;
2296 }
2297 export interface ListFacetNamesResponse {
2298 /**
2299 * The names of facets that exist within the schema.
2300 */
2301 FacetNames?: FacetNameList;
2302 /**
2303 * The pagination token.
2304 */
2305 NextToken?: NextToken;
2306 }
2307 export interface ListIncomingTypedLinksRequest {
2308 /**
2309 * The Amazon Resource Name (ARN) of the directory where you want to list the typed links.
2310 */
2311 DirectoryArn: Arn;
2312 /**
2313 * Reference that identifies the object whose attributes will be listed.
2314 */
2315 ObjectReference: ObjectReference;
2316 /**
2317 * Provides range filters for multiple attributes. When providing ranges to typed link selection, any inexact ranges must be specified at the end. Any attributes that do not have a range specified are presumed to match the entire range.
2318 */
2319 FilterAttributeRanges?: TypedLinkAttributeRangeList;
2320 /**
2321 * Filters are interpreted in the order of the attributes on the typed link facet, not the order in which they are supplied to any API calls.
2322 */
2323 FilterTypedLink?: TypedLinkSchemaAndFacetName;
2324 /**
2325 * The pagination token.
2326 */
2327 NextToken?: NextToken;
2328 /**
2329 * The maximum number of results to retrieve.
2330 */
2331 MaxResults?: NumberResults;
2332 /**
2333 * The consistency level to execute the request at.
2334 */
2335 ConsistencyLevel?: ConsistencyLevel;
2336 }
2337 export interface ListIncomingTypedLinksResponse {
2338 /**
2339 * Returns one or more typed link specifiers as output.
2340 */
2341 LinkSpecifiers?: TypedLinkSpecifierList;
2342 /**
2343 * The pagination token.
2344 */
2345 NextToken?: NextToken;
2346 }
2347 export interface ListIndexRequest {
2348 /**
2349 * The ARN of the directory that the index exists in.
2350 */
2351 DirectoryArn: Arn;
2352 /**
2353 * Specifies the ranges of indexed values that you want to query.
2354 */
2355 RangesOnIndexedValues?: ObjectAttributeRangeList;
2356 /**
2357 * The reference to the index to list.
2358 */
2359 IndexReference: ObjectReference;
2360 /**
2361 * The maximum number of objects in a single page to retrieve from the index during a request. For more information, see Amazon Cloud Directory Limits.
2362 */
2363 MaxResults?: NumberResults;
2364 /**
2365 * The pagination token.
2366 */
2367 NextToken?: NextToken;
2368 /**
2369 * The consistency level to execute the request at.
2370 */
2371 ConsistencyLevel?: ConsistencyLevel;
2372 }
2373 export interface ListIndexResponse {
2374 /**
2375 * The objects and indexed values attached to the index.
2376 */
2377 IndexAttachments?: IndexAttachmentList;
2378 /**
2379 * The pagination token.
2380 */
2381 NextToken?: NextToken;
2382 }
2383 export interface ListManagedSchemaArnsRequest {
2384 /**
2385 * The response for ListManagedSchemaArns. When this parameter is used, all minor version ARNs for a major version are listed.
2386 */
2387 SchemaArn?: Arn;
2388 /**
2389 * The pagination token.
2390 */
2391 NextToken?: NextToken;
2392 /**
2393 * The maximum number of results to retrieve.
2394 */
2395 MaxResults?: NumberResults;
2396 }
2397 export interface ListManagedSchemaArnsResponse {
2398 /**
2399 * The ARNs for all AWS managed schemas.
2400 */
2401 SchemaArns?: Arns;
2402 /**
2403 * The pagination token.
2404 */
2405 NextToken?: NextToken;
2406 }
2407 export interface ListObjectAttributesRequest {
2408 /**
2409 * The Amazon Resource Name (ARN) that is associated with the Directory where the object resides. For more information, see arns.
2410 */
2411 DirectoryArn: Arn;
2412 /**
2413 * The reference that identifies the object whose attributes will be listed.
2414 */
2415 ObjectReference: ObjectReference;
2416 /**
2417 * The pagination token.
2418 */
2419 NextToken?: NextToken;
2420 /**
2421 * The maximum number of items to be retrieved in a single call. This is an approximate number.
2422 */
2423 MaxResults?: NumberResults;
2424 /**
2425 * Represents the manner and timing in which the successful write or update of an object is reflected in a subsequent read operation of that same object.
2426 */
2427 ConsistencyLevel?: ConsistencyLevel;
2428 /**
2429 * Used to filter the list of object attributes that are associated with a certain facet.
2430 */
2431 FacetFilter?: SchemaFacet;
2432 }
2433 export interface ListObjectAttributesResponse {
2434 /**
2435 * Attributes map that is associated with the object. AttributeArn is the key, and attribute value is the value.
2436 */
2437 Attributes?: AttributeKeyAndValueList;
2438 /**
2439 * The pagination token.
2440 */
2441 NextToken?: NextToken;
2442 }
2443 export interface ListObjectChildrenRequest {
2444 /**
2445 * The Amazon Resource Name (ARN) that is associated with the Directory where the object resides. For more information, see arns.
2446 */
2447 DirectoryArn: Arn;
2448 /**
2449 * The reference that identifies the object for which child objects are being listed.
2450 */
2451 ObjectReference: ObjectReference;
2452 /**
2453 * The pagination token.
2454 */
2455 NextToken?: NextToken;
2456 /**
2457 * The maximum number of items to be retrieved in a single call. This is an approximate number.
2458 */
2459 MaxResults?: NumberResults;
2460 /**
2461 * Represents the manner and timing in which the successful write or update of an object is reflected in a subsequent read operation of that same object.
2462 */
2463 ConsistencyLevel?: ConsistencyLevel;
2464 }
2465 export interface ListObjectChildrenResponse {
2466 /**
2467 * Children structure, which is a map with key as the LinkName and ObjectIdentifier as the value.
2468 */
2469 Children?: LinkNameToObjectIdentifierMap;
2470 /**
2471 * The pagination token.
2472 */
2473 NextToken?: NextToken;
2474 }
2475 export interface ListObjectParentPathsRequest {
2476 /**
2477 * The ARN of the directory to which the parent path applies.
2478 */
2479 DirectoryArn: Arn;
2480 /**
2481 * The reference that identifies the object whose parent paths are listed.
2482 */
2483 ObjectReference: ObjectReference;
2484 /**
2485 * The pagination token.
2486 */
2487 NextToken?: NextToken;
2488 /**
2489 * The maximum number of items to be retrieved in a single call. This is an approximate number.
2490 */
2491 MaxResults?: NumberResults;
2492 }
2493 export interface ListObjectParentPathsResponse {
2494 /**
2495 * Returns the path to the ObjectIdentifiers that are associated with the directory.
2496 */
2497 PathToObjectIdentifiersList?: PathToObjectIdentifiersList;
2498 /**
2499 * The pagination token.
2500 */
2501 NextToken?: NextToken;
2502 }
2503 export interface ListObjectParentsRequest {
2504 /**
2505 * The Amazon Resource Name (ARN) that is associated with the Directory where the object resides. For more information, see arns.
2506 */
2507 DirectoryArn: Arn;
2508 /**
2509 * The reference that identifies the object for which parent objects are being listed.
2510 */
2511 ObjectReference: ObjectReference;
2512 /**
2513 * The pagination token.
2514 */
2515 NextToken?: NextToken;
2516 /**
2517 * The maximum number of items to be retrieved in a single call. This is an approximate number.
2518 */
2519 MaxResults?: NumberResults;
2520 /**
2521 * Represents the manner and timing in which the successful write or update of an object is reflected in a subsequent read operation of that same object.
2522 */
2523 ConsistencyLevel?: ConsistencyLevel;
2524 /**
2525 * When set to True, returns all ListObjectParentsResponse$ParentLinks. There could be multiple links between a parent-child pair.
2526 */
2527 IncludeAllLinksToEachParent?: Bool;
2528 }
2529 export interface ListObjectParentsResponse {
2530 /**
2531 * The parent structure, which is a map with key as the ObjectIdentifier and LinkName as the value.
2532 */
2533 Parents?: ObjectIdentifierToLinkNameMap;
2534 /**
2535 * The pagination token.
2536 */
2537 NextToken?: NextToken;
2538 /**
2539 * Returns a list of parent reference and LinkName Tuples.
2540 */
2541 ParentLinks?: ObjectIdentifierAndLinkNameList;
2542 }
2543 export interface ListObjectPoliciesRequest {
2544 /**
2545 * The Amazon Resource Name (ARN) that is associated with the Directory where objects reside. For more information, see arns.
2546 */
2547 DirectoryArn: Arn;
2548 /**
2549 * Reference that identifies the object for which policies will be listed.
2550 */
2551 ObjectReference: ObjectReference;
2552 /**
2553 * The pagination token.
2554 */
2555 NextToken?: NextToken;
2556 /**
2557 * The maximum number of items to be retrieved in a single call. This is an approximate number.
2558 */
2559 MaxResults?: NumberResults;
2560 /**
2561 * Represents the manner and timing in which the successful write or update of an object is reflected in a subsequent read operation of that same object.
2562 */
2563 ConsistencyLevel?: ConsistencyLevel;
2564 }
2565 export interface ListObjectPoliciesResponse {
2566 /**
2567 * A list of policy ObjectIdentifiers, that are attached to the object.
2568 */
2569 AttachedPolicyIds?: ObjectIdentifierList;
2570 /**
2571 * The pagination token.
2572 */
2573 NextToken?: NextToken;
2574 }
2575 export interface ListOutgoingTypedLinksRequest {
2576 /**
2577 * The Amazon Resource Name (ARN) of the directory where you want to list the typed links.
2578 */
2579 DirectoryArn: Arn;
2580 /**
2581 * A reference that identifies the object whose attributes will be listed.
2582 */
2583 ObjectReference: ObjectReference;
2584 /**
2585 * Provides range filters for multiple attributes. When providing ranges to typed link selection, any inexact ranges must be specified at the end. Any attributes that do not have a range specified are presumed to match the entire range.
2586 */
2587 FilterAttributeRanges?: TypedLinkAttributeRangeList;
2588 /**
2589 * Filters are interpreted in the order of the attributes defined on the typed link facet, not the order they are supplied to any API calls.
2590 */
2591 FilterTypedLink?: TypedLinkSchemaAndFacetName;
2592 /**
2593 * The pagination token.
2594 */
2595 NextToken?: NextToken;
2596 /**
2597 * The maximum number of results to retrieve.
2598 */
2599 MaxResults?: NumberResults;
2600 /**
2601 * The consistency level to execute the request at.
2602 */
2603 ConsistencyLevel?: ConsistencyLevel;
2604 }
2605 export interface ListOutgoingTypedLinksResponse {
2606 /**
2607 * Returns a typed link specifier as output.
2608 */
2609 TypedLinkSpecifiers?: TypedLinkSpecifierList;
2610 /**
2611 * The pagination token.
2612 */
2613 NextToken?: NextToken;
2614 }
2615 export interface ListPolicyAttachmentsRequest {
2616 /**
2617 * The Amazon Resource Name (ARN) that is associated with the Directory where objects reside. For more information, see arns.
2618 */
2619 DirectoryArn: Arn;
2620 /**
2621 * The reference that identifies the policy object.
2622 */
2623 PolicyReference: ObjectReference;
2624 /**
2625 * The pagination token.
2626 */
2627 NextToken?: NextToken;
2628 /**
2629 * The maximum number of items to be retrieved in a single call. This is an approximate number.
2630 */
2631 MaxResults?: NumberResults;
2632 /**
2633 * Represents the manner and timing in which the successful write or update of an object is reflected in a subsequent read operation of that same object.
2634 */
2635 ConsistencyLevel?: ConsistencyLevel;
2636 }
2637 export interface ListPolicyAttachmentsResponse {
2638 /**
2639 * A list of ObjectIdentifiers to which the policy is attached.
2640 */
2641 ObjectIdentifiers?: ObjectIdentifierList;
2642 /**
2643 * The pagination token.
2644 */
2645 NextToken?: NextToken;
2646 }
2647 export interface ListPublishedSchemaArnsRequest {
2648 /**
2649 * The response for ListPublishedSchemaArns when this parameter is used will list all minor version ARNs for a major version.
2650 */
2651 SchemaArn?: Arn;
2652 /**
2653 * The pagination token.
2654 */
2655 NextToken?: NextToken;
2656 /**
2657 * The maximum number of results to retrieve.
2658 */
2659 MaxResults?: NumberResults;
2660 }
2661 export interface ListPublishedSchemaArnsResponse {
2662 /**
2663 * The ARNs of published schemas.
2664 */
2665 SchemaArns?: Arns;
2666 /**
2667 * The pagination token.
2668 */
2669 NextToken?: NextToken;
2670 }
2671 export interface ListTagsForResourceRequest {
2672 /**
2673 * The Amazon Resource Name (ARN) of the resource. Tagging is only supported for directories.
2674 */
2675 ResourceArn: Arn;
2676 /**
2677 * The pagination token. This is for future use. Currently pagination is not supported for tagging.
2678 */
2679 NextToken?: NextToken;
2680 /**
2681 * The MaxResults parameter sets the maximum number of results returned in a single page. This is for future use and is not supported currently.
2682 */
2683 MaxResults?: TagsNumberResults;
2684 }
2685 export interface ListTagsForResourceResponse {
2686 /**
2687 * A list of tag key value pairs that are associated with the response.
2688 */
2689 Tags?: TagList;
2690 /**
2691 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
2692 */
2693 NextToken?: NextToken;
2694 }
2695 export interface ListTypedLinkFacetAttributesRequest {
2696 /**
2697 * The Amazon Resource Name (ARN) that is associated with the schema. For more information, see arns.
2698 */
2699 SchemaArn: Arn;
2700 /**
2701 * The unique name of the typed link facet.
2702 */
2703 Name: TypedLinkName;
2704 /**
2705 * The pagination token.
2706 */
2707 NextToken?: NextToken;
2708 /**
2709 * The maximum number of results to retrieve.
2710 */
2711 MaxResults?: NumberResults;
2712 }
2713 export interface ListTypedLinkFacetAttributesResponse {
2714 /**
2715 * An ordered set of attributes associate with the typed link.
2716 */
2717 Attributes?: TypedLinkAttributeDefinitionList;
2718 /**
2719 * The pagination token.
2720 */
2721 NextToken?: NextToken;
2722 }
2723 export interface ListTypedLinkFacetNamesRequest {
2724 /**
2725 * The Amazon Resource Name (ARN) that is associated with the schema. For more information, see arns.
2726 */
2727 SchemaArn: Arn;
2728 /**
2729 * The pagination token.
2730 */
2731 NextToken?: NextToken;
2732 /**
2733 * The maximum number of results to retrieve.
2734 */
2735 MaxResults?: NumberResults;
2736 }
2737 export interface ListTypedLinkFacetNamesResponse {
2738 /**
2739 * The names of typed link facets that exist within the schema.
2740 */
2741 FacetNames?: TypedLinkNameList;
2742 /**
2743 * The pagination token.
2744 */
2745 NextToken?: NextToken;
2746 }
2747 export interface LookupPolicyRequest {
2748 /**
2749 * The Amazon Resource Name (ARN) that is associated with the Directory. For more information, see arns.
2750 */
2751 DirectoryArn: Arn;
2752 /**
2753 * Reference that identifies the object whose policies will be looked up.
2754 */
2755 ObjectReference: ObjectReference;
2756 /**
2757 * The token to request the next page of results.
2758 */
2759 NextToken?: NextToken;
2760 /**
2761 * The maximum number of items to be retrieved in a single call. This is an approximate number.
2762 */
2763 MaxResults?: NumberResults;
2764 }
2765 export interface LookupPolicyResponse {
2766 /**
2767 * Provides list of path to policies. Policies contain PolicyId, ObjectIdentifier, and PolicyType. For more information, see Policies.
2768 */
2769 PolicyToPathList?: PolicyToPathList;
2770 /**
2771 * The pagination token.
2772 */
2773 NextToken?: NextToken;
2774 }
2775 export type NextToken = string;
2776 export type NumberAttributeValue = string;
2777 export type NumberResults = number;
2778 export interface ObjectAttributeAction {
2779 /**
2780 * A type that can be either Update or Delete.
2781 */
2782 ObjectAttributeActionType?: UpdateActionType;
2783 /**
2784 * The value that you want to update to.
2785 */
2786 ObjectAttributeUpdateValue?: TypedAttributeValue;
2787 }
2788 export interface ObjectAttributeRange {
2789 /**
2790 * The key of the attribute that the attribute range covers.
2791 */
2792 AttributeKey?: AttributeKey;
2793 /**
2794 * The range of attribute values being selected.
2795 */
2796 Range?: TypedAttributeValueRange;
2797 }
2798 export type ObjectAttributeRangeList = ObjectAttributeRange[];
2799 export interface ObjectAttributeUpdate {
2800 /**
2801 * The key of the attribute being updated.
2802 */
2803 ObjectAttributeKey?: AttributeKey;
2804 /**
2805 * The action to perform as part of the attribute update.
2806 */
2807 ObjectAttributeAction?: ObjectAttributeAction;
2808 }
2809 export type ObjectAttributeUpdateList = ObjectAttributeUpdate[];
2810 export type ObjectIdentifier = string;
2811 export type ObjectIdentifierAndLinkNameList = ObjectIdentifierAndLinkNameTuple[];
2812 export interface ObjectIdentifierAndLinkNameTuple {
2813 /**
2814 * The ID that is associated with the object.
2815 */
2816 ObjectIdentifier?: ObjectIdentifier;
2817 /**
2818 * The name of the link between the parent and the child object.
2819 */
2820 LinkName?: LinkName;
2821 }
2822 export type ObjectIdentifierList = ObjectIdentifier[];
2823 export type ObjectIdentifierToLinkNameMap = {[key: string]: LinkName};
2824 export interface ObjectReference {
2825 /**
2826 * A path selector supports easy selection of an object by the parent/child links leading to it from the directory root. Use the link names from each parent/child link to construct the path. Path selectors start with a slash (/) and link names are separated by slashes. For more information about paths, see Access Objects. You can identify an object in one of the following ways: $ObjectIdentifier - An object identifier is an opaque string provided by Amazon Cloud Directory. When creating objects, the system will provide you with the identifier of the created object. An object’s identifier is immutable and no two objects will ever share the same object identifier /some/path - Identifies the object based on path #SomeBatchReference - Identifies the object in a batch call
2827 */
2828 Selector?: SelectorObjectReference;
2829 }
2830 export type ObjectType = "NODE"|"LEAF_NODE"|"POLICY"|"INDEX"|string;
2831 export type PathString = string;
2832 export interface PathToObjectIdentifiers {
2833 /**
2834 * The path that is used to identify the object starting from directory root.
2835 */
2836 Path?: PathString;
2837 /**
2838 * Lists ObjectIdentifiers starting from directory root to the object in the request.
2839 */
2840 ObjectIdentifiers?: ObjectIdentifierList;
2841 }
2842 export type PathToObjectIdentifiersList = PathToObjectIdentifiers[];
2843 export interface PolicyAttachment {
2844 /**
2845 * The ID of PolicyAttachment.
2846 */
2847 PolicyId?: ObjectIdentifier;
2848 /**
2849 * The ObjectIdentifier that is associated with PolicyAttachment.
2850 */
2851 ObjectIdentifier?: ObjectIdentifier;
2852 /**
2853 * The type of policy that can be associated with PolicyAttachment.
2854 */
2855 PolicyType?: PolicyType;
2856 }
2857 export type PolicyAttachmentList = PolicyAttachment[];
2858 export interface PolicyToPath {
2859 /**
2860 * The path that is referenced from the root.
2861 */
2862 Path?: PathString;
2863 /**
2864 * List of policy objects.
2865 */
2866 Policies?: PolicyAttachmentList;
2867 }
2868 export type PolicyToPathList = PolicyToPath[];
2869 export type PolicyType = string;
2870 export interface PublishSchemaRequest {
2871 /**
2872 * The Amazon Resource Name (ARN) that is associated with the development schema. For more information, see arns.
2873 */
2874 DevelopmentSchemaArn: Arn;
2875 /**
2876 * The major version under which the schema will be published. Schemas have both a major and minor version associated with them.
2877 */
2878 Version: Version;
2879 /**
2880 * The minor version under which the schema will be published. This parameter is recommended. Schemas have both a major and minor version associated with them.
2881 */
2882 MinorVersion?: Version;
2883 /**
2884 * The new name under which the schema will be published. If this is not provided, the development schema is considered.
2885 */
2886 Name?: SchemaName;
2887 }
2888 export interface PublishSchemaResponse {
2889 /**
2890 * The ARN that is associated with the published schema. For more information, see arns.
2891 */
2892 PublishedSchemaArn?: Arn;
2893 }
2894 export interface PutSchemaFromJsonRequest {
2895 /**
2896 * The ARN of the schema to update.
2897 */
2898 SchemaArn: Arn;
2899 /**
2900 * The replacement JSON schema.
2901 */
2902 Document: SchemaJsonDocument;
2903 }
2904 export interface PutSchemaFromJsonResponse {
2905 /**
2906 * The ARN of the schema to update.
2907 */
2908 Arn?: Arn;
2909 }
2910 export type RangeMode = "FIRST"|"LAST"|"LAST_BEFORE_MISSING_VALUES"|"INCLUSIVE"|"EXCLUSIVE"|string;
2911 export interface RemoveFacetFromObjectRequest {
2912 /**
2913 * The ARN of the directory in which the object resides.
2914 */
2915 DirectoryArn: Arn;
2916 /**
2917 * The facet to remove. See SchemaFacet for details.
2918 */
2919 SchemaFacet: SchemaFacet;
2920 /**
2921 * A reference to the object to remove the facet from.
2922 */
2923 ObjectReference: ObjectReference;
2924 }
2925 export interface RemoveFacetFromObjectResponse {
2926 }
2927 export type RequiredAttributeBehavior = "REQUIRED_ALWAYS"|"NOT_REQUIRED"|string;
2928 export interface Rule {
2929 /**
2930 * The type of attribute validation rule.
2931 */
2932 Type?: RuleType;
2933 /**
2934 * The minimum and maximum parameters that are associated with the rule.
2935 */
2936 Parameters?: RuleParameterMap;
2937 }
2938 export type RuleKey = string;
2939 export type RuleMap = {[key: string]: Rule};
2940 export type RuleParameterKey = string;
2941 export type RuleParameterMap = {[key: string]: RuleParameterValue};
2942 export type RuleParameterValue = string;
2943 export type RuleType = "BINARY_LENGTH"|"NUMBER_COMPARISON"|"STRING_FROM_SET"|"STRING_LENGTH"|string;
2944 export interface SchemaFacet {
2945 /**
2946 * The ARN of the schema that contains the facet with no minor component. See arns and In-Place Schema Upgrade for a description of when to provide minor versions.
2947 */
2948 SchemaArn?: Arn;
2949 /**
2950 * The name of the facet.
2951 */
2952 FacetName?: FacetName;
2953 }
2954 export type SchemaFacetList = SchemaFacet[];
2955 export type SchemaJsonDocument = string;
2956 export type SchemaName = string;
2957 export type SelectorObjectReference = string;
2958 export type StringAttributeValue = string;
2959 export interface Tag {
2960 /**
2961 * The key that is associated with the tag.
2962 */
2963 Key?: TagKey;
2964 /**
2965 * The value that is associated with the tag.
2966 */
2967 Value?: TagValue;
2968 }
2969 export type TagKey = string;
2970 export type TagKeyList = TagKey[];
2971 export type TagList = Tag[];
2972 export interface TagResourceRequest {
2973 /**
2974 * The Amazon Resource Name (ARN) of the resource. Tagging is only supported for directories.
2975 */
2976 ResourceArn: Arn;
2977 /**
2978 * A list of tag key-value pairs.
2979 */
2980 Tags: TagList;
2981 }
2982 export interface TagResourceResponse {
2983 }
2984 export type TagValue = string;
2985 export type TagsNumberResults = number;
2986 export interface TypedAttributeValue {
2987 /**
2988 * A string data value.
2989 */
2990 StringValue?: StringAttributeValue;
2991 /**
2992 * A binary data value.
2993 */
2994 BinaryValue?: BinaryAttributeValue;
2995 /**
2996 * A Boolean data value.
2997 */
2998 BooleanValue?: BooleanAttributeValue;
2999 /**
3000 * A number data value.
3001 */
3002 NumberValue?: NumberAttributeValue;
3003 /**
3004 * A date and time value.
3005 */
3006 DatetimeValue?: DatetimeAttributeValue;
3007 }
3008 export interface TypedAttributeValueRange {
3009 /**
3010 * The inclusive or exclusive range start.
3011 */
3012 StartMode: RangeMode;
3013 /**
3014 * The value to start the range at.
3015 */
3016 StartValue?: TypedAttributeValue;
3017 /**
3018 * The inclusive or exclusive range end.
3019 */
3020 EndMode: RangeMode;
3021 /**
3022 * The attribute value to terminate the range at.
3023 */
3024 EndValue?: TypedAttributeValue;
3025 }
3026 export interface TypedLinkAttributeDefinition {
3027 /**
3028 * The unique name of the typed link attribute.
3029 */
3030 Name: AttributeName;
3031 /**
3032 * The type of the attribute.
3033 */
3034 Type: FacetAttributeType;
3035 /**
3036 * The default value of the attribute (if configured).
3037 */
3038 DefaultValue?: TypedAttributeValue;
3039 /**
3040 * Whether the attribute is mutable or not.
3041 */
3042 IsImmutable?: Bool;
3043 /**
3044 * Validation rules that are attached to the attribute definition.
3045 */
3046 Rules?: RuleMap;
3047 /**
3048 * The required behavior of the TypedLinkAttributeDefinition.
3049 */
3050 RequiredBehavior: RequiredAttributeBehavior;
3051 }
3052 export type TypedLinkAttributeDefinitionList = TypedLinkAttributeDefinition[];
3053 export interface TypedLinkAttributeRange {
3054 /**
3055 * The unique name of the typed link attribute.
3056 */
3057 AttributeName?: AttributeName;
3058 /**
3059 * The range of attribute values that are being selected.
3060 */
3061 Range: TypedAttributeValueRange;
3062 }
3063 export type TypedLinkAttributeRangeList = TypedLinkAttributeRange[];
3064 export interface TypedLinkFacet {
3065 /**
3066 * The unique name of the typed link facet.
3067 */
3068 Name: TypedLinkName;
3069 /**
3070 * A set of key-value pairs associated with the typed link. Typed link attributes are used when you have data values that are related to the link itself, and not to one of the two objects being linked. Identity attributes also serve to distinguish the link from others of the same type between the same objects.
3071 */
3072 Attributes: TypedLinkAttributeDefinitionList;
3073 /**
3074 * The set of attributes that distinguish links made from this facet from each other, in the order of significance. Listing typed links can filter on the values of these attributes. See ListOutgoingTypedLinks and ListIncomingTypedLinks for details.
3075 */
3076 IdentityAttributeOrder: AttributeNameList;
3077 }
3078 export interface TypedLinkFacetAttributeUpdate {
3079 /**
3080 * The attribute to update.
3081 */
3082 Attribute: TypedLinkAttributeDefinition;
3083 /**
3084 * The action to perform when updating the attribute.
3085 */
3086 Action: UpdateActionType;
3087 }
3088 export type TypedLinkFacetAttributeUpdateList = TypedLinkFacetAttributeUpdate[];
3089 export type TypedLinkName = string;
3090 export type TypedLinkNameList = TypedLinkName[];
3091 export interface TypedLinkSchemaAndFacetName {
3092 /**
3093 * The Amazon Resource Name (ARN) that is associated with the schema. For more information, see arns.
3094 */
3095 SchemaArn: Arn;
3096 /**
3097 * The unique name of the typed link facet.
3098 */
3099 TypedLinkName: TypedLinkName;
3100 }
3101 export interface TypedLinkSpecifier {
3102 /**
3103 * Identifies the typed link facet that is associated with the typed link.
3104 */
3105 TypedLinkFacet: TypedLinkSchemaAndFacetName;
3106 /**
3107 * Identifies the source object that the typed link will attach to.
3108 */
3109 SourceObjectReference: ObjectReference;
3110 /**
3111 * Identifies the target object that the typed link will attach to.
3112 */
3113 TargetObjectReference: ObjectReference;
3114 /**
3115 * Identifies the attribute value to update.
3116 */
3117 IdentityAttributeValues: AttributeNameAndValueList;
3118 }
3119 export type TypedLinkSpecifierList = TypedLinkSpecifier[];
3120 export interface UntagResourceRequest {
3121 /**
3122 * The Amazon Resource Name (ARN) of the resource. Tagging is only supported for directories.
3123 */
3124 ResourceArn: Arn;
3125 /**
3126 * Keys of the tag that need to be removed from the resource.
3127 */
3128 TagKeys: TagKeyList;
3129 }
3130 export interface UntagResourceResponse {
3131 }
3132 export type UpdateActionType = "CREATE_OR_UPDATE"|"DELETE"|string;
3133 export interface UpdateFacetRequest {
3134 /**
3135 * The Amazon Resource Name (ARN) that is associated with the Facet. For more information, see arns.
3136 */
3137 SchemaArn: Arn;
3138 /**
3139 * The name of the facet.
3140 */
3141 Name: FacetName;
3142 /**
3143 * List of attributes that need to be updated in a given schema Facet. Each attribute is followed by AttributeAction, which specifies the type of update operation to perform.
3144 */
3145 AttributeUpdates?: FacetAttributeUpdateList;
3146 /**
3147 * The object type that is associated with the facet. See CreateFacetRequest$ObjectType for more details.
3148 */
3149 ObjectType?: ObjectType;
3150 }
3151 export interface UpdateFacetResponse {
3152 }
3153 export interface UpdateLinkAttributesRequest {
3154 /**
3155 * The Amazon Resource Name (ARN) that is associated with the Directory where the updated typed link resides. For more information, see arns or Typed Links.
3156 */
3157 DirectoryArn: Arn;
3158 /**
3159 * Allows a typed link specifier to be accepted as input.
3160 */
3161 TypedLinkSpecifier: TypedLinkSpecifier;
3162 /**
3163 * The attributes update structure.
3164 */
3165 AttributeUpdates: LinkAttributeUpdateList;
3166 }
3167 export interface UpdateLinkAttributesResponse {
3168 }
3169 export interface UpdateObjectAttributesRequest {
3170 /**
3171 * The Amazon Resource Name (ARN) that is associated with the Directory where the object resides. For more information, see arns.
3172 */
3173 DirectoryArn: Arn;
3174 /**
3175 * The reference that identifies the object.
3176 */
3177 ObjectReference: ObjectReference;
3178 /**
3179 * The attributes update structure.
3180 */
3181 AttributeUpdates: ObjectAttributeUpdateList;
3182 }
3183 export interface UpdateObjectAttributesResponse {
3184 /**
3185 * The ObjectIdentifier of the updated object.
3186 */
3187 ObjectIdentifier?: ObjectIdentifier;
3188 }
3189 export interface UpdateSchemaRequest {
3190 /**
3191 * The Amazon Resource Name (ARN) of the development schema. For more information, see arns.
3192 */
3193 SchemaArn: Arn;
3194 /**
3195 * The name of the schema.
3196 */
3197 Name: SchemaName;
3198 }
3199 export interface UpdateSchemaResponse {
3200 /**
3201 * The ARN that is associated with the updated schema. For more information, see arns.
3202 */
3203 SchemaArn?: Arn;
3204 }
3205 export interface UpdateTypedLinkFacetRequest {
3206 /**
3207 * The Amazon Resource Name (ARN) that is associated with the schema. For more information, see arns.
3208 */
3209 SchemaArn: Arn;
3210 /**
3211 * The unique name of the typed link facet.
3212 */
3213 Name: TypedLinkName;
3214 /**
3215 * Attributes update structure.
3216 */
3217 AttributeUpdates: TypedLinkFacetAttributeUpdateList;
3218 /**
3219 * The order of identity attributes for the facet, from most significant to least significant. The ability to filter typed links considers the order that the attributes are defined on the typed link facet. When providing ranges to a typed link selection, any inexact ranges must be specified at the end. Any attributes that do not have a range specified are presumed to match the entire range. Filters are interpreted in the order of the attributes on the typed link facet, not the order in which they are supplied to any API calls. For more information about identity attributes, see Typed Links.
3220 */
3221 IdentityAttributeOrder: AttributeNameList;
3222 }
3223 export interface UpdateTypedLinkFacetResponse {
3224 }
3225 export interface UpgradeAppliedSchemaRequest {
3226 /**
3227 * The revision of the published schema to upgrade the directory to.
3228 */
3229 PublishedSchemaArn: Arn;
3230 /**
3231 * The ARN for the directory to which the upgraded schema will be applied.
3232 */
3233 DirectoryArn: Arn;
3234 /**
3235 * Used for testing whether the major version schemas are backward compatible or not. If schema compatibility fails, an exception would be thrown else the call would succeed but no changes will be saved. This parameter is optional.
3236 */
3237 DryRun?: Bool;
3238 }
3239 export interface UpgradeAppliedSchemaResponse {
3240 /**
3241 * The ARN of the upgraded schema that is returned as part of the response.
3242 */
3243 UpgradedSchemaArn?: Arn;
3244 /**
3245 * The ARN of the directory that is returned as part of the response.
3246 */
3247 DirectoryArn?: Arn;
3248 }
3249 export interface UpgradePublishedSchemaRequest {
3250 /**
3251 * The ARN of the development schema with the changes used for the upgrade.
3252 */
3253 DevelopmentSchemaArn: Arn;
3254 /**
3255 * The ARN of the published schema to be upgraded.
3256 */
3257 PublishedSchemaArn: Arn;
3258 /**
3259 * Identifies the minor version of the published schema that will be created. This parameter is NOT optional.
3260 */
3261 MinorVersion: Version;
3262 /**
3263 * Used for testing whether the Development schema provided is backwards compatible, or not, with the publish schema provided by the user to be upgraded. If schema compatibility fails, an exception would be thrown else the call would succeed. This parameter is optional and defaults to false.
3264 */
3265 DryRun?: Bool;
3266 }
3267 export interface UpgradePublishedSchemaResponse {
3268 /**
3269 * The ARN of the upgraded schema that is returned as part of the response.
3270 */
3271 UpgradedSchemaArn?: Arn;
3272 }
3273 export type Version = string;
3274 /**
3275 * 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.
3276 */
3277 export type apiVersion = "2016-05-10"|"2016-05-10"|"2017-01-11"|"latest"|string;
3278 export interface ClientApiVersions {
3279 /**
3280 * 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.
3281 */
3282 apiVersion?: apiVersion;
3283 }
3284 export type ClientConfiguration = ServiceConfigurationOptions & ClientApiVersions;
3285 /**
3286 * Contains interfaces for use with the CloudDirectory client.
3287 */
3288 export import Types = CloudDirectory;
3289}
3290export = CloudDirectory;