import * as pulumi from "@pulumi/pulumi";
import * as inputs from "./types/input";
import * as outputs from "./types/output";
/**
 * @deprecated digitalocean.GenaiAgent has been deprecated in favor of digitalocean.GradientaiAgent
 */
export declare class GenaiAgent extends pulumi.CustomResource {
    /**
     * Get an existing GenaiAgent 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<pulumi.ID>, state?: GenaiAgentState, opts?: pulumi.CustomResourceOptions): GenaiAgent;
    /**
     * Returns true if the given object is an instance of GenaiAgent.  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 GenaiAgent;
    /**
     * AgentGuardrail represents a Guardrail attached to Gen AI Agent
     */
    readonly agentGuardrails: pulumi.Output<outputs.GenaiAgentAgentGuardrail[] | undefined>;
    /**
     * Anthropic API Key information
     */
    readonly anthropicApiKeys: pulumi.Output<outputs.GenaiAgentAnthropicApiKey[] | undefined>;
    /**
     * Optional Anthropic API key ID to use with Anthropic models
     */
    readonly anthropicKeyUuid: pulumi.Output<string | undefined>;
    /**
     * List of API Key Infos
     */
    readonly apiKeyInfos: pulumi.Output<outputs.GenaiAgentApiKeyInfo[] | undefined>;
    /**
     * List of API Keys
     */
    readonly apiKeys: pulumi.Output<outputs.GenaiAgentApiKey[] | undefined>;
    /**
     * List of Chatbot Identifiers
     */
    readonly chatbotIdentifiers: pulumi.Output<outputs.GenaiAgentChatbotIdentifier[] | undefined>;
    /**
     * ChatBot configuration
     */
    readonly chatbots: pulumi.Output<outputs.GenaiAgentChatbot[] | undefined>;
    /**
     * List of child agents
     */
    readonly childAgents: pulumi.Output<outputs.GenaiAgentChildAgent[]>;
    /**
     * Timestamp when the Agent was created
     */
    readonly createdAt: pulumi.Output<string | undefined>;
    /**
     * List of API Key Infos
     */
    readonly deployments: pulumi.Output<outputs.GenaiAgentDeployment[] | undefined>;
    /**
     * Description for the Agent
     */
    readonly description: pulumi.Output<string | undefined>;
    /**
     * List of Functions
     */
    readonly functions: pulumi.Output<outputs.GenaiAgentFunction[] | undefined>;
    /**
     * If case condition
     */
    readonly ifCase: pulumi.Output<string | undefined>;
    /**
     * Instruction for the Agent
     */
    readonly instruction: pulumi.Output<string>;
    /**
     * K value
     */
    readonly k: pulumi.Output<number | undefined>;
    /**
     * Ids of the knowledge base(s) to attach to the agent
     */
    readonly knowledgeBaseUuids: pulumi.Output<string[] | undefined>;
    /**
     * List of Knowledge Bases
     */
    readonly knowledgeBases: pulumi.Output<outputs.GenaiAgentKnowledgeBase[]>;
    /**
     * Maximum tokens allowed
     */
    readonly maxTokens: pulumi.Output<number | undefined>;
    /**
     * Model UUID of the Agent
     */
    readonly modelUuid: pulumi.Output<string>;
    /**
     * Model of the Agent
     */
    readonly models: pulumi.Output<outputs.GenaiAgentModel[]>;
    /**
     * Name of the Agent
     */
    readonly name: pulumi.Output<string>;
    /**
     * OpenAI API Key information
     */
    readonly openAiApiKeys: pulumi.Output<outputs.GenaiAgentOpenAiApiKey[] | undefined>;
    /**
     * Optional OpenAI API key ID to use with OpenAI models
     */
    readonly openAiKeyUuid: pulumi.Output<string | undefined>;
    /**
     * List of child agents
     */
    readonly parentAgents: pulumi.Output<outputs.GenaiAgentParentAgent[]>;
    /**
     * Project ID of the Agent
     */
    readonly projectId: pulumi.Output<string>;
    /**
     * Indicates if the agent should provide citations in responses
     */
    readonly provideCitations: pulumi.Output<boolean | undefined>;
    /**
     * Region where the Agent is deployed
     */
    readonly region: pulumi.Output<string>;
    /**
     * Retrieval method used
     */
    readonly retrievalMethod: pulumi.Output<string | undefined>;
    /**
     * Timestamp when the route was created
     */
    readonly routeCreatedAt: pulumi.Output<string>;
    /**
     * User who created the route
     */
    readonly routeCreatedBy: pulumi.Output<string | undefined>;
    /**
     * Route name
     */
    readonly routeName: pulumi.Output<string | undefined>;
    /**
     * Route UUID
     */
    readonly routeUuid: pulumi.Output<string | undefined>;
    /**
     * List of Tags
     */
    readonly tags: pulumi.Output<string[] | undefined>;
    /**
     * Agent temperature setting
     */
    readonly temperature: pulumi.Output<number | undefined>;
    /**
     * Agent Template
     */
    readonly templates: pulumi.Output<outputs.GenaiAgentTemplate[] | undefined>;
    /**
     * Top P sampling parameter
     */
    readonly topP: pulumi.Output<number | undefined>;
    /**
     * Timestamp when the Agent was updated
     */
    readonly updatedAt: pulumi.Output<string>;
    /**
     * URL for the Agent
     */
    readonly url: pulumi.Output<string | undefined>;
    /**
     * User ID linked with the Agent
     */
    readonly userId: pulumi.Output<string | undefined>;
    /**
     * Identifier for the workspace
     */
    readonly workspaceUuid: pulumi.Output<string | undefined>;
    /**
     * Create a GenaiAgent 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.
     */
    /** @deprecated digitalocean.GenaiAgent has been deprecated in favor of digitalocean.GradientaiAgent */
    constructor(name: string, args: GenaiAgentArgs, opts?: pulumi.CustomResourceOptions);
}
/**
 * Input properties used for looking up and filtering GenaiAgent resources.
 */
