import * as pulumi from "@pulumi/pulumi"; /** * The `scaleway.FunctionToken` resource allows you to create and manage authentication tokens for Scaleway [Serverless Functions](https://www.scaleway.com/en/docs/serverless/functions/). * * Refer to the Functions tokens [documentation](https://www.scaleway.com/en/docs/serverless/functions/how-to/create-auth-token-from-console/) and [API documentation](https://www.scaleway.com/en/developers/api/serverless-functions/#path-tokens-list-all-tokens) for more information. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as scaleway from "@ediri/scaleway"; * * const mainFunctionNamespace = new scaleway.FunctionNamespace("mainFunctionNamespace", {}); * const mainFunction = new scaleway.Function("mainFunction", { * namespaceId: mainFunctionNamespace.id, * runtime: "go118", * handler: "Handle", * privacy: "private", * }); * // Namespace Token * const namespace = new scaleway.FunctionToken("namespace", { * namespaceId: mainFunctionNamespace.id, * expiresAt: "2022-10-18T11:35:15+02:00", * }); * // Function Token * const _function = new scaleway.FunctionToken("function", {functionId: mainFunction.id}); * ``` * * ## Import * * Tokens can be imported using `{region}/{id}`, as shown below: * * bash * * ```sh * $ pulumi import scaleway:index/functionToken:FunctionToken main fr-par/11111111-1111-1111-1111-111111111111 * ``` */ export declare class FunctionToken extends pulumi.CustomResource { /** * Get an existing FunctionToken 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?: FunctionTokenState, opts?: pulumi.CustomResourceOptions): FunctionToken; /** * Returns true if the given object is an instance of FunctionToken. 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 FunctionToken; /** * The description of the token. */ readonly description: pulumi.Output; /** * The expiration date of the token. */ readonly expiresAt: pulumi.Output; /** * The unique identifier of the function. * * > Only one of `namespaceId` or `functionId` must be set. */ readonly functionId: pulumi.Output; /** * The unique identifier of the Functions namespace. */ readonly namespaceId: pulumi.Output; /** * `region`). The region in which the namespace is created. * * > **Important** Updating any of the arguments above will recreate the token. */ readonly region: pulumi.Output; /** * The token. */ readonly token: pulumi.Output; /** * Create a FunctionToken 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?: FunctionTokenArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering FunctionToken resources. */ export interface FunctionTokenState { /** * The description of the token. */ description?: pulumi.Input; /** * The expiration date of the token. */ expiresAt?: pulumi.Input; /** * The unique identifier of the function. * * > Only one of `namespaceId` or `functionId` must be set. */ functionId?: pulumi.Input; /** * The unique identifier of the Functions namespace. */ namespaceId?: pulumi.Input; /** * `region`). The region in which the namespace is created. * * > **Important** Updating any of the arguments above will recreate the token. */ region?: pulumi.Input; /** * The token. */ token?: pulumi.Input; } /** * The set of arguments for constructing a FunctionToken resource. */ export interface FunctionTokenArgs { /** * The description of the token. */ description?: pulumi.Input; /** * The expiration date of the token. */ expiresAt?: pulumi.Input; /** * The unique identifier of the function. * * > Only one of `namespaceId` or `functionId` must be set. */ functionId?: pulumi.Input; /** * The unique identifier of the Functions namespace. */ namespaceId?: pulumi.Input; /** * `region`). The region in which the namespace is created. * * > **Important** Updating any of the arguments above will recreate the token. */ region?: pulumi.Input; }