package info.knacki.pass.git;

import info.knacki.pass.git.entities.GitCommit;
import info.knacki.pass.git.entities.GitObject;
import info.knacki.pass.git.entities.GitRef;
import info.knacki.pass.io.OnResponseListener;
import info.knacki.pass.io.OnStreamResponseListener;

public interface GitInterface {
    void GetRefs(OnResponseListener<GitRef[]> callback);
    void FetchHead(final OnStreamResponseListener<GitCommit> response);
    void FetchBlob(GitObject.GitBlob blob, OnStreamResponseListener<byte[]> response);
    void PushCommitBuilder(GitCommit.Builder commit, OnStreamResponseListener<Void> resp);
    void CreateBranch(String branchName, OnStreamResponseListener<GitRef[]> callback);
}
