internal static extern ErrorCode CionPayloadGetPayloadID(PayloadSafeHandle payload, out string id);
internal static extern ErrorCode CionClientSendPayloadAsync(ClientSafeHandle client, PayloadSafeHandle payload, CionClientPayloadAsyncResultCb cb, IntPtr userData);
internal static extern ErrorCode CionPayloadGetTotalBytes(PayloadSafeHandle payload, out UInt64 bytes);
internal static extern ErrorCode CionPayloadSetFilePath(PayloadSafeHandle payload, string path);
internal static extern ErrorCode CionPayloadSaveAsFile(PayloadSafeHandle payload, string path);
internal static extern ErrorCode CionPayloadGetReceivedFileName(PayloadSafeHandle payload, out string path);
internal static extern ErrorCode CionPayloadSetData(PayloadSafeHandle payload, byte[] data, int dataSize);
internal static extern ErrorCode CionPayloadGetData(PayloadSafeHandle payload, out IntPtr data, out int dataSize);
internal static extern ErrorCode CionPayloadCreate(out PayloadSafeHandle payload, PayloadType type);
internal static extern ErrorCode CionServerSendPayloadAsync(ServerSafeHandle server, PeerInfoSafeHandle peerInfo, PayloadSafeHandle payload, CionServerPayloadAsyncResultCb cb, IntPtr userData);
internal static extern ErrorCode CionGroupPublish(GroupSafeHandle group, PayloadSafeHandle data);