import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../../types/input"; import * as outputs from "../../types/output"; /** * Creates a datasource. **Note:** This API requires an admin account to execute. */ export declare class DataSource extends pulumi.CustomResource { /** * Get an existing DataSource 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): DataSource; /** * Returns true if the given object is an instance of DataSource. 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 DataSource; /** * If true, sets the datasource to read-only mode. In read-only mode, the Indexing API rejects any requests to index or delete items in this source. Enabling read-only mode does not stop the processing of previously accepted data. */ readonly disableModifications: pulumi.Output; /** * Disable serving any search or assist results. */ readonly disableServing: pulumi.Output; /** * Display name of the datasource The maximum length is 300 characters. */ readonly displayName: pulumi.Output; /** * List of service accounts that have indexing access. */ readonly indexingServiceAccounts: pulumi.Output; /** * This field restricts visibility to items at the datasource level. Items within the datasource are restricted to the union of users and groups included in this field. Note that, this does not ensure access to a specific item, as users need to have ACL permissions on the contained items. This ensures a high level access on the entire datasource, and that the individual items are not shared outside this visibility. */ readonly itemsVisibility: pulumi.Output; /** * The name of the datasource resource. Format: datasources/{source_id}. The name is ignored when creating a datasource. */ readonly name: pulumi.Output; /** * IDs of the Long Running Operations (LROs) currently running for this schema. */ readonly operationIds: pulumi.Output; /** * Can a user request to get thumbnail URI for Items indexed in this data source. */ readonly returnThumbnailUrls: pulumi.Output; /** * A short name or alias for the source. This value will be used to match the 'source' operator. For example, if the short name is ** then queries like *source:* will only return results for this source. The value must be unique across all datasources. The value must only contain alphanumeric characters (a-zA-Z0-9). The value cannot start with 'google' and cannot be one of the following: mail, gmail, docs, drive, groups, sites, calendar, hangouts, gplus, keep, people, teams. Its maximum length is 32 characters. */ readonly shortName: pulumi.Output; /** * Create a DataSource 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: DataSourceArgs, opts?: pulumi.CustomResourceOptions); } /** * The set of arguments for constructing a DataSource resource. */ export interface DataSourceArgs { /** * If true, sets the datasource to read-only mode. In read-only mode, the Indexing API rejects any requests to index or delete items in this source. Enabling read-only mode does not stop the processing of previously accepted data. */ disableModifications?: pulumi.Input; /** * Disable serving any search or assist results. */ disableServing?: pulumi.Input; /** * Display name of the datasource The maximum length is 300 characters. */ displayName: pulumi.Input; /** * List of service accounts that have indexing access. */ indexingServiceAccounts?: pulumi.Input[]>; /** * This field restricts visibility to items at the datasource level. Items within the datasource are restricted to the union of users and groups included in this field. Note that, this does not ensure access to a specific item, as users need to have ACL permissions on the contained items. This ensures a high level access on the entire datasource, and that the individual items are not shared outside this visibility. */ itemsVisibility?: pulumi.Input[]>; /** * The name of the datasource resource. Format: datasources/{source_id}. The name is ignored when creating a datasource. */ name?: pulumi.Input; /** * IDs of the Long Running Operations (LROs) currently running for this schema. */ operationIds?: pulumi.Input[]>; /** * Can a user request to get thumbnail URI for Items indexed in this data source. */ returnThumbnailUrls?: pulumi.Input; /** * A short name or alias for the source. This value will be used to match the 'source' operator. For example, if the short name is ** then queries like *source:* will only return results for this source. The value must be unique across all datasources. The value must only contain alphanumeric characters (a-zA-Z0-9). The value cannot start with 'google' and cannot be one of the following: mail, gmail, docs, drive, groups, sites, calendar, hangouts, gplus, keep, people, teams. Its maximum length is 32 characters. */ shortName?: pulumi.Input; }