import { ResourceBase } from "../../resource";
import { Value, List, MapOf } from "../../data-types";
export declare class Column {
    Comment?: Value<string>;
    Type?: Value<string>;
    Name: Value<string>;
    constructor(properties: Column);
}
export declare class SkewedInfo {
    SkewedColumnNames?: List<Value<string>>;
    SkewedColumnValues?: List<Value<string>>;
    SkewedColumnValueLocationMaps?: MapOf<any>;
    constructor(properties: SkewedInfo);
}
export declare class TableInput {
    ViewOriginalText?: Value<string>;
    TableType?: Value<string>;
    StorageDescriptor?: StorageDescriptor;
    Parameters?: MapOf<any>;
    ViewExpandedText?: Value<string>;
    Name?: Value<string>;
    Owner?: Value<string>;
    Description?: Value<string>;
    Retention?: Value<number>;
    PartitionKeys?: List<Column>;
    constructor(properties: TableInput);
}
export declare class StorageDescriptor {
    StoredAsSubDirectories?: Value<boolean>;
    InputFormat?: Value<string>;
    Compressed?: Value<boolean>;
    NumberOfBuckets?: Value<number>;
    Parameters?: MapOf<any>;
    SerdeInfo?: SerdeInfo;
    BucketColumns?: List<Value<string>>;
    Location?: Value<string>;
    SkewedInfo?: SkewedInfo;
    OutputFormat?: Value<string>;
    Columns?: List<Column>;
    SortColumns?: List<Order>;
    constructor(properties: StorageDescriptor);
}
export declare class Order {
    Column: Value<string>;
    SortOrder: Value<number>;
    constructor(properties: Order);
}
export declare class SerdeInfo {
    Parameters?: MapOf<any>;
    SerializationLibrary?: Value<string>;
    Name?: Value<string>;
    constructor(properties: SerdeInfo);
}
export interface TableProperties {
    TableInput: TableInput;
    DatabaseName: Value<string>;
    CatalogId: Value<string>;
}
export default class Inner_Table extends ResourceBase<TableProperties> {
    static Column: typeof Column;
    static SkewedInfo: typeof SkewedInfo;
    static TableInput: typeof TableInput;
    static StorageDescriptor: typeof StorageDescriptor;
    static Order: typeof Order;
    static SerdeInfo: typeof SerdeInfo;
    constructor(properties: TableProperties);
}
