import { IComGithubFluxcdImageAutomationControllerApiV1CommitUser } from "./CommitUser.js";
import { IComGithubFluxcdImageAutomationControllerApiV1SigningKey } from "./SigningKey.js";
import { ModelData, Model } from "@kubernetes-models/base";
/**
 * CommitSpec specifies how to commit changes to the git repository
 */
export interface ICommitSpec {
    /**
     * Author gives the email and optionally the name to use as the
     * author of commits.
     */
    "author": IComGithubFluxcdImageAutomationControllerApiV1CommitUser;
    /**
     * MessageTemplate provides a template for the commit message,
     * into which will be interpolated the details of the change made.
     * Note: The `Updated` template field has been removed. Use `Changed` instead.
     */
    "messageTemplate"?: string;
    /**
     * MessageTemplateValues provides additional values to be available to the
     * templating rendering.
     */
    "messageTemplateValues"?: {
        [key: string]: string;
    };
    /**
     * SigningKey provides the option to sign commits with a GPG key
     */
    "signingKey"?: IComGithubFluxcdImageAutomationControllerApiV1SigningKey;
}
/**
 * CommitSpec specifies how to commit changes to the git repository
 */
export declare class CommitSpec extends Model<ICommitSpec> implements ICommitSpec {
    "author": IComGithubFluxcdImageAutomationControllerApiV1CommitUser;
    "messageTemplate"?: string;
    "messageTemplateValues"?: {
        [key: string]: string;
    };
    "signingKey"?: IComGithubFluxcdImageAutomationControllerApiV1SigningKey;
    constructor(data?: ModelData<ICommitSpec>);
}
export type { ICommitSpec as IComGithubFluxcdImageAutomationControllerApiV1CommitSpec, CommitSpec as ComGithubFluxcdImageAutomationControllerApiV1CommitSpec };
