import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
 * This data source provides the list of Tools in Oracle Cloud Infrastructure Generative Ai Agent service.
 *
 * Gets a list of tools.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testTools = oci.generativeai.getAgentTools({
 *     agentId: testAgent.id,
 *     compartmentId: compartmentId,
 *     displayName: toolDisplayName,
 *     state: toolState,
 * });
 * ```
 */
export declare function getAgentTools(args?: GetAgentToolsArgs, opts?: pulumi.InvokeOptions): Promise<GetAgentToolsResult>;
/**
 * A collection of arguments for invoking getAgentTools.
 */
export interface GetAgentToolsArgs {
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the agent.
     */
    agentId?: string;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment in which to list resources.
     */
    compartmentId?: string;
    /**
     * A filter to return only resources that match the given display name exactly.
     */
    displayName?: string;
    filters?: inputs.GenerativeAi.GetAgentToolsFilter[];
    /**
     * A filter to return only resources that match the given lifecycle state. The state value is case-insensitive.
     */
    state?: string;
}
/**
 * A collection of values returned by getAgentTools.
 */
export interface GetAgentToolsResult {
    /**
     * The OCID of the agent that this Tool is attached to.
     */
    readonly agentId?: string;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment.
     */
    readonly compartmentId?: string;
    /**
     * A user-friendly name. Does not have to be unique, and it's changeable.
     */
    readonly displayName?: string;
    readonly filters?: outputs.GenerativeAi.GetAgentToolsFilter[];
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    /**
     * The current state of the Tool.
     */
    readonly state?: string;
    /**
     * The list of tool_collection.
     */
    readonly toolCollections: outputs.GenerativeAi.GetAgentToolsToolCollection[];
}
/**
 * This data source provides the list of Tools in Oracle Cloud Infrastructure Generative Ai Agent service.
 *
 * Gets a list of tools.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testTools = oci.generativeai.getAgentTools({
 *     agentId: testAgent.id,
 *     compartmentId: compartmentId,
 *     displayName: toolDisplayName,
 *     state: toolState,
 * });
 * ```
 */
export declare function getAgentToolsOutput(args?: GetAgentToolsOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetAgentToolsResult>;
/**
 * A collection of arguments for invoking getAgentTools.
 */
export interface GetAgentToolsOutputArgs {
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the agent.
     */
    agentId?: pulumi.Input<string | undefined>;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment in which to list resources.
     */
    compartmentId?: pulumi.Input<string | undefined>;
    /**
     * A filter to return only resources that match the given display name exactly.
     */
    displayName?: pulumi.Input<string | undefined>;
    filters?: pulumi.Input<pulumi.Input<inputs.GenerativeAi.GetAgentToolsFilterArgs>[] | undefined>;
    /**
     * A filter to return only resources that match the given lifecycle state. The state value is case-insensitive.
     */
    state?: pulumi.Input<string | undefined>;
}
//# sourceMappingURL=getAgentTools.d.ts.map