import { Command as $Command } from "@smithy/core/client"; import type { MetadataBearer as __MetadataBearer } from "@smithy/types"; import type { GlueClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../GlueClient"; import type { CreateTableOptimizerRequest, CreateTableOptimizerResponse } from "../models/models_1"; /** * @public */ export type { __MetadataBearer }; export { $Command }; /** * @public * * The input for {@link CreateTableOptimizerCommand}. */ export interface CreateTableOptimizerCommandInput extends CreateTableOptimizerRequest { } /** * @public * * The output of {@link CreateTableOptimizerCommand}. */ export interface CreateTableOptimizerCommandOutput extends CreateTableOptimizerResponse, __MetadataBearer { } declare const CreateTableOptimizerCommand_base: { new (input: CreateTableOptimizerCommandInput): import("@smithy/core/client").CommandImpl; new (input: CreateTableOptimizerCommandInput): import("@smithy/core/client").CommandImpl; getEndpointParameterInstructions(): { [x: string]: unknown; }; }; /** *

Creates a new table optimizer for a specific function.

* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript * import { GlueClient, CreateTableOptimizerCommand } from "@aws-sdk/client-glue"; // ES Modules import * // const { GlueClient, CreateTableOptimizerCommand } = require("@aws-sdk/client-glue"); // CommonJS import * // import type { GlueClientConfig } from "@aws-sdk/client-glue"; * const config = {}; // type is GlueClientConfig * const client = new GlueClient(config); * const input = { // CreateTableOptimizerRequest * CatalogId: "STRING_VALUE", // required * DatabaseName: "STRING_VALUE", // required * TableName: "STRING_VALUE", // required * Type: "compaction" || "retention" || "orphan_file_deletion", // required * TableOptimizerConfiguration: { // TableOptimizerConfiguration * roleArn: "STRING_VALUE", * enabled: true || false, * vpcConfiguration: { // TableOptimizerVpcConfiguration Union: only one key present * glueConnectionName: "STRING_VALUE", * }, * compactionConfiguration: { // CompactionConfiguration * icebergConfiguration: { // IcebergCompactionConfiguration * strategy: "binpack" || "sort" || "z-order", * minInputFiles: Number("int"), * deleteFileThreshold: Number("int"), * }, * }, * retentionConfiguration: { // RetentionConfiguration * icebergConfiguration: { // IcebergRetentionConfiguration * snapshotRetentionPeriodInDays: Number("int"), * numberOfSnapshotsToRetain: Number("int"), * cleanExpiredFiles: true || false, * runRateInHours: Number("int"), * }, * }, * orphanFileDeletionConfiguration: { // OrphanFileDeletionConfiguration * icebergConfiguration: { // IcebergOrphanFileDeletionConfiguration * orphanFileRetentionPeriodInDays: Number("int"), * location: "STRING_VALUE", * runRateInHours: Number("int"), * }, * }, * }, * }; * const command = new CreateTableOptimizerCommand(input); * const response = await client.send(command); * // {}; * * ``` * * @param CreateTableOptimizerCommandInput - {@link CreateTableOptimizerCommandInput} * @returns {@link CreateTableOptimizerCommandOutput} * @see {@link CreateTableOptimizerCommandInput} for command's `input` shape. * @see {@link CreateTableOptimizerCommandOutput} for command's `response` shape. * @see {@link GlueClientResolvedConfig | config} for GlueClient's `config` shape. * * @throws {@link AccessDeniedException} (client fault) *

Access to a resource was denied.

* * @throws {@link AlreadyExistsException} (client fault) *

A resource to be created or added already exists.

* * @throws {@link EntityNotFoundException} (client fault) *

A specified entity does not exist

* * @throws {@link InternalServiceException} (server fault) *

An internal service error occurred.

* * @throws {@link InvalidInputException} (client fault) *

The input provided was not valid.

* * @throws {@link ThrottlingException} (client fault) *

The throttling threshhold was exceeded.

* * @throws {@link ValidationException} (client fault) *

A value could not be validated.

* * @throws {@link GlueServiceException} *

Base exception class for all service exceptions from Glue service.

* * * @public */ export declare class CreateTableOptimizerCommand extends CreateTableOptimizerCommand_base { /** @internal type navigation helper, not in runtime. */ protected static __types: { api: { input: CreateTableOptimizerRequest; output: {}; }; sdk: { input: CreateTableOptimizerCommandInput; output: CreateTableOptimizerCommandOutput; }; }; }