import { ExecOptions } from "./core.ts";
/** 拨打电话、发送短信选项 */
export interface TelOptions extends ExecOptions<boolean, any> {
    number: string;
}
/** 发送邮件选项 */
export interface MailToOptions extends ExecOptions<boolean, any> {
    address: string;
}
/** 二维码格式 */
export declare enum BarcodeFormat {
    /** Aztec 2D barcode format. */
    aztec = 0,
    /**
     * CODABAR 1D format.
     * @description Not supported in iOS
     */
    codabar = 1,
    /** Code 39 1D format. */
    code39 = 2,
    /** Code 93 1D format. */
    code93 = 3,
    /** Code 128 1D format. */
    code128 = 4,
    /** Data Matrix 2D barcode format. */
    dataMatrix = 5,
    /** EAN-8 1D format. */
    ean8 = 6,
    /** EAN-13 1D format. */
    ean13 = 7,
    /** ITF (Interleaved Two of Five) 1D format. */
    itf = 8,
    /**
     * MaxiCode 2D barcode format.
     * @description Not supported in iOS.
     */
    maxicode = 9,
    /** PDF417 format. */
    pdf417 = 10,
    /** QR Code 2D barcode format. */
    qrcode = 11,
    /**
     * RSS 14
     * @description Not supported in iOS.
     */
    rss14 = 12,
    /**
     * RSS EXPANDED
     * @description Not supported in iOS.
     */
    rssExpanded = 13,
    /**
     * UPC-A 1D format.
     * @description Same as ean-13 on iOS.
     */
    upcA = 14,
    /** UPC-E 1D format. */
    upcE = 15,
    /** UPC/EAN extension format. Not a stand-alone format. */
    upcEanExtension = 16,
    /** Unknown */
    unknown = 17
}
/**
 * 二维码扫描结果
 * @param {string} code 二维码内容
 * @param {format} format  二维码格式
 */
export interface ScanQRCodeResult {
    code?: string;
    format: BarcodeFormat;
}
/** 二维码扫描选项 */
export type ScanQRCodeOptions = ExecOptions<ScanQRCodeResult, any>;
/**
 * 语音转文字选项
 * @param {string} path 语音文件本地路径
 */
export interface VoiceToTextOptions extends ExecOptions<string, any> {
    path: string;
}
/** 条形码类型 */
declare enum BarcodeType {
    CodeITF16 = 0,
    CodeITF14 = 1,
    CodeEAN13 = 2,
    CodeEAN8 = 3,
    CodeEAN5 = 4,
    CodeEAN2 = 5,
    CodeISBN = 6,
    Code39 = 7,
    Code93 = 8,
    CodeUPCA = 9,
    CodeUPCE = 10,
    Code128 = 11,
    GS128 = 12,
    Telepen = 13,
    QrCode = 14,
    Codabar = 15,
    PDF417 = 16,
    DataMatrix = 17,
    Aztec = 18,
    Rm4scc = 19,
    Itf = 20
}
/**
 * 条形码配置
 * @param {string} content 条形码内容
 * @param {number} width 宽度
 * @param {number} height 高度
 * @param {BarcodeType} type 类型
 */
export interface BarcodeOptions {
    content: string;
    width?: number;
    height?: number;
    type?: BarcodeType;
}
/** 生成条形码选项 */
export interface GenerateBarcodeOptions extends ExecOptions<string, any> {
    content: string | BarcodeOptions;
}
/** 分享文字内容选项 */
export interface ShareOptions {
    text: string;
    subject?: string;
}
/** 用户如何处理共享表 */
export declare enum ShareResultStatus {
    /** 用户已选择操作 */
    success = 0,
    /** 用户关闭了共享表 */
    dismissed = 1,
    /** 状态无法确定 */
    unavailable = 2
}
/**
 * 文件分享结果
 * @param {string} raw 共享的原始返回值
 * @param {ShareResultStatus} status 用户如何处理共享内容
 */
export interface ShareResult {
    raw: string;
    status: ShareResultStatus;
}
/**
 * 分享文件选项
 * @param {string[]} files 文件路径列表
 */
export interface ShareFilesOptions extends ExecOptions<ShareResult, any> {
    files: string[];
    text?: string;
    subject?: string;
}
export {};
