package com.atlassian.bitbucket.mesh.git.builder.updateref;

import com.atlassian.bitbucket.mesh.git.builder.GitProcess;
import com.atlassian.bitbucket.mesh.git.builder.GitProcessBuilderSupport;

import javax.annotation.Nonnull;
import javax.annotation.Nullable;

public interface GitUpdateRefBuilderSupport<B extends GitUpdateRefBuilderSupport<B>>
        extends GitProcessBuilderSupport<B> {

    @Nonnull
    GitProcess<Void> build();

    @Nonnull
    B deref(boolean value);

    @Nonnull
    B message(@Nullable String value);

    @Nonnull
    B oldValue(@Nullable String value);
}