export interface GenaiAgentState {
    /**
     * AgentGuardrail represents a Guardrail attached to Gen AI Agent
     */
    agentGuardrails?: pulumi.Input<pulumi.Input<inputs.GenaiAgentAgentGuardrail>[] | undefined>;
    /**
     * Anthropic API Key information
     */
    anthropicApiKeys?: pulumi.Input<pulumi.Input<inputs.GenaiAgentAnthropicApiKey>[] | undefined>;
    /**
     * Optional Anthropic API key ID to use with Anthropic models
     */
    anthropicKeyUuid?: pulumi.Input<string | undefined>;
    /**
     * List of API Key Infos
     */
    apiKeyInfos?: pulumi.Input<pulumi.Input<inputs.GenaiAgentApiKeyInfo>[] | undefined>;
    /**
     * List of API Keys
     */
    apiKeys?: pulumi.Input<pulumi.Input<inputs.GenaiAgentApiKey>[] | undefined>;
    /**
     * List of Chatbot Identifiers
     */
    chatbotIdentifiers?: pulumi.Input<pulumi.Input<inputs.GenaiAgentChatbotIdentifier>[] | undefined>;
    /**
     * ChatBot configuration
     */
    chatbots?: pulumi.Input<pulumi.Input<inputs.GenaiAgentChatbot>[] | undefined>;
    /**
     * List of child agents
     */
    childAgents?: pulumi.Input<pulumi.Input<inputs.GenaiAgentChildAgent>[] | undefined>;
    /**
     * Timestamp when the Agent was created
     */
    createdAt?: pulumi.Input<string | undefined>;
    /**
     * List of API Key Infos
     */
    deployments?: pulumi.Input<pulumi.Input<inputs.GenaiAgentDeployment>[] | undefined>;
    /**
     * Description for the Agent
     */
    description?: pulumi.Input<string | undefined>;
    /**
     * List of Functions
     */
    functions?: pulumi.Input<pulumi.Input<inputs.GenaiAgentFunction>[] | undefined>;
    /**
     * If case condition
     */
    ifCase?: pulumi.Input<string | undefined>;
    /**
     * Instruction for the Agent
     */
    instruction?: pulumi.Input<string | undefined>;
    /**
     * K value
     */
    k?: pulumi.Input<number | undefined>;
    /**
     * Ids of the knowledge base(s) to attach to the agent
     */
    knowledgeBaseUuids?: pulumi.Input<pulumi.Input<string>[] | undefined>;
    /**
     * List of Knowledge Bases
     */
    knowledgeBases?: pulumi.Input<pulumi.Input<inputs.GenaiAgentKnowledgeBase>[] | undefined>;
    /**
     * Maximum tokens allowed
     */
    maxTokens?: pulumi.Input<number | undefined>;
    /**
     * Model UUID of the Agent
     */
    modelUuid?: pulumi.Input<string | undefined>;
    /**
     * Model of the Agent
     */
    models?: pulumi.Input<pulumi.Input<inputs.GenaiAgentModel>[] | undefined>;
    /**
     * Name of the Agent
     */
    name?: pulumi.Input<string | undefined>;
    /**
     * OpenAI API Key information
     */
    openAiApiKeys?: pulumi.Input<pulumi.Input<inputs.GenaiAgentOpenAiApiKey>[] | undefined>;
    /**
     * Optional OpenAI API key ID to use with OpenAI models
     */
    openAiKeyUuid?: pulumi.Input<string | undefined>;
    /**
     * List of child agents
     */
    parentAgents?: pulumi.Input<pulumi.Input<inputs.GenaiAgentParentAgent>[] | undefined>;
    /**
     * Project ID of the Agent
     */
    projectId?: pulumi.Input<string | undefined>;
    /**
     * Indicates if the agent should provide citations in responses
     */
    provideCitations?: pulumi.Input<boolean | undefined>;
    /**
     * Region where the Agent is deployed
     */
    region?: pulumi.Input<string | undefined>;
    /**
     * Retrieval method used
     */
    retrievalMethod?: pulumi.Input<string | undefined>;
    /**
     * Timestamp when the route was created
     */
    routeCreatedAt?: pulumi.Input<string | undefined>;
    /**
     * User who created the route
     */
    routeCreatedBy?: pulumi.Input<string | undefined>;
    /**
     * Route name
     */
    routeName?: pulumi.Input<string | undefined>;
    /**
     * Route UUID
     */
    routeUuid?: pulumi.Input<string | undefined>;
    /**
     * List of Tags
     */
    tags?: pulumi.Input<pulumi.Input<string>[] | undefined>;
    /**
     * Agent temperature setting
     */
    temperature?: pulumi.Input<number | undefined>;
    /**
     * Agent Template
     */
    templates?: pulumi.Input<pulumi.Input<inputs.GenaiAgentTemplate>[] | undefined>;
    /**
     * Top P sampling parameter
     */
    topP?: pulumi.Input<number | undefined>;
    /**
     * Timestamp when the Agent was updated
     */
    updatedAt?: pulumi.Input<string | undefined>;
    /**
     * URL for the Agent
     */
    url?: pulumi.Input<string | undefined>;
    /**
     * User ID linked with the Agent
     */
    userId?: pulumi.Input<string | undefined>;
    /**
     * Identifier for the workspace
     */
    workspaceUuid?: pulumi.Input<string | undefined>;
}
/**
 * The set of arguments for constructing a GenaiAgent resource.
 */
