declare class MXAppLaunchMetric extends MXMetric { static alloc(): MXAppLaunchMetric; // inherited from NSObject static new(): MXAppLaunchMetric; // inherited from NSObject readonly histogrammedApplicationResumeTime: MXHistogram; readonly histogrammedTimeToFirstDraw: MXHistogram; } declare class MXAppResponsivenessMetric extends MXMetric { static alloc(): MXAppResponsivenessMetric; // inherited from NSObject static new(): MXAppResponsivenessMetric; // inherited from NSObject readonly histogrammedApplicationHangTime: MXHistogram; } declare class MXAppRunTimeMetric extends MXMetric { static alloc(): MXAppRunTimeMetric; // inherited from NSObject static new(): MXAppRunTimeMetric; // inherited from NSObject readonly cumulativeBackgroundAudioTime: NSMeasurement; readonly cumulativeBackgroundLocationTime: NSMeasurement; readonly cumulativeBackgroundTime: NSMeasurement; readonly cumulativeForegroundTime: NSMeasurement; } declare class MXAverage extends NSObject implements NSSecureCoding { static alloc(): MXAverage; // inherited from NSObject static new(): MXAverage; // inherited from NSObject readonly averageMeasurement: NSMeasurement; readonly sampleCount: number; readonly standardDeviation: number; static readonly supportsSecureCoding: boolean; // inherited from NSSecureCoding constructor(o: { coder: NSCoder; }); // inherited from NSCoding encodeWithCoder(coder: NSCoder): void; initWithCoder(coder: NSCoder): this; } declare class MXCPUMetric extends MXMetric { static alloc(): MXCPUMetric; // inherited from NSObject static new(): MXCPUMetric; // inherited from NSObject readonly cumulativeCPUTime: NSMeasurement; } declare class MXCellularConditionMetric extends MXMetric { static alloc(): MXCellularConditionMetric; // inherited from NSObject static new(): MXCellularConditionMetric; // inherited from NSObject readonly histogrammedCellularConditionTime: MXHistogram; } declare class MXDiskIOMetric extends MXMetric { static alloc(): MXDiskIOMetric; // inherited from NSObject static new(): MXDiskIOMetric; // inherited from NSObject readonly cumulativeLogicalWrites: NSMeasurement; } declare class MXDisplayMetric extends MXMetric { static alloc(): MXDisplayMetric; // inherited from NSObject static new(): MXDisplayMetric; // inherited from NSObject readonly averagePixelLuminance: MXAverage; } declare class MXGPUMetric extends MXMetric { static alloc(): MXGPUMetric; // inherited from NSObject static new(): MXGPUMetric; // inherited from NSObject readonly cumulativeGPUTime: NSMeasurement; } declare class MXHistogram extends NSObject implements NSSecureCoding { static alloc(): MXHistogram; // inherited from NSObject static new(): MXHistogram; // inherited from NSObject readonly bucketEnumerator: NSEnumerator>; readonly totalBucketCount: number; static readonly supportsSecureCoding: boolean; // inherited from NSSecureCoding constructor(o: { coder: NSCoder; }); // inherited from NSCoding encodeWithCoder(coder: NSCoder): void; initWithCoder(coder: NSCoder): this; } declare class MXHistogramBucket extends NSObject implements NSSecureCoding { static alloc(): MXHistogramBucket; // inherited from NSObject static new(): MXHistogramBucket; // inherited from NSObject readonly bucketCount: number; readonly bucketEnd: NSMeasurement; readonly bucketStart: NSMeasurement; static readonly supportsSecureCoding: boolean; // inherited from NSSecureCoding constructor(o: { coder: NSCoder; }); // inherited from NSCoding encodeWithCoder(coder: NSCoder): void; initWithCoder(coder: NSCoder): this; } declare class MXLocationActivityMetric extends MXMetric { static alloc(): MXLocationActivityMetric; // inherited from NSObject static new(): MXLocationActivityMetric; // inherited from NSObject readonly cumulativeBestAccuracyForNavigationTime: NSMeasurement; readonly cumulativeBestAccuracyTime: NSMeasurement; readonly cumulativeHundredMetersAccuracyTime: NSMeasurement; readonly cumulativeKilometerAccuracyTime: NSMeasurement; readonly cumulativeNearestTenMetersAccuracyTime: NSMeasurement; readonly cumulativeThreeKilometersAccuracyTime: NSMeasurement; } declare class MXMemoryMetric extends MXMetric { static alloc(): MXMemoryMetric; // inherited from NSObject static new(): MXMemoryMetric; // inherited from NSObject readonly averageSuspendedMemory: MXAverage; readonly peakMemoryUsage: NSMeasurement; } declare class MXMetaData extends NSObject implements NSSecureCoding { static alloc(): MXMetaData; // inherited from NSObject static new(): MXMetaData; // inherited from NSObject readonly applicationBuildVersion: string; readonly deviceType: string; readonly osVersion: string; readonly regionFormat: string; static readonly supportsSecureCoding: boolean; // inherited from NSSecureCoding constructor(o: { coder: NSCoder; }); // inherited from NSCoding DictionaryRepresentation(): NSDictionary; JSONRepresentation(): NSData; encodeWithCoder(coder: NSCoder): void; initWithCoder(coder: NSCoder): this; } declare class MXMetric extends NSObject implements NSSecureCoding { static alloc(): MXMetric; // inherited from NSObject static new(): MXMetric; // inherited from NSObject static readonly supportsSecureCoding: boolean; // inherited from NSSecureCoding constructor(o: { coder: NSCoder; }); // inherited from NSCoding DictionaryRepresentation(): NSDictionary; JSONRepresentation(): NSData; encodeWithCoder(coder: NSCoder): void; initWithCoder(coder: NSCoder): this; } declare class MXMetricManager extends NSObject { static alloc(): MXMetricManager; // inherited from NSObject static makeLogHandleWithCategory(category: string): NSObject; static new(): MXMetricManager; // inherited from NSObject readonly pastPayloads: NSArray; static readonly sharedManager: MXMetricManager; addSubscriber(subscriber: MXMetricManagerSubscriber): void; removeSubscriber(subscriber: MXMetricManagerSubscriber): void; } interface MXMetricManagerSubscriber extends NSObjectProtocol { didReceiveMetricPayloads(payloads: NSArray | MXMetricPayload[]): void; } declare var MXMetricManagerSubscriber: { prototype: MXMetricManagerSubscriber; }; declare class MXMetricPayload extends NSObject implements NSSecureCoding { static alloc(): MXMetricPayload; // inherited from NSObject static new(): MXMetricPayload; // inherited from NSObject readonly applicationLaunchMetrics: MXAppLaunchMetric; readonly applicationResponsivenessMetrics: MXAppResponsivenessMetric; readonly applicationTimeMetrics: MXAppRunTimeMetric; readonly cellularConditionMetrics: MXCellularConditionMetric; readonly cpuMetrics: MXCPUMetric; readonly diskIOMetrics: MXDiskIOMetric; readonly displayMetrics: MXDisplayMetric; readonly gpuMetrics: MXGPUMetric; readonly includesMultipleApplicationVersions: boolean; readonly latestApplicationVersion: string; readonly locationActivityMetrics: MXLocationActivityMetric; readonly memoryMetrics: MXMemoryMetric; readonly metaData: MXMetaData; readonly networkTransferMetrics: MXNetworkTransferMetric; readonly signpostMetrics: NSArray; readonly timeStampBegin: Date; readonly timeStampEnd: Date; static readonly supportsSecureCoding: boolean; // inherited from NSSecureCoding constructor(o: { coder: NSCoder; }); // inherited from NSCoding DictionaryRepresentation(): NSDictionary; JSONRepresentation(): NSData; encodeWithCoder(coder: NSCoder): void; initWithCoder(coder: NSCoder): this; } declare class MXNetworkTransferMetric extends MXMetric { static alloc(): MXNetworkTransferMetric; // inherited from NSObject static new(): MXNetworkTransferMetric; // inherited from NSObject readonly cumulativeCellularDownload: NSMeasurement; readonly cumulativeCellularUpload: NSMeasurement; readonly cumulativeWifiDownload: NSMeasurement; readonly cumulativeWifiUpload: NSMeasurement; } declare class MXSignpostIntervalData extends NSObject implements NSSecureCoding { static alloc(): MXSignpostIntervalData; // inherited from NSObject static new(): MXSignpostIntervalData; // inherited from NSObject readonly averageMemory: MXAverage; readonly cumulativeCPUTime: NSMeasurement; readonly cumulativeLogicalWrites: NSMeasurement; readonly histogrammedSignpostDuration: MXHistogram; static readonly supportsSecureCoding: boolean; // inherited from NSSecureCoding constructor(o: { coder: NSCoder; }); // inherited from NSCoding encodeWithCoder(coder: NSCoder): void; initWithCoder(coder: NSCoder): this; } declare class MXSignpostMetric extends MXMetric { static alloc(): MXSignpostMetric; // inherited from NSObject static new(): MXSignpostMetric; // inherited from NSObject readonly signpostCategory: string; readonly signpostIntervalData: MXSignpostIntervalData; readonly signpostName: string; readonly totalCount: number; } declare class MXUnitAveragePixelLuminance extends NSDimension { static alloc(): MXUnitAveragePixelLuminance; // inherited from NSObject static baseUnit(): MXUnitAveragePixelLuminance; // inherited from NSDimension static new(): MXUnitAveragePixelLuminance; // inherited from NSObject static readonly apl: MXUnitAveragePixelLuminance; } declare class MXUnitSignalBars extends NSDimension { static alloc(): MXUnitSignalBars; // inherited from NSObject static baseUnit(): MXUnitSignalBars; // inherited from NSDimension static new(): MXUnitSignalBars; // inherited from NSObject static readonly bars: MXUnitSignalBars; }