// 
// Decompiled by Procyon v0.6.0
// 

package org.bouncycastle.pqc.crypto.mlkem;

import org.bouncycastle.pqc.crypto.KEMParameters;

public class MLKEMParameters implements KEMParameters
{
    public static final MLKEMParameters ml_kem_512;
    public static final MLKEMParameters ml_kem_768;
    public static final MLKEMParameters ml_kem_1024;
    private final String name;
    private final int k;
    private final int sessionKeySize;
    
    private MLKEMParameters(final String name, final int k, final int sessionKeySize) {
        this.name = name;
        this.k = k;
        this.sessionKeySize = sessionKeySize;
    }
    
    public String getName() {
        return this.name;
    }
    
    public MLKEMEngine getEngine() {
        return new MLKEMEngine(this.k);
    }
    
    public int getSessionKeySize() {
        return this.sessionKeySize;
    }
    
    static {
        ml_kem_512 = new MLKEMParameters("ML-KEM-512", 2, 256);
        ml_kem_768 = new MLKEMParameters("ML-KEM-768", 3, 256);
        ml_kem_1024 = new MLKEMParameters("ML-KEM-1024", 4, 256);
    }
}