export interface GenaiAgentArgs {
    /**
     * AgentGuardrail represents a Guardrail attached to Gen AI Agent
     */
    agentGuardrails?: pulumi.Input<pulumi.Input<inputs.GenaiAgentAgentGuardrail>[] | undefined>;
    /**
     * Anthropic API Key information
     */
    anthropicApiKeys?: pulumi.Input<pulumi.Input<inputs.GenaiAgentAnthropicApiKey>[] | undefined>;
    /**
     * Optional Anthropic API key ID to use with Anthropic models
     */
    anthropicKeyUuid?: pulumi.Input<string | undefined>;
    /**
     * List of API Key Infos
     */
    apiKeyInfos?: pulumi.Input<pulumi.Input<inputs.GenaiAgentApiKeyInfo>[] | undefined>;
    /**
     * List of API Keys
     */
    apiKeys?: pulumi.Input<pulumi.Input<inputs.GenaiAgentApiKey>[] | undefined>;
    /**
     * List of Chatbot Identifiers
     */
    chatbotIdentifiers?: pulumi.Input<pulumi.Input<inputs.GenaiAgentChatbotIdentifier>[] | undefined>;
    /**
     * ChatBot configuration
     */
    chatbots?: pulumi.Input<pulumi.Input<inputs.GenaiAgentChatbot>[] | undefined>;
    /**
     * List of child agents
     */
    childAgents?: pulumi.Input<pulumi.Input<inputs.GenaiAgentChildAgent>[] | undefined>;
    /**
     * Timestamp when the Agent was created
     */
    createdAt?: pulumi.Input<string | undefined>;
    /**
     * List of API Key Infos
     */
    deployments?: pulumi.Input<pulumi.Input<inputs.GenaiAgentDeployment>[] | undefined>;
    /**
     * Description for the Agent
     */
    description?: pulumi.Input<string | undefined>;
    /**
     * List of Functions
     */
    functions?: pulumi.Input<pulumi.Input<inputs.GenaiAgentFunction>[] | undefined>;
    /**
     * If case condition
     */
    ifCase?: pulumi.Input<string | undefined>;
    /**
     * Instruction for the Agent
     */
    instruction: pulumi.Input<string>;
    /**
     * K value
     */
    k?: pulumi.Input<number | undefined>;
    /**
     * Ids of the knowledge base(s) to attach to the agent
     */
    knowledgeBaseUuids?: pulumi.Input<pulumi.Input<string>[] | undefined>;
    /**
     * List of Knowledge Bases
     */
    knowledgeBases?: pulumi.Input<pulumi.Input<inputs.GenaiAgentKnowledgeBase>[] | undefined>;
    /**
     * Maximum tokens allowed
     */
    maxTokens?: pulumi.Input<number | undefined>;
    /**
     * Model UUID of the Agent
     */
    modelUuid: pulumi.Input<string>;
    /**
     * Model of the Agent
     */
    models?: pulumi.Input<pulumi.Input<inputs.GenaiAgentModel>[] | undefined>;
    /**
     * Name of the Agent
     */
    name?: pulumi.Input<string | undefined>;
    /**
     * OpenAI API Key information
     */
    openAiApiKeys?: pulumi.Input<pulumi.Input<inputs.GenaiAgentOpenAiApiKey>[] | undefined>;
    /**
     * Optional OpenAI API key ID to use with OpenAI models
     */
    openAiKeyUuid?: pulumi.Input<string | undefined>;
    /**
     * List of child agents
     */
    parentAgents?: pulumi.Input<pulumi.Input<inputs.GenaiAgentParentAgent>[] | undefined>;
    /**
     * Project ID of the Agent
     */
    projectId: pulumi.Input<string>;
    /**
     * Indicates if the agent should provide citations in responses
     */
    provideCitations?: pulumi.Input<boolean | undefined>;
    /**
     * Region where the Agent is deployed
     */
    region: pulumi.Input<string>;
    /**
     * Retrieval method used
     */
    retrievalMethod?: pulumi.Input<string | undefined>;
    /**
     * User who created the route
     */
    routeCreatedBy?: pulumi.Input<string | undefined>;
    /**
     * Route name
     */
    routeName?: pulumi.Input<string | undefined>;
    /**
     * Route UUID
     */
    routeUuid?: pulumi.Input<string | undefined>;
    /**
     * List of Tags
     */
    tags?: pulumi.Input<pulumi.Input<string>[] | undefined>;
    /**
     * Agent temperature setting
     */
    temperature?: pulumi.Input<number | undefined>;
    /**
     * Agent Template
     */
    templates?: pulumi.Input<pulumi.Input<inputs.GenaiAgentTemplate>[] | undefined>;
    /**
     * Top P sampling parameter
     */
    topP?: pulumi.Input<number | undefined>;
    /**
     * URL for the Agent
     */
    url?: pulumi.Input<string | undefined>;
    /**
     * User ID linked with the Agent
     */
    userId?: pulumi.Input<string | undefined>;
    /**
     * Identifier for the workspace
     */
    workspaceUuid?: pulumi.Input<string | undefined>;
}
//# sourceMappingURL=genaiAgent.d.ts.map