package org.apache.haox.asn1.type;
import org.apache.haox.asn1.EncodingOption;
import org.apache.haox.asn1.TaggingOption;
import java.io.IOException;
import java.nio.ByteBuffer;
public interface Asn1Type {
public int tagFlags();
public int tagNo();
public void setEncodingOption(EncodingOption encodingOption);
public int encodingLength();
public byte[] encode();
public void encode(ByteBuffer buffer);
public void decode(byte[] content) throws IOException;
public void decode(ByteBuffer content) throws IOException;
public byte[] taggedEncode(TaggingOption taggingOption);
public void taggedEncode(ByteBuffer buffer, TaggingOption taggingOption);
public void taggedDecode(ByteBuffer content, TaggingOption taggingOption) throws IOException;
public void taggedDecode(byte[] content, TaggingOption taggingOption) throws IOException;
}