declare namespace java {
    namespace security {
        namespace spec {
            // @ts-ignore
             class InvalidKeySpecException extends java.security.GeneralSecurityException {
                /**
                 * Constructs an InvalidKeySpecException with no detail message. A
                 * detail message is a String that describes this particular
                 * exception.
                 */
                // @ts-ignore
                constructor()
                /**
                 * Constructs an InvalidKeySpecException with the specified detail
                 * message. A detail message is a String that describes this
                 * particular exception.
                 */
                // @ts-ignore
                constructor(msg: string)
                /**
                 * Creates a {@code InvalidKeySpecException} with the specified
                 * detail message and cause.
                 */
                // @ts-ignore
                constructor(message: string, cause: java.lang.Throwable)
                /**
                 * Creates a {@code InvalidKeySpecException} with the specified cause
                 * and a detail message of {@code (cause==null ? null : cause.toString())}
                 * (which typically contains the class and detail message of
                 * {@code cause}).
                 */
                // @ts-ignore
                constructor(cause: java.lang.Throwable)
            }
        }
    }
}
