import * as pulumi from "@pulumi/pulumi";
import * as outputs from "../types/output";
/**
 * This data source provides details about a specific Repository File Diff resource in Oracle Cloud Infrastructure Devops service.
 *
 * Gets the line-by-line difference between file on different commits.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testRepositoryFileDiff = oci.devops.getRepositoryFileDiff({
 *     baseVersion: repositoryFileDiffBaseVersion,
 *     repositoryId: testRepository.id,
 *     targetVersion: repositoryFileDiffTargetVersion,
 *     filePath: repositoryFileDiffFilePath,
 *     isComparisonFromMergeBase: repositoryFileDiffIsComparisonFromMergeBase === "true",
 * });
 * ```
 */
export declare function getRepositoryFileDiff(args: GetRepositoryFileDiffArgs, opts?: pulumi.InvokeOptions): Promise<GetRepositoryFileDiffResult>;
/**
 * A collection of arguments for invoking getRepositoryFileDiff.
 */
export interface GetRepositoryFileDiffArgs {
    /**
     * The branch to compare changes against.
     */
    baseVersion: string;
    /**
     * A filter to return only commits that affect any of the specified paths.
     */
    filePath: string;
    /**
     * Boolean to indicate whether to use merge base or most recent revision.
     */
    isComparisonFromMergeBase?: boolean;
    /**
     * Unique repository identifier.
     */
    repositoryId: string;
    /**
     * The branch where changes are coming from.
     */
    targetVersion: string;
}
/**
 * A collection of values returned by getRepositoryFileDiff.
 */
export interface GetRepositoryFileDiffResult {
    /**
     * Indicates whether the changed file contains conflicts.
     */
    readonly areConflictsInFile: boolean;
    readonly baseVersion: string;
    /**
     * List of changed section in the file.
     */
    readonly changes: outputs.DevOps.GetRepositoryFileDiffChange[];
    readonly filePath: string;
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    /**
     * Indicates whether the file is binary.
     */
    readonly isBinary: boolean;
    readonly isComparisonFromMergeBase?: boolean;
    /**
     * Indicates whether the file is large.
     */
    readonly isLarge: boolean;
    /**
     * The ID of the changed object on the target version.
     */
    readonly newId: string;
    /**
     * The path on the target version to the changed object.
     */
    readonly newPath: string;
    /**
     * The ID of the changed object on the base version.
     */
    readonly oldId: string;
    /**
     * The path on the base version to the changed object.
     */
    readonly oldPath: string;
    readonly repositoryId: string;
    readonly targetVersion: string;
}
/**
 * This data source provides details about a specific Repository File Diff resource in Oracle Cloud Infrastructure Devops service.
 *
 * Gets the line-by-line difference between file on different commits.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testRepositoryFileDiff = oci.devops.getRepositoryFileDiff({
 *     baseVersion: repositoryFileDiffBaseVersion,
 *     repositoryId: testRepository.id,
 *     targetVersion: repositoryFileDiffTargetVersion,
 *     filePath: repositoryFileDiffFilePath,
 *     isComparisonFromMergeBase: repositoryFileDiffIsComparisonFromMergeBase === "true",
 * });
 * ```
 */
export declare function getRepositoryFileDiffOutput(args: GetRepositoryFileDiffOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetRepositoryFileDiffResult>;
/**
 * A collection of arguments for invoking getRepositoryFileDiff.
 */
export interface GetRepositoryFileDiffOutputArgs {
    /**
     * The branch to compare changes against.
     */
    baseVersion: pulumi.Input<string>;
    /**
     * A filter to return only commits that affect any of the specified paths.
     */
    filePath: pulumi.Input<string>;
    /**
     * Boolean to indicate whether to use merge base or most recent revision.
     */
    isComparisonFromMergeBase?: pulumi.Input<boolean | undefined>;
    /**
     * Unique repository identifier.
     */
    repositoryId: pulumi.Input<string>;
    /**
     * The branch where changes are coming from.
     */
    targetVersion: pulumi.Input<string>;
}
//# sourceMappingURL=getRepositoryFileDiff.d.ts.map