if (ParagonIE_Sodium_Core_Util::
strlen($secretKey) !== self::CRYPTO_SIGN_SECRETKEYBYTES
) { throw new SodiumException('Argument 1 must be CRYPTO_SIGN_SECRETKEYBYTES long.'
);
} if (self::
useNewSodiumAPI()) { return sodium_crypto_sign_publickey_from_secretkey($secretKey);
} if (self::
use_fallback('crypto_sign_publickey_from_secretkey'
)) { return (string) call_user_func('\\Sodium\\crypto_sign_publickey_from_secretkey',
$secretKey);
} if (PHP_INT_SIZE === 4
) { return ParagonIE_Sodium_Core32_Ed25519::
publickey_from_secretkey($secretKey);
} return ParagonIE_Sodium_Core_Ed25519::
publickey_from_secretkey($secretKey);
} /**
* Extract an Ed25519 secret key from an Ed25519 keypair.
*
* @param string $keypair Keypair
* @return string Secret key
* @throws SodiumException
* @throws TypeError
* @psalm-suppress MixedArgument
*/