package com.atlassian.bitbucket.internal.mirroring.auth;


import com.atlassian.bitbucket.validation.annotation.RequiredString;

import javax.annotation.Nonnull;
import javax.validation.constraints.NotNull;
import java.security.PublicKey;

/**
 * Credentials used for SSH authentication.
 */
public interface SshCredentials extends Credentials {
    @Nonnull
    @NotNull(message = "{bitbucket.mirroring.authentication.ssh.publickey.required}")
    PublicKey getPublicKey();

    @Nonnull
    @RequiredString(message = "{bitbucket.mirroring.authentication.ssh.username.required}")
    String getUsername();
}
