import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
* Use this resource to create one or more Insights events during a terraform run.
*
* > **NOTE** Starting v3.95.0 of the New Relic Terraform Provider, the `insightsInsertUrl` provider argument is deprecated and will be removed in a future major release.
The correct Insights collector endpoint is now picked automatically from the provider's `region` argument, so no manual override is needed. If you were setting `insightsInsertUrl` as a workaround for the EU or JP region, you can safely remove it - values passed there are ignored with a warning in the logs.
*
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as newrelic from "@pulumi/newrelic";
*
* const foo = new newrelic.insights.Event("foo", {events: [{
* type: "MyEvent",
* timestamp: 1232471100,
* attributes: [
* {
* key: "a_string_attribute",
* value: "a string",
* },
* {
* key: "an_integer_attribute",
* value: "42",
* type: "int",
* },
* {
* key: "a_float_attribute",
* value: "101.1",
* type: "float",
* },
* ],
* }]});
* ```
*
* ## Events
*
* The `event` mapping supports the following arguments:
*
* * `type` - (Required) The event's name. Can be a combination of alphanumeric characters, underscores, and colons.
* * `timestamp` - (Optional) Must be a Unix epoch timestamp. You can define timestamps either in seconds or in milliseconds.
* * `attribute` - (Required) An attribute to include in your event payload. Multiple attribute blocks can be defined for an event. See Attributes below for details.
*
* ### Attributes
*
* The `attribute` mapping supports the following arguments:
*
* * `key` - (Required) The name of the attribute.
* * `value` - (Required) The value of the attribute.
* * `type` - (Optional) Specify the type for the attribute value. This is useful when passing integer or float values to Insights. Allowed values are `string`, `int`, or `float`. Defaults to `string`.
*/
export declare class Event extends pulumi.CustomResource {
/**
* Get an existing Event 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?: EventState, opts?: pulumi.CustomResourceOptions): Event;
/**
* Returns true if the given object is an instance of Event. 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 Event;
/**
* An event to insert into Insights. Multiple event blocks can be defined. See Events below for details.
*/
readonly events: pulumi.Output;
/**
* Create a Event 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: EventArgs, opts?: pulumi.CustomResourceOptions);
}
/**
* Input properties used for looking up and filtering Event resources.
*/
export interface EventState {
/**
* An event to insert into Insights. Multiple event blocks can be defined. See Events below for details.
*/
events?: pulumi.Input[] | undefined>;
}
/**
* The set of arguments for constructing a Event resource.
*/
export interface EventArgs {
/**
* An event to insert into Insights. Multiple event blocks can be defined. See Events below for details.
*/
events: pulumi.Input[]>;
}
//# sourceMappingURL=event.d.ts.map