import { IComGithubArgoprojArgoCdV3PkgApisApplicationV1alpha1DrySource } from "./DrySource.js";
import { IComGithubArgoprojArgoCdV3PkgApisApplicationV1alpha1HydrateTo } from "./HydrateTo.js";
import { IComGithubArgoprojArgoCdV3PkgApisApplicationV1alpha1SyncSource } from "./SyncSource.js";
import { ModelData, Model } from "@kubernetes-models/base";
/**
 * SourceHydrator specifies a dry "don't repeat yourself" source for manifests, a sync source from which to sync
 * hydrated manifests, and an optional hydrateTo location to act as a "staging" aread for hydrated manifests.
 */
export interface ISourceHydrator {
    /**
     * DrySource specifies where the dry "don't repeat yourself" manifest source lives.
     */
    "drySource": IComGithubArgoprojArgoCdV3PkgApisApplicationV1alpha1DrySource;
    /**
     * HydrateTo specifies an optional "staging" location to push hydrated manifests to. An external system would then
     * have to move manifests to the SyncSource, e.g. by pull request.
     */
    "hydrateTo"?: IComGithubArgoprojArgoCdV3PkgApisApplicationV1alpha1HydrateTo;
    /**
     * SyncSource specifies where to sync hydrated manifests from.
     */
    "syncSource": IComGithubArgoprojArgoCdV3PkgApisApplicationV1alpha1SyncSource;
}
/**
 * SourceHydrator specifies a dry "don't repeat yourself" source for manifests, a sync source from which to sync
 * hydrated manifests, and an optional hydrateTo location to act as a "staging" aread for hydrated manifests.
 */
export declare class SourceHydrator extends Model<ISourceHydrator> implements ISourceHydrator {
    "drySource": IComGithubArgoprojArgoCdV3PkgApisApplicationV1alpha1DrySource;
    "hydrateTo"?: IComGithubArgoprojArgoCdV3PkgApisApplicationV1alpha1HydrateTo;
    "syncSource": IComGithubArgoprojArgoCdV3PkgApisApplicationV1alpha1SyncSource;
    constructor(data?: ModelData<ISourceHydrator>);
}
export type { ISourceHydrator as IComGithubArgoprojArgoCdV3PkgApisApplicationV1alpha1SourceHydrator, SourceHydrator as ComGithubArgoprojArgoCdV3PkgApisApplicationV1alpha1SourceHydrator };
