using System;
namespace Org.BouncyCastle.Crypto
{
/**
* Base interface for mapping from an alphabet to a set of indexes
* suitable for use with FPE.
*/
public interface IAlphabetMapper
{
///
/// Return the number of characters in the alphabet.
///
/// the radix for the alphabet.
int Radix { get; }
///
/// Return the passed in char[] as a byte array of indexes (indexes
/// can be more than 1 byte)
///
/// an index array.
/// characters to be mapped.
byte[] ConvertToIndexes(char[] input);
///
/// Return a char[] for this alphabet based on the indexes passed.
///
/// an array of char corresponding to the index values.
/// input array of indexes.
char[] ConvertToChars(byte[] input);
}
}