4#ifndef _Stroika_Foundation_Cryptography_SSL_ClientContext_h_ 
    5#define _Stroika_Foundation_Cryptography_SSL_ClientContext_h_ 1 
    7#include "Stroika/Foundation/StroikaPreComp.h" 
   11#include "Stroika/Foundation/Common/Common.h" 
   12#include "Stroika/Foundation/Cryptography/PKI/Certificate.h" 
   13#include "Stroika/Foundation/Cryptography/PKI/PrivateKey.h" 
   14#include "Stroika/Foundation/Cryptography/SSL/Common.h" 
   16namespace Stroika::Foundation::Cryptography::SSL::ClientContext {
 
   22        virtual ~IRep () = 
default;
 
   27    struct Ptr : shared_ptr<IRep> {
 
   28        using inherited = shared_ptr<IRep>;
 
   29        using inherited::inherited;
 
   37        optional<tuple<PKI::PrivateKey::Ptr, PKI::Certificate::Ptr>> fClientCertificate;
 
   40    Ptr New (
const Options& options = {});