nativescript-nfc
Version:
NFC plugin for your NativeScript app
104 lines (103 loc) • 2.59 kB
TypeScript
export declare const NfcUriProtocols: string[];
export interface NdefListenerOptions {
/**
* iOS only (for now).
* Default false.
*/
stopAfterFirstRead?: boolean;
/**
* On iOS the scan UI can show a scan hint (fi. "Scan a tag").
* By default no hint is shown.
*/
scanHint?: string;
}
export interface TextRecord {
/**
* String of text to encode.
*/
text: string;
/**
* ISO/IANA language code. Examples: 'fi', 'en-US'.
* Default 'en'.
*/
languageCode?: string;
/**
* Default [].
*/
id?: Array<number>;
}
export interface UriRecord {
/**
* String representing the uri to encode.
*/
uri: string;
/**
* Default [].
*/
id?: Array<number>;
}
export interface WriteTagOptions {
textRecords?: Array<TextRecord>;
uriRecords?: Array<UriRecord>;
}
export interface NfcTagData {
id?: Array<number>;
techList?: Array<string>;
}
export interface NfcNdefRecord {
id: Array<number>;
tnf: number;
type: number;
payload: string;
payloadAsHexString: string;
payloadAsStringWithPrefix: string;
payloadAsString: string;
}
export interface NfcNdefData extends NfcTagData {
message: Array<NfcNdefRecord>;
/**
* Android only
*/
type?: string;
/**
* Android only
*/
maxSize?: number;
/**
* Android only
*/
writable?: boolean;
/**
* Android only
*/
canMakeReadOnly?: boolean;
}
export interface OnTagDiscoveredOptions {
/**
* On iOS the scan UI can show a message (fi. "Scan a tag").
* By default no message is shown.
*/
message?: string;
}
export interface NfcApi {
available(): Promise<boolean>;
enabled(): Promise<boolean>;
writeTag(arg: WriteTagOptions): Promise<any>;
eraseTag(): Promise<any>;
/**
* Set to null to remove the listener.
*/
setOnTagDiscoveredListener(callback: (data: NfcTagData) => void): Promise<any>;
/**
* Set to null to remove the listener.
*/
setOnNdefDiscoveredListener(callback: (data: NfcNdefData) => void, options?: NdefListenerOptions): Promise<any>;
}
export declare class Nfc implements NfcApi {
available(): Promise<boolean>;
enabled(): Promise<boolean>;
eraseTag(): Promise<any>;
setOnNdefDiscoveredListener(callback: (data: NfcNdefData) => void, options?: NdefListenerOptions): Promise<any>;
setOnTagDiscoveredListener(callback: (data: NfcTagData) => void): Promise<any>;
writeTag(arg: WriteTagOptions): Promise<any>;
}