import * as pulumi from "@pulumi/pulumi"; import { input as inputs, output as outputs } from "../../types"; /** * Creates a new, empty table in the dataset. */ export declare class Table extends pulumi.CustomResource { /** * Get an existing Table resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): Table; /** * Returns true if the given object is an instance of Table. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is Table; /** * [Beta] Clustering specification for the table. Must be specified with partitioning, data in the table will be first partitioned and subsequently clustered. */ readonly clustering: pulumi.Output; /** * [Output-only] The time when this table was created, in milliseconds since the epoch. */ readonly creationTime: pulumi.Output; /** * [Optional] A user-friendly description of this table. */ readonly description: pulumi.Output; /** * Custom encryption configuration (e.g., Cloud KMS keys). */ readonly encryptionConfiguration: pulumi.Output; /** * [Output-only] A hash of the table metadata. Used to ensure there were no concurrent modifications to the resource when attempting an update. Not guaranteed to change when the table contents or the fields numRows, numBytes, numLongTermBytes or lastModifiedTime change. */ readonly etag: pulumi.Output; /** * [Optional] The time when this table expires, in milliseconds since the epoch. If not present, the table will persist indefinitely. Expired tables will be deleted and their storage reclaimed. The defaultTableExpirationMs property of the encapsulating dataset can be used to set a default expirationTime on newly created tables. */ readonly expirationTime: pulumi.Output; /** * [Optional] Describes the data format, location, and other properties of a table stored outside of BigQuery. By defining these properties, the data source can then be queried as if it were a standard BigQuery table. */ readonly externalDataConfiguration: pulumi.Output; /** * [Optional] A descriptive name for this table. */ readonly friendlyName: pulumi.Output; /** * [Output-only] The type of the resource. */ readonly kind: pulumi.Output; /** * The labels associated with this table. You can use these to organize and group your tables. Label keys and values can be no longer than 63 characters, can only contain lowercase letters, numeric characters, underscores and dashes. International characters are allowed. Label values are optional. Label keys must start with a letter and each label in the list must have a different key. */ readonly labels: pulumi.Output<{ [key: string]: string; }>; /** * [Output-only] The time when this table was last modified, in milliseconds since the epoch. */ readonly lastModifiedTime: pulumi.Output; /** * [Output-only] The geographic location where the table resides. This value is inherited from the dataset. */ readonly location: pulumi.Output; /** * [Optional] Materialized view definition. */ readonly materializedView: pulumi.Output; /** * [Output-only, Beta] Present iff this table represents a ML model. Describes the training information for the model, and it is required to run 'PREDICT' queries. */ readonly model: pulumi.Output; /** * [Output-only] The size of this table in bytes, excluding any data in the streaming buffer. */ readonly numBytes: pulumi.Output; /** * [Output-only] The number of bytes in the table that are considered "long-term storage". */ readonly numLongTermBytes: pulumi.Output; /** * [Output-only] [TrustedTester] The physical size of this table in bytes, excluding any data in the streaming buffer. This includes compression and storage used for time travel. */ readonly numPhysicalBytes: pulumi.Output; /** * [Output-only] The number of rows of data in this table, excluding any data in the streaming buffer. */ readonly numRows: pulumi.Output; /** * [TrustedTester] Range partitioning specification for this table. Only one of timePartitioning and rangePartitioning should be specified. */ readonly rangePartitioning: pulumi.Output; /** * [Optional] If set to true, queries over this table require a partition filter that can be used for partition elimination to be specified. */ readonly requirePartitionFilter: pulumi.Output; /** * [Optional] Describes the schema of this table. */ readonly schema: pulumi.Output; /** * [Output-only] A URL that can be used to access this resource again. */ readonly selfLink: pulumi.Output; /** * [Output-only] Snapshot definition. */ readonly snapshotDefinition: pulumi.Output; /** * [Output-only] Contains information regarding this table's streaming buffer, if one is present. This field will be absent if the table is not being streamed to or if there is no data in the streaming buffer. */ readonly streamingBuffer: pulumi.Output; /** * [Required] Reference describing the ID of this table. */ readonly tableReference: pulumi.Output; /** * Time-based partitioning specification for this table. Only one of timePartitioning and rangePartitioning should be specified. */ readonly timePartitioning: pulumi.Output; /** * [Output-only] Describes the table type. The following values are supported: TABLE: A normal BigQuery table. VIEW: A virtual table defined by a SQL query. SNAPSHOT: An immutable, read-only table that is a copy of another table. [TrustedTester] MATERIALIZED_VIEW: SQL query whose result is persisted. EXTERNAL: A table that references data stored in an external storage system, such as Google Cloud Storage. The default value is TABLE. */ readonly type: pulumi.Output; /** * [Optional] The view definition. */ readonly view: pulumi.Output; /** * Create a Table resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args: TableArgs, opts?: pulumi.CustomResourceOptions); } /** * The set of arguments for constructing a Table resource. */ export interface TableArgs { /** * [Beta] Clustering specification for the table. Must be specified with partitioning, data in the table will be first partitioned and subsequently clustered. */ readonly clustering?: pulumi.Input; /** * [Output-only] The time when this table was created, in milliseconds since the epoch. */ readonly creationTime?: pulumi.Input; readonly datasetId: pulumi.Input; /** * [Optional] A user-friendly description of this table. */ readonly description?: pulumi.Input; /** * Custom encryption configuration (e.g., Cloud KMS keys). */ readonly encryptionConfiguration?: pulumi.Input; /** * [Output-only] A hash of the table metadata. Used to ensure there were no concurrent modifications to the resource when attempting an update. Not guaranteed to change when the table contents or the fields numRows, numBytes, numLongTermBytes or lastModifiedTime change. */ readonly etag?: pulumi.Input; /** * [Optional] The time when this table expires, in milliseconds since the epoch. If not present, the table will persist indefinitely. Expired tables will be deleted and their storage reclaimed. The defaultTableExpirationMs property of the encapsulating dataset can be used to set a default expirationTime on newly created tables. */ readonly expirationTime?: pulumi.Input; /** * [Optional] Describes the data format, location, and other properties of a table stored outside of BigQuery. By defining these properties, the data source can then be queried as if it were a standard BigQuery table. */ readonly externalDataConfiguration?: pulumi.Input; /** * [Optional] A descriptive name for this table. */ readonly friendlyName?: pulumi.Input; /** * [Output-only] An opaque ID uniquely identifying the table. */ readonly id?: pulumi.Input; /** * [Output-only] The type of the resource. */ readonly kind?: pulumi.Input; /** * The labels associated with this table. You can use these to organize and group your tables. Label keys and values can be no longer than 63 characters, can only contain lowercase letters, numeric characters, underscores and dashes. International characters are allowed. Label values are optional. Label keys must start with a letter and each label in the list must have a different key. */ readonly labels?: pulumi.Input<{ [key: string]: pulumi.Input; }>; /** * [Output-only] The time when this table was last modified, in milliseconds since the epoch. */ readonly lastModifiedTime?: pulumi.Input; /** * [Output-only] The geographic location where the table resides. This value is inherited from the dataset. */ readonly location?: pulumi.Input; /** * [Optional] Materialized view definition. */ readonly materializedView?: pulumi.Input; /** * [Output-only, Beta] Present iff this table represents a ML model. Describes the training information for the model, and it is required to run 'PREDICT' queries. */ readonly model?: pulumi.Input; /** * [Output-only] The size of this table in bytes, excluding any data in the streaming buffer. */ readonly numBytes?: pulumi.Input; /** * [Output-only] The number of bytes in the table that are considered "long-term storage". */ readonly numLongTermBytes?: pulumi.Input; /** * [Output-only] [TrustedTester] The physical size of this table in bytes, excluding any data in the streaming buffer. This includes compression and storage used for time travel. */ readonly numPhysicalBytes?: pulumi.Input; /** * [Output-only] The number of rows of data in this table, excluding any data in the streaming buffer. */ readonly numRows?: pulumi.Input; readonly projectId: pulumi.Input; /** * [TrustedTester] Range partitioning specification for this table. Only one of timePartitioning and rangePartitioning should be specified. */ readonly rangePartitioning?: pulumi.Input; /** * [Optional] If set to true, queries over this table require a partition filter that can be used for partition elimination to be specified. */ readonly requirePartitionFilter?: pulumi.Input; /** * [Optional] Describes the schema of this table. */ readonly schema?: pulumi.Input; /** * [Output-only] A URL that can be used to access this resource again. */ readonly selfLink?: pulumi.Input; /** * [Output-only] Snapshot definition. */ readonly snapshotDefinition?: pulumi.Input; /** * [Output-only] Contains information regarding this table's streaming buffer, if one is present. This field will be absent if the table is not being streamed to or if there is no data in the streaming buffer. */ readonly streamingBuffer?: pulumi.Input; readonly tableId: pulumi.Input; /** * [Required] Reference describing the ID of this table. */ readonly tableReference?: pulumi.Input; /** * Time-based partitioning specification for this table. Only one of timePartitioning and rangePartitioning should be specified. */ readonly timePartitioning?: pulumi.Input; /** * [Output-only] Describes the table type. The following values are supported: TABLE: A normal BigQuery table. VIEW: A virtual table defined by a SQL query. SNAPSHOT: An immutable, read-only table that is a copy of another table. [TrustedTester] MATERIALIZED_VIEW: SQL query whose result is persisted. EXTERNAL: A table that references data stored in an external storage system, such as Google Cloud Storage. The default value is TABLE. */ readonly type?: pulumi.Input; /** * [Optional] The view definition. */ readonly view?: pulumi.Input; }