-
Notifications
You must be signed in to change notification settings - Fork 511
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[SharedWithYouCore] Add new framework for xcode14.
- Loading branch information
1 parent
d08af45
commit 11504a9
Showing
4 changed files
with
280 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,271 @@ | ||
// | ||
// SharedWithYouCore C# bindings | ||
// | ||
// Authors: | ||
// Manuel de la Pena Saenz <mandel@microsoft.com> | ||
// | ||
// Copyright 2022 Microsoft Corporation All rights reserved. | ||
// | ||
|
||
using System; | ||
|
||
using AVFoundation; | ||
using CoreFoundation; | ||
using Foundation; | ||
using ObjCRuntime; | ||
|
||
#if !NET | ||
using NativeHandle = System.IntPtr; | ||
#endif | ||
|
||
namespace SharedWithYouCore { | ||
|
||
[NoWatch, TV (16,0), Mac (13,0), iOS (16,0), MacCatalyst (16,0)] | ||
[BaseType (typeof (NSObject))] | ||
interface SWAction : NSCopying, NSSecureCoding | ||
{ | ||
[Export ("uuid")] | ||
NSUuid Uuid { get; } | ||
|
||
[Export ("complete")] | ||
bool Complete { [Bind ("isComplete")] get; } | ||
|
||
[Export ("fulfill")] | ||
void Fulfill (); | ||
|
||
[Export ("fail")] | ||
void Fail (); | ||
} | ||
|
||
interface ISWCollaborationActionHandler {} | ||
|
||
[NoWatch, TV (16,0), Mac (13,0), iOS (16,0), MacCatalyst (16,0)] | ||
[Protocol] | ||
[BaseType (typeof (NSObject))] | ||
interface SWCollaborationActionHandler | ||
{ | ||
[Abstract] | ||
[Export ("collaborationCoordinator:handleStartCollaborationAction:")] | ||
void HandleStartCollaborationAction (SWCollaborationCoordinator coordinator, SWStartCollaborationAction action); | ||
|
||
[Abstract] | ||
[Export ("collaborationCoordinator:handleUpdateCollaborationParticipantsAction:")] | ||
void HandleUpdateCollaborationParticipantsAction (SWCollaborationCoordinator coordinator, SWUpdateCollaborationParticipantsAction action); | ||
} | ||
|
||
[NoWatch, TV (16,0), Mac (13,0), iOS (16,0), MacCatalyst (16,0)] | ||
[BaseType (typeof (NSObject))] | ||
[DisableDefaultCtor] | ||
interface SWCollaborationCoordinator | ||
{ | ||
[Static] | ||
[Export ("sharedCoordinator", ArgumentSemantic.Strong)] | ||
SWCollaborationCoordinator SharedCoordinator { get; } | ||
|
||
[NullAllowed, Export ("actionHandler", ArgumentSemantic.Weak)] | ||
ISWCollaborationActionHandler ActionHandler { get; set; } | ||
} | ||
|
||
[NoWatch, TV (16,0), Mac (13,0), iOS (16,0), MacCatalyst (16,0)] | ||
[BaseType (typeof (NSObject))] | ||
[DisableDefaultCtor] | ||
interface SWCollaborationOption : NSCopying, NSSecureCoding | ||
{ | ||
[Export ("title")] | ||
string Title { get; set; } | ||
|
||
[Export ("identifier")] | ||
string Identifier { get; } | ||
|
||
[Export ("subtitle")] | ||
string Subtitle { get; set; } | ||
|
||
[Export ("selected")] | ||
bool Selected { [Bind ("isSelected")] get; set; } | ||
|
||
[Export ("requiredOptionsIdentifiers", ArgumentSemantic.Copy)] | ||
string[] RequiredOptionsIdentifiers { get; set; } | ||
|
||
[Export ("initWithTitle:identifier:")] | ||
[DesignatedInitializer] | ||
NativeHandle Constructor (string title, string identifier); | ||
|
||
[Export ("initWithCoder:")] | ||
NativeHandle Constructor (NSCoder coder); | ||
|
||
[Static] | ||
[Export ("optionWithTitle:identifier:")] | ||
SWCollaborationOption Create (string title, string identifier); | ||
} | ||
|
||
[NoWatch, TV (16,0), Mac (13,0), iOS (16,0), MacCatalyst (16,0)] | ||
[BaseType (typeof (NSObject))] | ||
[DisableDefaultCtor] | ||
interface SWCollaborationOptionsGroup : NSCopying, NSSecureCoding | ||
{ | ||
[Export ("title")] | ||
string Title { get; set; } | ||
|
||
[Export ("identifier")] | ||
string Identifier { get; } | ||
|
||
[Export ("footer")] | ||
string Footer { get; set; } | ||
|
||
[Export ("options", ArgumentSemantic.Copy)] | ||
SWCollaborationOption[] Options { get; set; } | ||
|
||
[Export ("initWithIdentifier:options:")] | ||
[DesignatedInitializer] | ||
NativeHandle Constructor (string identifier, SWCollaborationOption[] options); | ||
|
||
[Static] | ||
[Export ("optionsGroupWithIdentifier:options:")] | ||
SWCollaborationOptionsGroup Create (string identifier, SWCollaborationOption[] options); | ||
} | ||
|
||
[NoWatch, TV (16,0), Mac (13,0), iOS (16,0), MacCatalyst (16,0)] | ||
[BaseType (typeof (SWCollaborationOptionsGroup))] | ||
interface SWCollaborationOptionsPickerGroup | ||
{ | ||
[Export ("selectedOptionIdentifier", ArgumentSemantic.Strong)] | ||
string SelectedOptionIdentifier { get; set; } | ||
} | ||
|
||
[NoWatch, TV (16,0), Mac (13,0), iOS (16,0), MacCatalyst (16,0)] | ||
[BaseType (typeof (NSObject))] | ||
[DisableDefaultCtor] | ||
interface SWCollaborationShareOptions : NSCopying, NSSecureCoding | ||
{ | ||
[Export ("optionsGroups", ArgumentSemantic.Copy)] | ||
SWCollaborationOptionsGroup[] OptionsGroups { get; set; } | ||
|
||
[Export ("summary")] | ||
string Summary { get; set; } | ||
|
||
[Export ("initWithOptionsGroups:summary:")] | ||
[DesignatedInitializer] | ||
NativeHandle Constructor (SWCollaborationOptionsGroup[] optionsGroups, string summary); | ||
|
||
[Export ("initWithOptionsGroups:")] | ||
NativeHandle Constructor (SWCollaborationOptionsGroup[] optionsGroups); | ||
|
||
[Static] | ||
[Export ("shareOptionsWithOptionsGroups:summary:")] | ||
SWCollaborationShareOptions Create (SWCollaborationOptionsGroup[] optionsGroups, string summary); | ||
|
||
[Static] | ||
[Export ("shareOptionsWithOptionsGroups:")] | ||
SWCollaborationShareOptions Create (SWCollaborationOptionsGroup[] optionsGroups); | ||
|
||
[Export ("initWithCoder:")] | ||
[DesignatedInitializer] | ||
NativeHandle Constructor (NSCoder coder); | ||
} | ||
|
||
[NoWatch, TV (16,0), Mac (13,0), iOS (16,0), MacCatalyst (16,0)] | ||
[BaseType (typeof (NSObject))] | ||
[DisableDefaultCtor] | ||
interface SWCollaborationMetadata : NSSecureCoding, NSCopying, NSMutableCopying | ||
{ | ||
[Export ("collaborationIdentifier")] | ||
string CollaborationIdentifier { get; } | ||
|
||
[Export ("localIdentifier")] | ||
string LocalIdentifier { get; } | ||
|
||
[NullAllowed, Export ("title")] | ||
string Title { get; set; } | ||
|
||
[NullAllowed, Export ("defaultShareOptions", ArgumentSemantic.Copy)] | ||
SWCollaborationShareOptions DefaultShareOptions { get; set; } | ||
|
||
[NullAllowed, Export ("userSelectedShareOptions", ArgumentSemantic.Copy)] | ||
SWCollaborationShareOptions UserSelectedShareOptions { get; set; } | ||
|
||
[NullAllowed, Export ("initiatorHandle")] | ||
string InitiatorHandle { get; set; } | ||
|
||
[NullAllowed, Export ("initiatorNameComponents", ArgumentSemantic.Strong)] | ||
NSPersonNameComponents InitiatorNameComponents { get; set; } | ||
|
||
[Export ("initWithLocalIdentifier:")] | ||
NativeHandle Constructor (string localIdentifier); | ||
} | ||
|
||
[NoWatch, TV (16,0), Mac (13,0), iOS (16,0), MacCatalyst (16,0)] | ||
[BaseType (typeof (NSObject))] | ||
[DisableDefaultCtor] | ||
interface SWPerson : NSSecureCoding | ||
{ | ||
[Export ("initWithHandle:identity:displayName:thumbnailImageData:")] | ||
NativeHandle Constructor ([NullAllowed] string handle, [NullAllowed] SWPersonIdentity identity, string displayName, [NullAllowed] NSData thumbnailImageData); | ||
} | ||
|
||
[NoWatch, TV (16,0), Mac (13,0), iOS (16,0), MacCatalyst (16,0)] | ||
[BaseType (typeof (NSObject))] | ||
[DisableDefaultCtor] | ||
interface SWPersonIdentity : NSSecureCoding, NSCopying | ||
{ | ||
[Export ("rootHash", ArgumentSemantic.Copy)] | ||
NSData RootHash { get; } | ||
|
||
[Export ("initWithRootHash:")] | ||
NativeHandle Constructor (NSData rootHash); | ||
} | ||
|
||
[NoWatch, TV (16,0), Mac (13,0), iOS (16,0), MacCatalyst (16,0)] | ||
[BaseType (typeof (NSObject))] | ||
[DisableDefaultCtor] | ||
interface SWPersonIdentityProof : NSSecureCoding, NSCopying | ||
{ | ||
[Export ("inclusionHashes", ArgumentSemantic.Copy)] | ||
NSData[] InclusionHashes { get; } | ||
|
||
[Export ("publicKey", ArgumentSemantic.Copy)] | ||
NSData PublicKey { get; } | ||
|
||
[Export ("publicKeyIndex")] | ||
nuint PublicKeyIndex { get; } | ||
} | ||
|
||
[NoWatch, TV (16,0), Mac (13,0), iOS (16,0)] | ||
[BaseType (typeof (SWPersonIdentityProof))] | ||
interface SWSignedPersonIdentityProof | ||
{ | ||
[Export ("initWithPersonIdentityProof:signatureData:")] | ||
NativeHandle Constructor (SWPersonIdentityProof personIdentityProof, NSData data); | ||
|
||
[Export ("signatureData", ArgumentSemantic.Copy)] | ||
NSData SignatureData { get; } | ||
} | ||
|
||
[NoWatch, TV (16,0), Mac (13,0), iOS (16,0), MacCatalyst (16,0)] | ||
[BaseType (typeof(SWAction))] | ||
[DisableDefaultCtor] | ||
interface SWStartCollaborationAction : NSSecureCoding, NSCopying | ||
{ | ||
[Export ("collaborationMetadata")] | ||
SWCollaborationMetadata CollaborationMetadata { get; } | ||
|
||
[Export ("fulfillUsingURL:collaborationIdentifier:")] | ||
void FulfillUsingUrl (NSUrl url, string collaborationIdentifier); | ||
} | ||
|
||
[NoWatch, TV (16,0), Mac (13,0), iOS (16,0)] | ||
[BaseType (typeof (SWAction))] | ||
[DisableDefaultCtor] | ||
interface SWUpdateCollaborationParticipantsAction : NSSecureCoding, NSCopying | ||
{ | ||
[Export ("collaborationMetadata")] | ||
SWCollaborationMetadata CollaborationMetadata { get; } | ||
|
||
[Export ("addedIdentities")] | ||
SWPersonIdentity[] AddedIdentities { get; } | ||
|
||
[Export ("removedIdentities")] | ||
SWPersonIdentity[] RemovedIdentities { get; } | ||
} | ||
|
||
} | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters