/**
 * Copyright © 2023 Nevis Security AG. All rights reserved.
 */

import { ChannelMessage } from '../ChannelMessage';

/**
 * Holds the parameters of the PIN enrollment call.
 */
export class PinPolicyMessage extends ChannelMessage {
	/**
	 * The identifier of the operation.
	 */
	operationId: string;

	/**
	 * The minimum length of the PIN.
	 */
	minLength: number;

	/**
	 * The maximum length of the PIN.
	 */
	maxLength: number;

	/**
	 * Default constructor for {@link PinPolicyMessage}.
	 *
	 * @param operationId the identifier of the operation.
	 * @param minLength the minimum length of the PIN.
	 * @param maxLength the maximum length of the PIN.
	 */
	constructor(operationId: string, minLength: number, maxLength: number) {
		super();

		this.operationId = operationId;
		this.minLength = minLength;
		this.maxLength = maxLength;
	}
}
