Files
Martin Bektchiev 1c0218ea15 feat(tns-platform-declarations): Generate iOS typings from iOS 12.1 SDK (#6693)
* feat(tns-platform-declarations): Generate iOS typings from iOS 12.1 SDK

* Instructions for generating iOS typescript definitions
* Refactor `typings-gen.sh` to use {N} CLI and generate fuller
metadata for the system libraries
* Automatically generate `ios.d.ts` wrapper
* Add interop pointers and references as alternatives
to `string` for `char*` args
(implemented in https://github.com/NativeScript/ios-runtime/pull/1022)

BREAKING CHANGE: Several enum values have changed because
    they have been wrongly generated.

    To migrate your app or plugin code use the new names of the
    following:
    *  enum NSUnderlineStyle:
        - `StyleNone` -> `None`
        - `StyleSingle` -> `Single`
        - `StyleThick` -> `Thick`
        - `StyleDouble` -> `Double`
     * enum AVAudioSessionErrorCode:
        - `CodeNone` -> `None`
        - `CodeMediaServicesFailed` -> `MediaServicesFailed`
        - `CodeIsBusy` -> `IsBusy`
        - `CodeIncompatibleCategory` -> `IncompatibleCategory`
        - `CodeCannotInterruptOthers` -> `CannotInterruptOthers`
        - `CodeMissingEntitlement` -> `MissingEntitlement`
        - `CodeSiriIsRecording` -> `SiriIsRecording`
        - `CodeCannotStartPlaying` -> `CannotStartPlaying`
        - `CodeCannotStartRecording` -> `CannotStartRecording`
        - `CodeBadParam` -> `BadParam`
        - `CodeResourceNotAvailable` -> `ResourceNotAvailable`
        - `CodeUnspecified` -> `Unspecified`

* fix(ui/text-base): Update NSUnderlineStyle.StyleSingle constant

After the typings regeneration its and several others' names have
changed to the expected `NSUnderlineStyle.Single`.

* fix(tns-platform-declarations): Restore deprecated enum values

In order to not introduce a breaking change in a patch version, we
are keeping `Style...` and `Code...` values that have been wrongly
generated till now. In the next major/minor release of the package
when the typings are regenerated we can safely remove them.

Revert to using the deprecated one's in `text-base.ios.ts` so that
the introduction of this breaking change doesn't slip in undetected.

* fix(application.ios): Directly call presetnNativeScriptApp

We've been using `performSelectorWithObject` but it's
declaration has been manually added. Moreover it's more
convenient to directly call the method.
2018-12-13 17:04:13 +02:00

380 lines
11 KiB
TypeScript

declare class MSConversation extends NSObject {
static alloc(): MSConversation; // inherited from NSObject
static new(): MSConversation; // inherited from NSObject
readonly localParticipantIdentifier: NSUUID;
readonly remoteParticipantIdentifiers: NSArray<NSUUID>;
readonly selectedMessage: MSMessage;
insertAttachmentWithAlternateFilenameCompletionHandler(URL: NSURL, filename: string, completionHandler: (p1: NSError) => void): void;
insertMessageCompletionHandler(message: MSMessage, completionHandler: (p1: NSError) => void): void;
insertStickerCompletionHandler(sticker: MSSticker, completionHandler: (p1: NSError) => void): void;
insertTextCompletionHandler(text: string, completionHandler: (p1: NSError) => void): void;
sendAttachmentWithAlternateFilenameCompletionHandler(URL: NSURL, filename: string, completionHandler: (p1: NSError) => void): void;
sendMessageCompletionHandler(message: MSMessage, completionHandler: (p1: NSError) => void): void;
sendStickerCompletionHandler(sticker: MSSticker, completionHandler: (p1: NSError) => void): void;
sendTextCompletionHandler(text: string, completionHandler: (p1: NSError) => void): void;
}
declare class MSMessage extends NSObject implements NSCopying, NSSecureCoding {
static alloc(): MSMessage; // inherited from NSObject
static new(): MSMessage; // inherited from NSObject
URL: NSURL;
error: NSError;
layout: MSMessageLayout;
readonly pending: boolean;
readonly senderParticipantIdentifier: NSUUID;
readonly session: MSSession;
shouldExpire: boolean;
summaryText: string;
static readonly supportsSecureCoding: boolean; // inherited from NSSecureCoding
constructor(o: { coder: NSCoder; }); // inherited from NSCoding
constructor(o: { session: MSSession; });
copyWithZone(zone: interop.Pointer | interop.Reference<any>): any;
encodeWithCoder(aCoder: NSCoder): void;
initWithCoder(aDecoder: NSCoder): this;
initWithSession(session: MSSession): this;
}
declare const enum MSMessageErrorCode {
Unknown = -1,
FileNotFound = 1,
FileUnreadable = 2,
ImproperFileType = 3,
ImproperFileURL = 4,
StickerFileImproperFileAttributes = 5,
StickerFileImproperFileSize = 6,
StickerFileImproperFileFormat = 7,
URLExceedsMaxSize = 8,
SendWithoutRecentInteraction = 9,
SendWhileNotVisible = 10,
APIUnavailableInPresentationContext = 11
}
declare class MSMessageLayout extends NSObject implements NSCopying {
static alloc(): MSMessageLayout; // inherited from NSObject
static new(): MSMessageLayout; // inherited from NSObject
copyWithZone(zone: interop.Pointer | interop.Reference<any>): any;
}
declare class MSMessageLiveLayout extends MSMessageLayout {
static alloc(): MSMessageLiveLayout; // inherited from NSObject
static new(): MSMessageLiveLayout; // inherited from NSObject
readonly alternateLayout: MSMessageTemplateLayout;
constructor(o: { alternateLayout: MSMessageTemplateLayout; });
initWithAlternateLayout(alternateLayout: MSMessageTemplateLayout): this;
}
declare class MSMessageTemplateLayout extends MSMessageLayout {
static alloc(): MSMessageTemplateLayout; // inherited from NSObject
static new(): MSMessageTemplateLayout; // inherited from NSObject
caption: string;
image: UIImage;
imageSubtitle: string;
imageTitle: string;
mediaFileURL: NSURL;
subcaption: string;
trailingCaption: string;
trailingSubcaption: string;
}
declare const enum MSMessagesAppPresentationContext {
Messages = 0,
Media = 1
}
declare const enum MSMessagesAppPresentationStyle {
Compact = 0,
Expanded = 1,
Transcript = 2
}
interface MSMessagesAppTranscriptPresentation {
contentSizeThatFits(size: CGSize): CGSize;
}
declare var MSMessagesAppTranscriptPresentation: {
prototype: MSMessagesAppTranscriptPresentation;
};
declare class MSMessagesAppViewController extends UIViewController implements MSMessagesAppTranscriptPresentation {
static alloc(): MSMessagesAppViewController; // inherited from NSObject
static new(): MSMessagesAppViewController; // inherited from NSObject
readonly activeConversation: MSConversation;
readonly presentationContext: MSMessagesAppPresentationContext;
readonly presentationStyle: MSMessagesAppPresentationStyle;
contentSizeThatFits(size: CGSize): CGSize;
didBecomeActiveWithConversation(conversation: MSConversation): void;
didCancelSendingMessageConversation(message: MSMessage, conversation: MSConversation): void;
didReceiveMessageConversation(message: MSMessage, conversation: MSConversation): void;
didResignActiveWithConversation(conversation: MSConversation): void;
didSelectMessageConversation(message: MSMessage, conversation: MSConversation): void;
didStartSendingMessageConversation(message: MSMessage, conversation: MSConversation): void;
didTransitionToPresentationStyle(presentationStyle: MSMessagesAppPresentationStyle): void;
dismiss(): void;
requestPresentationStyle(presentationStyle: MSMessagesAppPresentationStyle): void;
willBecomeActiveWithConversation(conversation: MSConversation): void;
willResignActiveWithConversation(conversation: MSConversation): void;
willSelectMessageConversation(message: MSMessage, conversation: MSConversation): void;
willTransitionToPresentationStyle(presentationStyle: MSMessagesAppPresentationStyle): void;
}
declare var MSMessagesErrorDomain: string;
declare class MSSession extends NSObject implements NSSecureCoding {
static alloc(): MSSession; // inherited from NSObject
static new(): MSSession; // inherited from NSObject
static readonly supportsSecureCoding: boolean; // inherited from NSSecureCoding
constructor(o: { coder: NSCoder; }); // inherited from NSCoding
encodeWithCoder(aCoder: NSCoder): void;
initWithCoder(aDecoder: NSCoder): this;
}
declare class MSSticker extends NSObject {
static alloc(): MSSticker; // inherited from NSObject
static new(): MSSticker; // inherited from NSObject
readonly imageFileURL: NSURL;
readonly localizedDescription: string;
constructor(o: { contentsOfFileURL: NSURL; localizedDescription: string; });
initWithContentsOfFileURLLocalizedDescriptionError(fileURL: NSURL, localizedDescription: string): this;
}
declare class MSStickerBrowserView extends UIView {
static alloc(): MSStickerBrowserView; // inherited from NSObject
static appearance(): MSStickerBrowserView; // inherited from UIAppearance
static appearanceForTraitCollection(trait: UITraitCollection): MSStickerBrowserView; // inherited from UIAppearance
static appearanceForTraitCollectionWhenContainedIn(trait: UITraitCollection, ContainerClass: typeof NSObject): MSStickerBrowserView; // inherited from UIAppearance
static appearanceForTraitCollectionWhenContainedInInstancesOfClasses(trait: UITraitCollection, containerTypes: NSArray<typeof NSObject> | typeof NSObject[]): MSStickerBrowserView; // inherited from UIAppearance
static appearanceWhenContainedIn(ContainerClass: typeof NSObject): MSStickerBrowserView; // inherited from UIAppearance
static appearanceWhenContainedInInstancesOfClasses(containerTypes: NSArray<typeof NSObject> | typeof NSObject[]): MSStickerBrowserView; // inherited from UIAppearance
static new(): MSStickerBrowserView; // inherited from NSObject
contentInset: UIEdgeInsets;
contentOffset: CGPoint;
dataSource: MSStickerBrowserViewDataSource;
readonly stickerSize: MSStickerSize;
constructor(o: { frame: CGRect; stickerSize: MSStickerSize; });
initWithFrameStickerSize(frame: CGRect, stickerSize: MSStickerSize): this;
reloadData(): void;
setContentOffsetAnimated(contentOffset: CGPoint, animated: boolean): void;
}
declare class MSStickerBrowserViewController extends UIViewController implements MSStickerBrowserViewDataSource {
static alloc(): MSStickerBrowserViewController; // inherited from NSObject
static new(): MSStickerBrowserViewController; // inherited from NSObject
readonly stickerBrowserView: MSStickerBrowserView;
readonly stickerSize: MSStickerSize;
readonly debugDescription: string; // inherited from NSObjectProtocol
readonly description: string; // inherited from NSObjectProtocol
readonly hash: number; // inherited from NSObjectProtocol
readonly isProxy: boolean; // inherited from NSObjectProtocol
readonly superclass: typeof NSObject; // inherited from NSObjectProtocol
readonly // inherited from NSObjectProtocol
constructor(o: { stickerSize: MSStickerSize; });
class(): typeof NSObject;
conformsToProtocol(aProtocol: any /* Protocol */): boolean;
initWithStickerSize(stickerSize: MSStickerSize): this;
isEqual(object: any): boolean;
isKindOfClass(aClass: typeof NSObject): boolean;
isMemberOfClass(aClass: typeof NSObject): boolean;
numberOfStickersInStickerBrowserView(stickerBrowserView: MSStickerBrowserView): number;
performSelector(aSelector: string): any;
performSelectorWithObject(aSelector: string, object: any): any;
performSelectorWithObjectWithObject(aSelector: string, object1: any, object2: any): any;
respondsToSelector(aSelector: string): boolean;
retainCount(): number;
self(): this;
stickerBrowserViewStickerAtIndex(stickerBrowserView: MSStickerBrowserView, index: number): MSSticker;
}
interface MSStickerBrowserViewDataSource extends NSObjectProtocol {
numberOfStickersInStickerBrowserView(stickerBrowserView: MSStickerBrowserView): number;
stickerBrowserViewStickerAtIndex(stickerBrowserView: MSStickerBrowserView, index: number): MSSticker;
}
declare var MSStickerBrowserViewDataSource: {
prototype: MSStickerBrowserViewDataSource;
};
declare const enum MSStickerSize {
Small = 0,
Regular = 1,
Large = 2
}
declare class MSStickerView extends UIView {
static alloc(): MSStickerView; // inherited from NSObject
static appearance(): MSStickerView; // inherited from UIAppearance
static appearanceForTraitCollection(trait: UITraitCollection): MSStickerView; // inherited from UIAppearance
static appearanceForTraitCollectionWhenContainedIn(trait: UITraitCollection, ContainerClass: typeof NSObject): MSStickerView; // inherited from UIAppearance
static appearanceForTraitCollectionWhenContainedInInstancesOfClasses(trait: UITraitCollection, containerTypes: NSArray<typeof NSObject> | typeof NSObject[]): MSStickerView; // inherited from UIAppearance
static appearanceWhenContainedIn(ContainerClass: typeof NSObject): MSStickerView; // inherited from UIAppearance
static appearanceWhenContainedInInstancesOfClasses(containerTypes: NSArray<typeof NSObject> | typeof NSObject[]): MSStickerView; // inherited from UIAppearance
static new(): MSStickerView; // inherited from NSObject
readonly animationDuration: number;
sticker: MSSticker;
constructor(o: { frame: CGRect; sticker: MSSticker; });
initWithFrameSticker(frame: CGRect, sticker: MSSticker): this;
isAnimating(): boolean;
startAnimating(): void;
stopAnimating(): void;
}
declare var MSStickersErrorDomain: string;