import * as pulumi from "@pulumi/pulumi"; import * as inputs from "./types/input"; import * as outputs from "./types/output"; /** * The `pinecone.Index` resource lets you create and manage indexes in Pinecone. Learn more about indexes in the [docs](https://docs.pinecone.io/guides/indexes/understanding-indexes). * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as pinecone from "@pulumi/pinecone"; * * const test = new pinecone.Index("test", { * name: "tftestindex", * dimension: 10, * spec: { * serverless: { * cloud: "aws", * region: "us-west-2", * }, * }, * }); * ``` */ export declare class Index extends pulumi.CustomResource { /** * Get an existing Index 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 state Any extra arguments used during the lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, state?: IndexState, opts?: pulumi.CustomResourceOptions): Index; /** * Returns true if the given object is an instance of Index. 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 Index; /** * Whether deletion protection for the index is enabled. You can use 'enabled', or 'disabled'. */ readonly deletionProtection: pulumi.Output; /** * The dimensions of the vectors to be inserted in the index */ readonly dimension: pulumi.Output; /** * Specify the integrated inference embedding configuration for the index. Once set, the model cannot be changed. However, you can later update the embedding configuration—including field map, read parameters, and write parameters. */ readonly embed: pulumi.Output; /** * The URL address where the index is hosted. */ readonly host: pulumi.Output; /** * The distance metric to be used for similarity search. You can use 'euclidean', 'cosine', or 'dotproduct'. If the 'vector_type' is 'sparse', the metric must be 'dotproduct'. If the vectorType is dense, the metric defaults to 'cosine'. */ readonly metric: pulumi.Output; /** * The name of the index to be created. The maximum length is 45 characters. */ readonly name: pulumi.Output; /** * Spec */ readonly spec: pulumi.Output; /** * Status */ readonly status: pulumi.Output; /** * Custom user tags added to an index. Keys must be 80 characters or less. Values must be 120 characters or less. Keys must be alphanumeric, '', or '-'. Values must be alphanumeric, ';', '@', '', '-', '.', '+', or ' '. To unset a key, set the value to be an empty string. */ readonly tags: pulumi.Output<{ [key: string]: string; }>; readonly timeouts: pulumi.Output; /** * The index vector type. You can use 'dense' or 'sparse'. If 'dense', the vector dimension must be specified. If 'sparse', the vector dimension should not be specified. */ readonly vectorType: pulumi.Output; /** * Create a Index 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?: IndexArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering Index resources. */ export interface IndexState { /** * Whether deletion protection for the index is enabled. You can use 'enabled', or 'disabled'. */ deletionProtection?: pulumi.Input; /** * The dimensions of the vectors to be inserted in the index */ dimension?: pulumi.Input; /** * Specify the integrated inference embedding configuration for the index. Once set, the model cannot be changed. However, you can later update the embedding configuration—including field map, read parameters, and write parameters. */ embed?: pulumi.Input; /** * The URL address where the index is hosted. */ host?: pulumi.Input; /** * The distance metric to be used for similarity search. You can use 'euclidean', 'cosine', or 'dotproduct'. If the 'vector_type' is 'sparse', the metric must be 'dotproduct'. If the vectorType is dense, the metric defaults to 'cosine'. */ metric?: pulumi.Input; /** * The name of the index to be created. The maximum length is 45 characters. */ name?: pulumi.Input; /** * Spec */ spec?: pulumi.Input; /** * Status */ status?: pulumi.Input; /** * Custom user tags added to an index. Keys must be 80 characters or less. Values must be 120 characters or less. Keys must be alphanumeric, '', or '-'. Values must be alphanumeric, ';', '@', '', '-', '.', '+', or ' '. To unset a key, set the value to be an empty string. */ tags?: pulumi.Input<{ [key: string]: pulumi.Input; }>; timeouts?: pulumi.Input; /** * The index vector type. You can use 'dense' or 'sparse'. If 'dense', the vector dimension must be specified. If 'sparse', the vector dimension should not be specified. */ vectorType?: pulumi.Input; } /** * The set of arguments for constructing a Index resource. */ export interface IndexArgs { /** * Whether deletion protection for the index is enabled. You can use 'enabled', or 'disabled'. */ deletionProtection?: pulumi.Input; /** * The dimensions of the vectors to be inserted in the index */ dimension?: pulumi.Input; /** * Specify the integrated inference embedding configuration for the index. Once set, the model cannot be changed. However, you can later update the embedding configuration—including field map, read parameters, and write parameters. */ embed?: pulumi.Input; /** * The distance metric to be used for similarity search. You can use 'euclidean', 'cosine', or 'dotproduct'. If the 'vector_type' is 'sparse', the metric must be 'dotproduct'. If the vectorType is dense, the metric defaults to 'cosine'. */ metric?: pulumi.Input; /** * The name of the index to be created. The maximum length is 45 characters. */ name?: pulumi.Input; /** * Spec */ spec?: pulumi.Input; /** * Custom user tags added to an index. Keys must be 80 characters or less. Values must be 120 characters or less. Keys must be alphanumeric, '', or '-'. Values must be alphanumeric, ';', '@', '', '-', '.', '+', or ' '. To unset a key, set the value to be an empty string. */ tags?: pulumi.Input<{ [key: string]: pulumi.Input; }>; timeouts?: pulumi.Input; /** * The index vector type. You can use 'dense' or 'sparse'. If 'dense', the vector dimension must be specified. If 'sparse', the vector dimension should not be specified. */ vectorType?: pulumi.Input; }