import { IComGithubFluxcdPkgApisAclAccessFrom } from "../../github.com/fluxcd/pkg/apis/acl/AccessFrom.js";
import { IComGithubFluxcdPkgApisMetaLocalObjectReference } from "../../github.com/fluxcd/pkg/apis/meta/LocalObjectReference.js";
import { ModelData, Model } from "@kubernetes-models/base";
/**
 * HelmRepositorySpec defines the reference to a Helm repository.
 */
export interface IHelmRepositorySpec {
    /**
     * AccessFrom defines an Access Control List for allowing cross-namespace references to this object.
     */
    "accessFrom"?: IComGithubFluxcdPkgApisAclAccessFrom;
    "interval": string;
    /**
     * PassCredentials allows the credentials from the SecretRef to be passed on to
     * a host that does not match the host as defined in URL.
     * This may be required if the host of the advertised chart URLs in the index
     * differ from the defined URL.
     * Enabling this should be done with caution, as it can potentially result in
     * credentials getting stolen in a MITM-attack.
     */
    "passCredentials"?: boolean;
    /**
     * The name of the secret containing authentication credentials for the Helm
     * repository.
     * For HTTP/S basic auth the secret must contain username and
     * password fields.
     * For TLS the secret must contain a certFile and keyFile, and/or
     * caFile fields.
     */
    "secretRef"?: IComGithubFluxcdPkgApisMetaLocalObjectReference;
    /**
     * This flag tells the controller to suspend the reconciliation of this source.
     */
    "suspend"?: boolean;
    "timeout"?: string;
    /**
     * The Helm repository URL, a valid URL contains at least a protocol and host.
     */
    "url": string;
}
/**
 * HelmRepositorySpec defines the reference to a Helm repository.
 */
export declare class HelmRepositorySpec extends Model<IHelmRepositorySpec> implements IHelmRepositorySpec {
    "accessFrom"?: IComGithubFluxcdPkgApisAclAccessFrom;
    "interval": string;
    "passCredentials"?: boolean;
    "secretRef"?: IComGithubFluxcdPkgApisMetaLocalObjectReference;
    "suspend"?: boolean;
    "timeout"?: string;
    "url": string;
    constructor(data?: ModelData<IHelmRepositorySpec>);
}
export type { IHelmRepositorySpec as IComGithubFluxcdSourceControllerApiV1beta1HelmRepositorySpec, HelmRepositorySpec as ComGithubFluxcdSourceControllerApiV1beta1HelmRepositorySpec };
