import { IComGithubArgoprojArgoCdV3PkgApisApplicationV1alpha1ConfigMapKeyRef } from "./ConfigMapKeyRef.js";
import { IComGithubArgoprojArgoCdV3PkgApisApplicationV1alpha1SecretRef } from "./SecretRef.js";
import { ModelData, Model } from "@kubernetes-models/base";
/**
 * SCMProviderGeneratorGitlab defines connection info specific to Gitlab.
 */
export interface ISCMProviderGeneratorGitlab {
    /**
     * Scan all branches instead of just the default branch.
     */
    "allBranches"?: boolean;
    /**
     * The Gitlab API URL to talk to.
     */
    "api"?: string;
    /**
     * ConfigMap key holding the trusted certificates
     */
    "caRef"?: IComGithubArgoprojArgoCdV3PkgApisApplicationV1alpha1ConfigMapKeyRef;
    /**
     * Gitlab group to scan. Required.  You can use either the project id (recommended) or the full namespaced path.
     */
    "group": string;
    /**
     * When recursing through subgroups, also include shared Projects (true) or scan only the subgroups under same path (false).  Defaults to "true"
     */
    "includeSharedProjects"?: boolean;
    /**
     * Recurse through subgroups (true) or scan only the base group (false).  Defaults to "false"
     */
    "includeSubgroups"?: boolean;
    /**
     * Skips validating the SCM provider's TLS certificate - useful for self-signed certificates.; default: false
     */
    "insecure"?: boolean;
    /**
     * Authentication token reference.
     */
    "tokenRef"?: IComGithubArgoprojArgoCdV3PkgApisApplicationV1alpha1SecretRef;
    /**
     * Filter repos list based on Gitlab Topic.
     */
    "topic"?: string;
}
/**
 * SCMProviderGeneratorGitlab defines connection info specific to Gitlab.
 */
export declare class SCMProviderGeneratorGitlab extends Model<ISCMProviderGeneratorGitlab> implements ISCMProviderGeneratorGitlab {
    "allBranches"?: boolean;
    "api"?: string;
    "caRef"?: IComGithubArgoprojArgoCdV3PkgApisApplicationV1alpha1ConfigMapKeyRef;
    "group": string;
    "includeSharedProjects"?: boolean;
    "includeSubgroups"?: boolean;
    "insecure"?: boolean;
    "tokenRef"?: IComGithubArgoprojArgoCdV3PkgApisApplicationV1alpha1SecretRef;
    "topic"?: string;
    constructor(data?: ModelData<ISCMProviderGeneratorGitlab>);
}
export type { ISCMProviderGeneratorGitlab as IComGithubArgoprojArgoCdV3PkgApisApplicationV1alpha1SCMProviderGeneratorGitlab, SCMProviderGeneratorGitlab as ComGithubArgoprojArgoCdV3PkgApisApplicationV1alpha1SCMProviderGeneratorGitlab };
