import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
 * Data Source for fetching a Harness GitOps Repository.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as harness from "@pulumi/harness";
 *
 * const example = harness.platform.getGitopsRepository({
 *     accountId: "account_id",
 *     agentId: "agent_id",
 *     identifier: "identifier",
 *     orgId: "org_id",
 *     projectId: "project_id",
 * });
 * ```
 */
export declare function getGitopsRepository(args: GetGitopsRepositoryArgs, opts?: pulumi.InvokeOptions): Promise<GetGitopsRepositoryResult>;
/**
 * A collection of arguments for invoking getGitopsRepository.
 */
export interface GetGitopsRepositoryArgs {
    /**
     * Account identifier of the GitOps repository.
     */
    accountId: string;
    /**
     * Agent identifier of the GitOps repository.
     */
    agentId: string;
    /**
     * Indicates if to operate on credential set instead of repository.
     */
    credsOnly?: boolean;
    /**
     * Identifier of the GitOps repository.
     */
    identifier: string;
    /**
     * Organization identifier of the GitOps repository.
     */
    orgId?: string;
    /**
     * Project identifier of the GitOps repository.
     */
    projectId?: string;
    /**
     * Indicates to force refresh query for repository.
     */
    queryForceRefresh?: boolean;
    /**
     * Project to query for the GitOps repo.
     */
    queryProject?: string;
    /**
     * GitOps repository to query.
     */
    queryRepo?: string;
    /**
     * Update mask of the repository.
     */
    updateMasks?: inputs.platform.GetGitopsRepositoryUpdateMask[];
    /**
     * Indicates if the GitOps repository should be updated if existing and inserted if not.
     */
    upsert?: boolean;
}
/**
 * A collection of values returned by getGitopsRepository.
 */
export interface GetGitopsRepositoryResult {
    /**
     * Account identifier of the GitOps repository.
     */
    readonly accountId: string;
    /**
     * Agent identifier of the GitOps repository.
     */
    readonly agentId: string;
    /**
     * Indicates if to operate on credential set instead of repository.
     */
    readonly credsOnly?: boolean;
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    /**
     * Identifier of the GitOps repository.
     */
    readonly identifier: string;
    /**
     * Organization identifier of the GitOps repository.
     */
    readonly orgId?: string;
    /**
     * Project identifier of the GitOps repository.
     */
    readonly projectId?: string;
    /**
     * Indicates to force refresh query for repository.
     */
    readonly queryForceRefresh?: boolean;
    /**
     * Project to query for the GitOps repo.
     */
    readonly queryProject?: string;
    /**
     * GitOps repository to query.
     */
    readonly queryRepo?: string;
    /**
     * Repo details holding application configurations.
     */
    readonly repos: outputs.platform.GetGitopsRepositoryRepo[];
    /**
     * Update mask of the repository.
     */
    readonly updateMasks?: outputs.platform.GetGitopsRepositoryUpdateMask[];
    /**
     * Indicates if the GitOps repository should be updated if existing and inserted if not.
     */
    readonly upsert?: boolean;
}
/**
 * Data Source for fetching a Harness GitOps Repository.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as harness from "@pulumi/harness";
 *
 * const example = harness.platform.getGitopsRepository({
 *     accountId: "account_id",
 *     agentId: "agent_id",
 *     identifier: "identifier",
 *     orgId: "org_id",
 *     projectId: "project_id",
 * });
 * ```
 */
export declare function getGitopsRepositoryOutput(args: GetGitopsRepositoryOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<GetGitopsRepositoryResult>;
/**
 * A collection of arguments for invoking getGitopsRepository.
 */
export interface GetGitopsRepositoryOutputArgs {
    /**
     * Account identifier of the GitOps repository.
     */
    accountId: pulumi.Input<string>;
    /**
     * Agent identifier of the GitOps repository.
     */
    agentId: pulumi.Input<string>;
    /**
     * Indicates if to operate on credential set instead of repository.
     */
    credsOnly?: pulumi.Input<boolean>;
    /**
     * Identifier of the GitOps repository.
     */
    identifier: pulumi.Input<string>;
    /**
     * Organization identifier of the GitOps repository.
     */
    orgId?: pulumi.Input<string>;
    /**
     * Project identifier of the GitOps repository.
     */
    projectId?: pulumi.Input<string>;
    /**
     * Indicates to force refresh query for repository.
     */
    queryForceRefresh?: pulumi.Input<boolean>;
    /**
     * Project to query for the GitOps repo.
     */
    queryProject?: pulumi.Input<string>;
    /**
     * GitOps repository to query.
     */
    queryRepo?: pulumi.Input<string>;
    /**
     * Update mask of the repository.
     */
    updateMasks?: pulumi.Input<pulumi.Input<inputs.platform.GetGitopsRepositoryUpdateMaskArgs>[]>;
    /**
     * Indicates if the GitOps repository should be updated if existing and inserted if not.
     */
    upsert?: pulumi.Input<boolean>;
}
