import { IComGithubFluxcdSourceControllerApiV1OIDCIdentityMatch } from "./OIDCIdentityMatch.js";
import { IComGithubFluxcdPkgApisMetaLocalObjectReference } from "../../github.com/fluxcd/pkg/apis/meta/LocalObjectReference.js";
import { ModelData, Model } from "@kubernetes-models/base";
/**
 * OCIRepositoryVerification verifies the authenticity of an OCI Artifact
 */
export interface IOCIRepositoryVerification {
    /**
     * MatchOIDCIdentity specifies the identity matching criteria to use
     * while verifying an OCI artifact which was signed using Cosign keyless
     * signing. The artifact's identity is deemed to be verified if any of the
     * specified matchers match against the identity.
     */
    "matchOIDCIdentity"?: Array<IComGithubFluxcdSourceControllerApiV1OIDCIdentityMatch>;
    /**
     * Provider specifies the technology used to sign the OCI Artifact.
     */
    "provider": "cosign" | "notation";
    /**
     * SecretRef specifies the Kubernetes Secret containing the
     * trusted public keys.
     */
    "secretRef"?: IComGithubFluxcdPkgApisMetaLocalObjectReference;
}
/**
 * OCIRepositoryVerification verifies the authenticity of an OCI Artifact
 */
export declare class OCIRepositoryVerification extends Model<IOCIRepositoryVerification> implements IOCIRepositoryVerification {
    "matchOIDCIdentity"?: Array<IComGithubFluxcdSourceControllerApiV1OIDCIdentityMatch>;
    "provider": "cosign" | "notation";
    "secretRef"?: IComGithubFluxcdPkgApisMetaLocalObjectReference;
    constructor(data?: ModelData<IOCIRepositoryVerification>);
}
export type { IOCIRepositoryVerification as IComGithubFluxcdSourceControllerApiV1OCIRepositoryVerification, OCIRepositoryVerification as ComGithubFluxcdSourceControllerApiV1OCIRepositoryVerification };
