/// <reference path="android-declarations.d.ts"/>

declare module android {
	export class Manifest extends java.lang.Object {
		public static class: java.lang.Class<android.Manifest>;
		public constructor();
	}
	export module Manifest {
		export class permission extends java.lang.Object {
			public static class: java.lang.Class<android.Manifest.permission>;
			public static ACCESS_CHECKIN_PROPERTIES: string;
			public static ACCESS_COARSE_LOCATION: string;
			public static ACCESS_FINE_LOCATION: string;
			public static ACCESS_LOCATION_EXTRA_COMMANDS: string;
			public static ACCESS_MOCK_LOCATION: string;
			public static ACCESS_NETWORK_STATE: string;
			public static ACCESS_SURFACE_FLINGER: string;
			public static ACCESS_WIFI_STATE: string;
			public static ACCOUNT_MANAGER: string;
			public static ADD_VOICEMAIL: string;
			public static AUTHENTICATE_ACCOUNTS: string;
			public static BATTERY_STATS: string;
			public static BIND_ACCESSIBILITY_SERVICE: string;
			public static BIND_APPWIDGET: string;
			public static BIND_DEVICE_ADMIN: string;
			public static BIND_INPUT_METHOD: string;
			public static BIND_NOTIFICATION_LISTENER_SERVICE: string;
			public static BIND_REMOTEVIEWS: string;
			public static BIND_TEXT_SERVICE: string;
			public static BIND_VPN_SERVICE: string;
			public static BIND_WALLPAPER: string;
			public static BLUETOOTH: string;
			public static BLUETOOTH_ADMIN: string;
			public static BRICK: string;
			public static BROADCAST_PACKAGE_REMOVED: string;
			public static BROADCAST_SMS: string;
			public static BROADCAST_STICKY: string;
			public static BROADCAST_WAP_PUSH: string;
			public static CALL_PHONE: string;
			public static CALL_PRIVILEGED: string;
			public static CAMERA: string;
			public static CHANGE_COMPONENT_ENABLED_STATE: string;
			public static CHANGE_CONFIGURATION: string;
			public static CHANGE_NETWORK_STATE: string;
			public static CHANGE_WIFI_MULTICAST_STATE: string;
			public static CHANGE_WIFI_STATE: string;
			public static CLEAR_APP_CACHE: string;
			public static CLEAR_APP_USER_DATA: string;
			public static CONTROL_LOCATION_UPDATES: string;
			public static DELETE_CACHE_FILES: string;
			public static DELETE_PACKAGES: string;
			public static DEVICE_POWER: string;
			public static DIAGNOSTIC: string;
			public static DISABLE_KEYGUARD: string;
			public static DUMP: string;
			public static EXPAND_STATUS_BAR: string;
			public static FACTORY_TEST: string;
			public static FLASHLIGHT: string;
			public static FORCE_BACK: string;
			public static GET_ACCOUNTS: string;
			public static GET_PACKAGE_SIZE: string;
			public static GET_TASKS: string;
			public static GET_TOP_ACTIVITY_INFO: string;
			public static GLOBAL_SEARCH: string;
			public static HARDWARE_TEST: string;
			public static INJECT_EVENTS: string;
			public static INSTALL_LOCATION_PROVIDER: string;
			public static INSTALL_PACKAGES: string;
			public static INTERNAL_SYSTEM_WINDOW: string;
			public static INTERNET: string;
			public static KILL_BACKGROUND_PROCESSES: string;
			public static LOCATION_HARDWARE: string;
			public static MANAGE_ACCOUNTS: string;
			public static MANAGE_APP_TOKENS: string;
			public static MASTER_CLEAR: string;
			public static MODIFY_AUDIO_SETTINGS: string;
			public static MODIFY_PHONE_STATE: string;
			public static MOUNT_FORMAT_FILESYSTEMS: string;
			public static MOUNT_UNMOUNT_FILESYSTEMS: string;
			public static NFC: string;
			public static PERSISTENT_ACTIVITY: string;
			public static PROCESS_OUTGOING_CALLS: string;
			public static READ_CALENDAR: string;
			public static READ_CALL_LOG: string;
			public static READ_CONTACTS: string;
			public static READ_EXTERNAL_STORAGE: string;
			public static READ_FRAME_BUFFER: string;
			public static READ_HISTORY_BOOKMARKS: string;
			public static READ_INPUT_STATE: string;
			public static READ_LOGS: string;
			public static READ_PHONE_STATE: string;
			public static READ_PROFILE: string;
			public static READ_SMS: string;
			public static READ_SOCIAL_STREAM: string;
			public static READ_SYNC_SETTINGS: string;
			public static READ_SYNC_STATS: string;
			public static READ_USER_DICTIONARY: string;
			public static REBOOT: string;
			public static RECEIVE_BOOT_COMPLETED: string;
			public static RECEIVE_MMS: string;
			public static RECEIVE_SMS: string;
			public static RECEIVE_WAP_PUSH: string;
			public static RECORD_AUDIO: string;
			public static REORDER_TASKS: string;
			public static RESTART_PACKAGES: string;
			public static SEND_RESPOND_VIA_MESSAGE: string;
			public static SEND_SMS: string;
			public static SET_ACTIVITY_WATCHER: string;
			public static SET_ALARM: string;
			public static SET_ALWAYS_FINISH: string;
			public static SET_ANIMATION_SCALE: string;
			public static SET_DEBUG_APP: string;
			public static SET_ORIENTATION: string;
			public static SET_POINTER_SPEED: string;
			public static SET_PREFERRED_APPLICATIONS: string;
			public static SET_PROCESS_LIMIT: string;
			public static SET_TIME: string;
			public static SET_TIME_ZONE: string;
			public static SET_WALLPAPER: string;
			public static SET_WALLPAPER_HINTS: string;
			public static SIGNAL_PERSISTENT_PROCESSES: string;
			public static STATUS_BAR: string;
			public static SUBSCRIBED_FEEDS_READ: string;
			public static SUBSCRIBED_FEEDS_WRITE: string;
			public static SYSTEM_ALERT_WINDOW: string;
			public static UPDATE_DEVICE_STATS: string;
			public static USE_CREDENTIALS: string;
			public static USE_SIP: string;
			public static VIBRATE: string;
			public static WAKE_LOCK: string;
			public static WRITE_APN_SETTINGS: string;
			public static WRITE_CALENDAR: string;
			public static WRITE_CALL_LOG: string;
			public static WRITE_CONTACTS: string;
			public static WRITE_EXTERNAL_STORAGE: string;
			public static WRITE_GSERVICES: string;
			public static WRITE_HISTORY_BOOKMARKS: string;
			public static WRITE_PROFILE: string;
			public static WRITE_SECURE_SETTINGS: string;
			public static WRITE_SETTINGS: string;
			public static WRITE_SMS: string;
			public static WRITE_SOCIAL_STREAM: string;
			public static WRITE_SYNC_SETTINGS: string;
			public static WRITE_USER_DICTIONARY: string;
			public constructor();
		}
		export class permission_group extends java.lang.Object {
			public static class: java.lang.Class<android.Manifest.permission_group>;
			public static ACCESSIBILITY_FEATURES: string;
			public static ACCOUNTS: string;
			public static AFFECTS_BATTERY: string;
			public static APP_INFO: string;
			public static AUDIO_SETTINGS: string;
			public static BLUETOOTH_NETWORK: string;
			public static BOOKMARKS: string;
			public static CALENDAR: string;
			public static CAMERA: string;
			public static COST_MONEY: string;
			public static DEVELOPMENT_TOOLS: string;
			public static DEVICE_ALARMS: string;
			public static DISPLAY: string;
			public static HARDWARE_CONTROLS: string;
			public static LOCATION: string;
			public static MESSAGES: string;
			public static MICROPHONE: string;
			public static NETWORK: string;
			public static PERSONAL_INFO: string;
			public static PHONE_CALLS: string;
			public static SCREENLOCK: string;
			public static SOCIAL_INFO: string;
			public static STATUS_BAR: string;
			public static STORAGE: string;
			public static SYNC_SETTINGS: string;
			public static SYSTEM_CLOCK: string;
			public static SYSTEM_TOOLS: string;
			public static USER_DICTIONARY: string;
			public static VOICEMAIL: string;
			public static WALLPAPER: string;
			public static WRITE_USER_DICTIONARY: string;
			public constructor();
		}
	}
}

declare module android {
	export class R extends java.lang.Object {
		public static class: java.lang.Class<android.R>;
		public constructor();
	}
	export module R {
		export class anim extends java.lang.Object {
			public static class: java.lang.Class<android.R.anim>;
			public static accelerate_decelerate_interpolator: number;
			public static accelerate_interpolator: number;
			public static anticipate_interpolator: number;
			public static anticipate_overshoot_interpolator: number;
			public static bounce_interpolator: number;
			public static cycle_interpolator: number;
			public static decelerate_interpolator: number;
			public static fade_in: number;
			public static fade_out: number;
			public static linear_interpolator: number;
			public static overshoot_interpolator: number;
			public static slide_in_left: number;
			public static slide_out_right: number;
			public constructor();
		}
		export class animator extends java.lang.Object {
			public static class: java.lang.Class<android.R.animator>;
			public static fade_in: number;
			public static fade_out: number;
			public constructor();
		}
		export class array extends java.lang.Object {
			public static class: java.lang.Class<android.R.array>;
			public static emailAddressTypes: number;
			public static imProtocols: number;
			public static organizationTypes: number;
			public static phoneTypes: number;
			public static postalAddressTypes: number;
			public constructor();
		}
		export class attr extends java.lang.Object {
			public static class: java.lang.Class<android.R.attr>;
			public static absListViewStyle: number;
			public static accessibilityEventTypes: number;
			public static accessibilityFeedbackType: number;
			public static accessibilityFlags: number;
			public static accountPreferences: number;
			public static accountType: number;
			public static action: number;
			public static actionBarDivider: number;
			public static actionBarItemBackground: number;
			public static actionBarSize: number;
			public static actionBarSplitStyle: number;
			public static actionBarStyle: number;
			public static actionBarTabBarStyle: number;
			public static actionBarTabStyle: number;
			public static actionBarTabTextStyle: number;
			public static actionBarWidgetTheme: number;
			public static actionButtonStyle: number;
			public static actionDropDownStyle: number;
			public static actionLayout: number;
			public static actionMenuTextAppearance: number;
			public static actionMenuTextColor: number;
			public static actionModeBackground: number;
			public static actionModeCloseButtonStyle: number;
			public static actionModeCloseDrawable: number;
			public static actionModeCopyDrawable: number;
			public static actionModeCutDrawable: number;
			public static actionModePasteDrawable: number;
			public static actionModeSelectAllDrawable: number;
			public static actionModeSplitBackground: number;
			public static actionModeStyle: number;
			public static actionOverflowButtonStyle: number;
			public static actionProviderClass: number;
			public static actionViewClass: number;
			public static activatedBackgroundIndicator: number;
			public static activityCloseEnterAnimation: number;
			public static activityCloseExitAnimation: number;
			public static activityOpenEnterAnimation: number;
			public static activityOpenExitAnimation: number;
			public static addStatesFromChildren: number;
			public static adjustViewBounds: number;
			public static alertDialogIcon: number;
			public static alertDialogStyle: number;
			public static alertDialogTheme: number;
			public static alignmentMode: number;
			public static allContactsName: number;
			public static allowBackup: number;
			public static allowClearUserData: number;
			public static allowParallelSyncs: number;
			public static allowSingleTap: number;
			public static allowTaskReparenting: number;
			public static alpha: number;
			public static alphabeticShortcut: number;
			public static alwaysDrawnWithCache: number;
			public static alwaysRetainTaskState: number;
			public static angle: number;
			public static animateFirstView: number;
			public static animateLayoutChanges: number;
			public static animateOnClick: number;
			public static animation: number;
			public static animationCache: number;
			public static animationDuration: number;
			public static animationOrder: number;
			public static animationResolution: number;
			public static antialias: number;
			public static anyDensity: number;
			public static apiKey: number;
			public static author: number;
			public static authorities: number;
			public static autoAdvanceViewId: number;
			public static autoCompleteTextViewStyle: number;
			public static autoLink: number;
			public static autoStart: number;
			public static autoText: number;
			public static autoUrlDetect: number;
			public static background: number;
			public static backgroundDimAmount: number;
			public static backgroundDimEnabled: number;
			public static backgroundSplit: number;
			public static backgroundStacked: number;
			public static backupAgent: number;
			public static baseline: number;
			public static baselineAlignBottom: number;
			public static baselineAligned: number;
			public static baselineAlignedChildIndex: number;
			public static borderlessButtonStyle: number;
			public static bottom: number;
			public static bottomBright: number;
			public static bottomDark: number;
			public static bottomLeftRadius: number;
			public static bottomMedium: number;
			public static bottomOffset: number;
			public static bottomRightRadius: number;
			public static breadCrumbShortTitle: number;
			public static breadCrumbTitle: number;
			public static bufferType: number;
			public static button: number;
			public static buttonBarButtonStyle: number;
			public static buttonBarStyle: number;
			public static buttonStyle: number;
			public static buttonStyleInset: number;
			public static buttonStyleSmall: number;
			public static buttonStyleToggle: number;
			public static cacheColorHint: number;
			public static calendarViewShown: number;
			public static calendarViewStyle: number;
			public static canRequestEnhancedWebAccessibility: number;
			public static canRequestFilterKeyEvents: number;
			public static canRequestTouchExplorationMode: number;
			public static canRetrieveWindowContent: number;
			public static candidatesTextStyleSpans: number;
			public static capitalize: number;
			public static centerBright: number;
			public static centerColor: number;
			public static centerDark: number;
			public static centerMedium: number;
			public static centerX: number;
			public static centerY: number;
			public static checkBoxPreferenceStyle: number;
			public static checkMark: number;
			public static checkable: number;
			public static checkableBehavior: number;
			public static checkboxStyle: number;
			public static checked: number;
			public static checkedButton: number;
			public static checkedTextViewStyle: number;
			public static childDivider: number;
			public static childIndicator: number;
			public static childIndicatorEnd: number;
			public static childIndicatorLeft: number;
			public static childIndicatorRight: number;
			public static childIndicatorStart: number;
			public static choiceMode: number;
			public static clearTaskOnLaunch: number;
			public static clickable: number;
			public static clipChildren: number;
			public static clipOrientation: number;
			public static clipToPadding: number;
			public static codes: number;
			public static collapseColumns: number;
			public static color: number;
			public static colorActivatedHighlight: number;
			public static colorBackground: number;
			public static colorBackgroundCacheHint: number;
			public static colorFocusedHighlight: number;
			public static colorForeground: number;
			public static colorForegroundInverse: number;
			public static colorLongPressedHighlight: number;
			public static colorMultiSelectHighlight: number;
			public static colorPressedHighlight: number;
			public static columnCount: number;
			public static columnDelay: number;
			public static columnOrderPreserved: number;
			public static columnWidth: number;
			public static compatibleWidthLimitDp: number;
			public static completionHint: number;
			public static completionHintView: number;
			public static completionThreshold: number;
			public static configChanges: number;
			public static configure: number;
			public static constantSize: number;
			public static content: number;
			public static contentAuthority: number;
			public static contentDescription: number;
			public static cropToPadding: number;
			public static cursorVisible: number;
			public static customNavigationLayout: number;
			public static customTokens: number;
			public static cycles: number;
			public static dashGap: number;
			public static dashWidth: number;
			public static data: number;
			public static datePickerStyle: number;
			public static dateTextAppearance: number;
			public static debuggable: number;
			public static defaultValue: number;
			public static delay: number;
			public static dependency: number;
			public static descendantFocusability: number;
			public static description: number;
			public static detachWallpaper: number;
			public static detailColumn: number;
			public static detailSocialSummary: number;
			public static detailsElementBackground: number;
			public static dial: number;
			public static dialogIcon: number;
			public static dialogLayout: number;
			public static dialogMessage: number;
			public static dialogPreferenceStyle: number;
			public static dialogTheme: number;
			public static dialogTitle: number;
			public static digits: number;
			public static direction: number;
			public static directionDescriptions: number;
			public static directionPriority: number;
			public static disableDependentsState: number;
			public static disabledAlpha: number;
			public static displayOptions: number;
			public static dither: number;
			public static divider: number;
			public static dividerHeight: number;
			public static dividerHorizontal: number;
			public static dividerPadding: number;
			public static dividerVertical: number;
			public static drawSelectorOnTop: number;
			public static drawable: number;
			public static drawableBottom: number;
			public static drawableEnd: number;
			public static drawableLeft: number;
			public static drawablePadding: number;
			public static drawableRight: number;
			public static drawableStart: number;
			public static drawableTop: number;
			public static drawingCacheQuality: number;
			public static dropDownAnchor: number;
			public static dropDownHeight: number;
			public static dropDownHintAppearance: number;
			public static dropDownHorizontalOffset: number;
			public static dropDownItemStyle: number;
			public static dropDownListViewStyle: number;
			public static dropDownSelector: number;
			public static dropDownSpinnerStyle: number;
			public static dropDownVerticalOffset: number;
			public static dropDownWidth: number;
			public static duplicateParentState: number;
			public static duration: number;
			public static editTextBackground: number;
			public static editTextColor: number;
			public static editTextPreferenceStyle: number;
			public static editTextStyle: number;
			public static editable: number;
			public static editorExtras: number;
			public static ellipsize: number;
			public static ems: number;
			public static enabled: number;
			public static endColor: number;
			public static endYear: number;
			public static enterFadeDuration: number;
			public static entries: number;
			public static entryValues: number;
			public static eventsInterceptionEnabled: number;
			public static excludeFromRecents: number;
			public static exitFadeDuration: number;
			public static expandableListPreferredChildIndicatorLeft: number;
			public static expandableListPreferredChildIndicatorRight: number;
			public static expandableListPreferredChildPaddingLeft: number;
			public static expandableListPreferredItemIndicatorLeft: number;
			public static expandableListPreferredItemIndicatorRight: number;
			public static expandableListPreferredItemPaddingLeft: number;
			public static expandableListViewStyle: number;
			public static expandableListViewWhiteStyle: number;
			public static exported: number;
			public static extraTension: number;
			public static factor: number;
			public static fadeDuration: number;
			public static fadeEnabled: number;
			public static fadeOffset: number;
			public static fadeScrollbars: number;
			public static fadingEdge: number;
			public static fadingEdgeLength: number;
			public static fastScrollAlwaysVisible: number;
			public static fastScrollEnabled: number;
			public static fastScrollOverlayPosition: number;
			public static fastScrollPreviewBackgroundLeft: number;
			public static fastScrollPreviewBackgroundRight: number;
			public static fastScrollTextColor: number;
			public static fastScrollThumbDrawable: number;
			public static fastScrollTrackDrawable: number;
			public static fillAfter: number;
			public static fillBefore: number;
			public static fillEnabled: number;
			public static fillViewport: number;
			public static filter: number;
			public static filterTouchesWhenObscured: number;
			public static finishOnCloseSystemDialogs: number;
			public static finishOnTaskLaunch: number;
			public static firstDayOfWeek: number;
			public static fitsSystemWindows: number;
			public static flipInterval: number;
			public static focusable: number;
			public static focusableInTouchMode: number;
			public static focusedMonthDateColor: number;
			public static fontFamily: number;
			public static footerDividersEnabled: number;
			public static foreground: number;
			public static foregroundGravity: number;
			public static format: number;
			public static format12Hour: number;
			public static format24Hour: number;
			public static fragment: number;
			public static fragmentCloseEnterAnimation: number;
			public static fragmentCloseExitAnimation: number;
			public static fragmentFadeEnterAnimation: number;
			public static fragmentFadeExitAnimation: number;
			public static fragmentOpenEnterAnimation: number;
			public static fragmentOpenExitAnimation: number;
			public static freezesText: number;
			public static fromAlpha: number;
			public static fromDegrees: number;
			public static fromXDelta: number;
			public static fromXScale: number;
			public static fromYDelta: number;
			public static fromYScale: number;
			public static fullBright: number;
			public static fullDark: number;
			public static functionalTest: number;
			public static galleryItemBackground: number;
			public static galleryStyle: number;
			public static gestureColor: number;
			public static gestureStrokeAngleThreshold: number;
			public static gestureStrokeLengthThreshold: number;
			public static gestureStrokeSquarenessThreshold: number;
			public static gestureStrokeType: number;
			public static gestureStrokeWidth: number;
			public static glEsVersion: number;
			public static gradientRadius: number;
			public static grantUriPermissions: number;
			public static gravity: number;
			public static gridViewStyle: number;
			public static groupIndicator: number;
			public static hand_hour: number;
			public static hand_minute: number;
			public static handle: number;
			public static handleProfiling: number;
			public static hapticFeedbackEnabled: number;
			public static hardwareAccelerated: number;
			public static hasCode: number;
			public static headerBackground: number;
			public static headerDividersEnabled: number;
			public static height: number;
			public static hint: number;
			public static homeAsUpIndicator: number;
			public static homeLayout: number;
			public static horizontalDivider: number;
			public static horizontalGap: number;
			public static horizontalScrollViewStyle: number;
			public static horizontalSpacing: number;
			public static host: number;
			public static icon: number;
			public static iconPreview: number;
			public static iconifiedByDefault: number;
			public static id: number;
			public static ignoreGravity: number;
			public static imageButtonStyle: number;
			public static imageWellStyle: number;
			public static imeActionId: number;
			public static imeActionLabel: number;
			public static imeExtractEnterAnimation: number;
			public static imeExtractExitAnimation: number;
			public static imeFullscreenBackground: number;
			public static imeOptions: number;
			public static imeSubtypeExtraValue: number;
			public static imeSubtypeLocale: number;
			public static imeSubtypeMode: number;
			public static immersive: number;
			public static importantForAccessibility: number;
			public static inAnimation: number;
			public static includeFontPadding: number;
			public static includeInGlobalSearch: number;
			public static indeterminate: number;
			public static indeterminateBehavior: number;
			public static indeterminateDrawable: number;
			public static indeterminateDuration: number;
			public static indeterminateOnly: number;
			public static indeterminateProgressStyle: number;
			public static indicatorEnd: number;
			public static indicatorLeft: number;
			public static indicatorRight: number;
			public static indicatorStart: number;
			public static inflatedId: number;
			public static initOrder: number;
			public static initialKeyguardLayout: number;
			public static initialLayout: number;
			public static innerRadius: number;
			public static innerRadiusRatio: number;
			public static inputMethod: number;
			public static inputType: number;
			public static insetBottom: number;
			public static insetLeft: number;
			public static insetRight: number;
			public static insetTop: number;
			public static installLocation: number;
			public static interpolator: number;
			public static isAlwaysSyncable: number;
			public static isAuxiliary: number;
			public static isDefault: number;
			public static isIndicator: number;
			public static isModifier: number;
			public static isRepeatable: number;
			public static isScrollContainer: number;
			public static isSticky: number;
			public static isolatedProcess: number;
			public static itemBackground: number;
			public static itemIconDisabledAlpha: number;
			public static itemPadding: number;
			public static itemTextAppearance: number;
			public static keepScreenOn: number;
			public static key: number;
			public static keyBackground: number;
			public static keyEdgeFlags: number;
			public static keyHeight: number;
			public static keyIcon: number;
			public static keyLabel: number;
			public static keyOutputText: number;
			public static keyPreviewHeight: number;
			public static keyPreviewLayout: number;
			public static keyPreviewOffset: number;
			public static keyTextColor: number;
			public static keyTextSize: number;
			public static keyWidth: number;
			public static keyboardLayout: number;
			public static keyboardMode: number;
			public static keycode: number;
			public static killAfterRestore: number;
			public static label: number;
			public static labelFor: number;
			public static labelTextSize: number;
			public static largeHeap: number;
			public static largeScreens: number;
			public static largestWidthLimitDp: number;
			public static launchMode: number;
			public static layerType: number;
			public static layout: number;
			public static layoutAnimation: number;
			public static layoutDirection: number;
			public static layoutMode: number;
			public static layout_above: number;
			public static layout_alignBaseline: number;
			public static layout_alignBottom: number;
			public static layout_alignEnd: number;
			public static layout_alignLeft: number;
			public static layout_alignParentBottom: number;
			public static layout_alignParentEnd: number;
			public static layout_alignParentLeft: number;
			public static layout_alignParentRight: number;
			public static layout_alignParentStart: number;
			public static layout_alignParentTop: number;
			public static layout_alignRight: number;
			public static layout_alignStart: number;
			public static layout_alignTop: number;
			public static layout_alignWithParentIfMissing: number;
			public static layout_below: number;
			public static layout_centerHorizontal: number;
			public static layout_centerInParent: number;
			public static layout_centerVertical: number;
			public static layout_column: number;
			public static layout_columnSpan: number;
			public static layout_gravity: number;
			public static layout_height: number;
			public static layout_margin: number;
			public static layout_marginBottom: number;
			public static layout_marginEnd: number;
			public static layout_marginLeft: number;
			public static layout_marginRight: number;
			public static layout_marginStart: number;
			public static layout_marginTop: number;
			public static layout_row: number;
			public static layout_rowSpan: number;
			public static layout_scale: number;
			public static layout_span: number;
			public static layout_toEndOf: number;
			public static layout_toLeftOf: number;
			public static layout_toRightOf: number;
			public static layout_toStartOf: number;
			public static layout_weight: number;
			public static layout_width: number;
			public static layout_x: number;
			public static layout_y: number;
			public static left: number;
			public static lineSpacingExtra: number;
			public static lineSpacingMultiplier: number;
			public static lines: number;
			public static linksClickable: number;
			public static listChoiceBackgroundIndicator: number;
			public static listChoiceIndicatorMultiple: number;
			public static listChoiceIndicatorSingle: number;
			public static listDivider: number;
			public static listDividerAlertDialog: number;
			public static listPopupWindowStyle: number;
			public static listPreferredItemHeight: number;
			public static listPreferredItemHeightLarge: number;
			public static listPreferredItemHeightSmall: number;
			public static listPreferredItemPaddingEnd: number;
			public static listPreferredItemPaddingLeft: number;
			public static listPreferredItemPaddingRight: number;
			public static listPreferredItemPaddingStart: number;
			public static listSelector: number;
			public static listSeparatorTextViewStyle: number;
			public static listViewStyle: number;
			public static listViewWhiteStyle: number;
			public static logo: number;
			public static longClickable: number;
			public static loopViews: number;
			public static manageSpaceActivity: number;
			public static mapViewStyle: number;
			public static marqueeRepeatLimit: number;
			public static max: number;
			public static maxDate: number;
			public static maxEms: number;
			public static maxHeight: number;
			public static maxItemsPerRow: number;
			public static maxLength: number;
			public static maxLevel: number;
			public static maxLines: number;
			public static maxRows: number;
			public static maxSdkVersion: number;
			public static maxWidth: number;
			public static measureAllChildren: number;
			public static measureWithLargestChild: number;
			public static mediaRouteButtonStyle: number;
			public static mediaRouteTypes: number;
			public static menuCategory: number;
			public static mimeType: number;
			public static minDate: number;
			public static minEms: number;
			public static minHeight: number;
			public static minLevel: number;
			public static minLines: number;
			public static minResizeHeight: number;
			public static minResizeWidth: number;
			public static minSdkVersion: number;
			public static minWidth: number;
			public static mipMap: number;
			public static mirrorForRtl: number;
			public static mode: number;
			public static moreIcon: number;
			public static multiprocess: number;
			public static name: number;
			public static navigationMode: number;
			public static negativeButtonText: number;
			public static nextFocusDown: number;
			public static nextFocusForward: number;
			public static nextFocusLeft: number;
			public static nextFocusRight: number;
			public static nextFocusUp: number;
			public static noHistory: number;
			public static normalScreens: number;
			public static notificationTimeout: number;
			public static numColumns: number;
			public static numStars: number;
			public static numeric: number;
			public static numericShortcut: number;
			public static onClick: number;
			public static oneshot: number;
			public static opacity: number;
			public static order: number;
			public static orderInCategory: number;
			public static ordering: number;
			public static orderingFromXml: number;
			public static orientation: number;
			public static outAnimation: number;
			public static overScrollFooter: number;
			public static overScrollHeader: number;
			public static overScrollMode: number;
			public static overridesImplicitlyEnabledSubtype: number;
			public static packageNames: number;
			public static padding: number;
			public static paddingBottom: number;
			public static paddingEnd: number;
			public static paddingLeft: number;
			public static paddingRight: number;
			public static paddingStart: number;
			public static paddingTop: number;
			public static panelBackground: number;
			public static panelColorBackground: number;
			public static panelColorForeground: number;
			public static panelFullBackground: number;
			public static panelTextAppearance: number;
			public static parentActivityName: number;
			public static password: number;
			public static path: number;
			public static pathPattern: number;
			public static pathPrefix: number;
			public static permission: number;
			public static permissionFlags: number;
			public static permissionGroup: number;
			public static permissionGroupFlags: number;
			public static persistent: number;
			public static persistentDrawingCache: number;
			public static phoneNumber: number;
			public static pivotX: number;
			public static pivotY: number;
			public static popupAnimationStyle: number;
			public static popupBackground: number;
			public static popupCharacters: number;
			public static popupKeyboard: number;
			public static popupLayout: number;
			public static popupMenuStyle: number;
			public static popupWindowStyle: number;
			public static port: number;
			public static positiveButtonText: number;
			public static preferenceCategoryStyle: number;
			public static preferenceInformationStyle: number;
			public static preferenceLayoutChild: number;
			public static preferenceScreenStyle: number;
			public static preferenceStyle: number;
			public static presentationTheme: number;
			public static previewImage: number;
			public static priority: number;
			public static privateImeOptions: number;
			public static process: number;
			public static progress: number;
			public static progressBarPadding: number;
			public static progressBarStyle: number;
			public static progressBarStyleHorizontal: number;
			public static progressBarStyleInverse: number;
			public static progressBarStyleLarge: number;
			public static progressBarStyleLargeInverse: number;
			public static progressBarStyleSmall: number;
			public static progressBarStyleSmallInverse: number;
			public static progressBarStyleSmallTitle: number;
			public static progressDrawable: number;
			public static prompt: number;
			public static propertyName: number;
			public static protectionLevel: number;
			public static publicKey: number;
			public static queryActionMsg: number;
			public static queryAfterZeroResults: number;
			public static queryHint: number;
			public static quickContactBadgeStyleSmallWindowLarge: number;
			public static quickContactBadgeStyleSmallWindowMedium: number;
			public static quickContactBadgeStyleSmallWindowSmall: number;
			public static quickContactBadgeStyleWindowLarge: number;
			public static quickContactBadgeStyleWindowMedium: number;
			public static quickContactBadgeStyleWindowSmall: number;
			public static radioButtonStyle: number;
			public static radius: number;
			public static rating: number;
			public static ratingBarStyle: number;
			public static ratingBarStyleIndicator: number;
			public static ratingBarStyleSmall: number;
			public static readPermission: number;
			public static repeatCount: number;
			public static repeatMode: number;
			public static reqFiveWayNav: number;
			public static reqHardKeyboard: number;
			public static reqKeyboardType: number;
			public static reqNavigation: number;
			public static reqTouchScreen: number;
			public static required: number;
			public static requiredAccountType: number;
			public static requiredForAllUsers: number;
			public static requiresFadingEdge: number;
			public static requiresSmallestWidthDp: number;
			public static resizeMode: number;
			public static resizeable: number;
			public static resource: number;
			public static restoreAnyVersion: number;
			public static restoreNeedsApplication: number;
			public static restrictedAccountType: number;
			public static right: number;
			public static ringtonePreferenceStyle: number;
			public static ringtoneType: number;
			public static rotation: number;
			public static rotationX: number;
			public static rotationY: number;
			public static rowCount: number;
			public static rowDelay: number;
			public static rowEdgeFlags: number;
			public static rowHeight: number;
			public static rowOrderPreserved: number;
			public static saveEnabled: number;
			public static scaleGravity: number;
			public static scaleHeight: number;
			public static scaleType: number;
			public static scaleWidth: number;
			public static scaleX: number;
			public static scaleY: number;
			public static scheme: number;
			public static screenDensity: number;
			public static screenOrientation: number;
			public static screenSize: number;
			public static scrollHorizontally: number;
			public static scrollViewStyle: number;
			public static scrollX: number;
			public static scrollY: number;
			public static scrollbarAlwaysDrawHorizontalTrack: number;
			public static scrollbarAlwaysDrawVerticalTrack: number;
			public static scrollbarDefaultDelayBeforeFade: number;
			public static scrollbarFadeDuration: number;
			public static scrollbarSize: number;
			public static scrollbarStyle: number;
			public static scrollbarThumbHorizontal: number;
			public static scrollbarThumbVertical: number;
			public static scrollbarTrackHorizontal: number;
			public static scrollbarTrackVertical: number;
			public static scrollbars: number;
			public static scrollingCache: number;
			public static searchButtonText: number;
			public static searchMode: number;
			public static searchSettingsDescription: number;
			public static searchSuggestAuthority: number;
			public static searchSuggestIntentAction: number;
			public static searchSuggestIntentData: number;
			public static searchSuggestPath: number;
			public static searchSuggestSelection: number;
			public static searchSuggestThreshold: number;
			public static secondaryProgress: number;
			public static seekBarStyle: number;
			public static segmentedButtonStyle: number;
			public static selectAllOnFocus: number;
			public static selectable: number;
			public static selectableItemBackground: number;
			public static selectedDateVerticalBar: number;
			public static selectedWeekBackgroundColor: number;
			public static settingsActivity: number;
			public static shadowColor: number;
			public static shadowDx: number;
			public static shadowDy: number;
			public static shadowRadius: number;
			public static shape: number;
			public static shareInterpolator: number;
			public static sharedUserId: number;
			public static sharedUserLabel: number;
			public static shouldDisableView: number;
			public static showAsAction: number;
			public static showDefault: number;
			public static showDividers: number;
			public static showOnLockScreen: number;
			public static showSilent: number;
			public static showWeekNumber: number;
			public static shownWeekCount: number;
			public static shrinkColumns: number;
			public static singleLine: number;
			public static singleUser: number;
			public static smallIcon: number;
			public static smallScreens: number;
			public static smoothScrollbar: number;
			public static soundEffectsEnabled: number;
			public static spacing: number;
			public static spinnerDropDownItemStyle: number;
			public static spinnerItemStyle: number;
			public static spinnerMode: number;
			public static spinnerStyle: number;
			public static spinnersShown: number;
			public static splitMotionEvents: number;
			public static src: number;
			public static stackFromBottom: number;
			public static starStyle: number;
			public static startColor: number;
			public static startOffset: number;
			public static startYear: number;
			public static stateNotNeeded: number;
			public static state_above_anchor: number;
			public static state_accelerated: number;
			public static state_activated: number;
			public static state_active: number;
			public static state_checkable: number;
			public static state_checked: number;
			public static state_drag_can_accept: number;
			public static state_drag_hovered: number;
			public static state_empty: number;
			public static state_enabled: number;
			public static state_expanded: number;
			public static state_first: number;
			public static state_focused: number;
			public static state_hovered: number;
			public static state_last: number;
			public static state_long_pressable: number;
			public static state_middle: number;
			public static state_multiline: number;
			public static state_pressed: number;
			public static state_selected: number;
			public static state_single: number;
			public static state_window_focused: number;
			public static staticWallpaperPreview: number;
			public static stepSize: number;
			public static stopWithTask: number;
			public static streamType: number;
			public static stretchColumns: number;
			public static stretchMode: number;
			public static subtitle: number;
			public static subtitleTextStyle: number;
			public static subtypeExtraValue: number;
			public static subtypeId: number;
			public static subtypeLocale: number;
			public static suggestActionMsg: number;
			public static suggestActionMsgColumn: number;
			public static summary: number;
			public static summaryColumn: number;
			public static summaryOff: number;
			public static summaryOn: number;
			public static supportsRtl: number;
			public static supportsUploading: number;
			public static switchMinWidth: number;
			public static switchPadding: number;
			public static switchPreferenceStyle: number;
			public static switchTextAppearance: number;
			public static switchTextOff: number;
			public static switchTextOn: number;
			public static syncable: number;
			public static tabStripEnabled: number;
			public static tabStripLeft: number;
			public static tabStripRight: number;
			public static tabWidgetStyle: number;
			public static tag: number;
			public static targetActivity: number;
			public static targetClass: number;
			public static targetDescriptions: number;
			public static targetPackage: number;
			public static targetSdkVersion: number;
			public static taskAffinity: number;
			public static taskCloseEnterAnimation: number;
			public static taskCloseExitAnimation: number;
			public static taskOpenEnterAnimation: number;
			public static taskOpenExitAnimation: number;
			public static taskToBackEnterAnimation: number;
			public static taskToBackExitAnimation: number;
			public static taskToFrontEnterAnimation: number;
			public static taskToFrontExitAnimation: number;
			public static tension: number;
			public static testOnly: number;
			public static text: number;
			public static textAlignment: number;
			public static textAllCaps: number;
			public static textAppearance: number;
			public static textAppearanceButton: number;
			public static textAppearanceInverse: number;
			public static textAppearanceLarge: number;
			public static textAppearanceLargeInverse: number;
			public static textAppearanceLargePopupMenu: number;
			public static textAppearanceListItem: number;
			public static textAppearanceListItemSmall: number;
			public static textAppearanceMedium: number;
			public static textAppearanceMediumInverse: number;
			public static textAppearanceSearchResultSubtitle: number;
			public static textAppearanceSearchResultTitle: number;
			public static textAppearanceSmall: number;
			public static textAppearanceSmallInverse: number;
			public static textAppearanceSmallPopupMenu: number;
			public static textCheckMark: number;
			public static textCheckMarkInverse: number;
			public static textColor: number;
			public static textColorAlertDialogListItem: number;
			public static textColorHighlight: number;
			public static textColorHighlightInverse: number;
			public static textColorHint: number;
			public static textColorHintInverse: number;
			public static textColorLink: number;
			public static textColorLinkInverse: number;
			public static textColorPrimary: number;
			public static textColorPrimaryDisableOnly: number;
			public static textColorPrimaryInverse: number;
			public static textColorPrimaryInverseDisableOnly: number;
			public static textColorPrimaryInverseNoDisable: number;
			public static textColorPrimaryNoDisable: number;
			public static textColorSecondary: number;
			public static textColorSecondaryInverse: number;
			public static textColorSecondaryInverseNoDisable: number;
			public static textColorSecondaryNoDisable: number;
			public static textColorTertiary: number;
			public static textColorTertiaryInverse: number;
			public static textCursorDrawable: number;
			public static textDirection: number;
			public static textEditNoPasteWindowLayout: number;
			public static textEditPasteWindowLayout: number;
			public static textEditSideNoPasteWindowLayout: number;
			public static textEditSidePasteWindowLayout: number;
			public static textEditSuggestionItemLayout: number;
			public static textFilterEnabled: number;
			public static textIsSelectable: number;
			public static textOff: number;
			public static textOn: number;
			public static textScaleX: number;
			public static textSelectHandle: number;
			public static textSelectHandleLeft: number;
			public static textSelectHandleRight: number;
			public static textSelectHandleWindowStyle: number;
			public static textSize: number;
			public static textStyle: number;
			public static textSuggestionsWindowStyle: number;
			public static textViewStyle: number;
			public static theme: number;
			public static thickness: number;
			public static thicknessRatio: number;
			public static thumb: number;
			public static thumbOffset: number;
			public static thumbTextPadding: number;
			public static thumbnail: number;
			public static tileMode: number;
			public static timeZone: number;
			public static tint: number;
			public static title: number;
			public static titleCondensed: number;
			public static titleTextStyle: number;
			public static toAlpha: number;
			public static toDegrees: number;
			public static toXDelta: number;
			public static toXScale: number;
			public static toYDelta: number;
			public static toYScale: number;
			public static top: number;
			public static topBright: number;
			public static topDark: number;
			public static topLeftRadius: number;
			public static topOffset: number;
			public static topRightRadius: number;
			public static track: number;
			public static transcriptMode: number;
			public static transformPivotX: number;
			public static transformPivotY: number;
			public static translationX: number;
			public static translationY: number;
			public static type: number;
			public static typeface: number;
			public static uiOptions: number;
			public static uncertainGestureColor: number;
			public static unfocusedMonthDateColor: number;
			public static unselectedAlpha: number;
			public static updatePeriodMillis: number;
			public static useDefaultMargins: number;
			public static useIntrinsicSizeAsMinimum: number;
			public static useLevel: number;
			public static userVisible: number;
			public static value: number;
			public static valueFrom: number;
			public static valueTo: number;
			public static valueType: number;
			public static variablePadding: number;
			public static versionCode: number;
			public static versionName: number;
			public static verticalCorrection: number;
			public static verticalDivider: number;
			public static verticalGap: number;
			public static verticalScrollbarPosition: number;
			public static verticalSpacing: number;
			public static visibility: number;
			public static visible: number;
			public static vmSafeMode: number;
			public static voiceLanguage: number;
			public static voiceLanguageModel: number;
			public static voiceMaxResults: number;
			public static voicePromptText: number;
			public static voiceSearchMode: number;
			public static wallpaperCloseEnterAnimation: number;
			public static wallpaperCloseExitAnimation: number;
			public static wallpaperIntraCloseEnterAnimation: number;
			public static wallpaperIntraCloseExitAnimation: number;
			public static wallpaperIntraOpenEnterAnimation: number;
			public static wallpaperIntraOpenExitAnimation: number;
			public static wallpaperOpenEnterAnimation: number;
			public static wallpaperOpenExitAnimation: number;
			public static webTextViewStyle: number;
			public static webViewStyle: number;
			public static weekDayTextAppearance: number;
			public static weekNumberColor: number;
			public static weekSeparatorLineColor: number;
			public static weightSum: number;
			public static widgetCategory: number;
			public static widgetLayout: number;
			public static width: number;
			public static windowActionBar: number;
			public static windowActionBarOverlay: number;
			public static windowActionModeOverlay: number;
			public static windowAnimationStyle: number;
			public static windowBackground: number;
			public static windowCloseOnTouchOutside: number;
			public static windowContentOverlay: number;
			public static windowDisablePreview: number;
			public static windowEnableSplitTouch: number;
			public static windowEnterAnimation: number;
			public static windowExitAnimation: number;
			public static windowFrame: number;
			public static windowFullscreen: number;
			public static windowHideAnimation: number;
			public static windowIsFloating: number;
			public static windowIsTranslucent: number;
			public static windowMinWidthMajor: number;
			public static windowMinWidthMinor: number;
			public static windowNoDisplay: number;
			public static windowNoTitle: number;
			public static windowOverscan: number;
			public static windowShowAnimation: number;
			public static windowShowWallpaper: number;
			public static windowSoftInputMode: number;
			public static windowTitleBackgroundStyle: number;
			public static windowTitleSize: number;
			public static windowTitleStyle: number;
			public static writePermission: number;
			public static x: number;
			public static xlargeScreens: number;
			public static y: number;
			public static yesNoPreferenceStyle: number;
			public static zAdjustment: number;
			public constructor();
		}
		export class bool extends java.lang.Object {
			public static class: java.lang.Class<android.R.bool>;
			public constructor();
		}
		export class color extends java.lang.Object {
			public static class: java.lang.Class<android.R.color>;
			public static background_dark: number;
			public static background_light: number;
			public static black: number;
			public static darker_gray: number;
			public static holo_blue_bright: number;
			public static holo_blue_dark: number;
			public static holo_blue_light: number;
			public static holo_green_dark: number;
			public static holo_green_light: number;
			public static holo_orange_dark: number;
			public static holo_orange_light: number;
			public static holo_purple: number;
			public static holo_red_dark: number;
			public static holo_red_light: number;
			public static primary_text_dark: number;
			public static primary_text_dark_nodisable: number;
			public static primary_text_light: number;
			public static primary_text_light_nodisable: number;
			public static secondary_text_dark: number;
			public static secondary_text_dark_nodisable: number;
			public static secondary_text_light: number;
			public static secondary_text_light_nodisable: number;
			public static tab_indicator_text: number;
			public static tertiary_text_dark: number;
			public static tertiary_text_light: number;
			public static transparent: number;
			public static white: number;
			public static widget_edittext_dark: number;
			public constructor();
		}
		export class dimen extends java.lang.Object {
			public static class: java.lang.Class<android.R.dimen>;
			public static app_icon_size: number;
			public static dialog_min_width_major: number;
			public static dialog_min_width_minor: number;
			public static notification_large_icon_height: number;
			public static notification_large_icon_width: number;
			public static thumbnail_height: number;
			public static thumbnail_width: number;
			public constructor();
		}
		export class drawable extends java.lang.Object {
			public static class: java.lang.Class<android.R.drawable>;
			public static alert_dark_frame: number;
			public static alert_light_frame: number;
			public static arrow_down_float: number;
			public static arrow_up_float: number;
			public static bottom_bar: number;
			public static btn_default: number;
			public static btn_default_small: number;
			public static btn_dialog: number;
			public static btn_dropdown: number;
			public static btn_minus: number;
			public static btn_plus: number;
			public static btn_radio: number;
			public static btn_star: number;
			public static btn_star_big_off: number;
			public static btn_star_big_on: number;
			public static button_onoff_indicator_off: number;
			public static button_onoff_indicator_on: number;
			public static checkbox_off_background: number;
			public static checkbox_on_background: number;
			public static dark_header: number;
			public static dialog_frame: number;
			public static dialog_holo_dark_frame: number;
			public static dialog_holo_light_frame: number;
			public static divider_horizontal_bright: number;
			public static divider_horizontal_dark: number;
			public static divider_horizontal_dim_dark: number;
			public static divider_horizontal_textfield: number;
			public static edit_text: number;
			public static editbox_background: number;
			public static editbox_background_normal: number;
			public static editbox_dropdown_dark_frame: number;
			public static editbox_dropdown_light_frame: number;
			public static gallery_thumb: number;
			public static ic_btn_speak_now: number;
			public static ic_delete: number;
			public static ic_dialog_alert: number;
			public static ic_dialog_dialer: number;
			public static ic_dialog_email: number;
			public static ic_dialog_info: number;
			public static ic_dialog_map: number;
			public static ic_input_add: number;
			public static ic_input_delete: number;
			public static ic_input_get: number;
			public static ic_lock_idle_alarm: number;
			public static ic_lock_idle_charging: number;
			public static ic_lock_idle_lock: number;
			public static ic_lock_idle_low_battery: number;
			public static ic_lock_lock: number;
			public static ic_lock_power_off: number;
			public static ic_lock_silent_mode: number;
			public static ic_lock_silent_mode_off: number;
			public static ic_media_ff: number;
			public static ic_media_next: number;
			public static ic_media_pause: number;
			public static ic_media_play: number;
			public static ic_media_previous: number;
			public static ic_media_rew: number;
			public static ic_menu_add: number;
			public static ic_menu_agenda: number;
			public static ic_menu_always_landscape_portrait: number;
			public static ic_menu_call: number;
			public static ic_menu_camera: number;
			public static ic_menu_close_clear_cancel: number;
			public static ic_menu_compass: number;
			public static ic_menu_crop: number;
			public static ic_menu_day: number;
			public static ic_menu_delete: number;
			public static ic_menu_directions: number;
			public static ic_menu_edit: number;
			public static ic_menu_gallery: number;
			public static ic_menu_help: number;
			public static ic_menu_info_details: number;
			public static ic_menu_manage: number;
			public static ic_menu_mapmode: number;
			public static ic_menu_month: number;
			public static ic_menu_more: number;
			public static ic_menu_my_calendar: number;
			public static ic_menu_mylocation: number;
			public static ic_menu_myplaces: number;
			public static ic_menu_preferences: number;
			public static ic_menu_recent_history: number;
			public static ic_menu_report_image: number;
			public static ic_menu_revert: number;
			public static ic_menu_rotate: number;
			public static ic_menu_save: number;
			public static ic_menu_search: number;
			public static ic_menu_send: number;
			public static ic_menu_set_as: number;
			public static ic_menu_share: number;
			public static ic_menu_slideshow: number;
			public static ic_menu_sort_alphabetically: number;
			public static ic_menu_sort_by_size: number;
			public static ic_menu_today: number;
			public static ic_menu_upload: number;
			public static ic_menu_upload_you_tube: number;
			public static ic_menu_view: number;
			public static ic_menu_week: number;
			public static ic_menu_zoom: number;
			public static ic_notification_clear_all: number;
			public static ic_notification_overlay: number;
			public static ic_partial_secure: number;
			public static ic_popup_disk_full: number;
			public static ic_popup_reminder: number;
			public static ic_popup_sync: number;
			public static ic_search_category_default: number;
			public static ic_secure: number;
			public static list_selector_background: number;
			public static menu_frame: number;
			public static menu_full_frame: number;
			public static menuitem_background: number;
			public static picture_frame: number;
			public static presence_audio_away: number;
			public static presence_audio_busy: number;
			public static presence_audio_online: number;
			public static presence_away: number;
			public static presence_busy: number;
			public static presence_invisible: number;
			public static presence_offline: number;
			public static presence_online: number;
			public static presence_video_away: number;
			public static presence_video_busy: number;
			public static presence_video_online: number;
			public static progress_horizontal: number;
			public static progress_indeterminate_horizontal: number;
			public static radiobutton_off_background: number;
			public static radiobutton_on_background: number;
			public static screen_background_dark: number;
			public static screen_background_dark_transparent: number;
			public static screen_background_light: number;
			public static screen_background_light_transparent: number;
			public static spinner_background: number;
			public static spinner_dropdown_background: number;
			public static star_big_off: number;
			public static star_big_on: number;
			public static star_off: number;
			public static star_on: number;
			public static stat_notify_call_mute: number;
			public static stat_notify_chat: number;
			public static stat_notify_error: number;
			public static stat_notify_missed_call: number;
			public static stat_notify_more: number;
			public static stat_notify_sdcard: number;
			public static stat_notify_sdcard_prepare: number;
			public static stat_notify_sdcard_usb: number;
			public static stat_notify_sync: number;
			public static stat_notify_sync_noanim: number;
			public static stat_notify_voicemail: number;
			public static stat_sys_data_bluetooth: number;
			public static stat_sys_download: number;
			public static stat_sys_download_done: number;
			public static stat_sys_headset: number;
			public static stat_sys_phone_call: number;
			public static stat_sys_phone_call_forward: number;
			public static stat_sys_phone_call_on_hold: number;
			public static stat_sys_speakerphone: number;
			public static stat_sys_upload: number;
			public static stat_sys_upload_done: number;
			public static stat_sys_vp_phone_call: number;
			public static stat_sys_vp_phone_call_on_hold: number;
			public static stat_sys_warning: number;
			public static status_bar_item_app_background: number;
			public static status_bar_item_background: number;
			public static sym_action_call: number;
			public static sym_action_chat: number;
			public static sym_action_email: number;
			public static sym_call_incoming: number;
			public static sym_call_missed: number;
			public static sym_call_outgoing: number;
			public static sym_contact_card: number;
			public static sym_def_app_icon: number;
			public static title_bar: number;
			public static title_bar_tall: number;
			public static toast_frame: number;
			public static zoom_plate: number;
			public constructor();
		}
		export class fraction extends java.lang.Object {
			public static class: java.lang.Class<android.R.fraction>;
			public constructor();
		}
		export class id extends java.lang.Object {
			public static class: java.lang.Class<android.R.id>;
			public static addToDictionary: number;
			public static background: number;
			public static button1: number;
			public static button2: number;
			public static button3: number;
			public static candidatesArea: number;
			public static checkbox: number;
			public static closeButton: number;
			public static content: number;
			public static copy: number;
			public static copyUrl: number;
			public static custom: number;
			public static cut: number;
			public static edit: number;
			public static empty: number;
			public static extractArea: number;
			public static hint: number;
			public static home: number;
			public static icon: number;
			public static icon1: number;
			public static icon2: number;
			public static input: number;
			public static inputArea: number;
			public static inputExtractEditText: number;
			public static keyboardView: number;
			public static list: number;
			public static message: number;
			public static paste: number;
			public static primary: number;
			public static progress: number;
			public static secondaryProgress: number;
			public static selectAll: number;
			public static selectTextMode: number;
			public static selectedIcon: number;
			public static startSelectingText: number;
			public static stopSelectingText: number;
			public static summary: number;
			public static switchInputMethod: number;
			public static tabcontent: number;
			public static tabhost: number;
			public static tabs: number;
			public static text1: number;
			public static text2: number;
			public static title: number;
			public static toggle: number;
			public static widget_frame: number;
			public constructor();
		}
		export class integer extends java.lang.Object {
			public static class: java.lang.Class<android.R.integer>;
			public static config_longAnimTime: number;
			public static config_mediumAnimTime: number;
			public static config_shortAnimTime: number;
			public static status_bar_notification_info_maxnum: number;
			public constructor();
		}
		export class interpolator extends java.lang.Object {
			public static class: java.lang.Class<android.R.interpolator>;
			public static accelerate_cubic: number;
			public static accelerate_decelerate: number;
			public static accelerate_quad: number;
			public static accelerate_quint: number;
			public static anticipate: number;
			public static anticipate_overshoot: number;
			public static bounce: number;
			public static cycle: number;
			public static decelerate_cubic: number;
			public static decelerate_quad: number;
			public static decelerate_quint: number;
			public static linear: number;
			public static overshoot: number;
			public constructor();
		}
		export class layout extends java.lang.Object {
			public static class: java.lang.Class<android.R.layout>;
			public static activity_list_item: number;
			public static browser_link_context_header: number;
			public static expandable_list_content: number;
			public static list_content: number;
			public static preference_category: number;
			public static select_dialog_item: number;
			public static select_dialog_multichoice: number;
			public static select_dialog_singlechoice: number;
			public static simple_dropdown_item_1line: number;
			public static simple_expandable_list_item_1: number;
			public static simple_expandable_list_item_2: number;
			public static simple_gallery_item: number;
			public static simple_list_item_1: number;
			public static simple_list_item_2: number;
			public static simple_list_item_activated_1: number;
			public static simple_list_item_activated_2: number;
			public static simple_list_item_checked: number;
			public static simple_list_item_multiple_choice: number;
			public static simple_list_item_single_choice: number;
			public static simple_selectable_list_item: number;
			public static simple_spinner_dropdown_item: number;
			public static simple_spinner_item: number;
			public static test_list_item: number;
			public static two_line_list_item: number;
			public constructor();
		}
		export class menu extends java.lang.Object {
			public static class: java.lang.Class<android.R.menu>;
			public constructor();
		}
		export class mipmap extends java.lang.Object {
			public static class: java.lang.Class<android.R.mipmap>;
			public static sym_def_app_icon: number;
			public constructor();
		}
		export class plurals extends java.lang.Object {
			public static class: java.lang.Class<android.R.plurals>;
			public constructor();
		}
		export class raw extends java.lang.Object {
			public static class: java.lang.Class<android.R.raw>;
			public constructor();
		}
		export class style extends java.lang.Object {
			public static class: java.lang.Class<android.R.style>;
			public static Animation: number;
			public static Animation_Activity: number;
			public static Animation_Dialog: number;
			public static Animation_InputMethod: number;
			public static Animation_Toast: number;
			public static Animation_Translucent: number;
			public static DeviceDefault_ButtonBar: number;
			public static DeviceDefault_ButtonBar_AlertDialog: number;
			public static DeviceDefault_Light_ButtonBar: number;
			public static DeviceDefault_Light_ButtonBar_AlertDialog: number;
			public static DeviceDefault_Light_SegmentedButton: number;
			public static DeviceDefault_SegmentedButton: number;
			public static Holo_ButtonBar: number;
			public static Holo_ButtonBar_AlertDialog: number;
			public static Holo_Light_ButtonBar: number;
			public static Holo_Light_ButtonBar_AlertDialog: number;
			public static Holo_Light_SegmentedButton: number;
			public static Holo_SegmentedButton: number;
			public static MediaButton: number;
			public static MediaButton_Ffwd: number;
			public static MediaButton_Next: number;
			public static MediaButton_Pause: number;
			public static MediaButton_Play: number;
			public static MediaButton_Previous: number;
			public static MediaButton_Rew: number;
			public static TextAppearance: number;
			public static TextAppearance_DeviceDefault: number;
			public static TextAppearance_DeviceDefault_DialogWindowTitle: number;
			public static TextAppearance_DeviceDefault_Inverse: number;
			public static TextAppearance_DeviceDefault_Large: number;
			public static TextAppearance_DeviceDefault_Large_Inverse: number;
			public static TextAppearance_DeviceDefault_Medium: number;
			public static TextAppearance_DeviceDefault_Medium_Inverse: number;
			public static TextAppearance_DeviceDefault_SearchResult_Subtitle: number;
			public static TextAppearance_DeviceDefault_SearchResult_Title: number;
			public static TextAppearance_DeviceDefault_Small: number;
			public static TextAppearance_DeviceDefault_Small_Inverse: number;
			public static TextAppearance_DeviceDefault_Widget: number;
			public static TextAppearance_DeviceDefault_Widget_ActionBar_Menu: number;
			public static TextAppearance_DeviceDefault_Widget_ActionBar_Subtitle: number;
			public static TextAppearance_DeviceDefault_Widget_ActionBar_Subtitle_Inverse: number;
			public static TextAppearance_DeviceDefault_Widget_ActionBar_Title: number;
			public static TextAppearance_DeviceDefault_Widget_ActionBar_Title_Inverse: number;
			public static TextAppearance_DeviceDefault_Widget_ActionMode_Subtitle: number;
			public static TextAppearance_DeviceDefault_Widget_ActionMode_Subtitle_Inverse: number;
			public static TextAppearance_DeviceDefault_Widget_ActionMode_Title: number;
			public static TextAppearance_DeviceDefault_Widget_ActionMode_Title_Inverse: number;
			public static TextAppearance_DeviceDefault_Widget_Button: number;
			public static TextAppearance_DeviceDefault_Widget_DropDownHint: number;
			public static TextAppearance_DeviceDefault_Widget_DropDownItem: number;
			public static TextAppearance_DeviceDefault_Widget_EditText: number;
			public static TextAppearance_DeviceDefault_Widget_IconMenu_Item: number;
			public static TextAppearance_DeviceDefault_Widget_PopupMenu: number;
			public static TextAppearance_DeviceDefault_Widget_PopupMenu_Large: number;
			public static TextAppearance_DeviceDefault_Widget_PopupMenu_Small: number;
			public static TextAppearance_DeviceDefault_Widget_TabWidget: number;
			public static TextAppearance_DeviceDefault_Widget_TextView: number;
			public static TextAppearance_DeviceDefault_Widget_TextView_PopupMenu: number;
			public static TextAppearance_DeviceDefault_Widget_TextView_SpinnerItem: number;
			public static TextAppearance_DeviceDefault_WindowTitle: number;
			public static TextAppearance_DialogWindowTitle: number;
			public static TextAppearance_Holo: number;
			public static TextAppearance_Holo_DialogWindowTitle: number;
			public static TextAppearance_Holo_Inverse: number;
			public static TextAppearance_Holo_Large: number;
			public static TextAppearance_Holo_Large_Inverse: number;
			public static TextAppearance_Holo_Medium: number;
			public static TextAppearance_Holo_Medium_Inverse: number;
			public static TextAppearance_Holo_SearchResult_Subtitle: number;
			public static TextAppearance_Holo_SearchResult_Title: number;
			public static TextAppearance_Holo_Small: number;
			public static TextAppearance_Holo_Small_Inverse: number;
			public static TextAppearance_Holo_Widget: number;
			public static TextAppearance_Holo_Widget_ActionBar_Menu: number;
			public static TextAppearance_Holo_Widget_ActionBar_Subtitle: number;
			public static TextAppearance_Holo_Widget_ActionBar_Subtitle_Inverse: number;
			public static TextAppearance_Holo_Widget_ActionBar_Title: number;
			public static TextAppearance_Holo_Widget_ActionBar_Title_Inverse: number;
			public static TextAppearance_Holo_Widget_ActionMode_Subtitle: number;
			public static TextAppearance_Holo_Widget_ActionMode_Subtitle_Inverse: number;
			public static TextAppearance_Holo_Widget_ActionMode_Title: number;
			public static TextAppearance_Holo_Widget_ActionMode_Title_Inverse: number;
			public static TextAppearance_Holo_Widget_Button: number;
			public static TextAppearance_Holo_Widget_DropDownHint: number;
			public static TextAppearance_Holo_Widget_DropDownItem: number;
			public static TextAppearance_Holo_Widget_EditText: number;
			public static TextAppearance_Holo_Widget_IconMenu_Item: number;
			public static TextAppearance_Holo_Widget_PopupMenu: number;
			public static TextAppearance_Holo_Widget_PopupMenu_Large: number;
			public static TextAppearance_Holo_Widget_PopupMenu_Small: number;
			public static TextAppearance_Holo_Widget_TabWidget: number;
			public static TextAppearance_Holo_Widget_TextView: number;
			public static TextAppearance_Holo_Widget_TextView_PopupMenu: number;
			public static TextAppearance_Holo_Widget_TextView_SpinnerItem: number;
			public static TextAppearance_Holo_WindowTitle: number;
			public static TextAppearance_Inverse: number;
			public static TextAppearance_Large: number;
			public static TextAppearance_Large_Inverse: number;
			public static TextAppearance_Medium: number;
			public static TextAppearance_Medium_Inverse: number;
			public static TextAppearance_Small: number;
			public static TextAppearance_Small_Inverse: number;
			public static TextAppearance_StatusBar_EventContent: number;
			public static TextAppearance_StatusBar_EventContent_Title: number;
			public static TextAppearance_StatusBar_Icon: number;
			public static TextAppearance_StatusBar_Title: number;
			public static TextAppearance_SuggestionHighlight: number;
			public static TextAppearance_Theme: number;
			public static TextAppearance_Theme_Dialog: number;
			public static TextAppearance_Widget: number;
			public static TextAppearance_Widget_Button: number;
			public static TextAppearance_Widget_DropDownHint: number;
			public static TextAppearance_Widget_DropDownItem: number;
			public static TextAppearance_Widget_EditText: number;
			public static TextAppearance_Widget_IconMenu_Item: number;
			public static TextAppearance_Widget_PopupMenu_Large: number;
			public static TextAppearance_Widget_PopupMenu_Small: number;
			public static TextAppearance_Widget_TabWidget: number;
			public static TextAppearance_Widget_TextView: number;
			public static TextAppearance_Widget_TextView_PopupMenu: number;
			public static TextAppearance_Widget_TextView_SpinnerItem: number;
			public static TextAppearance_WindowTitle: number;
			public static Theme: number;
			public static Theme_Black: number;
			public static Theme_Black_NoTitleBar: number;
			public static Theme_Black_NoTitleBar_Fullscreen: number;
			public static Theme_DeviceDefault: number;
			public static Theme_DeviceDefault_Dialog: number;
			public static Theme_DeviceDefault_Dialog_MinWidth: number;
			public static Theme_DeviceDefault_Dialog_NoActionBar: number;
			public static Theme_DeviceDefault_Dialog_NoActionBar_MinWidth: number;
			public static Theme_DeviceDefault_DialogWhenLarge: number;
			public static Theme_DeviceDefault_DialogWhenLarge_NoActionBar: number;
			public static Theme_DeviceDefault_InputMethod: number;
			public static Theme_DeviceDefault_Light: number;
			public static Theme_DeviceDefault_Light_DarkActionBar: number;
			public static Theme_DeviceDefault_Light_Dialog: number;
			public static Theme_DeviceDefault_Light_Dialog_MinWidth: number;
			public static Theme_DeviceDefault_Light_Dialog_NoActionBar: number;
			public static Theme_DeviceDefault_Light_Dialog_NoActionBar_MinWidth: number;
			public static Theme_DeviceDefault_Light_DialogWhenLarge: number;
			public static Theme_DeviceDefault_Light_DialogWhenLarge_NoActionBar: number;
			public static Theme_DeviceDefault_Light_NoActionBar: number;
			public static Theme_DeviceDefault_Light_NoActionBar_Fullscreen: number;
			public static Theme_DeviceDefault_Light_NoActionBar_Overscan: number;
			public static Theme_DeviceDefault_Light_Panel: number;
			public static Theme_DeviceDefault_NoActionBar: number;
			public static Theme_DeviceDefault_NoActionBar_Fullscreen: number;
			public static Theme_DeviceDefault_NoActionBar_Overscan: number;
			public static Theme_DeviceDefault_Panel: number;
			public static Theme_DeviceDefault_Wallpaper: number;
			public static Theme_DeviceDefault_Wallpaper_NoTitleBar: number;
			public static Theme_Dialog: number;
			public static Theme_Holo: number;
			public static Theme_Holo_Dialog: number;
			public static Theme_Holo_Dialog_MinWidth: number;
			public static Theme_Holo_Dialog_NoActionBar: number;
			public static Theme_Holo_Dialog_NoActionBar_MinWidth: number;
			public static Theme_Holo_DialogWhenLarge: number;
			public static Theme_Holo_DialogWhenLarge_NoActionBar: number;
			public static Theme_Holo_InputMethod: number;
			public static Theme_Holo_Light: number;
			public static Theme_Holo_Light_DarkActionBar: number;
			public static Theme_Holo_Light_Dialog: number;
			public static Theme_Holo_Light_Dialog_MinWidth: number;
			public static Theme_Holo_Light_Dialog_NoActionBar: number;
			public static Theme_Holo_Light_Dialog_NoActionBar_MinWidth: number;
			public static Theme_Holo_Light_DialogWhenLarge: number;
			public static Theme_Holo_Light_DialogWhenLarge_NoActionBar: number;
			public static Theme_Holo_Light_NoActionBar: number;
			public static Theme_Holo_Light_NoActionBar_Fullscreen: number;
			public static Theme_Holo_Light_NoActionBar_Overscan: number;
			public static Theme_Holo_Light_Panel: number;
			public static Theme_Holo_NoActionBar: number;
			public static Theme_Holo_NoActionBar_Fullscreen: number;
			public static Theme_Holo_NoActionBar_Overscan: number;
			public static Theme_Holo_Panel: number;
			public static Theme_Holo_Wallpaper: number;
			public static Theme_Holo_Wallpaper_NoTitleBar: number;
			public static Theme_InputMethod: number;
			public static Theme_Light: number;
			public static Theme_Light_NoTitleBar: number;
			public static Theme_Light_NoTitleBar_Fullscreen: number;
			public static Theme_Light_Panel: number;
			public static Theme_Light_WallpaperSettings: number;
			public static Theme_NoDisplay: number;
			public static Theme_NoTitleBar: number;
			public static Theme_NoTitleBar_Fullscreen: number;
			public static Theme_NoTitleBar_OverlayActionModes: number;
			public static Theme_Panel: number;
			public static Theme_Translucent: number;
			public static Theme_Translucent_NoTitleBar: number;
			public static Theme_Translucent_NoTitleBar_Fullscreen: number;
			public static Theme_Wallpaper: number;
			public static Theme_Wallpaper_NoTitleBar: number;
			public static Theme_Wallpaper_NoTitleBar_Fullscreen: number;
			public static Theme_WallpaperSettings: number;
			public static Theme_WithActionBar: number;
			public static Widget: number;
			public static Widget_AbsListView: number;
			public static Widget_ActionBar: number;
			public static Widget_ActionBar_TabBar: number;
			public static Widget_ActionBar_TabText: number;
			public static Widget_ActionBar_TabView: number;
			public static Widget_ActionButton: number;
			public static Widget_ActionButton_CloseMode: number;
			public static Widget_ActionButton_Overflow: number;
			public static Widget_AutoCompleteTextView: number;
			public static Widget_Button: number;
			public static Widget_Button_Inset: number;
			public static Widget_Button_Small: number;
			public static Widget_Button_Toggle: number;
			public static Widget_CalendarView: number;
			public static Widget_CompoundButton: number;
			public static Widget_CompoundButton_CheckBox: number;
			public static Widget_CompoundButton_RadioButton: number;
			public static Widget_CompoundButton_Star: number;
			public static Widget_DatePicker: number;
			public static Widget_DeviceDefault: number;
			public static Widget_DeviceDefault_ActionBar: number;
			public static Widget_DeviceDefault_ActionBar_Solid: number;
			public static Widget_DeviceDefault_ActionBar_TabBar: number;
			public static Widget_DeviceDefault_ActionBar_TabText: number;
			public static Widget_DeviceDefault_ActionBar_TabView: number;
			public static Widget_DeviceDefault_ActionButton: number;
			public static Widget_DeviceDefault_ActionButton_CloseMode: number;
			public static Widget_DeviceDefault_ActionButton_Overflow: number;
			public static Widget_DeviceDefault_ActionButton_TextButton: number;
			public static Widget_DeviceDefault_ActionMode: number;
			public static Widget_DeviceDefault_AutoCompleteTextView: number;
			public static Widget_DeviceDefault_Button: number;
			public static Widget_DeviceDefault_Button_Borderless: number;
			public static Widget_DeviceDefault_Button_Borderless_Small: number;
			public static Widget_DeviceDefault_Button_Inset: number;
			public static Widget_DeviceDefault_Button_Small: number;
			public static Widget_DeviceDefault_Button_Toggle: number;
			public static Widget_DeviceDefault_CalendarView: number;
			public static Widget_DeviceDefault_CheckedTextView: number;
			public static Widget_DeviceDefault_CompoundButton_CheckBox: number;
			public static Widget_DeviceDefault_CompoundButton_RadioButton: number;
			public static Widget_DeviceDefault_CompoundButton_Star: number;
			public static Widget_DeviceDefault_DatePicker: number;
			public static Widget_DeviceDefault_DropDownItem: number;
			public static Widget_DeviceDefault_DropDownItem_Spinner: number;
			public static Widget_DeviceDefault_EditText: number;
			public static Widget_DeviceDefault_ExpandableListView: number;
			public static Widget_DeviceDefault_GridView: number;
			public static Widget_DeviceDefault_HorizontalScrollView: number;
			public static Widget_DeviceDefault_ImageButton: number;
			public static Widget_DeviceDefault_Light: number;
			public static Widget_DeviceDefault_Light_ActionBar: number;
			public static Widget_DeviceDefault_Light_ActionBar_Solid: number;
			public static Widget_DeviceDefault_Light_ActionBar_Solid_Inverse: number;
			public static Widget_DeviceDefault_Light_ActionBar_TabBar: number;
			public static Widget_DeviceDefault_Light_ActionBar_TabBar_Inverse: number;
			public static Widget_DeviceDefault_Light_ActionBar_TabText: number;
			public static Widget_DeviceDefault_Light_ActionBar_TabText_Inverse: number;
			public static Widget_DeviceDefault_Light_ActionBar_TabView: number;
			public static Widget_DeviceDefault_Light_ActionBar_TabView_Inverse: number;
			public static Widget_DeviceDefault_Light_ActionButton: number;
			public static Widget_DeviceDefault_Light_ActionButton_CloseMode: number;
			public static Widget_DeviceDefault_Light_ActionButton_Overflow: number;
			public static Widget_DeviceDefault_Light_ActionMode: number;
			public static Widget_DeviceDefault_Light_ActionMode_Inverse: number;
			public static Widget_DeviceDefault_Light_AutoCompleteTextView: number;
			public static Widget_DeviceDefault_Light_Button: number;
			public static Widget_DeviceDefault_Light_Button_Borderless_Small: number;
			public static Widget_DeviceDefault_Light_Button_Inset: number;
			public static Widget_DeviceDefault_Light_Button_Small: number;
			public static Widget_DeviceDefault_Light_Button_Toggle: number;
			public static Widget_DeviceDefault_Light_CalendarView: number;
			public static Widget_DeviceDefault_Light_CheckedTextView: number;
			public static Widget_DeviceDefault_Light_CompoundButton_CheckBox: number;
			public static Widget_DeviceDefault_Light_CompoundButton_RadioButton: number;
			public static Widget_DeviceDefault_Light_CompoundButton_Star: number;
			public static Widget_DeviceDefault_Light_DropDownItem: number;
			public static Widget_DeviceDefault_Light_DropDownItem_Spinner: number;
			public static Widget_DeviceDefault_Light_EditText: number;
			public static Widget_DeviceDefault_Light_ExpandableListView: number;
			public static Widget_DeviceDefault_Light_GridView: number;
			public static Widget_DeviceDefault_Light_HorizontalScrollView: number;
			public static Widget_DeviceDefault_Light_ImageButton: number;
			public static Widget_DeviceDefault_Light_ListPopupWindow: number;
			public static Widget_DeviceDefault_Light_ListView: number;
			public static Widget_DeviceDefault_Light_ListView_DropDown: number;
			public static Widget_DeviceDefault_Light_MediaRouteButton: number;
			public static Widget_DeviceDefault_Light_PopupMenu: number;
			public static Widget_DeviceDefault_Light_PopupWindow: number;
			public static Widget_DeviceDefault_Light_ProgressBar: number;
			public static Widget_DeviceDefault_Light_ProgressBar_Horizontal: number;
			public static Widget_DeviceDefault_Light_ProgressBar_Inverse: number;
			public static Widget_DeviceDefault_Light_ProgressBar_Large: number;
			public static Widget_DeviceDefault_Light_ProgressBar_Large_Inverse: number;
			public static Widget_DeviceDefault_Light_ProgressBar_Small: number;
			public static Widget_DeviceDefault_Light_ProgressBar_Small_Inverse: number;
			public static Widget_DeviceDefault_Light_ProgressBar_Small_Title: number;
			public static Widget_DeviceDefault_Light_RatingBar: number;
			public static Widget_DeviceDefault_Light_RatingBar_Indicator: number;
			public static Widget_DeviceDefault_Light_RatingBar_Small: number;
			public static Widget_DeviceDefault_Light_ScrollView: number;
			public static Widget_DeviceDefault_Light_SeekBar: number;
			public static Widget_DeviceDefault_Light_Spinner: number;
			public static Widget_DeviceDefault_Light_Tab: number;
			public static Widget_DeviceDefault_Light_TabWidget: number;
			public static Widget_DeviceDefault_Light_TextView: number;
			public static Widget_DeviceDefault_Light_TextView_SpinnerItem: number;
			public static Widget_DeviceDefault_Light_WebTextView: number;
			public static Widget_DeviceDefault_Light_WebView: number;
			public static Widget_DeviceDefault_ListPopupWindow: number;
			public static Widget_DeviceDefault_ListView: number;
			public static Widget_DeviceDefault_ListView_DropDown: number;
			public static Widget_DeviceDefault_MediaRouteButton: number;
			public static Widget_DeviceDefault_PopupMenu: number;
			public static Widget_DeviceDefault_PopupWindow: number;
			public static Widget_DeviceDefault_ProgressBar: number;
			public static Widget_DeviceDefault_ProgressBar_Horizontal: number;
			public static Widget_DeviceDefault_ProgressBar_Large: number;
			public static Widget_DeviceDefault_ProgressBar_Small: number;
			public static Widget_DeviceDefault_ProgressBar_Small_Title: number;
			public static Widget_DeviceDefault_RatingBar: number;
			public static Widget_DeviceDefault_RatingBar_Indicator: number;
			public static Widget_DeviceDefault_RatingBar_Small: number;
			public static Widget_DeviceDefault_ScrollView: number;
			public static Widget_DeviceDefault_SeekBar: number;
			public static Widget_DeviceDefault_Spinner: number;
			public static Widget_DeviceDefault_Tab: number;
			public static Widget_DeviceDefault_TabWidget: number;
			public static Widget_DeviceDefault_TextView: number;
			public static Widget_DeviceDefault_TextView_SpinnerItem: number;
			public static Widget_DeviceDefault_WebTextView: number;
			public static Widget_DeviceDefault_WebView: number;
			public static Widget_DropDownItem: number;
			public static Widget_DropDownItem_Spinner: number;
			public static Widget_EditText: number;
			public static Widget_ExpandableListView: number;
			public static Widget_FragmentBreadCrumbs: number;
			public static Widget_Gallery: number;
			public static Widget_GridView: number;
			public static Widget_Holo: number;
			public static Widget_Holo_ActionBar: number;
			public static Widget_Holo_ActionBar_Solid: number;
			public static Widget_Holo_ActionBar_TabBar: number;
			public static Widget_Holo_ActionBar_TabText: number;
			public static Widget_Holo_ActionBar_TabView: number;
			public static Widget_Holo_ActionButton: number;
			public static Widget_Holo_ActionButton_CloseMode: number;
			public static Widget_Holo_ActionButton_Overflow: number;
			public static Widget_Holo_ActionButton_TextButton: number;
			public static Widget_Holo_ActionMode: number;
			public static Widget_Holo_AutoCompleteTextView: number;
			public static Widget_Holo_Button: number;
			public static Widget_Holo_Button_Borderless: number;
			public static Widget_Holo_Button_Borderless_Small: number;
			public static Widget_Holo_Button_Inset: number;
			public static Widget_Holo_Button_Small: number;
			public static Widget_Holo_Button_Toggle: number;
			public static Widget_Holo_CalendarView: number;
			public static Widget_Holo_CheckedTextView: number;
			public static Widget_Holo_CompoundButton_CheckBox: number;
			public static Widget_Holo_CompoundButton_RadioButton: number;
			public static Widget_Holo_CompoundButton_Star: number;
			public static Widget_Holo_DatePicker: number;
			public static Widget_Holo_DropDownItem: number;
			public static Widget_Holo_DropDownItem_Spinner: number;
			public static Widget_Holo_EditText: number;
			public static Widget_Holo_ExpandableListView: number;
			public static Widget_Holo_GridView: number;
			public static Widget_Holo_HorizontalScrollView: number;
			public static Widget_Holo_ImageButton: number;
			public static Widget_Holo_Light: number;
			public static Widget_Holo_Light_ActionBar: number;
			public static Widget_Holo_Light_ActionBar_Solid: number;
			public static Widget_Holo_Light_ActionBar_Solid_Inverse: number;
			public static Widget_Holo_Light_ActionBar_TabBar: number;
			public static Widget_Holo_Light_ActionBar_TabBar_Inverse: number;
			public static Widget_Holo_Light_ActionBar_TabText: number;
			public static Widget_Holo_Light_ActionBar_TabText_Inverse: number;
			public static Widget_Holo_Light_ActionBar_TabView: number;
			public static Widget_Holo_Light_ActionBar_TabView_Inverse: number;
			public static Widget_Holo_Light_ActionButton: number;
			public static Widget_Holo_Light_ActionButton_CloseMode: number;
			public static Widget_Holo_Light_ActionButton_Overflow: number;
			public static Widget_Holo_Light_ActionMode: number;
			public static Widget_Holo_Light_ActionMode_Inverse: number;
			public static Widget_Holo_Light_AutoCompleteTextView: number;
			public static Widget_Holo_Light_Button: number;
			public static Widget_Holo_Light_Button_Borderless_Small: number;
			public static Widget_Holo_Light_Button_Inset: number;
			public static Widget_Holo_Light_Button_Small: number;
			public static Widget_Holo_Light_Button_Toggle: number;
			public static Widget_Holo_Light_CalendarView: number;
			public static Widget_Holo_Light_CheckedTextView: number;
			public static Widget_Holo_Light_CompoundButton_CheckBox: number;
			public static Widget_Holo_Light_CompoundButton_RadioButton: number;
			public static Widget_Holo_Light_CompoundButton_Star: number;
			public static Widget_Holo_Light_DropDownItem: number;
			public static Widget_Holo_Light_DropDownItem_Spinner: number;
			public static Widget_Holo_Light_EditText: number;
			public static Widget_Holo_Light_ExpandableListView: number;
			public static Widget_Holo_Light_GridView: number;
			public static Widget_Holo_Light_HorizontalScrollView: number;
			public static Widget_Holo_Light_ImageButton: number;
			public static Widget_Holo_Light_ListPopupWindow: number;
			public static Widget_Holo_Light_ListView: number;
			public static Widget_Holo_Light_ListView_DropDown: number;
			public static Widget_Holo_Light_MediaRouteButton: number;
			public static Widget_Holo_Light_PopupMenu: number;
			public static Widget_Holo_Light_PopupWindow: number;
			public static Widget_Holo_Light_ProgressBar: number;
			public static Widget_Holo_Light_ProgressBar_Horizontal: number;
			public static Widget_Holo_Light_ProgressBar_Inverse: number;
			public static Widget_Holo_Light_ProgressBar_Large: number;
			public static Widget_Holo_Light_ProgressBar_Large_Inverse: number;
			public static Widget_Holo_Light_ProgressBar_Small: number;
			public static Widget_Holo_Light_ProgressBar_Small_Inverse: number;
			public static Widget_Holo_Light_ProgressBar_Small_Title: number;
			public static Widget_Holo_Light_RatingBar: number;
			public static Widget_Holo_Light_RatingBar_Indicator: number;
			public static Widget_Holo_Light_RatingBar_Small: number;
			public static Widget_Holo_Light_ScrollView: number;
			public static Widget_Holo_Light_SeekBar: number;
			public static Widget_Holo_Light_Spinner: number;
			public static Widget_Holo_Light_Tab: number;
			public static Widget_Holo_Light_TabWidget: number;
			public static Widget_Holo_Light_TextView: number;
			public static Widget_Holo_Light_TextView_SpinnerItem: number;
			public static Widget_Holo_Light_WebTextView: number;
			public static Widget_Holo_Light_WebView: number;
			public static Widget_Holo_ListPopupWindow: number;
			public static Widget_Holo_ListView: number;
			public static Widget_Holo_ListView_DropDown: number;
			public static Widget_Holo_MediaRouteButton: number;
			public static Widget_Holo_PopupMenu: number;
			public static Widget_Holo_PopupWindow: number;
			public static Widget_Holo_ProgressBar: number;
			public static Widget_Holo_ProgressBar_Horizontal: number;
			public static Widget_Holo_ProgressBar_Large: number;
			public static Widget_Holo_ProgressBar_Small: number;
			public static Widget_Holo_ProgressBar_Small_Title: number;
			public static Widget_Holo_RatingBar: number;
			public static Widget_Holo_RatingBar_Indicator: number;
			public static Widget_Holo_RatingBar_Small: number;
			public static Widget_Holo_ScrollView: number;
			public static Widget_Holo_SeekBar: number;
			public static Widget_Holo_Spinner: number;
			public static Widget_Holo_Tab: number;
			public static Widget_Holo_TabWidget: number;
			public static Widget_Holo_TextView: number;
			public static Widget_Holo_TextView_SpinnerItem: number;
			public static Widget_Holo_WebTextView: number;
			public static Widget_Holo_WebView: number;
			public static Widget_ImageButton: number;
			public static Widget_ImageWell: number;
			public static Widget_KeyboardView: number;
			public static Widget_ListPopupWindow: number;
			public static Widget_ListView: number;
			public static Widget_ListView_DropDown: number;
			public static Widget_ListView_Menu: number;
			public static Widget_ListView_White: number;
			public static Widget_PopupMenu: number;
			public static Widget_PopupWindow: number;
			public static Widget_ProgressBar: number;
			public static Widget_ProgressBar_Horizontal: number;
			public static Widget_ProgressBar_Inverse: number;
			public static Widget_ProgressBar_Large: number;
			public static Widget_ProgressBar_Large_Inverse: number;
			public static Widget_ProgressBar_Small: number;
			public static Widget_ProgressBar_Small_Inverse: number;
			public static Widget_RatingBar: number;
			public static Widget_ScrollView: number;
			public static Widget_SeekBar: number;
			public static Widget_Spinner: number;
			public static Widget_Spinner_DropDown: number;
			public static Widget_TabWidget: number;
			public static Widget_TextView: number;
			public static Widget_TextView_PopupMenu: number;
			public static Widget_TextView_SpinnerItem: number;
			public static Widget_WebView: number;
			public constructor();
		}
		export class xml extends java.lang.Object {
			public static class: java.lang.Class<android.R.xml>;
			public constructor();
		}
	}
}

declare module android {
	export module accessibilityservice {
		export abstract class AccessibilityService extends android.app.Service {
			public static class: java.lang.Class<android.accessibilityservice.AccessibilityService>;
			public static GESTURE_SWIPE_UP: number;
			public static GESTURE_SWIPE_DOWN: number;
			public static GESTURE_SWIPE_LEFT: number;
			public static GESTURE_SWIPE_RIGHT: number;
			public static GESTURE_SWIPE_LEFT_AND_RIGHT: number;
			public static GESTURE_SWIPE_RIGHT_AND_LEFT: number;
			public static GESTURE_SWIPE_UP_AND_DOWN: number;
			public static GESTURE_SWIPE_DOWN_AND_UP: number;
			public static GESTURE_SWIPE_LEFT_AND_UP: number;
			public static GESTURE_SWIPE_LEFT_AND_DOWN: number;
			public static GESTURE_SWIPE_RIGHT_AND_UP: number;
			public static GESTURE_SWIPE_RIGHT_AND_DOWN: number;
			public static GESTURE_SWIPE_UP_AND_LEFT: number;
			public static GESTURE_SWIPE_UP_AND_RIGHT: number;
			public static GESTURE_SWIPE_DOWN_AND_LEFT: number;
			public static GESTURE_SWIPE_DOWN_AND_RIGHT: number;
			public static SERVICE_INTERFACE: string;
			public static SERVICE_META_DATA: string;
			public static GLOBAL_ACTION_BACK: number;
			public static GLOBAL_ACTION_HOME: number;
			public static GLOBAL_ACTION_RECENTS: number;
			public static GLOBAL_ACTION_NOTIFICATIONS: number;
			public static GLOBAL_ACTION_QUICK_SETTINGS: number;
			public onBind(param0: android.content.Intent): android.os.IBinder;
			public performGlobalAction(param0: number): boolean;
			public constructor();
			public onAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public onKeyEvent(param0: android.view.KeyEvent): boolean;
			public getRootInActiveWindow(): android.view.accessibility.AccessibilityNodeInfo;
			public onServiceConnected(): void;
			public getServiceInfo(): android.accessibilityservice.AccessibilityServiceInfo;
			public onTrimMemory(param0: number): void;
			public constructor(param0: android.content.Context);
			public onGesture(param0: number): boolean;
			public setServiceInfo(param0: android.accessibilityservice.AccessibilityServiceInfo): void;
			public onInterrupt(): void;
		}
	}
}

declare module android {
	export module accessibilityservice {
		export class AccessibilityServiceInfo extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.accessibilityservice.AccessibilityServiceInfo>;
			public static CAPABILITY_CAN_RETRIEVE_WINDOW_CONTENT: number;
			public static CAPABILITY_CAN_REQUEST_TOUCH_EXPLORATION: number;
			public static CAPABILITY_CAN_REQUEST_ENHANCED_WEB_ACCESSIBILITY: number;
			public static CAPABILITY_CAN_REQUEST_FILTER_KEY_EVENTS: number;
			public static FEEDBACK_SPOKEN: number;
			public static FEEDBACK_HAPTIC: number;
			public static FEEDBACK_AUDIBLE: number;
			public static FEEDBACK_VISUAL: number;
			public static FEEDBACK_GENERIC: number;
			public static FEEDBACK_BRAILLE: number;
			public static FEEDBACK_ALL_MASK: number;
			public static DEFAULT: number;
			public static FLAG_INCLUDE_NOT_IMPORTANT_VIEWS: number;
			public static FLAG_REQUEST_TOUCH_EXPLORATION_MODE: number;
			public static FLAG_REQUEST_ENHANCED_WEB_ACCESSIBILITY: number;
			public static FLAG_REPORT_VIEW_IDS: number;
			public static FLAG_REQUEST_FILTER_KEY_EVENTS: number;
			public eventTypes: number;
			public packageNames: native.Array<string>;
			public feedbackType: number;
			public notificationTimeout: number;
			public flags: number;
			public static CREATOR: android.os.Parcelable.Creator<android.accessibilityservice.AccessibilityServiceInfo>;
			public equals(param0: any): boolean;
			public static flagToString(param0: number): string;
			public getSettingsActivityName(): string;
			public constructor();
			public getCapabilities(): number;
			public getResolveInfo(): android.content.pm.ResolveInfo;
			public getId(): string;
			public static feedbackTypeToString(param0: number): string;
			public toString(): string;
			/** @deprecated */
			public getDescription(): string;
			public loadDescription(param0: android.content.pm.PackageManager): string;
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			/** @deprecated */
			public getCanRetrieveWindowContent(): boolean;
			public hashCode(): number;
			public static capabilityToString(param0: number): string;
		}
	}
}

declare module android {
	export module accounts {
		export abstract class AbstractAccountAuthenticator extends java.lang.Object {
			public static class: java.lang.Class<android.accounts.AbstractAccountAuthenticator>;
			public getAccountCredentialsForCloning(param0: android.accounts.AccountAuthenticatorResponse, param1: android.accounts.Account): android.os.Bundle;
			public addAccountFromCredentials(param0: android.accounts.AccountAuthenticatorResponse, param1: android.accounts.Account, param2: android.os.Bundle): android.os.Bundle;
			public editProperties(param0: android.accounts.AccountAuthenticatorResponse, param1: string): android.os.Bundle;
			public constructor(param0: android.content.Context);
			public getAuthTokenLabel(param0: string): string;
			public getIBinder(): android.os.IBinder;
			public addAccount(param0: android.accounts.AccountAuthenticatorResponse, param1: string, param2: string, param3: native.Array<string>, param4: android.os.Bundle): android.os.Bundle;
			public getAuthToken(param0: android.accounts.AccountAuthenticatorResponse, param1: android.accounts.Account, param2: string, param3: android.os.Bundle): android.os.Bundle;
			public hasFeatures(param0: android.accounts.AccountAuthenticatorResponse, param1: android.accounts.Account, param2: native.Array<string>): android.os.Bundle;
			public getAccountRemovalAllowed(param0: android.accounts.AccountAuthenticatorResponse, param1: android.accounts.Account): android.os.Bundle;
			public confirmCredentials(param0: android.accounts.AccountAuthenticatorResponse, param1: android.accounts.Account, param2: android.os.Bundle): android.os.Bundle;
			public updateCredentials(param0: android.accounts.AccountAuthenticatorResponse, param1: android.accounts.Account, param2: string, param3: android.os.Bundle): android.os.Bundle;
		}
	}
}

declare module android {
	export module accounts {
		export class Account extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.accounts.Account>;
			public name: string;
			public type: string;
			public static CREATOR: android.os.Parcelable.Creator<android.accounts.Account>;
			public constructor(param0: string, param1: string);
			public equals(param0: any): boolean;
			public toString(): string;
			public constructor(param0: android.os.Parcel);
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public hashCode(): number;
		}
	}
}

declare module android {
	export module accounts {
		export class AccountAuthenticatorActivity extends android.app.Activity {
			public static class: java.lang.Class<android.accounts.AccountAuthenticatorActivity>;
			public onWindowStartingActionMode(param0: android.view.ActionMode.Callback): android.view.ActionMode;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public onCreatePanelMenu(param0: number, param1: android.view.Menu): boolean;
			public finish(): void;
			public onPanelClosed(param0: number, param1: android.view.Menu): void;
			public onSearchRequested(): boolean;
			public onTrimMemory(param0: number): void;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public onActionModeFinished(param0: android.view.ActionMode): void;
			public onCreatePanelView(param0: number): android.view.View;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public dispatchGenericMotionEvent(param0: android.view.MotionEvent): boolean;
			public onDetachedFromWindow(): void;
			public onActionModeStarted(param0: android.view.ActionMode): void;
			public onCreateView(param0: android.view.View, param1: string, param2: android.content.Context, param3: android.util.AttributeSet): android.view.View;
			public dispatchKeyShortcutEvent(param0: android.view.KeyEvent): boolean;
			public onMenuItemSelected(param0: number, param1: android.view.MenuItem): boolean;
			public onMenuOpened(param0: number, param1: android.view.Menu): boolean;
			public constructor();
			public onCreateView(param0: string, param1: android.content.Context, param2: android.util.AttributeSet): android.view.View;
			public setAccountAuthenticatorResult(param0: android.os.Bundle): void;
			public constructor(param0: android.content.Context, param1: number);
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public onCreateContextMenu(param0: android.view.ContextMenu, param1: android.view.View, param2: android.view.ContextMenu.ContextMenuInfo): void;
			public dispatchTouchEvent(param0: android.view.MotionEvent): boolean;
			public dispatchTrackballEvent(param0: android.view.MotionEvent): boolean;
			public constructor(param0: android.content.Context);
			public dispatchKeyEvent(param0: android.view.KeyEvent): boolean;
			public onPreparePanel(param0: number, param1: android.view.View, param2: android.view.Menu): boolean;
			public dispatchPopulateAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): boolean;
			public onWindowFocusChanged(param0: boolean): void;
			public onAttachedToWindow(): void;
			public onCreate(param0: android.os.Bundle): void;
			public onWindowAttributesChanged(param0: android.view.WindowManager.LayoutParams): void;
			public onContentChanged(): void;
		}
	}
}

declare module android {
	export module accounts {
		export class AccountAuthenticatorResponse extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.accounts.AccountAuthenticatorResponse>;
			public static CREATOR: android.os.Parcelable.Creator<android.accounts.AccountAuthenticatorResponse>;
			public onError(param0: number, param1: string): void;
			public constructor(param0: android.os.Parcel);
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public onResult(param0: android.os.Bundle): void;
			public onRequestContinued(): void;
		}
	}
}

declare module android {
	export module accounts {
		export class AccountManager extends java.lang.Object {
			public static class: java.lang.Class<android.accounts.AccountManager>;
			public static ERROR_CODE_REMOTE_EXCEPTION: number;
			public static ERROR_CODE_NETWORK_ERROR: number;
			public static ERROR_CODE_CANCELED: number;
			public static ERROR_CODE_INVALID_RESPONSE: number;
			public static ERROR_CODE_UNSUPPORTED_OPERATION: number;
			public static ERROR_CODE_BAD_ARGUMENTS: number;
			public static ERROR_CODE_BAD_REQUEST: number;
			public static ERROR_CODE_BAD_AUTHENTICATION: number;
			public static KEY_ACCOUNT_NAME: string;
			public static KEY_ACCOUNT_TYPE: string;
			public static KEY_AUTHTOKEN: string;
			public static KEY_INTENT: string;
			public static KEY_PASSWORD: string;
			public static KEY_ACCOUNTS: string;
			public static KEY_ACCOUNT_AUTHENTICATOR_RESPONSE: string;
			public static KEY_ACCOUNT_MANAGER_RESPONSE: string;
			public static KEY_AUTHENTICATOR_TYPES: string;
			public static KEY_AUTH_FAILED_MESSAGE: string;
			public static KEY_AUTH_TOKEN_LABEL: string;
			public static KEY_BOOLEAN_RESULT: string;
			public static KEY_ERROR_CODE: string;
			public static KEY_ERROR_MESSAGE: string;
			public static KEY_USERDATA: string;
			public static KEY_CALLER_UID: string;
			public static KEY_CALLER_PID: string;
			public static KEY_ANDROID_PACKAGE_NAME: string;
			public static ACTION_AUTHENTICATOR_INTENT: string;
			public static AUTHENTICATOR_META_DATA_NAME: string;
			public static AUTHENTICATOR_ATTRIBUTES_NAME: string;
			public static LOGIN_ACCOUNTS_CHANGED_ACTION: string;
			public getAuthenticatorTypes(): native.Array<android.accounts.AuthenticatorDescription>;
			public removeOnAccountsUpdatedListener(param0: android.accounts.OnAccountsUpdateListener): void;
			public addOnAccountsUpdatedListener(param0: android.accounts.OnAccountsUpdateListener, param1: android.os.Handler, param2: boolean): void;
			/** @deprecated */
			public getAuthToken(param0: android.accounts.Account, param1: string, param2: boolean, param3: android.accounts.AccountManagerCallback<android.os.Bundle>, param4: android.os.Handler): android.accounts.AccountManagerFuture<android.os.Bundle>;
			public getAuthToken(param0: android.accounts.Account, param1: string, param2: android.os.Bundle, param3: android.app.Activity, param4: android.accounts.AccountManagerCallback<android.os.Bundle>, param5: android.os.Handler): android.accounts.AccountManagerFuture<android.os.Bundle>;
			public updateCredentials(param0: android.accounts.Account, param1: string, param2: android.os.Bundle, param3: android.app.Activity, param4: android.accounts.AccountManagerCallback<android.os.Bundle>, param5: android.os.Handler): android.accounts.AccountManagerFuture<android.os.Bundle>;
			public clearPassword(param0: android.accounts.Account): void;
			public setAuthToken(param0: android.accounts.Account, param1: string, param2: string): void;
			public addAccount(param0: string, param1: string, param2: native.Array<string>, param3: android.os.Bundle, param4: android.app.Activity, param5: android.accounts.AccountManagerCallback<android.os.Bundle>, param6: android.os.Handler): android.accounts.AccountManagerFuture<android.os.Bundle>;
			public blockingGetAuthToken(param0: android.accounts.Account, param1: string, param2: boolean): string;
			public getAccountsByTypeForPackage(param0: string, param1: string): native.Array<android.accounts.Account>;
			public hasFeatures(param0: android.accounts.Account, param1: native.Array<string>, param2: android.accounts.AccountManagerCallback<java.lang.Boolean>, param3: android.os.Handler): android.accounts.AccountManagerFuture<java.lang.Boolean>;
			public confirmCredentials(param0: android.accounts.Account, param1: android.os.Bundle, param2: android.app.Activity, param3: android.accounts.AccountManagerCallback<android.os.Bundle>, param4: android.os.Handler): android.accounts.AccountManagerFuture<android.os.Bundle>;
			public addAccountExplicitly(param0: android.accounts.Account, param1: string, param2: android.os.Bundle): boolean;
			public invalidateAuthToken(param0: string, param1: string): void;
			public setPassword(param0: android.accounts.Account, param1: string): void;
			public getAccountsByType(param0: string): native.Array<android.accounts.Account>;
			public setUserData(param0: android.accounts.Account, param1: string, param2: string): void;
			public getAuthToken(param0: android.accounts.Account, param1: string, param2: android.os.Bundle, param3: boolean, param4: android.accounts.AccountManagerCallback<android.os.Bundle>, param5: android.os.Handler): android.accounts.AccountManagerFuture<android.os.Bundle>;
			public getPassword(param0: android.accounts.Account): string;
			public peekAuthToken(param0: android.accounts.Account, param1: string): string;
			public getUserData(param0: android.accounts.Account, param1: string): string;
			public getAccounts(): native.Array<android.accounts.Account>;
			public getAccountsByTypeAndFeatures(param0: string, param1: native.Array<string>, param2: android.accounts.AccountManagerCallback<native.Array<android.accounts.Account>>, param3: android.os.Handler): android.accounts.AccountManagerFuture<native.Array<android.accounts.Account>>;
			public static get(param0: android.content.Context): android.accounts.AccountManager;
			public static newChooseAccountIntent(param0: android.accounts.Account, param1: java.util.ArrayList<android.accounts.Account>, param2: native.Array<string>, param3: boolean, param4: string, param5: string, param6: native.Array<string>, param7: android.os.Bundle): android.content.Intent;
			public removeAccount(param0: android.accounts.Account, param1: android.accounts.AccountManagerCallback<java.lang.Boolean>, param2: android.os.Handler): android.accounts.AccountManagerFuture<java.lang.Boolean>;
			public editProperties(param0: string, param1: android.app.Activity, param2: android.accounts.AccountManagerCallback<android.os.Bundle>, param3: android.os.Handler): android.accounts.AccountManagerFuture<android.os.Bundle>;
			public getAuthTokenByFeatures(param0: string, param1: string, param2: native.Array<string>, param3: android.app.Activity, param4: android.os.Bundle, param5: android.os.Bundle, param6: android.accounts.AccountManagerCallback<android.os.Bundle>, param7: android.os.Handler): android.accounts.AccountManagerFuture<android.os.Bundle>;
		}
	}
}

declare module android {
	export module accounts {
		export class AccountManagerCallback<V>  extends java.lang.Object {
			public static class: java.lang.Class<android.accounts.AccountManagerCallback<any>>;
			/**
			 * Constructs a new instance of the android.accounts.AccountManagerCallback<any> interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				run(param0: android.accounts.AccountManagerFuture<V>): void;
			});
			public constructor();
			public run(param0: android.accounts.AccountManagerFuture<V>): void;
		}
	}
}

declare module android {
	export module accounts {
		export class AccountManagerFuture<V>  extends java.lang.Object {
			public static class: java.lang.Class<android.accounts.AccountManagerFuture<any>>;
			/**
			 * Constructs a new instance of the android.accounts.AccountManagerFuture<any> interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				cancel(param0: boolean): boolean;
				isCancelled(): boolean;
				isDone(): boolean;
				getResult(): V;
				getResult(param0: number, param1: java.util.concurrent.TimeUnit): V;
			});
			public constructor();
			public getResult(param0: number, param1: java.util.concurrent.TimeUnit): V;
			public cancel(param0: boolean): boolean;
			public isCancelled(): boolean;
			public isDone(): boolean;
			public getResult(): V;
		}
	}
}

declare module android {
	export module accounts {
		export class AccountsException extends java.lang.Exception {
			public static class: java.lang.Class<android.accounts.AccountsException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module android {
	export module accounts {
		export class AuthenticatorDescription extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.accounts.AuthenticatorDescription>;
			public type: string;
			public labelId: number;
			public iconId: number;
			public smallIconId: number;
			public accountPreferencesId: number;
			public packageName: string;
			public customTokens: boolean;
			public static CREATOR: android.os.Parcelable.Creator<android.accounts.AuthenticatorDescription>;
			public constructor(param0: string, param1: string, param2: number, param3: number, param4: number, param5: number, param6: boolean);
			public equals(param0: any): boolean;
			public toString(): string;
			public constructor(param0: string, param1: string, param2: number, param3: number, param4: number, param5: number);
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public static newKey(param0: string): android.accounts.AuthenticatorDescription;
			public hashCode(): number;
		}
	}
}

declare module android {
	export module accounts {
		export class AuthenticatorException extends android.accounts.AccountsException {
			public static class: java.lang.Class<android.accounts.AuthenticatorException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module android {
	export module accounts {
		export class NetworkErrorException extends android.accounts.AccountsException {
			public static class: java.lang.Class<android.accounts.NetworkErrorException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module android {
	export module accounts {
		export class OnAccountsUpdateListener extends java.lang.Object {
			public static class: java.lang.Class<android.accounts.OnAccountsUpdateListener>;
			/**
			 * Constructs a new instance of the android.accounts.OnAccountsUpdateListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				onAccountsUpdated(param0: native.Array<android.accounts.Account>): void;
			});
			public constructor();
			public onAccountsUpdated(param0: native.Array<android.accounts.Account>): void;
		}
	}
}

declare module android {
	export module accounts {
		export class OperationCanceledException extends android.accounts.AccountsException {
			public static class: java.lang.Class<android.accounts.OperationCanceledException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module android {
	export module animation {
		export abstract class Animator extends java.lang.Object implements java.lang.Cloneable {
			public static class: java.lang.Class<android.animation.Animator>;
			public setupStartValues(): void;
			public removeAllListeners(): void;
			public clone(): android.animation.Animator;
			public isStarted(): boolean;
			public getDuration(): number;
			public end(): void;
			public setStartDelay(param0: number): void;
			public cancel(): void;
			public constructor();
			public setDuration(param0: number): android.animation.Animator;
			public getInterpolator(): android.animation.TimeInterpolator;
			public getListeners(): java.util.ArrayList<android.animation.Animator.AnimatorListener>;
			public isRunning(): boolean;
			public addListener(param0: android.animation.Animator.AnimatorListener): void;
			public clone(): any;
			public removeListener(param0: android.animation.Animator.AnimatorListener): void;
			public setTarget(param0: any): void;
			public start(): void;
			public setInterpolator(param0: android.animation.TimeInterpolator): void;
			public getStartDelay(): number;
			public setupEndValues(): void;
		}
		export module Animator {
			export class AnimatorListener extends java.lang.Object {
				public static class: java.lang.Class<android.animation.Animator.AnimatorListener>;
				/**
				 * Constructs a new instance of the android.animation.Animator$AnimatorListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onAnimationStart(param0: android.animation.Animator): void;
					onAnimationEnd(param0: android.animation.Animator): void;
					onAnimationCancel(param0: android.animation.Animator): void;
					onAnimationRepeat(param0: android.animation.Animator): void;
				});
				public constructor();
				public onAnimationEnd(param0: android.animation.Animator): void;
				public onAnimationStart(param0: android.animation.Animator): void;
				public onAnimationRepeat(param0: android.animation.Animator): void;
				public onAnimationCancel(param0: android.animation.Animator): void;
			}
		}
	}
}

declare module android {
	export module animation {
		export class AnimatorInflater extends java.lang.Object {
			public static class: java.lang.Class<android.animation.AnimatorInflater>;
			public static loadAnimator(param0: android.content.Context, param1: number): android.animation.Animator;
			public constructor();
		}
	}
}

declare module android {
	export module animation {
		export abstract class AnimatorListenerAdapter extends java.lang.Object implements android.animation.Animator.AnimatorListener {
			public static class: java.lang.Class<android.animation.AnimatorListenerAdapter>;
			public onAnimationRepeat(param0: android.animation.Animator): void;
			public onAnimationStart(param0: android.animation.Animator): void;
			public constructor();
			public onAnimationCancel(param0: android.animation.Animator): void;
			public onAnimationEnd(param0: android.animation.Animator): void;
		}
	}
}

declare module android {
	export module animation {
		export class AnimatorSet extends android.animation.Animator {
			public static class: java.lang.Class<android.animation.AnimatorSet>;
			public setupStartValues(): void;
			public getDuration(): number;
			public end(): void;
			public cancel(): void;
			public setDuration(param0: number): android.animation.AnimatorSet;
			public getInterpolator(): android.animation.TimeInterpolator;
			public setDuration(param0: number): android.animation.Animator;
			public isRunning(): boolean;
			public playSequentially(param0: java.util.List<android.animation.Animator>): void;
			public setInterpolator(param0: android.animation.TimeInterpolator): void;
			public start(): void;
			public getStartDelay(): number;
			public clone(): android.animation.AnimatorSet;
			public clone(): android.animation.Animator;
			public isStarted(): boolean;
			public playTogether(param0: native.Array<android.animation.Animator>): void;
			public setStartDelay(param0: number): void;
			public constructor();
			public playSequentially(param0: native.Array<android.animation.Animator>): void;
			public clone(): any;
			public playTogether(param0: java.util.Collection<android.animation.Animator>): void;
			public setTarget(param0: any): void;
			public getChildAnimations(): java.util.ArrayList<android.animation.Animator>;
			public play(param0: android.animation.Animator): android.animation.AnimatorSet.Builder;
			public setupEndValues(): void;
		}
		export module AnimatorSet {
			export class Builder extends java.lang.Object {
				public static class: java.lang.Class<android.animation.AnimatorSet.Builder>;
				public after(param0: android.animation.Animator): android.animation.AnimatorSet.Builder;
				public with(param0: android.animation.Animator): android.animation.AnimatorSet.Builder;
				public after(param0: number): android.animation.AnimatorSet.Builder;
				public before(param0: android.animation.Animator): android.animation.AnimatorSet.Builder;
			}
		}
	}
}

declare module android {
	export module animation {
		export class ArgbEvaluator extends java.lang.Object {
			public static class: java.lang.Class<android.animation.ArgbEvaluator>;
			public evaluate(param0: number, param1: any, param2: any): any;
			public constructor();
		}
	}
}

declare module android {
	export module animation {
		export class FloatEvaluator extends android.animation.TypeEvaluator<java.lang.Number> {
			public static class: java.lang.Class<android.animation.FloatEvaluator>;
			public evaluate(param0: number, param1: java.lang.Number, param2: java.lang.Number): java.lang.Float;
			public constructor();
		}
	}
}

declare module android {
	export module animation {
		export class IntEvaluator extends android.animation.TypeEvaluator<java.lang.Integer> {
			public static class: java.lang.Class<android.animation.IntEvaluator>;
			public evaluate(param0: number, param1: java.lang.Integer, param2: java.lang.Integer): java.lang.Integer;
			public constructor();
		}
	}
}

declare module android {
	export module animation {
		export abstract class Keyframe extends java.lang.Object implements java.lang.Cloneable {
			public static class: java.lang.Class<android.animation.Keyframe>;
			public static ofInt(param0: number, param1: number): android.animation.Keyframe;
			public getType(): java.lang.Class<any>;
			public getFraction(): number;
			public clone(): android.animation.Keyframe;
			public static ofFloat(param0: number): android.animation.Keyframe;
			public static ofObject(param0: number, param1: any): android.animation.Keyframe;
			public constructor();
			public getInterpolator(): android.animation.TimeInterpolator;
			public setValue(param0: any): void;
			public static ofFloat(param0: number, param1: number): android.animation.Keyframe;
			public clone(): any;
			public static ofInt(param0: number): android.animation.Keyframe;
			public getValue(): any;
			public setFraction(param0: number): void;
			public hasValue(): boolean;
			public static ofObject(param0: number): android.animation.Keyframe;
			public setInterpolator(param0: android.animation.TimeInterpolator): void;
		}
	}
}

declare module android {
	export module animation {
		export class LayoutTransition extends java.lang.Object {
			public static class: java.lang.Class<android.animation.LayoutTransition>;
			public static CHANGE_APPEARING: number;
			public static CHANGE_DISAPPEARING: number;
			public static APPEARING: number;
			public static DISAPPEARING: number;
			public static CHANGING: number;
			public getStartDelay(param0: number): number;
			public addChild(param0: android.view.ViewGroup, param1: android.view.View): void;
			/** @deprecated */
			public hideChild(param0: android.view.ViewGroup, param1: android.view.View): void;
			public setStagger(param0: number, param1: number): void;
			public setStartDelay(param0: number, param1: number): void;
			public setAnimateParentHierarchy(param0: boolean): void;
			public isRunning(): boolean;
			public setInterpolator(param0: number, param1: android.animation.TimeInterpolator): void;
			public getTransitionListeners(): java.util.List<android.animation.LayoutTransition.TransitionListener>;
			public enableTransitionType(param0: number): void;
			public isTransitionTypeEnabled(param0: number): boolean;
			public hideChild(param0: android.view.ViewGroup, param1: android.view.View, param2: number): void;
			public disableTransitionType(param0: number): void;
			public getAnimator(param0: number): android.animation.Animator;
			public getDuration(param0: number): number;
			public setDuration(param0: number): void;
			public showChild(param0: android.view.ViewGroup, param1: android.view.View, param2: number): void;
			/** @deprecated */
			public showChild(param0: android.view.ViewGroup, param1: android.view.View): void;
			public removeChild(param0: android.view.ViewGroup, param1: android.view.View): void;
			public isChangingLayout(): boolean;
			public constructor();
			public setAnimator(param0: number, param1: android.animation.Animator): void;
			public addTransitionListener(param0: android.animation.LayoutTransition.TransitionListener): void;
			public getStagger(param0: number): number;
			public setDuration(param0: number, param1: number): void;
			public getInterpolator(param0: number): android.animation.TimeInterpolator;
			public removeTransitionListener(param0: android.animation.LayoutTransition.TransitionListener): void;
		}
		export module LayoutTransition {
			export class TransitionListener extends java.lang.Object {
				public static class: java.lang.Class<android.animation.LayoutTransition.TransitionListener>;
				/**
				 * Constructs a new instance of the android.animation.LayoutTransition$TransitionListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					startTransition(param0: android.animation.LayoutTransition, param1: android.view.ViewGroup, param2: android.view.View, param3: number): void;
					endTransition(param0: android.animation.LayoutTransition, param1: android.view.ViewGroup, param2: android.view.View, param3: number): void;
				});
				public constructor();
				public startTransition(param0: android.animation.LayoutTransition, param1: android.view.ViewGroup, param2: android.view.View, param3: number): void;
				public endTransition(param0: android.animation.LayoutTransition, param1: android.view.ViewGroup, param2: android.view.View, param3: number): void;
			}
		}
	}
}

declare module android {
	export module animation {
		export class ObjectAnimator extends android.animation.ValueAnimator {
			public static class: java.lang.Class<android.animation.ObjectAnimator>;
			public setupStartValues(): void;
			public clone(): android.animation.ValueAnimator;
			public clone(): android.animation.ObjectAnimator;
			public setObjectValues(param0: native.Array<any>): void;
			public setProperty(param0: android.util.Property<any,any>): void;
			public setIntValues(param0: native.Array<number>): void;
			public getPropertyName(): string;
			public static ofObject(param0: any, param1: android.util.Property<any,any>, param2: android.animation.TypeEvaluator<any>, param3: native.Array<any>): android.animation.ObjectAnimator;
			public setDuration(param0: number): android.animation.Animator;
			public setPropertyName(param0: string): void;
			public static ofFloat(param0: native.Array<number>): android.animation.ValueAnimator;
			public static ofFloat(param0: any, param1: android.util.Property<any,any>, param2: native.Array<number>): android.animation.ObjectAnimator;
			public static ofPropertyValuesHolder(param0: native.Array<android.animation.PropertyValuesHolder>): android.animation.ValueAnimator;
			public static ofFloat(param0: any, param1: string, param2: native.Array<number>): android.animation.ObjectAnimator;
			public start(): void;
			public static ofInt(param0: native.Array<number>): android.animation.ValueAnimator;
			public static ofPropertyValuesHolder(param0: any, param1: native.Array<android.animation.PropertyValuesHolder>): android.animation.ObjectAnimator;
			public setFloatValues(param0: native.Array<number>): void;
			public clone(): android.animation.Animator;
			public static ofInt(param0: any, param1: android.util.Property<any,any>, param2: native.Array<number>): android.animation.ObjectAnimator;
			public constructor();
			public setDuration(param0: number): android.animation.ObjectAnimator;
			public clone(): any;
			public toString(): string;
			public setTarget(param0: any): void;
			public static ofObject(param0: any, param1: string, param2: android.animation.TypeEvaluator<any>, param3: native.Array<any>): android.animation.ObjectAnimator;
			public setAutoCancel(param0: boolean): void;
			public static ofInt(param0: any, param1: string, param2: native.Array<number>): android.animation.ObjectAnimator;
			public getTarget(): any;
			public static ofObject(param0: android.animation.TypeEvaluator<any>, param1: native.Array<any>): android.animation.ValueAnimator;
			public setDuration(param0: number): android.animation.ValueAnimator;
			public setupEndValues(): void;
		}
	}
}

declare module android {
	export module animation {
		export class PropertyValuesHolder extends java.lang.Object implements java.lang.Cloneable {
			public static class: java.lang.Class<android.animation.PropertyValuesHolder>;
			public static ofInt(param0: string, param1: native.Array<number>): android.animation.PropertyValuesHolder;
			public setFloatValues(param0: native.Array<number>): void;
			public static ofInt(param0: android.util.Property<any,java.lang.Integer>, param1: native.Array<number>): android.animation.PropertyValuesHolder;
			public static ofObject(param0: string, param1: android.animation.TypeEvaluator<any>, param2: native.Array<any>): android.animation.PropertyValuesHolder;
			public setObjectValues(param0: native.Array<any>): void;
			public static ofFloat(param0: android.util.Property<any,java.lang.Float>, param1: native.Array<number>): android.animation.PropertyValuesHolder;
			public clone(): android.animation.PropertyValuesHolder;
			public static ofObject(param0: android.util.Property<any,any>, param1: android.animation.TypeEvaluator<any>, param2: native.Array<any>): android.animation.PropertyValuesHolder;
			public setIntValues(param0: native.Array<number>): void;
			public setProperty(param0: android.util.Property<any,any>): void;
			public static ofKeyframe(param0: string, param1: native.Array<android.animation.Keyframe>): android.animation.PropertyValuesHolder;
			public getPropertyName(): string;
			public setEvaluator(param0: android.animation.TypeEvaluator<any>): void;
			public setPropertyName(param0: string): void;
			public static ofKeyframe(param0: android.util.Property<any,any>, param1: native.Array<android.animation.Keyframe>): android.animation.PropertyValuesHolder;
			public setKeyframes(param0: native.Array<android.animation.Keyframe>): void;
			public clone(): any;
			public toString(): string;
			public static ofFloat(param0: string, param1: native.Array<number>): android.animation.PropertyValuesHolder;
		}
	}
}

declare module android {
	export module animation {
		export class RectEvaluator extends android.animation.TypeEvaluator<android.graphics.Rect> {
			public static class: java.lang.Class<android.animation.RectEvaluator>;
			public evaluate(param0: number, param1: android.graphics.Rect, param2: android.graphics.Rect): android.graphics.Rect;
			public constructor();
		}
	}
}

declare module android {
	export module animation {
		export class TimeAnimator extends android.animation.ValueAnimator {
			public static class: java.lang.Class<android.animation.TimeAnimator>;
			public constructor();
			public start(): void;
			public setTimeListener(param0: android.animation.TimeAnimator.TimeListener): void;
		}
		export module TimeAnimator {
			export class TimeListener extends java.lang.Object {
				public static class: java.lang.Class<android.animation.TimeAnimator.TimeListener>;
				/**
				 * Constructs a new instance of the android.animation.TimeAnimator$TimeListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onTimeUpdate(param0: android.animation.TimeAnimator, param1: number, param2: number): void;
				});
				public constructor();
				public onTimeUpdate(param0: android.animation.TimeAnimator, param1: number, param2: number): void;
			}
		}
	}
}

declare module android {
	export module animation {
		export class TimeInterpolator extends java.lang.Object {
			public static class: java.lang.Class<android.animation.TimeInterpolator>;
			/**
			 * Constructs a new instance of the android.animation.TimeInterpolator interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				getInterpolation(param0: number): number;
			});
			public constructor();
			public getInterpolation(param0: number): number;
		}
	}
}

declare module android {
	export module animation {
		export class TypeEvaluator<T>  extends java.lang.Object {
			public static class: java.lang.Class<android.animation.TypeEvaluator<any>>;
			/**
			 * Constructs a new instance of the android.animation.TypeEvaluator<any> interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				evaluate(param0: number, param1: T, param2: T): T;
			});
			public constructor();
			public evaluate(param0: number, param1: T, param2: T): T;
		}
	}
}

declare module android {
	export module animation {
		export class ValueAnimator extends android.animation.Animator {
			public static class: java.lang.Class<android.animation.ValueAnimator>;
			public static RESTART: number;
			public static REVERSE: number;
			public static INFINITE: number;
			public clone(): android.animation.ValueAnimator;
			public reverse(): void;
			public getRepeatCount(): number;
			public removeUpdateListener(param0: android.animation.ValueAnimator.AnimatorUpdateListener): void;
			public setObjectValues(param0: native.Array<any>): void;
			public getDuration(): number;
			public end(): void;
			public setIntValues(param0: native.Array<number>): void;
			public cancel(): void;
			public setDuration(param0: number): android.animation.Animator;
			public getInterpolator(): android.animation.TimeInterpolator;
			public getRepeatMode(): number;
			public isRunning(): boolean;
			public static ofFloat(param0: native.Array<number>): android.animation.ValueAnimator;
			public setValues(param0: native.Array<android.animation.PropertyValuesHolder>): void;
			public static ofPropertyValuesHolder(param0: native.Array<android.animation.PropertyValuesHolder>): android.animation.ValueAnimator;
			public setInterpolator(param0: android.animation.TimeInterpolator): void;
			public start(): void;
			public getStartDelay(): number;
			public static ofInt(param0: native.Array<number>): android.animation.ValueAnimator;
			public setCurrentPlayTime(param0: number): void;
			public static setFrameDelay(param0: number): void;
			public setFloatValues(param0: native.Array<number>): void;
			public getCurrentPlayTime(): number;
			public clone(): android.animation.Animator;
			public isStarted(): boolean;
			public setRepeatCount(param0: number): void;
			public setStartDelay(param0: number): void;
			public addUpdateListener(param0: android.animation.ValueAnimator.AnimatorUpdateListener): void;
			public constructor();
			public getAnimatedValue(param0: string): any;
			public setEvaluator(param0: android.animation.TypeEvaluator<any>): void;
			public getValues(): native.Array<android.animation.PropertyValuesHolder>;
			public getAnimatedValue(): any;
			public setRepeatMode(param0: number): void;
			public removeAllUpdateListeners(): void;
			public clone(): any;
			public toString(): string;
			public getAnimatedFraction(): number;
			public static getFrameDelay(): number;
			public static ofObject(param0: android.animation.TypeEvaluator<any>, param1: native.Array<any>): android.animation.ValueAnimator;
			public setDuration(param0: number): android.animation.ValueAnimator;
		}
		export module ValueAnimator {
			export class AnimatorUpdateListener extends java.lang.Object {
				public static class: java.lang.Class<android.animation.ValueAnimator.AnimatorUpdateListener>;
				/**
				 * Constructs a new instance of the android.animation.ValueAnimator$AnimatorUpdateListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onAnimationUpdate(param0: android.animation.ValueAnimator): void;
				});
				public constructor();
				public onAnimationUpdate(param0: android.animation.ValueAnimator): void;
			}
		}
	}
}

declare module android {
	export module annotation {
		export class SuppressLint extends java.lang.Object implements java.lang.annotation.Annotation {
			public static class: java.lang.Class<android.annotation.SuppressLint>;
			/**
			 * Constructs a new instance of the android.annotation.SuppressLint interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				value(): native.Array<string>;
				annotationType(): java.lang.Class<any>;
				equals(param0: any): boolean;
				hashCode(): number;
				toString(): string;
			});
			public constructor();
			public equals(param0: any): boolean;
			public toString(): string;
			public value(): native.Array<string>;
			public annotationType(): java.lang.Class<any>;
			public hashCode(): number;
		}
	}
}

declare module android {
	export module annotation {
		export class TargetApi extends java.lang.Object implements java.lang.annotation.Annotation {
			public static class: java.lang.Class<android.annotation.TargetApi>;
			/**
			 * Constructs a new instance of the android.annotation.TargetApi interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				value(): number;
				annotationType(): java.lang.Class<any>;
				equals(param0: any): boolean;
				hashCode(): number;
				toString(): string;
			});
			public constructor();
			public equals(param0: any): boolean;
			public toString(): string;
			public value(): number;
			public annotationType(): java.lang.Class<any>;
			public hashCode(): number;
		}
	}
}

declare module android {
	export module app {
		export abstract class ActionBar extends java.lang.Object {
			public static class: java.lang.Class<android.app.ActionBar>;
			public static NAVIGATION_MODE_STANDARD: number;
			public static NAVIGATION_MODE_LIST: number;
			public static NAVIGATION_MODE_TABS: number;
			public static DISPLAY_USE_LOGO: number;
			public static DISPLAY_SHOW_HOME: number;
			public static DISPLAY_HOME_AS_UP: number;
			public static DISPLAY_SHOW_TITLE: number;
			public static DISPLAY_SHOW_CUSTOM: number;
			public addOnMenuVisibilityListener(param0: android.app.ActionBar.OnMenuVisibilityListener): void;
			public setTitle(param0: string): void;
			public setNavigationMode(param0: number): void;
			public setSubtitle(param0: number): void;
			public setSplitBackgroundDrawable(param0: android.graphics.drawable.Drawable): void;
			public addTab(param0: android.app.ActionBar.Tab): void;
			public setHomeActionContentDescription(param0: string): void;
			public getSelectedNavigationIndex(): number;
			public getSelectedTab(): android.app.ActionBar.Tab;
			public removeOnMenuVisibilityListener(param0: android.app.ActionBar.OnMenuVisibilityListener): void;
			public setLogo(param0: number): void;
			public getCustomView(): android.view.View;
			public setHomeActionContentDescription(param0: number): void;
			public setDisplayHomeAsUpEnabled(param0: boolean): void;
			public hide(): void;
			public isShowing(): boolean;
			public getNavigationMode(): number;
			public setCustomView(param0: android.view.View, param1: android.app.ActionBar.LayoutParams): void;
			public getTitle(): string;
			public getSubtitle(): string;
			public getHeight(): number;
			public addTab(param0: android.app.ActionBar.Tab, param1: boolean): void;
			public constructor();
			public setHomeAsUpIndicator(param0: number): void;
			public addTab(param0: android.app.ActionBar.Tab, param1: number): void;
			public setCustomView(param0: number): void;
			public addTab(param0: android.app.ActionBar.Tab, param1: number, param2: boolean): void;
			public setSelectedNavigationItem(param0: number): void;
			public getNavigationItemCount(): number;
			public getDisplayOptions(): number;
			public show(): void;
			public newTab(): android.app.ActionBar.Tab;
			public removeAllTabs(): void;
			public setListNavigationCallbacks(param0: android.widget.SpinnerAdapter, param1: android.app.ActionBar.OnNavigationListener): void;
			public setDisplayOptions(param0: number): void;
			public setDisplayShowTitleEnabled(param0: boolean): void;
			public setLogo(param0: android.graphics.drawable.Drawable): void;
			public setBackgroundDrawable(param0: android.graphics.drawable.Drawable): void;
			public setDisplayShowCustomEnabled(param0: boolean): void;
			public setDisplayUseLogoEnabled(param0: boolean): void;
			public removeTab(param0: android.app.ActionBar.Tab): void;
			public setCustomView(param0: android.view.View): void;
			public getThemedContext(): android.content.Context;
			public setIcon(param0: number): void;
			public setDisplayOptions(param0: number, param1: number): void;
			public setHomeAsUpIndicator(param0: android.graphics.drawable.Drawable): void;
			public setTitle(param0: number): void;
			public setDisplayShowHomeEnabled(param0: boolean): void;
			public removeTabAt(param0: number): void;
			public selectTab(param0: android.app.ActionBar.Tab): void;
			public setSubtitle(param0: string): void;
			public getTabAt(param0: number): android.app.ActionBar.Tab;
			public setHomeButtonEnabled(param0: boolean): void;
			public setIcon(param0: android.graphics.drawable.Drawable): void;
			public setStackedBackgroundDrawable(param0: android.graphics.drawable.Drawable): void;
			public getTabCount(): number;
		}
		export module ActionBar {
			export class LayoutParams extends android.view.ViewGroup.MarginLayoutParams {
				public static class: java.lang.Class<android.app.ActionBar.LayoutParams>;
				public gravity: number;
				public constructor(param0: number, param1: number);
				public constructor(param0: android.view.ViewGroup.MarginLayoutParams);
				public constructor(param0: android.view.ViewGroup.LayoutParams);
				public constructor(param0: number, param1: number, param2: number);
				public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
				public constructor(param0: number);
				public constructor(param0: android.app.ActionBar.LayoutParams);
			}
			export class OnMenuVisibilityListener extends java.lang.Object {
				public static class: java.lang.Class<android.app.ActionBar.OnMenuVisibilityListener>;
				/**
				 * Constructs a new instance of the android.app.ActionBar$OnMenuVisibilityListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onMenuVisibilityChanged(param0: boolean): void;
				});
				public constructor();
				public onMenuVisibilityChanged(param0: boolean): void;
			}
			export class OnNavigationListener extends java.lang.Object {
				public static class: java.lang.Class<android.app.ActionBar.OnNavigationListener>;
				/**
				 * Constructs a new instance of the android.app.ActionBar$OnNavigationListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onNavigationItemSelected(param0: number, param1: number): boolean;
				});
				public constructor();
				public onNavigationItemSelected(param0: number, param1: number): boolean;
			}
			export abstract class Tab extends java.lang.Object {
				public static class: java.lang.Class<android.app.ActionBar.Tab>;
				public static INVALID_POSITION: number;
				public setCustomView(param0: number): android.app.ActionBar.Tab;
				public setText(param0: string): android.app.ActionBar.Tab;
				public setTabListener(param0: android.app.ActionBar.TabListener): android.app.ActionBar.Tab;
				public getContentDescription(): string;
				public setIcon(param0: android.graphics.drawable.Drawable): android.app.ActionBar.Tab;
				public select(): void;
				public getPosition(): number;
				public setContentDescription(param0: number): android.app.ActionBar.Tab;
				public setContentDescription(param0: string): android.app.ActionBar.Tab;
				public constructor();
				public getText(): string;
				public setText(param0: number): android.app.ActionBar.Tab;
				public setTag(param0: any): android.app.ActionBar.Tab;
				public setCustomView(param0: android.view.View): android.app.ActionBar.Tab;
				public getTag(): any;
				public getCustomView(): android.view.View;
				public getIcon(): android.graphics.drawable.Drawable;
				public setIcon(param0: number): android.app.ActionBar.Tab;
			}
			export class TabListener extends java.lang.Object {
				public static class: java.lang.Class<android.app.ActionBar.TabListener>;
				/**
				 * Constructs a new instance of the android.app.ActionBar$TabListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onTabSelected(param0: android.app.ActionBar.Tab, param1: android.app.FragmentTransaction): void;
					onTabUnselected(param0: android.app.ActionBar.Tab, param1: android.app.FragmentTransaction): void;
					onTabReselected(param0: android.app.ActionBar.Tab, param1: android.app.FragmentTransaction): void;
				});
				public constructor();
				public onTabUnselected(param0: android.app.ActionBar.Tab, param1: android.app.FragmentTransaction): void;
				public onTabSelected(param0: android.app.ActionBar.Tab, param1: android.app.FragmentTransaction): void;
				public onTabReselected(param0: android.app.ActionBar.Tab, param1: android.app.FragmentTransaction): void;
			}
		}
	}
}

declare module android {
	export module app {
		export class Activity extends android.view.ContextThemeWrapper implements android.view.LayoutInflater.Factory2, android.view.Window.Callback, android.view.KeyEvent.Callback, android.view.View.OnCreateContextMenuListener, android.content.ComponentCallbacks2 {
			public static class: java.lang.Class<android.app.Activity>;
			public static RESULT_CANCELED: number;
			public static RESULT_OK: number;
			public static RESULT_FIRST_USER: number;
			public static FOCUSED_STATE_SET: native.Array<number>;
			public static DEFAULT_KEYS_DISABLE: number;
			public static DEFAULT_KEYS_DIALER: number;
			public static DEFAULT_KEYS_SHORTCUT: number;
			public static DEFAULT_KEYS_SEARCH_LOCAL: number;
			public static DEFAULT_KEYS_SEARCH_GLOBAL: number;
			public onApplyThemeResource(param0: android.content.res.Resources.Theme, param1: number, param2: boolean): void;
			public finishActivityFromChild(param0: android.app.Activity, param1: number): void;
			public onStart(): void;
			public finish(): void;
			public isTaskRoot(): boolean;
			public onChildTitleChanged(param0: android.app.Activity, param1: string): void;
			public getLayoutInflater(): android.view.LayoutInflater;
			/** @deprecated */
			public managedQuery(param0: android.net.Uri, param1: native.Array<string>, param2: string, param3: native.Array<string>, param4: string): android.database.Cursor;
			public getApplication(): android.app.Application;
			/** @deprecated */
			public dismissDialog(param0: number): void;
			public setContentView(param0: android.view.View): void;
			public getCallingPackage(): string;
			public finishActivity(param0: number): void;
			/** @deprecated */
			public startManagingCursor(param0: android.database.Cursor): void;
			public isChangingConfigurations(): boolean;
			public startIntentSenderFromChild(param0: android.app.Activity, param1: android.content.IntentSender, param2: number, param3: android.content.Intent, param4: number, param5: number, param6: number, param7: android.os.Bundle): void;
			public createPendingResult(param0: number, param1: android.content.Intent, param2: number): android.app.PendingIntent;
			public getComponentName(): android.content.ComponentName;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public setFeatureDrawableUri(param0: number, param1: android.net.Uri): void;
			public startNextMatchingActivity(param0: android.content.Intent, param1: android.os.Bundle): boolean;
			public setProgressBarVisibility(param0: boolean): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public startIntentSenderForResult(param0: android.content.IntentSender, param1: number, param2: android.content.Intent, param3: number, param4: number, param5: number): void;
			public dispatchGenericMotionEvent(param0: android.view.MotionEvent): boolean;
			public setContentView(param0: number): void;
			public onDetachedFromWindow(): void;
			/** @deprecated */
			public onCreateDialog(param0: number): android.app.Dialog;
			public getPreferences(param0: number): android.content.SharedPreferences;
			public constructor();
			public onRestoreInstanceState(param0: android.os.Bundle): void;
			public onCreateNavigateUpTaskStack(param0: android.app.TaskStackBuilder): void;
			public startActivityFromChild(param0: android.app.Activity, param1: android.content.Intent, param2: number): void;
			public setProgressBarIndeterminate(param0: boolean): void;
			public requestWindowFeature(param0: number): boolean;
			public onPostResume(): void;
			public startActivityFromFragment(param0: android.app.Fragment, param1: android.content.Intent, param2: number, param3: android.os.Bundle): void;
			public onNavigateUp(): boolean;
			public setProgressBarIndeterminateVisibility(param0: boolean): void;
			public finishAffinity(): void;
			public closeOptionsMenu(): void;
			public onPreparePanel(param0: number, param1: android.view.View, param2: android.view.Menu): boolean;
			public getLocalClassName(): string;
			public startActivityForResult(param0: android.content.Intent, param1: number, param2: android.os.Bundle): void;
			public getRequestedOrientation(): number;
			public onCreate(param0: android.os.Bundle): void;
			public onWindowStartingActionMode(param0: android.view.ActionMode.Callback): android.view.ActionMode;
			public isDestroyed(): boolean;
			public onProvideAssistData(param0: android.os.Bundle): void;
			public onDestroy(): void;
			public getParentActivityIntent(): android.content.Intent;
			public getFragmentManager(): android.app.FragmentManager;
			public onLowMemory(): void;
			public getActionBar(): android.app.ActionBar;
			public openOptionsMenu(): void;
			public startActivity(param0: android.content.Intent, param1: android.os.Bundle): void;
			public getMenuInflater(): android.view.MenuInflater;
			public registerForContextMenu(param0: android.view.View): void;
			public overridePendingTransition(param0: number, param1: number): void;
			public onAttachFragment(param0: android.app.Fragment): void;
			public unregisterForContextMenu(param0: android.view.View): void;
			public onTrimMemory(param0: number): void;
			public onCreateOptionsMenu(param0: android.view.Menu): boolean;
			public onBackPressed(): void;
			public onActionModeFinished(param0: android.view.ActionMode): void;
			public onOptionsMenuClosed(param0: android.view.Menu): void;
			public onOptionsItemSelected(param0: android.view.MenuItem): boolean;
			public onRestart(): void;
			public getTaskId(): number;
			public onCreateDescription(): string;
			public onActionModeStarted(param0: android.view.ActionMode): void;
			public onConfigurationChanged(param0: android.content.res.Configuration): void;
			public dispatchKeyShortcutEvent(param0: android.view.KeyEvent): boolean;
			public setResult(param0: number): void;
			public startActivityIfNeeded(param0: android.content.Intent, param1: number): boolean;
			public onMenuOpened(param0: number, param1: android.view.Menu): boolean;
			public getChangingConfigurations(): number;
			public onTitleChanged(param0: string, param1: number): void;
			public runOnUiThread(param0: java.lang.Runnable): void;
			public startIntentSender(param0: android.content.IntentSender, param1: android.content.Intent, param2: number, param3: number, param4: number): void;
			public setVisible(param0: boolean): void;
			public onNavigateUpFromChild(param0: android.app.Activity): boolean;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public setContentView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			/** @deprecated */
			public onCreateDialog(param0: number, param1: android.os.Bundle): android.app.Dialog;
			public setFinishOnTouchOutside(param0: boolean): void;
			public setFeatureDrawableAlpha(param0: number, param1: number): void;
			public isFinishing(): boolean;
			public constructor(param0: android.content.Context);
			public startActivityForResult(param0: android.content.Intent, param1: number): void;
			public startActivityFromFragment(param0: android.app.Fragment, param1: android.content.Intent, param2: number): void;
			public startIntentSender(param0: android.content.IntentSender, param1: android.content.Intent, param2: number, param3: number, param4: number, param5: android.os.Bundle): void;
			public shouldUpRecreateTask(param0: android.content.Intent): boolean;
			/** @deprecated */
			public getLastNonConfigurationInstance(): any;
			public onPrepareOptionsMenu(param0: android.view.Menu): boolean;
			public setTitle(param0: string): void;
			public setImmersive(param0: boolean): void;
			public onCreatePanelMenu(param0: number, param1: android.view.Menu): boolean;
			public setFeatureDrawableResource(param0: number, param1: number): void;
			public getCallingActivity(): android.content.ComponentName;
			public findViewById(param0: number): android.view.View;
			public isChild(): boolean;
			public getTitleColor(): number;
			public onSearchRequested(): boolean;
			public startIntentSenderForResult(param0: android.content.IntentSender, param1: number, param2: android.content.Intent, param3: number, param4: number, param5: number, param6: android.os.Bundle): void;
			public startSearch(param0: string, param1: boolean, param2: android.os.Bundle, param3: boolean): void;
			public onActivityResult(param0: number, param1: number, param2: android.content.Intent): void;
			/** @deprecated */
			public onPrepareDialog(param0: number, param1: android.app.Dialog): void;
			public setProgress(param0: number): void;
			public onPostCreate(param0: android.os.Bundle): void;
			public onCreatePanelView(param0: number): android.view.View;
			public isImmersive(): boolean;
			public setDefaultKeyMode(param0: number): void;
			public onKeyShortcut(param0: number, param1: android.view.KeyEvent): boolean;
			public onCreateView(param0: android.view.View, param1: string, param2: android.content.Context, param3: android.util.AttributeSet): android.view.View;
			public getTitle(): string;
			public getWindow(): android.view.Window;
			public moveTaskToBack(param0: boolean): boolean;
			public startActivities(param0: native.Array<android.content.Intent>): void;
			public getVolumeControlStream(): number;
			public onResume(): void;
			public getParent(): android.app.Activity;
			public takeKeyEvents(param0: boolean): void;
			public onCreateView(param0: string, param1: android.content.Context, param2: android.util.AttributeSet): android.view.View;
			public constructor(param0: android.content.Context, param1: number);
			public onTrackballEvent(param0: android.view.MotionEvent): boolean;
			public onNewIntent(param0: android.content.Intent): void;
			public onCreateContextMenu(param0: android.view.ContextMenu, param1: android.view.View, param2: android.view.ContextMenu.ContextMenuInfo): void;
			/** @deprecated */
			public showDialog(param0: number, param1: android.os.Bundle): boolean;
			public getCurrentFocus(): android.view.View;
			public hasWindowFocus(): boolean;
			public dispatchTouchEvent(param0: android.view.MotionEvent): boolean;
			/** @deprecated */
			public onRetainNonConfigurationInstance(): any;
			public onWindowFocusChanged(param0: boolean): void;
			public startIntentSenderFromChild(param0: android.app.Activity, param1: android.content.IntentSender, param2: number, param3: android.content.Intent, param4: number, param5: number, param6: number): void;
			public finishFromChild(param0: android.app.Activity): void;
			public onContentChanged(): void;
			/** @deprecated */
			public stopManagingCursor(param0: android.database.Cursor): void;
			public invalidateOptionsMenu(): void;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public startActivityIfNeeded(param0: android.content.Intent, param1: number, param2: android.os.Bundle): boolean;
			public onUserInteraction(): void;
			public getIntent(): android.content.Intent;
			public closeContextMenu(): void;
			public setVolumeControlStream(param0: number): void;
			public getLoaderManager(): android.app.LoaderManager;
			public setTitleColor(param0: number): void;
			public startNextMatchingActivity(param0: android.content.Intent): boolean;
			public onGenericMotionEvent(param0: android.view.MotionEvent): boolean;
			public onPanelClosed(param0: number, param1: android.view.Menu): void;
			public onPrepareNavigateUpTaskStack(param0: android.app.TaskStackBuilder): void;
			public navigateUpTo(param0: android.content.Intent): boolean;
			public getSystemService(param0: string): any;
			public onContextItemSelected(param0: android.view.MenuItem): boolean;
			public setFeatureDrawable(param0: number, param1: android.graphics.drawable.Drawable): void;
			/** @deprecated */
			public removeDialog(param0: number): void;
			public setRequestedOrientation(param0: number): void;
			public getWindowManager(): android.view.WindowManager;
			public openContextMenu(param0: android.view.View): void;
			public onPause(): void;
			public onStop(): void;
			public startActivities(param0: native.Array<android.content.Intent>, param1: android.os.Bundle): void;
			public setSecondaryProgress(param0: number): void;
			public onMenuItemSelected(param0: number, param1: android.view.MenuItem): boolean;
			public recreate(): void;
			public navigateUpToFromChild(param0: android.app.Activity, param1: android.content.Intent): boolean;
			public addContentView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public setResult(param0: number, param1: android.content.Intent): void;
			public onTouchEvent(param0: android.view.MotionEvent): boolean;
			public setTitle(param0: number): void;
			public dump(param0: string, param1: java.io.FileDescriptor, param2: java.io.PrintWriter, param3: native.Array<string>): void;
			public startActivityFromChild(param0: android.app.Activity, param1: android.content.Intent, param2: number, param3: android.os.Bundle): void;
			public setIntent(param0: android.content.Intent): void;
			public dispatchTrackballEvent(param0: android.view.MotionEvent): boolean;
			public startActionMode(param0: android.view.ActionMode.Callback): android.view.ActionMode;
			public onContextMenuClosed(param0: android.view.Menu): void;
			public onSaveInstanceState(param0: android.os.Bundle): void;
			public onUserLeaveHint(): void;
			public startActivity(param0: android.content.Intent): void;
			public dispatchKeyEvent(param0: android.view.KeyEvent): boolean;
			public dispatchPopulateAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): boolean;
			public onAttachedToWindow(): void;
			/** @deprecated */
			public showDialog(param0: number): void;
			public triggerSearch(param0: string, param1: android.os.Bundle): void;
			public onWindowAttributesChanged(param0: android.view.WindowManager.LayoutParams): void;
			public onCreateThumbnail(param0: android.graphics.Bitmap, param1: android.graphics.Canvas): boolean;
			/** @deprecated */
			public onPrepareDialog(param0: number, param1: android.app.Dialog, param2: android.os.Bundle): void;
		}
	}
}

declare module android {
	export module app {
		export class ActivityGroup extends android.app.Activity {
			public static class: java.lang.Class<android.app.ActivityGroup>;
			public onWindowStartingActionMode(param0: android.view.ActionMode.Callback): android.view.ActionMode;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public constructor(param0: boolean);
			public onCreatePanelMenu(param0: number, param1: android.view.Menu): boolean;
			public onDestroy(): void;
			public onPanelClosed(param0: number, param1: android.view.Menu): void;
			public onSearchRequested(): boolean;
			public onTrimMemory(param0: number): void;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public onActionModeFinished(param0: android.view.ActionMode): void;
			public onPause(): void;
			public onCreatePanelView(param0: number): android.view.View;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public dispatchGenericMotionEvent(param0: android.view.MotionEvent): boolean;
			public onStop(): void;
			public onDetachedFromWindow(): void;
			public onActionModeStarted(param0: android.view.ActionMode): void;
			public onCreateView(param0: android.view.View, param1: string, param2: android.content.Context, param3: android.util.AttributeSet): android.view.View;
			public dispatchKeyShortcutEvent(param0: android.view.KeyEvent): boolean;
			public onMenuItemSelected(param0: number, param1: android.view.MenuItem): boolean;
			public onMenuOpened(param0: number, param1: android.view.Menu): boolean;
			public onResume(): void;
			public constructor();
			public getCurrentActivity(): android.app.Activity;
			public onCreateView(param0: string, param1: android.content.Context, param2: android.util.AttributeSet): android.view.View;
			public constructor(param0: android.content.Context, param1: number);
			public getLocalActivityManager(): android.app.LocalActivityManager;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public onCreateContextMenu(param0: android.view.ContextMenu, param1: android.view.View, param2: android.view.ContextMenu.ContextMenuInfo): void;
			public dispatchTouchEvent(param0: android.view.MotionEvent): boolean;
			public dispatchTrackballEvent(param0: android.view.MotionEvent): boolean;
			public onSaveInstanceState(param0: android.os.Bundle): void;
			public constructor(param0: android.content.Context);
			public dispatchKeyEvent(param0: android.view.KeyEvent): boolean;
			public onPreparePanel(param0: number, param1: android.view.View, param2: android.view.Menu): boolean;
			public dispatchPopulateAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): boolean;
			public onWindowFocusChanged(param0: boolean): void;
			public onAttachedToWindow(): void;
			public onCreate(param0: android.os.Bundle): void;
			public onWindowAttributesChanged(param0: android.view.WindowManager.LayoutParams): void;
			public onContentChanged(): void;
		}
	}
}

declare module android {
	export module app {
		export class ActivityManager extends java.lang.Object {
			public static class: java.lang.Class<android.app.ActivityManager>;
			public static RECENT_WITH_EXCLUDED: number;
			public static RECENT_IGNORE_UNAVAILABLE: number;
			public static MOVE_TASK_WITH_HOME: number;
			public static MOVE_TASK_NO_USER_ACTION: number;
			public getRunningTasks(param0: number): java.util.List<android.app.ActivityManager.RunningTaskInfo>;
			public getMemoryClass(): number;
			public moveTaskToFront(param0: number, param1: number): void;
			public getProcessesInErrorState(): java.util.List<android.app.ActivityManager.ProcessErrorStateInfo>;
			public killBackgroundProcesses(param0: string): void;
			public static isUserAMonkey(): boolean;
			public getRunningServiceControlPanel(param0: android.content.ComponentName): android.app.PendingIntent;
			public static isRunningInTestHarness(): boolean;
			/** @deprecated */
			public restartPackage(param0: string): void;
			public getProcessMemoryInfo(param0: native.Array<number>): native.Array<android.os.Debug.MemoryInfo>;
			public getLargeMemoryClass(): number;
			public getRunningAppProcesses(): java.util.List<android.app.ActivityManager.RunningAppProcessInfo>;
			public getLauncherLargeIconDensity(): number;
			public getLauncherLargeIconSize(): number;
			public getRecentTasks(param0: number, param1: number): java.util.List<android.app.ActivityManager.RecentTaskInfo>;
			public getDeviceConfigurationInfo(): android.content.pm.ConfigurationInfo;
			public getMemoryInfo(param0: android.app.ActivityManager.MemoryInfo): void;
			public static getMyMemoryState(param0: android.app.ActivityManager.RunningAppProcessInfo): void;
			public moveTaskToFront(param0: number, param1: number, param2: android.os.Bundle): void;
			public getRunningServices(param0: number): java.util.List<android.app.ActivityManager.RunningServiceInfo>;
		}
		export module ActivityManager {
			export class MemoryInfo extends java.lang.Object implements android.os.Parcelable {
				public static class: java.lang.Class<android.app.ActivityManager.MemoryInfo>;
				public availMem: number;
				public totalMem: number;
				public threshold: number;
				public lowMemory: boolean;
				public static CREATOR: android.os.Parcelable.Creator<android.app.ActivityManager.MemoryInfo>;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public describeContents(): number;
				public readFromParcel(param0: android.os.Parcel): void;
				public constructor();
			}
			export class ProcessErrorStateInfo extends java.lang.Object implements android.os.Parcelable {
				public static class: java.lang.Class<android.app.ActivityManager.ProcessErrorStateInfo>;
				public static NO_ERROR: number;
				public static CRASHED: number;
				public static NOT_RESPONDING: number;
				public condition: number;
				public processName: string;
				public pid: number;
				public uid: number;
				public tag: string;
				public shortMsg: string;
				public longMsg: string;
				public stackTrace: string;
				public crashData: native.Array<number>;
				public static CREATOR: android.os.Parcelable.Creator<android.app.ActivityManager.ProcessErrorStateInfo>;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public describeContents(): number;
				public readFromParcel(param0: android.os.Parcel): void;
				public constructor();
			}
			export class RecentTaskInfo extends java.lang.Object implements android.os.Parcelable {
				public static class: java.lang.Class<android.app.ActivityManager.RecentTaskInfo>;
				public id: number;
				public persistentId: number;
				public baseIntent: android.content.Intent;
				public origActivity: android.content.ComponentName;
				public description: string;
				public static CREATOR: android.os.Parcelable.Creator<android.app.ActivityManager.RecentTaskInfo>;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public describeContents(): number;
				public readFromParcel(param0: android.os.Parcel): void;
				public constructor();
			}
			export class RunningAppProcessInfo extends java.lang.Object implements android.os.Parcelable {
				public static class: java.lang.Class<android.app.ActivityManager.RunningAppProcessInfo>;
				public processName: string;
				public pid: number;
				public uid: number;
				public pkgList: native.Array<string>;
				public lastTrimLevel: number;
				public static IMPORTANCE_FOREGROUND: number;
				public static IMPORTANCE_VISIBLE: number;
				public static IMPORTANCE_PERCEPTIBLE: number;
				public static IMPORTANCE_SERVICE: number;
				public static IMPORTANCE_BACKGROUND: number;
				public static IMPORTANCE_EMPTY: number;
				public importance: number;
				public lru: number;
				public static REASON_UNKNOWN: number;
				public static REASON_PROVIDER_IN_USE: number;
				public static REASON_SERVICE_IN_USE: number;
				public importanceReasonCode: number;
				public importanceReasonPid: number;
				public importanceReasonComponent: android.content.ComponentName;
				public static CREATOR: android.os.Parcelable.Creator<android.app.ActivityManager.RunningAppProcessInfo>;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public describeContents(): number;
				public readFromParcel(param0: android.os.Parcel): void;
				public constructor(param0: string, param1: number, param2: native.Array<string>);
				public constructor();
			}
			export class RunningServiceInfo extends java.lang.Object implements android.os.Parcelable {
				public static class: java.lang.Class<android.app.ActivityManager.RunningServiceInfo>;
				public service: android.content.ComponentName;
				public pid: number;
				public uid: number;
				public process: string;
				public foreground: boolean;
				public activeSince: number;
				public started: boolean;
				public clientCount: number;
				public crashCount: number;
				public lastActivityTime: number;
				public restarting: number;
				public static FLAG_STARTED: number;
				public static FLAG_FOREGROUND: number;
				public static FLAG_SYSTEM_PROCESS: number;
				public static FLAG_PERSISTENT_PROCESS: number;
				public flags: number;
				public clientPackage: string;
				public clientLabel: number;
				public static CREATOR: android.os.Parcelable.Creator<android.app.ActivityManager.RunningServiceInfo>;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public describeContents(): number;
				public readFromParcel(param0: android.os.Parcel): void;
				public constructor();
			}
			export class RunningTaskInfo extends java.lang.Object implements android.os.Parcelable {
				public static class: java.lang.Class<android.app.ActivityManager.RunningTaskInfo>;
				public id: number;
				public baseActivity: android.content.ComponentName;
				public topActivity: android.content.ComponentName;
				public thumbnail: android.graphics.Bitmap;
				public description: string;
				public numActivities: number;
				public numRunning: number;
				public static CREATOR: android.os.Parcelable.Creator<android.app.ActivityManager.RunningTaskInfo>;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public describeContents(): number;
				public readFromParcel(param0: android.os.Parcel): void;
				public constructor();
			}
		}
	}
}

declare module android {
	export module app {
		export class ActivityOptions extends java.lang.Object {
			public static class: java.lang.Class<android.app.ActivityOptions>;
			public static makeThumbnailScaleUpAnimation(param0: android.view.View, param1: android.graphics.Bitmap, param2: number, param3: number): android.app.ActivityOptions;
			public update(param0: android.app.ActivityOptions): void;
			public static makeCustomAnimation(param0: android.content.Context, param1: number, param2: number): android.app.ActivityOptions;
			public toBundle(): android.os.Bundle;
			public static makeScaleUpAnimation(param0: android.view.View, param1: number, param2: number, param3: number, param4: number): android.app.ActivityOptions;
		}
	}
}

declare module android {
	export module app {
		export class AlarmManager extends java.lang.Object {
			public static class: java.lang.Class<android.app.AlarmManager>;
			public static RTC_WAKEUP: number;
			public static RTC: number;
			public static ELAPSED_REALTIME_WAKEUP: number;
			public static ELAPSED_REALTIME: number;
			public static INTERVAL_FIFTEEN_MINUTES: number;
			public static INTERVAL_HALF_HOUR: number;
			public static INTERVAL_HOUR: number;
			public static INTERVAL_HALF_DAY: number;
			public static INTERVAL_DAY: number;
			public setRepeating(param0: number, param1: number, param2: number, param3: android.app.PendingIntent): void;
			public setInexactRepeating(param0: number, param1: number, param2: number, param3: android.app.PendingIntent): void;
			public setTimeZone(param0: string): void;
			public setTime(param0: number): void;
			public set(param0: number, param1: number, param2: android.app.PendingIntent): void;
			public cancel(param0: android.app.PendingIntent): void;
		}
	}
}

declare module android {
	export module app {
		export class AlertDialog extends android.app.Dialog implements android.content.DialogInterface {
			public static class: java.lang.Class<android.app.AlertDialog>;
			public static THEME_TRADITIONAL: number;
			public static THEME_HOLO_DARK: number;
			public static THEME_HOLO_LIGHT: number;
			public static THEME_DEVICE_DEFAULT_DARK: number;
			public static THEME_DEVICE_DEFAULT_LIGHT: number;
			public getButton(param0: number): android.widget.Button;
			public setTitle(param0: string): void;
			public onCreatePanelMenu(param0: number, param1: android.view.Menu): boolean;
			public cancel(): void;
			public onSearchRequested(): boolean;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public onCreatePanelView(param0: number): android.view.View;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public dispatchGenericMotionEvent(param0: android.view.MotionEvent): boolean;
			public onDetachedFromWindow(): void;
			/** @deprecated */
			public setButton3(param0: string, param1: android.content.DialogInterface.OnClickListener): void;
			/** @deprecated */
			public setButton2(param0: string, param1: android.os.Message): void;
			public constructor(param0: android.content.Context, param1: number);
			/** @deprecated */
			public setButton(param0: string, param1: android.os.Message): void;
			public setMessage(param0: string): void;
			public onCreateContextMenu(param0: android.view.ContextMenu, param1: android.view.View, param2: android.view.ContextMenu.ContextMenuInfo): void;
			public dispatchTouchEvent(param0: android.view.MotionEvent): boolean;
			public onPreparePanel(param0: number, param1: android.view.View, param2: android.view.Menu): boolean;
			/** @deprecated */
			public setButton2(param0: string, param1: android.content.DialogInterface.OnClickListener): void;
			public onWindowFocusChanged(param0: boolean): void;
			public onCreate(param0: android.os.Bundle): void;
			public setIconAttribute(param0: number): void;
			public onContentChanged(): void;
			public onWindowStartingActionMode(param0: android.view.ActionMode.Callback): android.view.ActionMode;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public constructor(param0: android.content.Context, param1: boolean, param2: android.content.DialogInterface.OnCancelListener);
			public onPanelClosed(param0: number, param1: android.view.Menu): void;
			public setCustomTitle(param0: android.view.View): void;
			public setInverseBackgroundForced(param0: boolean): void;
			public setView(param0: android.view.View): void;
			public setButton(param0: number, param1: string, param2: android.content.DialogInterface.OnClickListener): void;
			public onActionModeFinished(param0: android.view.ActionMode): void;
			public onActionModeStarted(param0: android.view.ActionMode): void;
			public dispatchKeyShortcutEvent(param0: android.view.KeyEvent): boolean;
			public onMenuItemSelected(param0: number, param1: android.view.MenuItem): boolean;
			public dismiss(): void;
			public onMenuOpened(param0: number, param1: android.view.Menu): boolean;
			public setIcon(param0: number): void;
			public setTitle(param0: number): void;
			/** @deprecated */
			public setButton3(param0: string, param1: android.os.Message): void;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			/** @deprecated */
			public setButton(param0: string, param1: android.content.DialogInterface.OnClickListener): void;
			public dispatchTrackballEvent(param0: android.view.MotionEvent): boolean;
			public setView(param0: android.view.View, param1: number, param2: number, param3: number, param4: number): void;
			public constructor(param0: android.content.Context);
			public setButton(param0: number, param1: string, param2: android.os.Message): void;
			public dispatchKeyEvent(param0: android.view.KeyEvent): boolean;
			public getListView(): android.widget.ListView;
			public dispatchPopulateAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): boolean;
			public onAttachedToWindow(): void;
			public setIcon(param0: android.graphics.drawable.Drawable): void;
			public onWindowAttributesChanged(param0: android.view.WindowManager.LayoutParams): void;
		}
		export module AlertDialog {
			export class Builder extends java.lang.Object {
				public static class: java.lang.Class<android.app.AlertDialog.Builder>;
				public setTitle(param0: number): android.app.AlertDialog.Builder;
				public setMessage(param0: number): android.app.AlertDialog.Builder;
				public setTitle(param0: string): android.app.AlertDialog.Builder;
				public setNeutralButton(param0: number, param1: android.content.DialogInterface.OnClickListener): android.app.AlertDialog.Builder;
				public setAdapter(param0: android.widget.ListAdapter, param1: android.content.DialogInterface.OnClickListener): android.app.AlertDialog.Builder;
				public setSingleChoiceItems(param0: number, param1: number, param2: android.content.DialogInterface.OnClickListener): android.app.AlertDialog.Builder;
				public setInverseBackgroundForced(param0: boolean): android.app.AlertDialog.Builder;
				public setMultiChoiceItems(param0: native.Array<string>, param1: native.Array<boolean>, param2: android.content.DialogInterface.OnMultiChoiceClickListener): android.app.AlertDialog.Builder;
				public setOnCancelListener(param0: android.content.DialogInterface.OnCancelListener): android.app.AlertDialog.Builder;
				public setIconAttribute(param0: number): android.app.AlertDialog.Builder;
				public setIcon(param0: number): android.app.AlertDialog.Builder;
				public setOnDismissListener(param0: android.content.DialogInterface.OnDismissListener): android.app.AlertDialog.Builder;
				public show(): android.app.AlertDialog;
				public setPositiveButton(param0: string, param1: android.content.DialogInterface.OnClickListener): android.app.AlertDialog.Builder;
				public create(): android.app.AlertDialog;
				public setItems(param0: number, param1: android.content.DialogInterface.OnClickListener): android.app.AlertDialog.Builder;
				public setNegativeButton(param0: number, param1: android.content.DialogInterface.OnClickListener): android.app.AlertDialog.Builder;
				public setNeutralButton(param0: string, param1: android.content.DialogInterface.OnClickListener): android.app.AlertDialog.Builder;
				public setOnItemSelectedListener(param0: android.widget.AdapterView.OnItemSelectedListener): android.app.AlertDialog.Builder;
				public setView(param0: android.view.View): android.app.AlertDialog.Builder;
				public constructor(param0: android.content.Context, param1: number);
				public setCursor(param0: android.database.Cursor, param1: android.content.DialogInterface.OnClickListener, param2: string): android.app.AlertDialog.Builder;
				public setMultiChoiceItems(param0: number, param1: native.Array<boolean>, param2: android.content.DialogInterface.OnMultiChoiceClickListener): android.app.AlertDialog.Builder;
				public setOnKeyListener(param0: android.content.DialogInterface.OnKeyListener): android.app.AlertDialog.Builder;
				public setSingleChoiceItems(param0: native.Array<string>, param1: number, param2: android.content.DialogInterface.OnClickListener): android.app.AlertDialog.Builder;
				public setCancelable(param0: boolean): android.app.AlertDialog.Builder;
				public setItems(param0: native.Array<string>, param1: android.content.DialogInterface.OnClickListener): android.app.AlertDialog.Builder;
				public setNegativeButton(param0: string, param1: android.content.DialogInterface.OnClickListener): android.app.AlertDialog.Builder;
				public constructor(param0: android.content.Context);
				public setCustomTitle(param0: android.view.View): android.app.AlertDialog.Builder;
				public setSingleChoiceItems(param0: android.database.Cursor, param1: number, param2: string, param3: android.content.DialogInterface.OnClickListener): android.app.AlertDialog.Builder;
				public setPositiveButton(param0: number, param1: android.content.DialogInterface.OnClickListener): android.app.AlertDialog.Builder;
				public getContext(): android.content.Context;
				public setSingleChoiceItems(param0: android.widget.ListAdapter, param1: number, param2: android.content.DialogInterface.OnClickListener): android.app.AlertDialog.Builder;
				public setMultiChoiceItems(param0: android.database.Cursor, param1: string, param2: string, param3: android.content.DialogInterface.OnMultiChoiceClickListener): android.app.AlertDialog.Builder;
				public setMessage(param0: string): android.app.AlertDialog.Builder;
				public setIcon(param0: android.graphics.drawable.Drawable): android.app.AlertDialog.Builder;
			}
		}
	}
}

declare module android {
	export module app {
		export class AliasActivity extends android.app.Activity {
			public static class: java.lang.Class<android.app.AliasActivity>;
			public onWindowStartingActionMode(param0: android.view.ActionMode.Callback): android.view.ActionMode;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public onCreatePanelMenu(param0: number, param1: android.view.Menu): boolean;
			public onPanelClosed(param0: number, param1: android.view.Menu): void;
			public onSearchRequested(): boolean;
			public onTrimMemory(param0: number): void;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public onActionModeFinished(param0: android.view.ActionMode): void;
			public onCreatePanelView(param0: number): android.view.View;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public dispatchGenericMotionEvent(param0: android.view.MotionEvent): boolean;
			public onDetachedFromWindow(): void;
			public onActionModeStarted(param0: android.view.ActionMode): void;
			public onCreateView(param0: android.view.View, param1: string, param2: android.content.Context, param3: android.util.AttributeSet): android.view.View;
			public dispatchKeyShortcutEvent(param0: android.view.KeyEvent): boolean;
			public onMenuItemSelected(param0: number, param1: android.view.MenuItem): boolean;
			public onMenuOpened(param0: number, param1: android.view.Menu): boolean;
			public constructor();
			public onCreateView(param0: string, param1: android.content.Context, param2: android.util.AttributeSet): android.view.View;
			public constructor(param0: android.content.Context, param1: number);
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public onCreateContextMenu(param0: android.view.ContextMenu, param1: android.view.View, param2: android.view.ContextMenu.ContextMenuInfo): void;
			public dispatchTouchEvent(param0: android.view.MotionEvent): boolean;
			public dispatchTrackballEvent(param0: android.view.MotionEvent): boolean;
			public constructor(param0: android.content.Context);
			public dispatchKeyEvent(param0: android.view.KeyEvent): boolean;
			public onPreparePanel(param0: number, param1: android.view.View, param2: android.view.Menu): boolean;
			public dispatchPopulateAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): boolean;
			public onWindowFocusChanged(param0: boolean): void;
			public onAttachedToWindow(): void;
			public onCreate(param0: android.os.Bundle): void;
			public onWindowAttributesChanged(param0: android.view.WindowManager.LayoutParams): void;
			public onContentChanged(): void;
		}
	}
}

declare module android {
	export module app {
		export class Application extends android.content.ContextWrapper implements android.content.ComponentCallbacks2 {
			public static class: java.lang.Class<android.app.Application>;
			public onConfigurationChanged(param0: android.content.res.Configuration): void;
			public registerOnProvideAssistDataListener(param0: android.app.Application.OnProvideAssistDataListener): void;
			public onTerminate(): void;
			public onCreate(): void;
			public constructor();
			public unregisterOnProvideAssistDataListener(param0: android.app.Application.OnProvideAssistDataListener): void;
			public unregisterComponentCallbacks(param0: android.content.ComponentCallbacks): void;
			public registerActivityLifecycleCallbacks(param0: android.app.Application.ActivityLifecycleCallbacks): void;
			public onLowMemory(): void;
			public unregisterActivityLifecycleCallbacks(param0: android.app.Application.ActivityLifecycleCallbacks): void;
			public registerComponentCallbacks(param0: android.content.ComponentCallbacks): void;
			public onTrimMemory(param0: number): void;
			public constructor(param0: android.content.Context);
		}
		export module Application {
			export class ActivityLifecycleCallbacks extends java.lang.Object {
				public static class: java.lang.Class<android.app.Application.ActivityLifecycleCallbacks>;
				/**
				 * Constructs a new instance of the android.app.Application$ActivityLifecycleCallbacks interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onActivityCreated(param0: android.app.Activity, param1: android.os.Bundle): void;
					onActivityStarted(param0: android.app.Activity): void;
					onActivityResumed(param0: android.app.Activity): void;
					onActivityPaused(param0: android.app.Activity): void;
					onActivityStopped(param0: android.app.Activity): void;
					onActivitySaveInstanceState(param0: android.app.Activity, param1: android.os.Bundle): void;
					onActivityDestroyed(param0: android.app.Activity): void;
				});
				public constructor();
				public onActivityStopped(param0: android.app.Activity): void;
				public onActivityPaused(param0: android.app.Activity): void;
				public onActivityStarted(param0: android.app.Activity): void;
				public onActivityResumed(param0: android.app.Activity): void;
				public onActivityDestroyed(param0: android.app.Activity): void;
				public onActivityCreated(param0: android.app.Activity, param1: android.os.Bundle): void;
				public onActivitySaveInstanceState(param0: android.app.Activity, param1: android.os.Bundle): void;
			}
			export class OnProvideAssistDataListener extends java.lang.Object {
				public static class: java.lang.Class<android.app.Application.OnProvideAssistDataListener>;
				/**
				 * Constructs a new instance of the android.app.Application$OnProvideAssistDataListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onProvideAssistData(param0: android.app.Activity, param1: android.os.Bundle): void;
				});
				public constructor();
				public onProvideAssistData(param0: android.app.Activity, param1: android.os.Bundle): void;
			}
		}
	}
}

declare module android {
	export module app {
		export class ApplicationErrorReport extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.app.ApplicationErrorReport>;
			public static TYPE_NONE: number;
			public static TYPE_CRASH: number;
			public static TYPE_ANR: number;
			public static TYPE_BATTERY: number;
			public static TYPE_RUNNING_SERVICE: number;
			public type: number;
			public packageName: string;
			public installerPackageName: string;
			public processName: string;
			public time: number;
			public systemApp: boolean;
			public crashInfo: android.app.ApplicationErrorReport.CrashInfo;
			public anrInfo: android.app.ApplicationErrorReport.AnrInfo;
			public batteryInfo: android.app.ApplicationErrorReport.BatteryInfo;
			public runningServiceInfo: android.app.ApplicationErrorReport.RunningServiceInfo;
			public static CREATOR: android.os.Parcelable.Creator<android.app.ApplicationErrorReport>;
			public static getErrorReportReceiver(param0: android.content.Context, param1: string, param2: number): android.content.ComponentName;
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public constructor();
			public dump(param0: android.util.Printer, param1: string): void;
			public readFromParcel(param0: android.os.Parcel): void;
		}
		export module ApplicationErrorReport {
			export class AnrInfo extends java.lang.Object {
				public static class: java.lang.Class<android.app.ApplicationErrorReport.AnrInfo>;
				public activity: string;
				public cause: string;
				public info: string;
				public constructor(param0: android.os.Parcel);
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public dump(param0: android.util.Printer, param1: string): void;
				public constructor();
			}
			export class BatteryInfo extends java.lang.Object {
				public static class: java.lang.Class<android.app.ApplicationErrorReport.BatteryInfo>;
				public usagePercent: number;
				public durationMicros: number;
				public usageDetails: string;
				public checkinDetails: string;
				public constructor(param0: android.os.Parcel);
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public dump(param0: android.util.Printer, param1: string): void;
				public constructor();
			}
			export class CrashInfo extends java.lang.Object {
				public static class: java.lang.Class<android.app.ApplicationErrorReport.CrashInfo>;
				public exceptionClassName: string;
				public exceptionMessage: string;
				public throwFileName: string;
				public throwClassName: string;
				public throwMethodName: string;
				public throwLineNumber: number;
				public stackTrace: string;
				public constructor(param0: android.os.Parcel);
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public dump(param0: android.util.Printer, param1: string): void;
				public constructor(param0: java.lang.Throwable);
				public constructor();
			}
			export class RunningServiceInfo extends java.lang.Object {
				public static class: java.lang.Class<android.app.ApplicationErrorReport.RunningServiceInfo>;
				public durationMillis: number;
				public serviceDetails: string;
				public constructor(param0: android.os.Parcel);
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public dump(param0: android.util.Printer, param1: string): void;
				public constructor();
			}
		}
	}
}

declare module android {
	export module app {
		export class DatePickerDialog extends android.app.AlertDialog implements android.content.DialogInterface.OnClickListener, android.widget.DatePicker.OnDateChangedListener {
			public static class: java.lang.Class<android.app.DatePickerDialog>;
			public onWindowStartingActionMode(param0: android.view.ActionMode.Callback): android.view.ActionMode;
			public onClick(param0: android.content.DialogInterface, param1: number): void;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public updateDate(param0: number, param1: number, param2: number): void;
			public onCreatePanelMenu(param0: number, param1: android.view.Menu): boolean;
			public constructor(param0: android.content.Context, param1: boolean, param2: android.content.DialogInterface.OnCancelListener);
			public cancel(): void;
			public onDateChanged(param0: android.widget.DatePicker, param1: number, param2: number, param3: number): void;
			public onPanelClosed(param0: number, param1: android.view.Menu): void;
			public onSearchRequested(): boolean;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public onActionModeFinished(param0: android.view.ActionMode): void;
			public constructor(param0: android.content.Context, param1: android.app.DatePickerDialog.OnDateSetListener, param2: number, param3: number, param4: number);
			public onCreatePanelView(param0: number): android.view.View;
			public onSaveInstanceState(): android.os.Bundle;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public dispatchGenericMotionEvent(param0: android.view.MotionEvent): boolean;
			public onStop(): void;
			public onDetachedFromWindow(): void;
			public onActionModeStarted(param0: android.view.ActionMode): void;
			public dispatchKeyShortcutEvent(param0: android.view.KeyEvent): boolean;
			public onMenuItemSelected(param0: number, param1: android.view.MenuItem): boolean;
			public getDatePicker(): android.widget.DatePicker;
			public dismiss(): void;
			public onMenuOpened(param0: number, param1: android.view.Menu): boolean;
			public onRestoreInstanceState(param0: android.os.Bundle): void;
			public constructor(param0: android.content.Context, param1: number);
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public constructor(param0: android.content.Context, param1: number, param2: android.app.DatePickerDialog.OnDateSetListener, param3: number, param4: number, param5: number);
			public onCreateContextMenu(param0: android.view.ContextMenu, param1: android.view.View, param2: android.view.ContextMenu.ContextMenuInfo): void;
			public dispatchTouchEvent(param0: android.view.MotionEvent): boolean;
			public dispatchTrackballEvent(param0: android.view.MotionEvent): boolean;
			public constructor(param0: android.content.Context);
			public dispatchKeyEvent(param0: android.view.KeyEvent): boolean;
			public onPreparePanel(param0: number, param1: android.view.View, param2: android.view.Menu): boolean;
			public dispatchPopulateAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): boolean;
			public onWindowFocusChanged(param0: boolean): void;
			public onAttachedToWindow(): void;
			public onWindowAttributesChanged(param0: android.view.WindowManager.LayoutParams): void;
			public onContentChanged(): void;
		}
		export module DatePickerDialog {
			export class OnDateSetListener extends java.lang.Object {
				public static class: java.lang.Class<android.app.DatePickerDialog.OnDateSetListener>;
				/**
				 * Constructs a new instance of the android.app.DatePickerDialog$OnDateSetListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onDateSet(param0: android.widget.DatePicker, param1: number, param2: number, param3: number): void;
				});
				public constructor();
				public onDateSet(param0: android.widget.DatePicker, param1: number, param2: number, param3: number): void;
			}
		}
	}
}

declare module android {
	export module app {
		export class Dialog extends java.lang.Object implements android.content.DialogInterface, android.view.Window.Callback, android.view.KeyEvent.Callback, android.view.View.OnCreateContextMenuListener {
			public static class: java.lang.Class<android.app.Dialog>;
			public setTitle(param0: string): void;
			public onPrepareOptionsMenu(param0: android.view.Menu): boolean;
			public onStart(): void;
			public onCreatePanelMenu(param0: number, param1: android.view.Menu): boolean;
			public setFeatureDrawableResource(param0: number, param1: number): void;
			public getLayoutInflater(): android.view.LayoutInflater;
			public cancel(): void;
			public findViewById(param0: number): android.view.View;
			public setContentView(param0: android.view.View): void;
			public onSearchRequested(): boolean;
			public setDismissMessage(param0: android.os.Message): void;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public setFeatureDrawableUri(param0: number, param1: android.net.Uri): void;
			public hide(): void;
			public getContext(): android.content.Context;
			public onCreatePanelView(param0: number): android.view.View;
			public setCancelMessage(param0: android.os.Message): void;
			public isShowing(): boolean;
			public onSaveInstanceState(): android.os.Bundle;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public dispatchGenericMotionEvent(param0: android.view.MotionEvent): boolean;
			public setContentView(param0: number): void;
			public onKeyShortcut(param0: number, param1: android.view.KeyEvent): boolean;
			public onDetachedFromWindow(): void;
			public getWindow(): android.view.Window;
			public setOnKeyListener(param0: android.content.DialogInterface.OnKeyListener): void;
			public getVolumeControlStream(): number;
			public takeKeyEvents(param0: boolean): void;
			public onRestoreInstanceState(param0: android.os.Bundle): void;
			public constructor(param0: android.content.Context, param1: number);
			public requestWindowFeature(param0: number): boolean;
			public onTrackballEvent(param0: android.view.MotionEvent): boolean;
			public onCreateContextMenu(param0: android.view.ContextMenu, param1: android.view.View, param2: android.view.ContextMenu.ContextMenuInfo): void;
			public getCurrentFocus(): android.view.View;
			public dispatchTouchEvent(param0: android.view.MotionEvent): boolean;
			public closeOptionsMenu(): void;
			public setOnShowListener(param0: android.content.DialogInterface.OnShowListener): void;
			public onPreparePanel(param0: number, param1: android.view.View, param2: android.view.Menu): boolean;
			public onWindowFocusChanged(param0: boolean): void;
			public onCreate(param0: android.os.Bundle): void;
			public onContentChanged(): void;
			public invalidateOptionsMenu(): void;
			public show(): void;
			public onWindowStartingActionMode(param0: android.view.ActionMode.Callback): android.view.ActionMode;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public setCanceledOnTouchOutside(param0: boolean): void;
			public constructor(param0: android.content.Context, param1: boolean, param2: android.content.DialogInterface.OnCancelListener);
			public setVolumeControlStream(param0: number): void;
			public onGenericMotionEvent(param0: android.view.MotionEvent): boolean;
			public getActionBar(): android.app.ActionBar;
			public onPanelClosed(param0: number, param1: android.view.Menu): void;
			public openOptionsMenu(): void;
			public registerForContextMenu(param0: android.view.View): void;
			public unregisterForContextMenu(param0: android.view.View): void;
			public setOnDismissListener(param0: android.content.DialogInterface.OnDismissListener): void;
			public onContextItemSelected(param0: android.view.MenuItem): boolean;
			public setFeatureDrawable(param0: number, param1: android.graphics.drawable.Drawable): void;
			public onCreateOptionsMenu(param0: android.view.Menu): boolean;
			public onBackPressed(): void;
			public onActionModeFinished(param0: android.view.ActionMode): void;
			public onOptionsMenuClosed(param0: android.view.Menu): void;
			public openContextMenu(param0: android.view.View): void;
			public getOwnerActivity(): android.app.Activity;
			public onOptionsItemSelected(param0: android.view.MenuItem): boolean;
			public onStop(): void;
			public onActionModeStarted(param0: android.view.ActionMode): void;
			public dispatchKeyShortcutEvent(param0: android.view.KeyEvent): boolean;
			public onMenuItemSelected(param0: number, param1: android.view.MenuItem): boolean;
			public dismiss(): void;
			public onMenuOpened(param0: number, param1: android.view.Menu): boolean;
			public setOnCancelListener(param0: android.content.DialogInterface.OnCancelListener): void;
			public addContentView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public setTitle(param0: number): void;
			public onTouchEvent(param0: android.view.MotionEvent): boolean;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public setContentView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public dispatchTrackballEvent(param0: android.view.MotionEvent): boolean;
			public setCancelable(param0: boolean): void;
			public setOwnerActivity(param0: android.app.Activity): void;
			public onContextMenuClosed(param0: android.view.Menu): void;
			public setFeatureDrawableAlpha(param0: number, param1: number): void;
			public constructor(param0: android.content.Context);
			public dispatchKeyEvent(param0: android.view.KeyEvent): boolean;
			public dispatchPopulateAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): boolean;
			public onAttachedToWindow(): void;
			public onWindowAttributesChanged(param0: android.view.WindowManager.LayoutParams): void;
		}
	}
}

declare module android {
	export module app {
		export class DialogFragment extends android.app.Fragment implements android.content.DialogInterface.OnCancelListener, android.content.DialogInterface.OnDismissListener {
			public static class: java.lang.Class<android.app.DialogFragment>;
			public static STYLE_NORMAL: number;
			public static STYLE_NO_TITLE: number;
			public static STYLE_NO_FRAME: number;
			public static STYLE_NO_INPUT: number;
			public getShowsDialog(): boolean;
			public onStart(): void;
			public onDismiss(param0: android.content.DialogInterface): void;
			public show(param0: android.app.FragmentTransaction, param1: string): number;
			public getTheme(): number;
			public onActivityCreated(param0: android.os.Bundle): void;
			public onDetach(): void;
			public onTrimMemory(param0: number): void;
			public isCancelable(): boolean;
			public getDialog(): android.app.Dialog;
			public onCancel(param0: android.content.DialogInterface): void;
			public onDestroyView(): void;
			public onCreateDialog(param0: android.os.Bundle): android.app.Dialog;
			public onStop(): void;
			public setStyle(param0: number, param1: number): void;
			public dismiss(): void;
			public setShowsDialog(param0: boolean): void;
			public constructor();
			public dump(param0: string, param1: java.io.FileDescriptor, param2: java.io.PrintWriter, param3: native.Array<string>): void;
			public onCreateContextMenu(param0: android.view.ContextMenu, param1: android.view.View, param2: android.view.ContextMenu.ContextMenuInfo): void;
			public setCancelable(param0: boolean): void;
			public onSaveInstanceState(param0: android.os.Bundle): void;
			public dismissAllowingStateLoss(): void;
			public onAttach(param0: android.app.Activity): void;
			public show(param0: android.app.FragmentManager, param1: string): void;
			public onCreate(param0: android.os.Bundle): void;
		}
	}
}

declare module android {
	export module app {
		export class DownloadManager extends java.lang.Object {
			public static class: java.lang.Class<android.app.DownloadManager>;
			public static COLUMN_ID: string;
			public static COLUMN_TITLE: string;
			public static COLUMN_DESCRIPTION: string;
			public static COLUMN_URI: string;
			public static COLUMN_MEDIA_TYPE: string;
			public static COLUMN_TOTAL_SIZE_BYTES: string;
			public static COLUMN_LOCAL_URI: string;
			public static COLUMN_LOCAL_FILENAME: string;
			public static COLUMN_STATUS: string;
			public static COLUMN_REASON: string;
			public static COLUMN_BYTES_DOWNLOADED_SO_FAR: string;
			public static COLUMN_LAST_MODIFIED_TIMESTAMP: string;
			public static COLUMN_MEDIAPROVIDER_URI: string;
			public static STATUS_PENDING: number;
			public static STATUS_RUNNING: number;
			public static STATUS_PAUSED: number;
			public static STATUS_SUCCESSFUL: number;
			public static STATUS_FAILED: number;
			public static ERROR_UNKNOWN: number;
			public static ERROR_FILE_ERROR: number;
			public static ERROR_UNHANDLED_HTTP_CODE: number;
			public static ERROR_HTTP_DATA_ERROR: number;
			public static ERROR_TOO_MANY_REDIRECTS: number;
			public static ERROR_INSUFFICIENT_SPACE: number;
			public static ERROR_DEVICE_NOT_FOUND: number;
			public static ERROR_CANNOT_RESUME: number;
			public static ERROR_FILE_ALREADY_EXISTS: number;
			public static PAUSED_WAITING_TO_RETRY: number;
			public static PAUSED_WAITING_FOR_NETWORK: number;
			public static PAUSED_QUEUED_FOR_WIFI: number;
			public static PAUSED_UNKNOWN: number;
			public static ACTION_DOWNLOAD_COMPLETE: string;
			public static ACTION_NOTIFICATION_CLICKED: string;
			public static ACTION_VIEW_DOWNLOADS: string;
			public static INTENT_EXTRAS_SORT_BY_SIZE: string;
			public static EXTRA_DOWNLOAD_ID: string;
			public static EXTRA_NOTIFICATION_CLICK_DOWNLOAD_IDS: string;
			public enqueue(param0: android.app.DownloadManager.Request): number;
			public query(param0: android.app.DownloadManager.Query): android.database.Cursor;
			public static getMaxBytesOverMobile(param0: android.content.Context): java.lang.Long;
			public static getRecommendedMaxBytesOverMobile(param0: android.content.Context): java.lang.Long;
			public getMimeTypeForDownloadedFile(param0: number): string;
			public openDownloadedFile(param0: number): android.os.ParcelFileDescriptor;
			public getUriForDownloadedFile(param0: number): android.net.Uri;
			public addCompletedDownload(param0: string, param1: string, param2: boolean, param3: string, param4: string, param5: number, param6: boolean): number;
			public remove(param0: native.Array<number>): number;
		}
		export module DownloadManager {
			export class Query extends java.lang.Object {
				public static class: java.lang.Class<android.app.DownloadManager.Query>;
				public setFilterById(param0: native.Array<number>): android.app.DownloadManager.Query;
				public setFilterByStatus(param0: number): android.app.DownloadManager.Query;
				public constructor();
			}
			export class Request extends java.lang.Object {
				public static class: java.lang.Class<android.app.DownloadManager.Request>;
				public static NETWORK_MOBILE: number;
				public static NETWORK_WIFI: number;
				public static VISIBILITY_VISIBLE: number;
				public static VISIBILITY_VISIBLE_NOTIFY_COMPLETED: number;
				public static VISIBILITY_HIDDEN: number;
				public static VISIBILITY_VISIBLE_NOTIFY_ONLY_COMPLETION: number;
				public constructor(param0: android.net.Uri);
				public setVisibleInDownloadsUi(param0: boolean): android.app.DownloadManager.Request;
				public setDescription(param0: string): android.app.DownloadManager.Request;
				public setDestinationUri(param0: android.net.Uri): android.app.DownloadManager.Request;
				public allowScanningByMediaScanner(): void;
				public setTitle(param0: string): android.app.DownloadManager.Request;
				public setDestinationInExternalPublicDir(param0: string, param1: string): android.app.DownloadManager.Request;
				public setMimeType(param0: string): android.app.DownloadManager.Request;
				public setDestinationInExternalFilesDir(param0: android.content.Context, param1: string, param2: string): android.app.DownloadManager.Request;
				public setAllowedOverMetered(param0: boolean): android.app.DownloadManager.Request;
				public setNotificationVisibility(param0: number): android.app.DownloadManager.Request;
				public setAllowedNetworkTypes(param0: number): android.app.DownloadManager.Request;
				public setAllowedOverRoaming(param0: boolean): android.app.DownloadManager.Request;
				public addRequestHeader(param0: string, param1: string): android.app.DownloadManager.Request;
				/** @deprecated */
				public setShowRunningNotification(param0: boolean): android.app.DownloadManager.Request;
			}
		}
	}
}

declare module android {
	export module app {
		export class ExpandableListActivity extends android.app.Activity implements android.view.View.OnCreateContextMenuListener, android.widget.ExpandableListView.OnChildClickListener, android.widget.ExpandableListView.OnGroupCollapseListener, android.widget.ExpandableListView.OnGroupExpandListener {
			public static class: java.lang.Class<android.app.ExpandableListActivity>;
			public onWindowStartingActionMode(param0: android.view.ActionMode.Callback): android.view.ActionMode;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public onCreatePanelMenu(param0: number, param1: android.view.Menu): boolean;
			public setListAdapter(param0: android.widget.ExpandableListAdapter): void;
			public setSelectedChild(param0: number, param1: number, param2: boolean): boolean;
			public onPanelClosed(param0: number, param1: android.view.Menu): void;
			public onSearchRequested(): boolean;
			public onTrimMemory(param0: number): void;
			public onGroupCollapse(param0: number): void;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public onActionModeFinished(param0: android.view.ActionMode): void;
			public onCreatePanelView(param0: number): android.view.View;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public onChildClick(param0: android.widget.ExpandableListView, param1: android.view.View, param2: number, param3: number, param4: number): boolean;
			public dispatchGenericMotionEvent(param0: android.view.MotionEvent): boolean;
			public getSelectedId(): number;
			public onDetachedFromWindow(): void;
			public onActionModeStarted(param0: android.view.ActionMode): void;
			public onCreateView(param0: android.view.View, param1: string, param2: android.content.Context, param3: android.util.AttributeSet): android.view.View;
			public dispatchKeyShortcutEvent(param0: android.view.KeyEvent): boolean;
			public onMenuItemSelected(param0: number, param1: android.view.MenuItem): boolean;
			public onMenuOpened(param0: number, param1: android.view.Menu): boolean;
			public constructor();
			public onRestoreInstanceState(param0: android.os.Bundle): void;
			public onCreateView(param0: string, param1: android.content.Context, param2: android.util.AttributeSet): android.view.View;
			public constructor(param0: android.content.Context, param1: number);
			public getExpandableListView(): android.widget.ExpandableListView;
			public getSelectedPosition(): number;
			public onGroupExpand(param0: number): void;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public onCreateContextMenu(param0: android.view.ContextMenu, param1: android.view.View, param2: android.view.ContextMenu.ContextMenuInfo): void;
			public getExpandableListAdapter(): android.widget.ExpandableListAdapter;
			public setSelectedGroup(param0: number): void;
			public dispatchTouchEvent(param0: android.view.MotionEvent): boolean;
			public dispatchTrackballEvent(param0: android.view.MotionEvent): boolean;
			public constructor(param0: android.content.Context);
			public dispatchKeyEvent(param0: android.view.KeyEvent): boolean;
			public onPreparePanel(param0: number, param1: android.view.View, param2: android.view.Menu): boolean;
			public dispatchPopulateAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): boolean;
			public onWindowFocusChanged(param0: boolean): void;
			public onAttachedToWindow(): void;
			public onContentChanged(): void;
			public onWindowAttributesChanged(param0: android.view.WindowManager.LayoutParams): void;
		}
	}
}

declare module android {
	export module app {
		export class Fragment extends java.lang.Object implements android.content.ComponentCallbacks2, android.view.View.OnCreateContextMenuListener {
			public static class: java.lang.Class<android.app.Fragment>;
			public onStart(): void;
			public onViewCreated(param0: android.view.View, param1: android.os.Bundle): void;
			public setRetainInstance(param0: boolean): void;
			public onDetach(): void;
			public setArguments(param0: android.os.Bundle): void;
			public isInLayout(): boolean;
			public getTargetFragment(): android.app.Fragment;
			public setHasOptionsMenu(param0: boolean): void;
			public onActivityResult(param0: number, param1: number, param2: android.content.Intent): void;
			public getId(): number;
			public isAdded(): boolean;
			public onDestroyView(): void;
			public onCreateAnimator(param0: number, param1: boolean, param2: number): android.animation.Animator;
			public getRetainInstance(): boolean;
			public onInflate(param0: android.app.Activity, param1: android.util.AttributeSet, param2: android.os.Bundle): void;
			public onCreateOptionsMenu(param0: android.view.Menu, param1: android.view.MenuInflater): void;
			/** @deprecated */
			public onInflate(param0: android.util.AttributeSet, param1: android.os.Bundle): void;
			public getString(param0: number): string;
			public isHidden(): boolean;
			public onResume(): void;
			public constructor();
			public static instantiate(param0: android.content.Context, param1: string): android.app.Fragment;
			public onCreateContextMenu(param0: android.view.ContextMenu, param1: android.view.View, param2: android.view.ContextMenu.ContextMenuInfo): void;
			public static instantiate(param0: android.content.Context, param1: string, param2: android.os.Bundle): android.app.Fragment;
			public getArguments(): android.os.Bundle;
			public startActivityForResult(param0: android.content.Intent, param1: number, param2: android.os.Bundle): void;
			public onCreate(param0: android.os.Bundle): void;
			public getView(): android.view.View;
			public equals(param0: any): boolean;
			public getResources(): android.content.res.Resources;
			public getUserVisibleHint(): boolean;
			public onDestroyOptionsMenu(): void;
			public getText(param0: number): string;
			public getLoaderManager(): android.app.LoaderManager;
			public onDestroy(): void;
			public getFragmentManager(): android.app.FragmentManager;
			public onLowMemory(): void;
			public isResumed(): boolean;
			public startActivity(param0: android.content.Intent, param1: android.os.Bundle): void;
			public onActivityCreated(param0: android.os.Bundle): void;
			public setTargetFragment(param0: android.app.Fragment, param1: number): void;
			public registerForContextMenu(param0: android.view.View): void;
			public unregisterForContextMenu(param0: android.view.View): void;
			public setMenuVisibility(param0: boolean): void;
			public onTrimMemory(param0: number): void;
			public onContextItemSelected(param0: android.view.MenuItem): boolean;
			public onOptionsMenuClosed(param0: android.view.Menu): void;
			public onPause(): void;
			public onOptionsItemSelected(param0: android.view.MenuItem): boolean;
			public onViewStateRestored(param0: android.os.Bundle): void;
			public setInitialSavedState(param0: android.app.Fragment.SavedState): void;
			public isRemoving(): boolean;
			public onStop(): void;
			public onConfigurationChanged(param0: android.content.res.Configuration): void;
			public onCreateView(param0: android.view.LayoutInflater, param1: android.view.ViewGroup, param2: android.os.Bundle): android.view.View;
			public getString(param0: number, param1: native.Array<any>): string;
			public isDetached(): boolean;
			public getTag(): string;
			public isVisible(): boolean;
			public dump(param0: string, param1: java.io.FileDescriptor, param2: java.io.PrintWriter, param3: native.Array<string>): void;
			public getParentFragment(): android.app.Fragment;
			public onHiddenChanged(param0: boolean): void;
			public toString(): string;
			public onPrepareOptionsMenu(param0: android.view.Menu): void;
			public getTargetRequestCode(): number;
			public getChildFragmentManager(): android.app.FragmentManager;
			public startActivity(param0: android.content.Intent): void;
			public onSaveInstanceState(param0: android.os.Bundle): void;
			public getActivity(): android.app.Activity;
			public onAttach(param0: android.app.Activity): void;
			public setUserVisibleHint(param0: boolean): void;
			public startActivityForResult(param0: android.content.Intent, param1: number): void;
			public hashCode(): number;
		}
		export module Fragment {
			export class InstantiationException extends android.util.AndroidRuntimeException {
				public static class: java.lang.Class<android.app.Fragment.InstantiationException>;
				public constructor(param0: string, param1: java.lang.Exception);
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Exception);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
			export class SavedState extends java.lang.Object implements android.os.Parcelable {
				public static class: java.lang.Class<android.app.Fragment.SavedState>;
				public static CREATOR: android.os.Parcelable.ClassLoaderCreator<android.app.Fragment.SavedState>;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public describeContents(): number;
			}
		}
	}
}

declare module android {
	export module app {
		export class FragmentBreadCrumbs extends android.view.ViewGroup implements android.app.FragmentManager.OnBackStackChangedListener {
			public static class: java.lang.Class<android.app.FragmentBreadCrumbs>;
			public onLayout(param0: boolean, param1: number, param2: number, param3: number, param4: number): void;
			public focusableViewAvailable(param0: android.view.View): void;
			public createContextMenu(param0: android.view.ContextMenu): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onMeasure(param0: number, param1: number): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public addView(param0: android.view.View, param1: number, param2: number): void;
			public focusSearch(param0: android.view.View, param1: number): android.view.View;
			public requestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public setMaxVisible(param0: number): void;
			public showContextMenuForChild(param0: android.view.View): boolean;
			public bringChildToFront(param0: android.view.View): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public sendAccessibilityEvent(param0: number): void;
			public requestTransparentRegion(param0: android.view.View): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public getParentForAccessibility(): android.view.ViewParent;
			public getParent(): android.view.ViewParent;
			public setActivity(param0: android.app.Activity): void;
			public startActionModeForChild(param0: android.view.View, param1: android.view.ActionMode.Callback): android.view.ActionMode;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public requestChildFocus(param0: android.view.View, param1: android.view.View): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public requestChildRectangleOnScreen(param0: android.view.View, param1: android.graphics.Rect, param2: boolean): boolean;
			public focusSearch(param0: number): android.view.View;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public recomputeViewAttributes(param0: android.view.View): void;
			public setParentTitle(param0: string, param1: string, param2: android.view.View.OnClickListener): void;
			public isLayoutRequested(): boolean;
			public invalidateChild(param0: android.view.View, param1: android.graphics.Rect): void;
			public onBackStackChanged(): void;
			public invalidateChildInParent(param0: native.Array<number>, param1: android.graphics.Rect): android.view.ViewParent;
			public setTitle(param0: string, param1: string): void;
			public setOnBreadCrumbClickListener(param0: android.app.FragmentBreadCrumbs.OnBreadCrumbClickListener): void;
			public requestLayout(): void;
			public childDrawableStateChanged(param0: android.view.View): void;
			public addView(param0: android.view.View): void;
			public removeView(param0: android.view.View): void;
			public clearChildFocus(param0: android.view.View): void;
			public updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public requestDisallowInterceptTouchEvent(param0: boolean): void;
			public getChildVisibleRect(param0: android.view.View, param1: android.graphics.Rect, param2: android.graphics.Point): boolean;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public constructor(param0: android.content.Context);
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public addView(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams): void;
			public requestFitSystemWindows(): void;
			public addView(param0: android.view.View, param1: number): void;
		}
		export module FragmentBreadCrumbs {
			export class OnBreadCrumbClickListener extends java.lang.Object {
				public static class: java.lang.Class<android.app.FragmentBreadCrumbs.OnBreadCrumbClickListener>;
				/**
				 * Constructs a new instance of the android.app.FragmentBreadCrumbs$OnBreadCrumbClickListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onBreadCrumbClick(param0: android.app.FragmentManager.BackStackEntry, param1: number): boolean;
				});
				public constructor();
				public onBreadCrumbClick(param0: android.app.FragmentManager.BackStackEntry, param1: number): boolean;
			}
		}
	}
}

declare module android {
	export module app {
		export abstract class FragmentManager extends java.lang.Object {
			public static class: java.lang.Class<android.app.FragmentManager>;
			public static POP_BACK_STACK_INCLUSIVE: number;
			public isDestroyed(): boolean;
			public beginTransaction(): android.app.FragmentTransaction;
			public popBackStackImmediate(param0: string, param1: number): boolean;
			public getBackStackEntryCount(): number;
			public constructor();
			public popBackStackImmediate(): boolean;
			public putFragment(param0: android.os.Bundle, param1: string, param2: android.app.Fragment): void;
			public saveFragmentInstanceState(param0: android.app.Fragment): android.app.Fragment.SavedState;
			public dump(param0: string, param1: java.io.FileDescriptor, param2: java.io.PrintWriter, param3: native.Array<string>): void;
			public getBackStackEntryAt(param0: number): android.app.FragmentManager.BackStackEntry;
			public findFragmentById(param0: number): android.app.Fragment;
			public findFragmentByTag(param0: string): android.app.Fragment;
			public executePendingTransactions(): boolean;
			public popBackStack(param0: number, param1: number): void;
			public getFragment(param0: android.os.Bundle, param1: string): android.app.Fragment;
			public removeOnBackStackChangedListener(param0: android.app.FragmentManager.OnBackStackChangedListener): void;
			public popBackStack(): void;
			public static enableDebugLogging(param0: boolean): void;
			public popBackStack(param0: string, param1: number): void;
			public popBackStackImmediate(param0: number, param1: number): boolean;
			public addOnBackStackChangedListener(param0: android.app.FragmentManager.OnBackStackChangedListener): void;
			public invalidateOptionsMenu(): void;
		}
		export module FragmentManager {
			export class BackStackEntry extends java.lang.Object {
				public static class: java.lang.Class<android.app.FragmentManager.BackStackEntry>;
				/**
				 * Constructs a new instance of the android.app.FragmentManager$BackStackEntry interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getId(): number;
					getName(): string;
					getBreadCrumbTitleRes(): number;
					getBreadCrumbShortTitleRes(): number;
					getBreadCrumbTitle(): string;
					getBreadCrumbShortTitle(): string;
				});
				public constructor();
				public getId(): number;
				public getBreadCrumbShortTitleRes(): number;
				public getName(): string;
				public getBreadCrumbTitle(): string;
				public getBreadCrumbShortTitle(): string;
				public getBreadCrumbTitleRes(): number;
			}
			export class OnBackStackChangedListener extends java.lang.Object {
				public static class: java.lang.Class<android.app.FragmentManager.OnBackStackChangedListener>;
				/**
				 * Constructs a new instance of the android.app.FragmentManager$OnBackStackChangedListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onBackStackChanged(): void;
				});
				public constructor();
				public onBackStackChanged(): void;
			}
		}
	}
}

declare module android {
	export module app {
		export abstract class FragmentTransaction extends java.lang.Object {
			public static class: java.lang.Class<android.app.FragmentTransaction>;
			public static TRANSIT_ENTER_MASK: number;
			public static TRANSIT_EXIT_MASK: number;
			public static TRANSIT_UNSET: number;
			public static TRANSIT_NONE: number;
			public static TRANSIT_FRAGMENT_OPEN: number;
			public static TRANSIT_FRAGMENT_CLOSE: number;
			public static TRANSIT_FRAGMENT_FADE: number;
			public replace(param0: number, param1: android.app.Fragment, param2: string): android.app.FragmentTransaction;
			public add(param0: android.app.Fragment, param1: string): android.app.FragmentTransaction;
			public detach(param0: android.app.Fragment): android.app.FragmentTransaction;
			public addToBackStack(param0: string): android.app.FragmentTransaction;
			public commit(): number;
			public setBreadCrumbShortTitle(param0: string): android.app.FragmentTransaction;
			public add(param0: number, param1: android.app.Fragment, param2: string): android.app.FragmentTransaction;
			public show(param0: android.app.Fragment): android.app.FragmentTransaction;
			public setCustomAnimations(param0: number, param1: number, param2: number, param3: number): android.app.FragmentTransaction;
			public replace(param0: number, param1: android.app.Fragment): android.app.FragmentTransaction;
			public remove(param0: android.app.Fragment): android.app.FragmentTransaction;
			public setCustomAnimations(param0: number, param1: number): android.app.FragmentTransaction;
			public setTransition(param0: number): android.app.FragmentTransaction;
			public isAddToBackStackAllowed(): boolean;
			public isEmpty(): boolean;
			public hide(param0: android.app.Fragment): android.app.FragmentTransaction;
			public add(param0: number, param1: android.app.Fragment): android.app.FragmentTransaction;
			public constructor();
			public setBreadCrumbTitle(param0: string): android.app.FragmentTransaction;
			public commitAllowingStateLoss(): number;
			public setBreadCrumbShortTitle(param0: number): android.app.FragmentTransaction;
			public setTransitionStyle(param0: number): android.app.FragmentTransaction;
			public disallowAddToBackStack(): android.app.FragmentTransaction;
			public setBreadCrumbTitle(param0: number): android.app.FragmentTransaction;
			public attach(param0: android.app.Fragment): android.app.FragmentTransaction;
		}
	}
}

declare module android {
	export module app {
		export class Instrumentation extends java.lang.Object {
			public static class: java.lang.Class<android.app.Instrumentation>;
			public static REPORT_KEY_IDENTIFIER: string;
			public static REPORT_KEY_STREAMRESULT: string;
			public waitForMonitor(param0: android.app.Instrumentation.ActivityMonitor): android.app.Activity;
			public onStart(): void;
			public finish(param0: number, param1: android.os.Bundle): void;
			public callActivityOnResume(param0: android.app.Activity): void;
			public callActivityOnStart(param0: android.app.Activity): void;
			public callActivityOnPause(param0: android.app.Activity): void;
			public getUiAutomation(): android.app.UiAutomation;
			public newActivity(param0: java.lang.ClassLoader, param1: string, param2: android.content.Intent): android.app.Activity;
			public getTargetContext(): android.content.Context;
			public checkMonitorHit(param0: android.app.Instrumentation.ActivityMonitor, param1: number): boolean;
			public newApplication(param0: java.lang.ClassLoader, param1: string, param2: android.content.Context): android.app.Application;
			public getComponentName(): android.content.ComponentName;
			public sendStringSync(param0: string): void;
			public callApplicationOnCreate(param0: android.app.Application): void;
			public getContext(): android.content.Context;
			public start(): void;
			public static newApplication(param0: java.lang.Class<any>, param1: android.content.Context): android.app.Application;
			public callActivityOnRestart(param0: android.app.Activity): void;
			public getBinderCounts(): android.os.Bundle;
			public callActivityOnRestoreInstanceState(param0: android.app.Activity, param1: android.os.Bundle): void;
			public getAllocCounts(): android.os.Bundle;
			public addMonitor(param0: android.content.IntentFilter, param1: android.app.Instrumentation.ActivityResult, param2: boolean): android.app.Instrumentation.ActivityMonitor;
			public constructor();
			public sendPointerSync(param0: android.view.MotionEvent): void;
			public runOnMainSync(param0: java.lang.Runnable): void;
			public addMonitor(param0: android.app.Instrumentation.ActivityMonitor): void;
			public sendStatus(param0: number, param1: android.os.Bundle): void;
			public invokeMenuActionSync(param0: android.app.Activity, param1: number, param2: number): boolean;
			public waitForMonitorWithTimeout(param0: android.app.Instrumentation.ActivityMonitor, param1: number): android.app.Activity;
			public callActivityOnDestroy(param0: android.app.Activity): void;
			public callActivityOnNewIntent(param0: android.app.Activity, param1: android.content.Intent): void;
			public onCreate(param0: android.os.Bundle): void;
			public sendKeySync(param0: android.view.KeyEvent): void;
			public invokeContextMenuAction(param0: android.app.Activity, param1: number, param2: number): boolean;
			public stopProfiling(): void;
			public onException(param0: any, param1: java.lang.Throwable): boolean;
			public waitForIdle(param0: java.lang.Runnable): void;
			public setAutomaticPerformanceSnapshots(): void;
			public startProfiling(): void;
			public onDestroy(): void;
			public callActivityOnUserLeaving(param0: android.app.Activity): void;
			public waitForIdleSync(): void;
			public callActivityOnPostCreate(param0: android.app.Activity, param1: android.os.Bundle): void;
			public startPerformanceSnapshot(): void;
			public callActivityOnSaveInstanceState(param0: android.app.Activity, param1: android.os.Bundle): void;
			public stopAllocCounting(): void;
			public addMonitor(param0: string, param1: android.app.Instrumentation.ActivityResult, param2: boolean): android.app.Instrumentation.ActivityMonitor;
			public sendKeyDownUpSync(param0: number): void;
			public sendCharacterSync(param0: number): void;
			public removeMonitor(param0: android.app.Instrumentation.ActivityMonitor): void;
			public setInTouchMode(param0: boolean): void;
			public callActivityOnCreate(param0: android.app.Activity, param1: android.os.Bundle): void;
			public isProfiling(): boolean;
			public startActivitySync(param0: android.content.Intent): android.app.Activity;
			public startAllocCounting(): void;
			public sendTrackballEventSync(param0: android.view.MotionEvent): void;
			public endPerformanceSnapshot(): void;
			public newActivity(param0: java.lang.Class<any>, param1: android.content.Context, param2: android.os.IBinder, param3: android.app.Application, param4: android.content.Intent, param5: android.content.pm.ActivityInfo, param6: string, param7: android.app.Activity, param8: string, param9: any): android.app.Activity;
			public callActivityOnStop(param0: android.app.Activity): void;
		}
		export module Instrumentation {
			export class ActivityMonitor extends java.lang.Object {
				public static class: java.lang.Class<android.app.Instrumentation.ActivityMonitor>;
				public waitForActivity(): android.app.Activity;
				public constructor(param0: android.content.IntentFilter, param1: android.app.Instrumentation.ActivityResult, param2: boolean);
				public waitForActivityWithTimeout(param0: number): android.app.Activity;
				public getResult(): android.app.Instrumentation.ActivityResult;
				public isBlocking(): boolean;
				public getLastActivity(): android.app.Activity;
				public getHits(): number;
				public constructor(param0: string, param1: android.app.Instrumentation.ActivityResult, param2: boolean);
				public getFilter(): android.content.IntentFilter;
			}
			export class ActivityResult extends java.lang.Object {
				public static class: java.lang.Class<android.app.Instrumentation.ActivityResult>;
				public getResultData(): android.content.Intent;
				public constructor(param0: number, param1: android.content.Intent);
				public getResultCode(): number;
			}
		}
	}
}

declare module android {
	export module app {
		export abstract class IntentService extends android.app.Service {
			public static class: java.lang.Class<android.app.IntentService>;
			public setIntentRedelivery(param0: boolean): void;
			public onHandleIntent(param0: android.content.Intent): void;
			public onTrimMemory(param0: number): void;
			public onBind(param0: android.content.Intent): android.os.IBinder;
			public constructor(param0: android.content.Context);
			public onCreate(): void;
			public constructor();
			public onDestroy(): void;
			public onStartCommand(param0: android.content.Intent, param1: number, param2: number): number;
			public onStart(param0: android.content.Intent, param1: number): void;
			public constructor(param0: string);
			/** @deprecated */
			public onStart(param0: android.content.Intent, param1: number): void;
		}
	}
}

declare module android {
	export module app {
		export class KeyguardManager extends java.lang.Object {
			public static class: java.lang.Class<android.app.KeyguardManager>;
			/** @deprecated */
			public newKeyguardLock(param0: string): android.app.KeyguardManager.KeyguardLock;
			public isKeyguardSecure(): boolean;
			public inKeyguardRestrictedInputMode(): boolean;
			/** @deprecated */
			public exitKeyguardSecurely(param0: android.app.KeyguardManager.OnKeyguardExitResult): void;
			public isKeyguardLocked(): boolean;
		}
		export module KeyguardManager {
			export class KeyguardLock extends java.lang.Object {
				public static class: java.lang.Class<android.app.KeyguardManager.KeyguardLock>;
				public reenableKeyguard(): void;
				public disableKeyguard(): void;
			}
			export class OnKeyguardExitResult extends java.lang.Object {
				public static class: java.lang.Class<android.app.KeyguardManager.OnKeyguardExitResult>;
				/**
				 * Constructs a new instance of the android.app.KeyguardManager$OnKeyguardExitResult interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onKeyguardExitResult(param0: boolean): void;
				});
				public constructor();
				public onKeyguardExitResult(param0: boolean): void;
			}
		}
	}
}

declare module android {
	export module app {
		export abstract class LauncherActivity extends android.app.ListActivity {
			public static class: java.lang.Class<android.app.LauncherActivity>;
			public onWindowStartingActionMode(param0: android.view.ActionMode.Callback): android.view.ActionMode;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public setTitle(param0: string): void;
			public onCreatePanelMenu(param0: number, param1: android.view.Menu): boolean;
			public itemForPosition(param0: number): android.app.LauncherActivity.ListItem;
			public onQueryPackageManager(param0: android.content.Intent): java.util.List<android.content.pm.ResolveInfo>;
			public onPanelClosed(param0: number, param1: android.view.Menu): void;
			public onSearchRequested(): boolean;
			public onTrimMemory(param0: number): void;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public onActionModeFinished(param0: android.view.ActionMode): void;
			public onCreatePanelView(param0: number): android.view.View;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public dispatchGenericMotionEvent(param0: android.view.MotionEvent): boolean;
			public onDetachedFromWindow(): void;
			public onActionModeStarted(param0: android.view.ActionMode): void;
			public onCreateView(param0: android.view.View, param1: string, param2: android.content.Context, param3: android.util.AttributeSet): android.view.View;
			public dispatchKeyShortcutEvent(param0: android.view.KeyEvent): boolean;
			public onMenuItemSelected(param0: number, param1: android.view.MenuItem): boolean;
			public getTargetIntent(): android.content.Intent;
			public onMenuOpened(param0: number, param1: android.view.Menu): boolean;
			public onListItemClick(param0: android.widget.ListView, param1: android.view.View, param2: number, param3: number): void;
			public onSetContentView(): void;
			public makeListItems(): java.util.List<android.app.LauncherActivity.ListItem>;
			public constructor();
			public setTitle(param0: number): void;
			public intentForPosition(param0: number): android.content.Intent;
			public onCreateView(param0: string, param1: android.content.Context, param2: android.util.AttributeSet): android.view.View;
			public constructor(param0: android.content.Context, param1: number);
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public onCreateContextMenu(param0: android.view.ContextMenu, param1: android.view.View, param2: android.view.ContextMenu.ContextMenuInfo): void;
			public dispatchTouchEvent(param0: android.view.MotionEvent): boolean;
			public dispatchTrackballEvent(param0: android.view.MotionEvent): boolean;
			public constructor(param0: android.content.Context);
			public dispatchKeyEvent(param0: android.view.KeyEvent): boolean;
			public onPreparePanel(param0: number, param1: android.view.View, param2: android.view.Menu): boolean;
			public dispatchPopulateAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): boolean;
			public onWindowFocusChanged(param0: boolean): void;
			public onAttachedToWindow(): void;
			public onCreate(param0: android.os.Bundle): void;
			public onWindowAttributesChanged(param0: android.view.WindowManager.LayoutParams): void;
			public onContentChanged(): void;
		}
		export module LauncherActivity {
			export class IconResizer extends java.lang.Object {
				public static class: java.lang.Class<android.app.LauncherActivity.IconResizer>;
				public constructor(param0: android.app.LauncherActivity);
				public createIconThumbnail(param0: android.graphics.drawable.Drawable): android.graphics.drawable.Drawable;
			}
			export class ListItem extends java.lang.Object {
				public static class: java.lang.Class<android.app.LauncherActivity.ListItem>;
				public resolveInfo: android.content.pm.ResolveInfo;
				public label: string;
				public icon: android.graphics.drawable.Drawable;
				public packageName: string;
				public className: string;
				public extras: android.os.Bundle;
				public constructor();
			}
		}
	}
}

declare module android {
	export module app {
		export class ListActivity extends android.app.Activity {
			public static class: java.lang.Class<android.app.ListActivity>;
			public onWindowStartingActionMode(param0: android.view.ActionMode.Callback): android.view.ActionMode;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public onCreatePanelMenu(param0: number, param1: android.view.Menu): boolean;
			public setSelection(param0: number): void;
			public getListAdapter(): android.widget.ListAdapter;
			public onDestroy(): void;
			public onPanelClosed(param0: number, param1: android.view.Menu): void;
			public getSelectedItemId(): number;
			public onSearchRequested(): boolean;
			public setListAdapter(param0: android.widget.ListAdapter): void;
			public onTrimMemory(param0: number): void;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public onActionModeFinished(param0: android.view.ActionMode): void;
			public onCreatePanelView(param0: number): android.view.View;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public dispatchGenericMotionEvent(param0: android.view.MotionEvent): boolean;
			public onDetachedFromWindow(): void;
			public onActionModeStarted(param0: android.view.ActionMode): void;
			public onCreateView(param0: android.view.View, param1: string, param2: android.content.Context, param3: android.util.AttributeSet): android.view.View;
			public dispatchKeyShortcutEvent(param0: android.view.KeyEvent): boolean;
			public onMenuItemSelected(param0: number, param1: android.view.MenuItem): boolean;
			public onMenuOpened(param0: number, param1: android.view.Menu): boolean;
			public onListItemClick(param0: android.widget.ListView, param1: android.view.View, param2: number, param3: number): void;
			public constructor();
			public onRestoreInstanceState(param0: android.os.Bundle): void;
			public onCreateView(param0: string, param1: android.content.Context, param2: android.util.AttributeSet): android.view.View;
			public constructor(param0: android.content.Context, param1: number);
			public getSelectedItemPosition(): number;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public onCreateContextMenu(param0: android.view.ContextMenu, param1: android.view.View, param2: android.view.ContextMenu.ContextMenuInfo): void;
			public dispatchTouchEvent(param0: android.view.MotionEvent): boolean;
			public dispatchTrackballEvent(param0: android.view.MotionEvent): boolean;
			public constructor(param0: android.content.Context);
			public dispatchKeyEvent(param0: android.view.KeyEvent): boolean;
			public onPreparePanel(param0: number, param1: android.view.View, param2: android.view.Menu): boolean;
			public getListView(): android.widget.ListView;
			public dispatchPopulateAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): boolean;
			public onWindowFocusChanged(param0: boolean): void;
			public onAttachedToWindow(): void;
			public onContentChanged(): void;
			public onWindowAttributesChanged(param0: android.view.WindowManager.LayoutParams): void;
		}
	}
}

declare module android {
	export module app {
		export class ListFragment extends android.app.Fragment {
			public static class: java.lang.Class<android.app.ListFragment>;
			public setListShownNoAnimation(param0: boolean): void;
			public onCreateView(param0: android.view.LayoutInflater, param1: android.view.ViewGroup, param2: android.os.Bundle): android.view.View;
			public onListItemClick(param0: android.widget.ListView, param1: android.view.View, param2: number, param3: number): void;
			public setSelection(param0: number): void;
			public getListAdapter(): android.widget.ListAdapter;
			public onViewCreated(param0: android.view.View, param1: android.os.Bundle): void;
			public setEmptyText(param0: string): void;
			public constructor();
			public getSelectedItemId(): number;
			public getSelectedItemPosition(): number;
			public setListAdapter(param0: android.widget.ListAdapter): void;
			public onCreateContextMenu(param0: android.view.ContextMenu, param1: android.view.View, param2: android.view.ContextMenu.ContextMenuInfo): void;
			public onTrimMemory(param0: number): void;
			public setListShown(param0: boolean): void;
			public onDestroyView(): void;
			public getListView(): android.widget.ListView;
		}
	}
}

declare module android {
	export module app {
		export abstract class LoaderManager extends java.lang.Object {
			public static class: java.lang.Class<android.app.LoaderManager>;
			public getLoader(param0: number): android.content.Loader<any>;
			public destroyLoader(param0: number): void;
			public constructor();
			public initLoader(param0: number, param1: android.os.Bundle, param2: android.app.LoaderManager.LoaderCallbacks<any>): android.content.Loader<any>;
			public restartLoader(param0: number, param1: android.os.Bundle, param2: android.app.LoaderManager.LoaderCallbacks<any>): android.content.Loader<any>;
			public static enableDebugLogging(param0: boolean): void;
			public dump(param0: string, param1: java.io.FileDescriptor, param2: java.io.PrintWriter, param3: native.Array<string>): void;
		}
		export module LoaderManager {
			export class LoaderCallbacks<D>  extends java.lang.Object {
				public static class: java.lang.Class<android.app.LoaderManager.LoaderCallbacks<any>>;
				/**
				 * Constructs a new instance of the android.app.LoaderManager$LoaderCallbacks interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onCreateLoader(param0: number, param1: android.os.Bundle): android.content.Loader<D>;
					onLoadFinished(param0: android.content.Loader<D>, param1: D): void;
					onLoaderReset(param0: android.content.Loader<D>): void;
				});
				public constructor();
				public onLoaderReset(param0: android.content.Loader<D>): void;
				public onLoadFinished(param0: android.content.Loader<D>, param1: D): void;
				public onCreateLoader(param0: number, param1: android.os.Bundle): android.content.Loader<D>;
			}
		}
	}
}

declare module android {
	export module app {
		export class LocalActivityManager extends java.lang.Object {
			public static class: java.lang.Class<android.app.LocalActivityManager>;
			public getActivity(param0: string): android.app.Activity;
			public removeAllActivities(): void;
			public dispatchStop(): void;
			public dispatchResume(): void;
			public constructor(param0: android.app.Activity, param1: boolean);
			public getCurrentActivity(): android.app.Activity;
			public destroyActivity(param0: string, param1: boolean): android.view.Window;
			public saveInstanceState(): android.os.Bundle;
			public dispatchCreate(param0: android.os.Bundle): void;
			public getCurrentId(): string;
			public dispatchPause(param0: boolean): void;
			public dispatchDestroy(param0: boolean): void;
			public startActivity(param0: string, param1: android.content.Intent): android.view.Window;
		}
	}
}

declare module android {
	export module app {
		export class MediaRouteActionProvider extends android.view.ActionProvider {
			public static class: java.lang.Class<android.app.MediaRouteActionProvider>;
			public setExtendedSettingsClickListener(param0: android.view.View.OnClickListener): void;
			/** @deprecated */
			public onCreateActionView(): android.view.View;
			public onCreateActionView(): android.view.View;
			public onPerformDefaultAction(): boolean;
			public constructor(param0: android.content.Context);
			public setRouteTypes(param0: number): void;
			public overridesItemVisibility(): boolean;
			public onCreateActionView(param0: android.view.MenuItem): android.view.View;
			public isVisible(): boolean;
		}
	}
}

declare module android {
	export module app {
		export class MediaRouteButton extends android.view.View {
			public static class: java.lang.Class<android.app.MediaRouteButton>;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public getRouteTypes(): number;
			public setRouteTypes(param0: number): void;
			public drawableStateChanged(): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onCreateDrawableState(param0: number): native.Array<number>;
			public onMeasure(param0: number, param1: number): void;
			public performLongClick(): boolean;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public setExtendedSettingsClickListener(param0: android.view.View.OnClickListener): void;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public jumpDrawablesToCurrentState(): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public onDetachedFromWindow(): void;
			public sendAccessibilityEvent(param0: number): void;
			public setVisibility(param0: number): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public verifyDrawable(param0: android.graphics.drawable.Drawable): boolean;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public constructor(param0: android.content.Context);
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public onDraw(param0: android.graphics.Canvas): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public performClick(): boolean;
			public onAttachedToWindow(): void;
			public showDialog(): void;
		}
	}
}

declare module android {
	export module app {
		export class NativeActivity extends android.app.Activity implements android.view.SurfaceHolder.Callback2, android.view.InputQueue.Callback, android.view.ViewTreeObserver.OnGlobalLayoutListener {
			public static class: java.lang.Class<android.app.NativeActivity>;
			public static META_DATA_LIB_NAME: string;
			public static META_DATA_FUNC_NAME: string;
			public onWindowStartingActionMode(param0: android.view.ActionMode.Callback): android.view.ActionMode;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public onStart(): void;
			public onCreatePanelMenu(param0: number, param1: android.view.Menu): boolean;
			public surfaceDestroyed(param0: android.view.SurfaceHolder): void;
			public onDestroy(): void;
			public onLowMemory(): void;
			public onPanelClosed(param0: number, param1: android.view.Menu): void;
			public onSearchRequested(): boolean;
			public onTrimMemory(param0: number): void;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public onGlobalLayout(): void;
			public onActionModeFinished(param0: android.view.ActionMode): void;
			public onPause(): void;
			public onCreatePanelView(param0: number): android.view.View;
			public onInputQueueCreated(param0: android.view.InputQueue): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public dispatchGenericMotionEvent(param0: android.view.MotionEvent): boolean;
			public onStop(): void;
			public onDetachedFromWindow(): void;
			public onActionModeStarted(param0: android.view.ActionMode): void;
			public onConfigurationChanged(param0: android.content.res.Configuration): void;
			public onCreateView(param0: android.view.View, param1: string, param2: android.content.Context, param3: android.util.AttributeSet): android.view.View;
			public dispatchKeyShortcutEvent(param0: android.view.KeyEvent): boolean;
			public onMenuItemSelected(param0: number, param1: android.view.MenuItem): boolean;
			public onMenuOpened(param0: number, param1: android.view.Menu): boolean;
			public onResume(): void;
			public surfaceCreated(param0: android.view.SurfaceHolder): void;
			public constructor();
			public onCreateView(param0: string, param1: android.content.Context, param2: android.util.AttributeSet): android.view.View;
			public constructor(param0: android.content.Context, param1: number);
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public onCreateContextMenu(param0: android.view.ContextMenu, param1: android.view.View, param2: android.view.ContextMenu.ContextMenuInfo): void;
			public surfaceChanged(param0: android.view.SurfaceHolder, param1: number, param2: number, param3: number): void;
			public dispatchTouchEvent(param0: android.view.MotionEvent): boolean;
			public dispatchTrackballEvent(param0: android.view.MotionEvent): boolean;
			public onInputQueueDestroyed(param0: android.view.InputQueue): void;
			public onSaveInstanceState(param0: android.os.Bundle): void;
			public surfaceRedrawNeeded(param0: android.view.SurfaceHolder): void;
			public constructor(param0: android.content.Context);
			public dispatchKeyEvent(param0: android.view.KeyEvent): boolean;
			public onPreparePanel(param0: number, param1: android.view.View, param2: android.view.Menu): boolean;
			public dispatchPopulateAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): boolean;
			public onWindowFocusChanged(param0: boolean): void;
			public onAttachedToWindow(): void;
			public onCreate(param0: android.os.Bundle): void;
			public onWindowAttributesChanged(param0: android.view.WindowManager.LayoutParams): void;
			public onContentChanged(): void;
		}
	}
}

declare module android {
	export module app {
		export class Notification extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.app.Notification>;
			public static DEFAULT_ALL: number;
			public static DEFAULT_SOUND: number;
			public static DEFAULT_VIBRATE: number;
			public static DEFAULT_LIGHTS: number;
			public when: number;
			public icon: number;
			public iconLevel: number;
			public number: number;
			public contentIntent: android.app.PendingIntent;
			public deleteIntent: android.app.PendingIntent;
			public fullScreenIntent: android.app.PendingIntent;
			public tickerText: string;
			public tickerView: android.widget.RemoteViews;
			public contentView: android.widget.RemoteViews;
			public bigContentView: android.widget.RemoteViews;
			public largeIcon: android.graphics.Bitmap;
			public sound: android.net.Uri;
			public static STREAM_DEFAULT: number;
			public audioStreamType: number;
			public vibrate: native.Array<number>;
			public ledARGB: number;
			public ledOnMS: number;
			public ledOffMS: number;
			public defaults: number;
			public static FLAG_SHOW_LIGHTS: number;
			public static FLAG_ONGOING_EVENT: number;
			public static FLAG_INSISTENT: number;
			public static FLAG_ONLY_ALERT_ONCE: number;
			public static FLAG_AUTO_CANCEL: number;
			public static FLAG_NO_CLEAR: number;
			public static FLAG_FOREGROUND_SERVICE: number;
			public static FLAG_HIGH_PRIORITY: number;
			public flags: number;
			public static PRIORITY_DEFAULT: number;
			public static PRIORITY_LOW: number;
			public static PRIORITY_MIN: number;
			public static PRIORITY_HIGH: number;
			public static PRIORITY_MAX: number;
			public priority: number;
			public static CREATOR: android.os.Parcelable.Creator<android.app.Notification>;
			public clone(): android.app.Notification;
			/** @deprecated */
			public constructor(param0: number, param1: string, param2: number);
			public clone(): any;
			public toString(): string;
			public constructor(param0: android.os.Parcel);
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public constructor();
			/** @deprecated */
			public setLatestEventInfo(param0: android.content.Context, param1: string, param2: string, param3: android.app.PendingIntent): void;
		}
		export module Notification {
			export class BigPictureStyle extends android.app.Notification.Style {
				public static class: java.lang.Class<android.app.Notification.BigPictureStyle>;
				public constructor(param0: android.app.Notification.Builder);
				public setBigContentTitle(param0: string): android.app.Notification.BigPictureStyle;
				public setSummaryText(param0: string): android.app.Notification.BigPictureStyle;
				public bigLargeIcon(param0: android.graphics.Bitmap): android.app.Notification.BigPictureStyle;
				public bigPicture(param0: android.graphics.Bitmap): android.app.Notification.BigPictureStyle;
				public constructor();
				public build(): android.app.Notification;
			}
			export class BigTextStyle extends android.app.Notification.Style {
				public static class: java.lang.Class<android.app.Notification.BigTextStyle>;
				public constructor(param0: android.app.Notification.Builder);
				public setSummaryText(param0: string): android.app.Notification.BigTextStyle;
				public setBigContentTitle(param0: string): android.app.Notification.BigTextStyle;
				public bigText(param0: string): android.app.Notification.BigTextStyle;
				public constructor();
				public build(): android.app.Notification;
			}
			export class Builder extends java.lang.Object {
				public static class: java.lang.Class<android.app.Notification.Builder>;
				public setAutoCancel(param0: boolean): android.app.Notification.Builder;
				public setContentTitle(param0: string): android.app.Notification.Builder;
				public setDefaults(param0: number): android.app.Notification.Builder;
				public setProgress(param0: number, param1: number, param2: boolean): android.app.Notification.Builder;
				public setOngoing(param0: boolean): android.app.Notification.Builder;
				public addAction(param0: number, param1: string, param2: android.app.PendingIntent): android.app.Notification.Builder;
				public setSmallIcon(param0: number): android.app.Notification.Builder;
				public setLargeIcon(param0: android.graphics.Bitmap): android.app.Notification.Builder;
				public setOnlyAlertOnce(param0: boolean): android.app.Notification.Builder;
				public setVibrate(param0: native.Array<number>): android.app.Notification.Builder;
				public setContentText(param0: string): android.app.Notification.Builder;
				public setNumber(param0: number): android.app.Notification.Builder;
				public build(): android.app.Notification;
				public setShowWhen(param0: boolean): android.app.Notification.Builder;
				public setContent(param0: android.widget.RemoteViews): android.app.Notification.Builder;
				public setSound(param0: android.net.Uri): android.app.Notification.Builder;
				public setWhen(param0: number): android.app.Notification.Builder;
				public setSubText(param0: string): android.app.Notification.Builder;
				public setContentInfo(param0: string): android.app.Notification.Builder;
				public setLights(param0: number, param1: number, param2: number): android.app.Notification.Builder;
				public setTicker(param0: string): android.app.Notification.Builder;
				public setSmallIcon(param0: number, param1: number): android.app.Notification.Builder;
				public setFullScreenIntent(param0: android.app.PendingIntent, param1: boolean): android.app.Notification.Builder;
				/** @deprecated */
				public getNotification(): android.app.Notification;
				public setSound(param0: android.net.Uri, param1: number): android.app.Notification.Builder;
				public setTicker(param0: string, param1: android.widget.RemoteViews): android.app.Notification.Builder;
				public constructor(param0: android.content.Context);
				public setUsesChronometer(param0: boolean): android.app.Notification.Builder;
				public setDeleteIntent(param0: android.app.PendingIntent): android.app.Notification.Builder;
				public setContentIntent(param0: android.app.PendingIntent): android.app.Notification.Builder;
				public setPriority(param0: number): android.app.Notification.Builder;
				public setStyle(param0: android.app.Notification.Style): android.app.Notification.Builder;
			}
			export class InboxStyle extends android.app.Notification.Style {
				public static class: java.lang.Class<android.app.Notification.InboxStyle>;
				public constructor(param0: android.app.Notification.Builder);
				public addLine(param0: string): android.app.Notification.InboxStyle;
				public setBigContentTitle(param0: string): android.app.Notification.InboxStyle;
				public setSummaryText(param0: string): android.app.Notification.InboxStyle;
				public constructor();
				public build(): android.app.Notification;
			}
			export abstract class Style extends java.lang.Object {
				public static class: java.lang.Class<android.app.Notification.Style>;
				public mBuilder: android.app.Notification.Builder;
				public internalSetSummaryText(param0: string): void;
				public checkBuilder(): void;
				public internalSetBigContentTitle(param0: string): void;
				public getStandardView(param0: number): android.widget.RemoteViews;
				public setBuilder(param0: android.app.Notification.Builder): void;
				public constructor();
				public build(): android.app.Notification;
			}
		}
	}
}

declare module android {
	export module app {
		export class NotificationManager extends java.lang.Object {
			public static class: java.lang.Class<android.app.NotificationManager>;
			public notify(param0: number, param1: android.app.Notification): void;
			public cancelAll(): void;
			public cancel(param0: string, param1: number): void;
			public notify(param0: string, param1: number, param2: android.app.Notification): void;
			public notify(): void;
			public cancel(param0: number): void;
		}
	}
}

declare module android {
	export module app {
		export class PendingIntent extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.app.PendingIntent>;
			public static FLAG_ONE_SHOT: number;
			public static FLAG_NO_CREATE: number;
			public static FLAG_CANCEL_CURRENT: number;
			public static FLAG_UPDATE_CURRENT: number;
			public static CREATOR: android.os.Parcelable.Creator<android.app.PendingIntent>;
			public equals(param0: any): boolean;
			public send(): void;
			public send(param0: android.content.Context, param1: number, param2: android.content.Intent): void;
			public cancel(): void;
			public static readPendingIntentOrNullFromParcel(param0: android.os.Parcel): android.app.PendingIntent;
			public getCreatorPackage(): string;
			public static getBroadcast(param0: android.content.Context, param1: number, param2: android.content.Intent, param3: number): android.app.PendingIntent;
			public send(param0: number): void;
			public getCreatorUserHandle(): android.os.UserHandle;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public static getActivity(param0: android.content.Context, param1: number, param2: android.content.Intent, param3: number): android.app.PendingIntent;
			public send(param0: android.content.Context, param1: number, param2: android.content.Intent, param3: android.app.PendingIntent.OnFinished, param4: android.os.Handler): void;
			public getCreatorUid(): number;
			public static getActivities(param0: android.content.Context, param1: number, param2: native.Array<android.content.Intent>, param3: number): android.app.PendingIntent;
			/** @deprecated */
			public getTargetPackage(): string;
			public static writePendingIntentOrNullToParcel(param0: android.app.PendingIntent, param1: android.os.Parcel): void;
			public static getService(param0: android.content.Context, param1: number, param2: android.content.Intent, param3: number): android.app.PendingIntent;
			public send(param0: android.content.Context, param1: number, param2: android.content.Intent, param3: android.app.PendingIntent.OnFinished, param4: android.os.Handler, param5: string): void;
			public toString(): string;
			public getIntentSender(): android.content.IntentSender;
			public describeContents(): number;
			public static getActivities(param0: android.content.Context, param1: number, param2: native.Array<android.content.Intent>, param3: number, param4: android.os.Bundle): android.app.PendingIntent;
			public send(param0: number, param1: android.app.PendingIntent.OnFinished, param2: android.os.Handler): void;
			public static getActivity(param0: android.content.Context, param1: number, param2: android.content.Intent, param3: number, param4: android.os.Bundle): android.app.PendingIntent;
			public hashCode(): number;
		}
		export module PendingIntent {
			export class CanceledException extends android.util.AndroidException {
				public static class: java.lang.Class<android.app.PendingIntent.CanceledException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Exception);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
			export class OnFinished extends java.lang.Object {
				public static class: java.lang.Class<android.app.PendingIntent.OnFinished>;
				/**
				 * Constructs a new instance of the android.app.PendingIntent$OnFinished interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onSendFinished(param0: android.app.PendingIntent, param1: android.content.Intent, param2: number, param3: string, param4: android.os.Bundle): void;
				});
				public constructor();
				public onSendFinished(param0: android.app.PendingIntent, param1: android.content.Intent, param2: number, param3: string, param4: android.os.Bundle): void;
			}
		}
	}
}

declare module android {
	export module app {
		export class Presentation extends android.app.Dialog {
			public static class: java.lang.Class<android.app.Presentation>;
			public show(): void;
			public onWindowStartingActionMode(param0: android.view.ActionMode.Callback): android.view.ActionMode;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public getResources(): android.content.res.Resources;
			public onStart(): void;
			public onCreatePanelMenu(param0: number, param1: android.view.Menu): boolean;
			public constructor(param0: android.content.Context, param1: boolean, param2: android.content.DialogInterface.OnCancelListener);
			public cancel(): void;
			public onPanelClosed(param0: number, param1: android.view.Menu): void;
			public onSearchRequested(): boolean;
			public constructor(param0: android.content.Context, param1: android.view.Display);
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public onActionModeFinished(param0: android.view.ActionMode): void;
			public onCreatePanelView(param0: number): android.view.View;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public onDisplayChanged(): void;
			public dispatchGenericMotionEvent(param0: android.view.MotionEvent): boolean;
			public onStop(): void;
			public onDetachedFromWindow(): void;
			public onActionModeStarted(param0: android.view.ActionMode): void;
			public dispatchKeyShortcutEvent(param0: android.view.KeyEvent): boolean;
			public onMenuItemSelected(param0: number, param1: android.view.MenuItem): boolean;
			public dismiss(): void;
			public onMenuOpened(param0: number, param1: android.view.Menu): boolean;
			public constructor(param0: android.content.Context, param1: number);
			public getDisplay(): android.view.Display;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public onDisplayRemoved(): void;
			public onCreateContextMenu(param0: android.view.ContextMenu, param1: android.view.View, param2: android.view.ContextMenu.ContextMenuInfo): void;
			public dispatchTouchEvent(param0: android.view.MotionEvent): boolean;
			public dispatchTrackballEvent(param0: android.view.MotionEvent): boolean;
			public constructor(param0: android.content.Context);
			public dispatchKeyEvent(param0: android.view.KeyEvent): boolean;
			public onPreparePanel(param0: number, param1: android.view.View, param2: android.view.Menu): boolean;
			public dispatchPopulateAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): boolean;
			public onWindowFocusChanged(param0: boolean): void;
			public onAttachedToWindow(): void;
			public onWindowAttributesChanged(param0: android.view.WindowManager.LayoutParams): void;
			public onContentChanged(): void;
			public constructor(param0: android.content.Context, param1: android.view.Display, param2: number);
		}
	}
}

declare module android {
	export module app {
		export class ProgressDialog extends android.app.AlertDialog {
			public static class: java.lang.Class<android.app.ProgressDialog>;
			public static STYLE_SPINNER: number;
			public static STYLE_HORIZONTAL: number;
			public getProgress(): number;
			public onStart(): void;
			public onCreatePanelMenu(param0: number, param1: android.view.Menu): boolean;
			public cancel(): void;
			public static show(param0: android.content.Context, param1: string, param2: string, param3: boolean, param4: boolean): android.app.ProgressDialog;
			public static show(param0: android.content.Context, param1: string, param2: string): android.app.ProgressDialog;
			public setProgressNumberFormat(param0: string): void;
			public onSearchRequested(): boolean;
			public setProgress(param0: number): void;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public incrementProgressBy(param0: number): void;
			public onCreatePanelView(param0: number): android.view.View;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public dispatchGenericMotionEvent(param0: android.view.MotionEvent): boolean;
			public onDetachedFromWindow(): void;
			public setProgressStyle(param0: number): void;
			public constructor(param0: android.content.Context, param1: number);
			public isIndeterminate(): boolean;
			public setMessage(param0: string): void;
			public onCreateContextMenu(param0: android.view.ContextMenu, param1: android.view.View, param2: android.view.ContextMenu.ContextMenuInfo): void;
			public dispatchTouchEvent(param0: android.view.MotionEvent): boolean;
			public onPreparePanel(param0: number, param1: android.view.View, param2: android.view.Menu): boolean;
			public static show(param0: android.content.Context, param1: string, param2: string, param3: boolean, param4: boolean, param5: android.content.DialogInterface.OnCancelListener): android.app.ProgressDialog;
			public onWindowFocusChanged(param0: boolean): void;
			public onCreate(param0: android.os.Bundle): void;
			public setIndeterminateDrawable(param0: android.graphics.drawable.Drawable): void;
			public onContentChanged(): void;
			public show(): void;
			public onWindowStartingActionMode(param0: android.view.ActionMode.Callback): android.view.ActionMode;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public getSecondaryProgress(): number;
			public constructor(param0: android.content.Context, param1: boolean, param2: android.content.DialogInterface.OnCancelListener);
			public static show(param0: android.content.Context, param1: string, param2: string, param3: boolean): android.app.ProgressDialog;
			public onPanelClosed(param0: number, param1: android.view.Menu): void;
			public getMax(): number;
			public setIndeterminate(param0: boolean): void;
			public onActionModeFinished(param0: android.view.ActionMode): void;
			public setMax(param0: number): void;
			public onStop(): void;
			public setSecondaryProgress(param0: number): void;
			public onActionModeStarted(param0: android.view.ActionMode): void;
			public dispatchKeyShortcutEvent(param0: android.view.KeyEvent): boolean;
			public onMenuItemSelected(param0: number, param1: android.view.MenuItem): boolean;
			public dismiss(): void;
			public onMenuOpened(param0: number, param1: android.view.Menu): boolean;
			public setProgressPercentFormat(param0: java.text.NumberFormat): void;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public setProgressDrawable(param0: android.graphics.drawable.Drawable): void;
			public dispatchTrackballEvent(param0: android.view.MotionEvent): boolean;
			public constructor(param0: android.content.Context);
			public dispatchKeyEvent(param0: android.view.KeyEvent): boolean;
			public incrementSecondaryProgressBy(param0: number): void;
			public dispatchPopulateAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): boolean;
			public onAttachedToWindow(): void;
			public onWindowAttributesChanged(param0: android.view.WindowManager.LayoutParams): void;
		}
	}
}

declare module android {
	export module app {
		export class SearchManager extends java.lang.Object implements android.content.DialogInterface.OnDismissListener, android.content.DialogInterface.OnCancelListener {
			public static class: java.lang.Class<android.app.SearchManager>;
			public static MENU_KEY: string;
			public static MENU_KEYCODE: number;
			public static QUERY: string;
			public static USER_QUERY: string;
			public static APP_DATA: string;
			public static ACTION_KEY: string;
			public static EXTRA_DATA_KEY: string;
			public static EXTRA_SELECT_QUERY: string;
			public static EXTRA_NEW_SEARCH: string;
			public static EXTRA_WEB_SEARCH_PENDINGINTENT: string;
			public static CURSOR_EXTRA_KEY_IN_PROGRESS: string;
			public static ACTION_MSG: string;
			public static FLAG_QUERY_REFINEMENT: number;
			public static SUGGEST_URI_PATH_QUERY: string;
			public static SUGGEST_MIME_TYPE: string;
			public static SUGGEST_URI_PATH_SHORTCUT: string;
			public static SHORTCUT_MIME_TYPE: string;
			public static SUGGEST_COLUMN_FORMAT: string;
			public static SUGGEST_COLUMN_TEXT_1: string;
			public static SUGGEST_COLUMN_TEXT_2: string;
			public static SUGGEST_COLUMN_TEXT_2_URL: string;
			public static SUGGEST_COLUMN_ICON_1: string;
			public static SUGGEST_COLUMN_ICON_2: string;
			public static SUGGEST_COLUMN_INTENT_ACTION: string;
			public static SUGGEST_COLUMN_INTENT_DATA: string;
			public static SUGGEST_COLUMN_INTENT_EXTRA_DATA: string;
			public static SUGGEST_COLUMN_INTENT_DATA_ID: string;
			public static SUGGEST_COLUMN_QUERY: string;
			public static SUGGEST_COLUMN_SHORTCUT_ID: string;
			public static SUGGEST_COLUMN_SPINNER_WHILE_REFRESHING: string;
			public static SUGGEST_COLUMN_FLAGS: string;
			public static SUGGEST_COLUMN_LAST_ACCESS_HINT: string;
			public static SUGGEST_NEVER_MAKE_SHORTCUT: string;
			public static SUGGEST_PARAMETER_LIMIT: string;
			public static INTENT_ACTION_GLOBAL_SEARCH: string;
			public static INTENT_ACTION_SEARCH_SETTINGS: string;
			public static INTENT_ACTION_WEB_SEARCH_SETTINGS: string;
			public static INTENT_ACTION_SEARCHABLES_CHANGED: string;
			public static INTENT_GLOBAL_SEARCH_ACTIVITY_CHANGED: string;
			public static INTENT_ACTION_SEARCH_SETTINGS_CHANGED: string;
			public getSearchablesInGlobalSearch(): java.util.List<android.app.SearchableInfo>;
			public getGlobalSearchActivity(): android.content.ComponentName;
			public stopSearch(): void;
			/** @deprecated */
			public onDismiss(param0: android.content.DialogInterface): void;
			public setOnCancelListener(param0: android.app.SearchManager.OnCancelListener): void;
			public onDismiss(param0: android.content.DialogInterface): void;
			public onCancel(param0: android.content.DialogInterface): void;
			public getSearchableInfo(param0: android.content.ComponentName): android.app.SearchableInfo;
			public triggerSearch(param0: string, param1: android.content.ComponentName, param2: android.os.Bundle): void;
			public setOnDismissListener(param0: android.app.SearchManager.OnDismissListener): void;
			/** @deprecated */
			public onCancel(param0: android.content.DialogInterface): void;
			public startSearch(param0: string, param1: boolean, param2: android.content.ComponentName, param3: android.os.Bundle, param4: boolean): void;
		}
		export module SearchManager {
			export class OnCancelListener extends java.lang.Object {
				public static class: java.lang.Class<android.app.SearchManager.OnCancelListener>;
				/**
				 * Constructs a new instance of the android.app.SearchManager$OnCancelListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onCancel(): void;
				});
				public constructor();
				public onCancel(): void;
			}
			export class OnDismissListener extends java.lang.Object {
				public static class: java.lang.Class<android.app.SearchManager.OnDismissListener>;
				/**
				 * Constructs a new instance of the android.app.SearchManager$OnDismissListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onDismiss(): void;
				});
				public constructor();
				public onDismiss(): void;
			}
		}
	}
}

declare module android {
	export module app {
		export class SearchableInfo extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.app.SearchableInfo>;
			public static CREATOR: android.os.Parcelable.Creator<android.app.SearchableInfo>;
			public getSearchActivity(): android.content.ComponentName;
			public getImeOptions(): number;
			public getVoiceLanguageModeId(): number;
			public getVoicePromptTextId(): number;
			public getSuggestThreshold(): number;
			public getVoiceMaxResults(): number;
			public getVoiceSearchLaunchWebSearch(): boolean;
			public getSuggestAuthority(): string;
			public getSettingsDescriptionId(): number;
			public getVoiceLanguageId(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public getInputType(): number;
			public getSuggestSelection(): string;
			public getSuggestPackage(): string;
			public autoUrlDetect(): boolean;
			public getSuggestPath(): string;
			public getSuggestIntentAction(): string;
			public shouldIncludeInGlobalSearch(): boolean;
			public getHintId(): number;
			public queryAfterZeroResults(): boolean;
			public describeContents(): number;
			public getSuggestIntentData(): string;
			public getVoiceSearchEnabled(): boolean;
			public getVoiceSearchLaunchRecognizer(): boolean;
			public shouldRewriteQueryFromText(): boolean;
			public shouldRewriteQueryFromData(): boolean;
		}
	}
}

declare module android {
	export module app {
		export abstract class Service extends android.content.ContextWrapper implements android.content.ComponentCallbacks2 {
			public static class: java.lang.Class<android.app.Service>;
			public static START_CONTINUATION_MASK: number;
			public static START_STICKY_COMPATIBILITY: number;
			public static START_STICKY: number;
			public static START_NOT_STICKY: number;
			public static START_REDELIVER_INTENT: number;
			public static START_FLAG_REDELIVERY: number;
			public static START_FLAG_RETRY: number;
			public onConfigurationChanged(param0: android.content.res.Configuration): void;
			public onUnbind(param0: android.content.Intent): boolean;
			public onBind(param0: android.content.Intent): android.os.IBinder;
			public startForeground(param0: number, param1: android.app.Notification): void;
			public stopForeground(param0: boolean): void;
			public stopSelf(param0: number): void;
			public onCreate(): void;
			public dump(param0: java.io.FileDescriptor, param1: java.io.PrintWriter, param2: native.Array<string>): void;
			public constructor();
			public getApplication(): android.app.Application;
			public onDestroy(): void;
			public onStartCommand(param0: android.content.Intent, param1: number, param2: number): number;
			public onLowMemory(): void;
			public onTrimMemory(param0: number): void;
			public onRebind(param0: android.content.Intent): void;
			public constructor(param0: android.content.Context);
			public onTaskRemoved(param0: android.content.Intent): void;
			public stopSelf(): void;
			/** @deprecated */
			public onStart(param0: android.content.Intent, param1: number): void;
			public stopSelfResult(param0: number): boolean;
		}
	}
}

declare module android {
	export module app {
		export class TabActivity extends android.app.ActivityGroup {
			public static class: java.lang.Class<android.app.TabActivity>;
			public onWindowStartingActionMode(param0: android.view.ActionMode.Callback): android.view.ActionMode;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public constructor(param0: boolean);
			public onCreatePanelMenu(param0: number, param1: android.view.Menu): boolean;
			public setDefaultTab(param0: string): void;
			public getTabWidget(): android.widget.TabWidget;
			public onChildTitleChanged(param0: android.app.Activity, param1: string): void;
			public onPanelClosed(param0: number, param1: android.view.Menu): void;
			public onSearchRequested(): boolean;
			public onTrimMemory(param0: number): void;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public onActionModeFinished(param0: android.view.ActionMode): void;
			public onPostCreate(param0: android.os.Bundle): void;
			public onCreatePanelView(param0: number): android.view.View;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public getTabHost(): android.widget.TabHost;
			public dispatchGenericMotionEvent(param0: android.view.MotionEvent): boolean;
			public onDetachedFromWindow(): void;
			public onActionModeStarted(param0: android.view.ActionMode): void;
			public onCreateView(param0: android.view.View, param1: string, param2: android.content.Context, param3: android.util.AttributeSet): android.view.View;
			public dispatchKeyShortcutEvent(param0: android.view.KeyEvent): boolean;
			public onMenuItemSelected(param0: number, param1: android.view.MenuItem): boolean;
			public onMenuOpened(param0: number, param1: android.view.Menu): boolean;
			public constructor();
			public onRestoreInstanceState(param0: android.os.Bundle): void;
			public onCreateView(param0: string, param1: android.content.Context, param2: android.util.AttributeSet): android.view.View;
			public setDefaultTab(param0: number): void;
			public constructor(param0: android.content.Context, param1: number);
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public onCreateContextMenu(param0: android.view.ContextMenu, param1: android.view.View, param2: android.view.ContextMenu.ContextMenuInfo): void;
			public dispatchTouchEvent(param0: android.view.MotionEvent): boolean;
			public dispatchTrackballEvent(param0: android.view.MotionEvent): boolean;
			public onSaveInstanceState(param0: android.os.Bundle): void;
			public constructor(param0: android.content.Context);
			public dispatchKeyEvent(param0: android.view.KeyEvent): boolean;
			public onPreparePanel(param0: number, param1: android.view.View, param2: android.view.Menu): boolean;
			public dispatchPopulateAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): boolean;
			public onWindowFocusChanged(param0: boolean): void;
			public onAttachedToWindow(): void;
			public onContentChanged(): void;
			public onWindowAttributesChanged(param0: android.view.WindowManager.LayoutParams): void;
		}
	}
}

declare module android {
	export module app {
		export class TaskStackBuilder extends java.lang.Object {
			public static class: java.lang.Class<android.app.TaskStackBuilder>;
			public addNextIntentWithParentStack(param0: android.content.Intent): android.app.TaskStackBuilder;
			public editIntentAt(param0: number): android.content.Intent;
			public static create(param0: android.content.Context): android.app.TaskStackBuilder;
			public addParentStack(param0: android.content.ComponentName): android.app.TaskStackBuilder;
			public startActivities(param0: android.os.Bundle): void;
			public getIntents(): native.Array<android.content.Intent>;
			public addNextIntent(param0: android.content.Intent): android.app.TaskStackBuilder;
			public addParentStack(param0: java.lang.Class<any>): android.app.TaskStackBuilder;
			public startActivities(): void;
			public addParentStack(param0: android.app.Activity): android.app.TaskStackBuilder;
			public getIntentCount(): number;
			public getPendingIntent(param0: number, param1: number): android.app.PendingIntent;
			public getPendingIntent(param0: number, param1: number, param2: android.os.Bundle): android.app.PendingIntent;
		}
	}
}

declare module android {
	export module app {
		export class TimePickerDialog extends android.app.AlertDialog implements android.content.DialogInterface.OnClickListener, android.widget.TimePicker.OnTimeChangedListener {
			public static class: java.lang.Class<android.app.TimePickerDialog>;
			public onWindowStartingActionMode(param0: android.view.ActionMode.Callback): android.view.ActionMode;
			public onClick(param0: android.content.DialogInterface, param1: number): void;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public onCreatePanelMenu(param0: number, param1: android.view.Menu): boolean;
			public constructor(param0: android.content.Context, param1: boolean, param2: android.content.DialogInterface.OnCancelListener);
			public updateTime(param0: number, param1: number): void;
			public cancel(): void;
			public onPanelClosed(param0: number, param1: android.view.Menu): void;
			public onSearchRequested(): boolean;
			public onTimeChanged(param0: android.widget.TimePicker, param1: number, param2: number): void;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public constructor(param0: android.content.Context, param1: android.app.TimePickerDialog.OnTimeSetListener, param2: number, param3: number, param4: boolean);
			public onActionModeFinished(param0: android.view.ActionMode): void;
			public onCreatePanelView(param0: number): android.view.View;
			public onSaveInstanceState(): android.os.Bundle;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public dispatchGenericMotionEvent(param0: android.view.MotionEvent): boolean;
			public onStop(): void;
			public onDetachedFromWindow(): void;
			public onActionModeStarted(param0: android.view.ActionMode): void;
			public dispatchKeyShortcutEvent(param0: android.view.KeyEvent): boolean;
			public onMenuItemSelected(param0: number, param1: android.view.MenuItem): boolean;
			public dismiss(): void;
			public onMenuOpened(param0: number, param1: android.view.Menu): boolean;
			public onRestoreInstanceState(param0: android.os.Bundle): void;
			public constructor(param0: android.content.Context, param1: number);
			public constructor(param0: android.content.Context, param1: number, param2: android.app.TimePickerDialog.OnTimeSetListener, param3: number, param4: number, param5: boolean);
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public onCreateContextMenu(param0: android.view.ContextMenu, param1: android.view.View, param2: android.view.ContextMenu.ContextMenuInfo): void;
			public dispatchTouchEvent(param0: android.view.MotionEvent): boolean;
			public dispatchTrackballEvent(param0: android.view.MotionEvent): boolean;
			public constructor(param0: android.content.Context);
			public dispatchKeyEvent(param0: android.view.KeyEvent): boolean;
			public onPreparePanel(param0: number, param1: android.view.View, param2: android.view.Menu): boolean;
			public dispatchPopulateAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): boolean;
			public onWindowFocusChanged(param0: boolean): void;
			public onAttachedToWindow(): void;
			public onWindowAttributesChanged(param0: android.view.WindowManager.LayoutParams): void;
			public onContentChanged(): void;
		}
		export module TimePickerDialog {
			export class OnTimeSetListener extends java.lang.Object {
				public static class: java.lang.Class<android.app.TimePickerDialog.OnTimeSetListener>;
				/**
				 * Constructs a new instance of the android.app.TimePickerDialog$OnTimeSetListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onTimeSet(param0: android.widget.TimePicker, param1: number, param2: number): void;
				});
				public constructor();
				public onTimeSet(param0: android.widget.TimePicker, param1: number, param2: number): void;
			}
		}
	}
}

declare module android {
	export module app {
		export class UiAutomation extends java.lang.Object {
			public static class: java.lang.Class<android.app.UiAutomation>;
			public static ROTATION_UNFREEZE: number;
			public static ROTATION_FREEZE_CURRENT: number;
			public static ROTATION_FREEZE_0: number;
			public static ROTATION_FREEZE_90: number;
			public static ROTATION_FREEZE_180: number;
			public static ROTATION_FREEZE_270: number;
			public getServiceInfo(): android.accessibilityservice.AccessibilityServiceInfo;
			public takeScreenshot(): android.graphics.Bitmap;
			public injectInputEvent(param0: android.view.InputEvent, param1: boolean): boolean;
			public setRunAsMonkey(param0: boolean): void;
			public executeAndWaitForEvent(param0: java.lang.Runnable, param1: android.app.UiAutomation.AccessibilityEventFilter, param2: number): android.view.accessibility.AccessibilityEvent;
			public performGlobalAction(param0: number): boolean;
			public setOnAccessibilityEventListener(param0: android.app.UiAutomation.OnAccessibilityEventListener): void;
			public setServiceInfo(param0: android.accessibilityservice.AccessibilityServiceInfo): void;
			public setRotation(param0: number): boolean;
			public getRootInActiveWindow(): android.view.accessibility.AccessibilityNodeInfo;
			public waitForIdle(param0: number, param1: number): void;
		}
		export module UiAutomation {
			export class AccessibilityEventFilter extends java.lang.Object {
				public static class: java.lang.Class<android.app.UiAutomation.AccessibilityEventFilter>;
				/**
				 * Constructs a new instance of the android.app.UiAutomation$AccessibilityEventFilter interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					accept(param0: android.view.accessibility.AccessibilityEvent): boolean;
				});
				public constructor();
				public accept(param0: android.view.accessibility.AccessibilityEvent): boolean;
			}
			export class OnAccessibilityEventListener extends java.lang.Object {
				public static class: java.lang.Class<android.app.UiAutomation.OnAccessibilityEventListener>;
				/**
				 * Constructs a new instance of the android.app.UiAutomation$OnAccessibilityEventListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
				});
				public constructor();
				public onAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			}
		}
	}
}

declare module android {
	export module app {
		export class UiModeManager extends java.lang.Object {
			public static class: java.lang.Class<android.app.UiModeManager>;
			public static ACTION_ENTER_CAR_MODE: string;
			public static ACTION_EXIT_CAR_MODE: string;
			public static ACTION_ENTER_DESK_MODE: string;
			public static ACTION_EXIT_DESK_MODE: string;
			public static MODE_NIGHT_AUTO: number;
			public static MODE_NIGHT_NO: number;
			public static MODE_NIGHT_YES: number;
			public static ENABLE_CAR_MODE_GO_CAR_HOME: number;
			public static DISABLE_CAR_MODE_GO_HOME: number;
			public getNightMode(): number;
			public enableCarMode(param0: number): void;
			public setNightMode(param0: number): void;
			public disableCarMode(param0: number): void;
			public getCurrentModeType(): number;
		}
	}
}

declare module android {
	export module app {
		export class WallpaperInfo extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.app.WallpaperInfo>;
			public static CREATOR: android.os.Parcelable.Creator<android.app.WallpaperInfo>;
			public loadIcon(param0: android.content.pm.PackageManager): android.graphics.drawable.Drawable;
			public getPackageName(): string;
			public constructor(param0: android.content.Context, param1: android.content.pm.ResolveInfo);
			public getServiceName(): string;
			public loadLabel(param0: android.content.pm.PackageManager): string;
			public getComponent(): android.content.ComponentName;
			public toString(): string;
			public loadAuthor(param0: android.content.pm.PackageManager): string;
			public loadDescription(param0: android.content.pm.PackageManager): string;
			public getServiceInfo(): android.content.pm.ServiceInfo;
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public getSettingsActivity(): string;
			public loadThumbnail(param0: android.content.pm.PackageManager): android.graphics.drawable.Drawable;
			public dump(param0: android.util.Printer, param1: string): void;
		}
	}
}

declare module android {
	export module app {
		export class WallpaperManager extends java.lang.Object {
			public static class: java.lang.Class<android.app.WallpaperManager>;
			public static ACTION_LIVE_WALLPAPER_CHOOSER: string;
			public static ACTION_CHANGE_LIVE_WALLPAPER: string;
			public static EXTRA_LIVE_WALLPAPER_COMPONENT: string;
			public static WALLPAPER_PREVIEW_META_DATA: string;
			public static COMMAND_TAP: string;
			public static COMMAND_SECONDARY_TAP: string;
			public static COMMAND_DROP: string;
			public getDesiredMinimumHeight(): number;
			public clear(): void;
			public getDrawable(): android.graphics.drawable.Drawable;
			public getWallpaperInfo(): android.app.WallpaperInfo;
			public getDesiredMinimumWidth(): number;
			public setWallpaperOffsets(param0: android.os.IBinder, param1: number, param2: number): void;
			public peekFastDrawable(): android.graphics.drawable.Drawable;
			public setResource(param0: number): void;
			public forgetLoadedWallpaper(): void;
			public setBitmap(param0: android.graphics.Bitmap): void;
			public static getInstance(param0: android.content.Context): android.app.WallpaperManager;
			public getFastDrawable(): android.graphics.drawable.Drawable;
			public setStream(param0: java.io.InputStream): void;
			public suggestDesiredDimensions(param0: number, param1: number): void;
			public sendWallpaperCommand(param0: android.os.IBinder, param1: string, param2: number, param3: number, param4: number, param5: android.os.Bundle): void;
			public hasResourceWallpaper(param0: number): boolean;
			public clearWallpaperOffsets(param0: android.os.IBinder): void;
			public setWallpaperOffsetSteps(param0: number, param1: number): void;
			public peekDrawable(): android.graphics.drawable.Drawable;
		}
	}
}

declare module android {
	export module app {
		export module admin {
			export class DeviceAdminInfo extends java.lang.Object implements android.os.Parcelable {
				public static class: java.lang.Class<android.app.admin.DeviceAdminInfo>;
				public static USES_POLICY_LIMIT_PASSWORD: number;
				public static USES_POLICY_WATCH_LOGIN: number;
				public static USES_POLICY_RESET_PASSWORD: number;
				public static USES_POLICY_FORCE_LOCK: number;
				public static USES_POLICY_WIPE_DATA: number;
				public static USES_POLICY_EXPIRE_PASSWORD: number;
				public static USES_ENCRYPTED_STORAGE: number;
				public static USES_POLICY_DISABLE_CAMERA: number;
				public static USES_POLICY_DISABLE_KEYGUARD_FEATURES: number;
				public static CREATOR: android.os.Parcelable.Creator<android.app.admin.DeviceAdminInfo>;
				public loadDescription(param0: android.content.pm.PackageManager): string;
				public isVisible(): boolean;
				public constructor(param0: android.content.Context, param1: android.content.pm.ResolveInfo);
				public loadLabel(param0: android.content.pm.PackageManager): string;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public getPackageName(): string;
				public loadIcon(param0: android.content.pm.PackageManager): android.graphics.drawable.Drawable;
				public dump(param0: android.util.Printer, param1: string): void;
				public getComponent(): android.content.ComponentName;
				public getTagForPolicy(param0: number): string;
				public toString(): string;
				public getActivityInfo(): android.content.pm.ActivityInfo;
				public describeContents(): number;
				public getReceiverName(): string;
				public usesPolicy(param0: number): boolean;
			}
		}
	}
}

declare module android {
	export module app {
		export module admin {
			export class DeviceAdminReceiver extends android.content.BroadcastReceiver {
				public static class: java.lang.Class<android.app.admin.DeviceAdminReceiver>;
				public static ACTION_DEVICE_ADMIN_ENABLED: string;
				public static ACTION_DEVICE_ADMIN_DISABLE_REQUESTED: string;
				public static EXTRA_DISABLE_WARNING: string;
				public static ACTION_DEVICE_ADMIN_DISABLED: string;
				public static ACTION_PASSWORD_CHANGED: string;
				public static ACTION_PASSWORD_FAILED: string;
				public static ACTION_PASSWORD_SUCCEEDED: string;
				public static ACTION_PASSWORD_EXPIRING: string;
				public static DEVICE_ADMIN_META_DATA: string;
				public onEnabled(param0: android.content.Context, param1: android.content.Intent): void;
				public onDisabled(param0: android.content.Context, param1: android.content.Intent): void;
				public getManager(param0: android.content.Context): android.app.admin.DevicePolicyManager;
				public onPasswordSucceeded(param0: android.content.Context, param1: android.content.Intent): void;
				public getWho(param0: android.content.Context): android.content.ComponentName;
				public onReceive(param0: android.content.Context, param1: android.content.Intent): void;
				public onDisableRequested(param0: android.content.Context, param1: android.content.Intent): string;
				public onPasswordExpiring(param0: android.content.Context, param1: android.content.Intent): void;
				public onPasswordFailed(param0: android.content.Context, param1: android.content.Intent): void;
				public constructor();
				public onPasswordChanged(param0: android.content.Context, param1: android.content.Intent): void;
			}
		}
	}
}

declare module android {
	export module app {
		export module admin {
			export class DevicePolicyManager extends java.lang.Object {
				public static class: java.lang.Class<android.app.admin.DevicePolicyManager>;
				public static ACTION_ADD_DEVICE_ADMIN: string;
				public static EXTRA_DEVICE_ADMIN: string;
				public static EXTRA_ADD_EXPLANATION: string;
				public static ACTION_SET_NEW_PASSWORD: string;
				public static PASSWORD_QUALITY_UNSPECIFIED: number;
				public static PASSWORD_QUALITY_BIOMETRIC_WEAK: number;
				public static PASSWORD_QUALITY_SOMETHING: number;
				public static PASSWORD_QUALITY_NUMERIC: number;
				public static PASSWORD_QUALITY_ALPHABETIC: number;
				public static PASSWORD_QUALITY_ALPHANUMERIC: number;
				public static PASSWORD_QUALITY_COMPLEX: number;
				public static RESET_PASSWORD_REQUIRE_ENTRY: number;
				public static WIPE_EXTERNAL_STORAGE: number;
				public static ENCRYPTION_STATUS_UNSUPPORTED: number;
				public static ENCRYPTION_STATUS_INACTIVE: number;
				public static ENCRYPTION_STATUS_ACTIVATING: number;
				public static ENCRYPTION_STATUS_ACTIVE: number;
				public static ACTION_START_ENCRYPTION: string;
				public static KEYGUARD_DISABLE_FEATURES_NONE: number;
				public static KEYGUARD_DISABLE_WIDGETS_ALL: number;
				public static KEYGUARD_DISABLE_SECURE_CAMERA: number;
				public static KEYGUARD_DISABLE_FEATURES_ALL: number;
				public setPasswordExpirationTimeout(param0: android.content.ComponentName, param1: number): void;
				public getPasswordQuality(param0: android.content.ComponentName): number;
				public wipeData(param0: number): void;
				public setMaximumTimeToLock(param0: android.content.ComponentName, param1: number): void;
				public getMaximumTimeToLock(param0: android.content.ComponentName): number;
				public hasGrantedPolicy(param0: android.content.ComponentName, param1: number): boolean;
				public resetPassword(param0: string, param1: number): boolean;
				public getPasswordMinimumNumeric(param0: android.content.ComponentName): number;
				public getCurrentFailedPasswordAttempts(): number;
				public setPasswordHistoryLength(param0: android.content.ComponentName, param1: number): void;
				public getCameraDisabled(param0: android.content.ComponentName): boolean;
				public getPasswordExpiration(param0: android.content.ComponentName): number;
				public isActivePasswordSufficient(): boolean;
				public setPasswordMinimumSymbols(param0: android.content.ComponentName, param1: number): void;
				public setStorageEncryption(param0: android.content.ComponentName, param1: boolean): number;
				public setPasswordMinimumLength(param0: android.content.ComponentName, param1: number): void;
				public setPasswordMinimumNonLetter(param0: android.content.ComponentName, param1: number): void;
				public removeActiveAdmin(param0: android.content.ComponentName): void;
				public setPasswordMinimumLetters(param0: android.content.ComponentName, param1: number): void;
				public getPasswordHistoryLength(param0: android.content.ComponentName): number;
				public getStorageEncryption(param0: android.content.ComponentName): boolean;
				public getActiveAdmins(): java.util.List<android.content.ComponentName>;
				public setPasswordMinimumLowerCase(param0: android.content.ComponentName, param1: number): void;
				public getPasswordMinimumLetters(param0: android.content.ComponentName): number;
				public setPasswordMinimumNumeric(param0: android.content.ComponentName, param1: number): void;
				public lockNow(): void;
				public getMaximumFailedPasswordsForWipe(param0: android.content.ComponentName): number;
				public setPasswordQuality(param0: android.content.ComponentName, param1: number): void;
				public setMaximumFailedPasswordsForWipe(param0: android.content.ComponentName, param1: number): void;
				public getKeyguardDisabledFeatures(param0: android.content.ComponentName): number;
				public getStorageEncryptionStatus(): number;
				public getPasswordMinimumLowerCase(param0: android.content.ComponentName): number;
				public getPasswordMinimumLength(param0: android.content.ComponentName): number;
				public getPasswordMaximumLength(param0: number): number;
				public getPasswordMinimumUpperCase(param0: android.content.ComponentName): number;
				public setKeyguardDisabledFeatures(param0: android.content.ComponentName, param1: number): void;
				public isAdminActive(param0: android.content.ComponentName): boolean;
				public getPasswordExpirationTimeout(param0: android.content.ComponentName): number;
				public setPasswordMinimumUpperCase(param0: android.content.ComponentName, param1: number): void;
				public setCameraDisabled(param0: android.content.ComponentName, param1: boolean): void;
				public isDeviceOwnerApp(param0: string): boolean;
				public getPasswordMinimumSymbols(param0: android.content.ComponentName): number;
				public getPasswordMinimumNonLetter(param0: android.content.ComponentName): number;
			}
		}
	}
}

declare module android {
	export module app {
		export module backup {
			export abstract class BackupAgent extends android.content.ContextWrapper {
				public static class: java.lang.Class<android.app.backup.BackupAgent>;
				public static TYPE_FILE: number;
				public static TYPE_DIRECTORY: number;
				public onRestoreFile(param0: android.os.ParcelFileDescriptor, param1: number, param2: java.io.File, param3: number, param4: number, param5: number): void;
				public onRestore(param0: android.app.backup.BackupDataInput, param1: number, param2: android.os.ParcelFileDescriptor): void;
				public constructor(param0: android.content.Context);
				public onCreate(): void;
				public fullBackupFile(param0: java.io.File, param1: android.app.backup.FullBackupDataOutput): void;
				public onDestroy(): void;
				public onFullBackup(param0: android.app.backup.FullBackupDataOutput): void;
				public constructor();
				public onBackup(param0: android.os.ParcelFileDescriptor, param1: android.app.backup.BackupDataOutput, param2: android.os.ParcelFileDescriptor): void;
			}
		}
	}
}

declare module android {
	export module app {
		export module backup {
			export class BackupAgentHelper extends android.app.backup.BackupAgent {
				public static class: java.lang.Class<android.app.backup.BackupAgentHelper>;
				public onRestore(param0: android.app.backup.BackupDataInput, param1: number, param2: android.os.ParcelFileDescriptor): void;
				public addHelper(param0: string, param1: android.app.backup.BackupHelper): void;
				public constructor(param0: android.content.Context);
				public constructor();
				public onBackup(param0: android.os.ParcelFileDescriptor, param1: android.app.backup.BackupDataOutput, param2: android.os.ParcelFileDescriptor): void;
			}
		}
	}
}

declare module android {
	export module app {
		export module backup {
			export class BackupDataInput extends java.lang.Object {
				public static class: java.lang.Class<android.app.backup.BackupDataInput>;
				public skipEntityData(): void;
				public getDataSize(): number;
				public readEntityData(param0: native.Array<number>, param1: number, param2: number): number;
				public getKey(): string;
				public readNextHeader(): boolean;
			}
		}
	}
}

declare module android {
	export module app {
		export module backup {
			export class BackupDataInputStream extends java.io.InputStream {
				public static class: java.lang.Class<android.app.backup.BackupDataInputStream>;
				public read(): number;
				public close(): void;
				public read(param0: native.Array<number>): number;
				public read(param0: native.Array<number>, param1: number, param2: number): number;
				public getKey(): string;
				public size(): number;
			}
		}
	}
}

declare module android {
	export module app {
		export module backup {
			export class BackupDataOutput extends java.lang.Object {
				public static class: java.lang.Class<android.app.backup.BackupDataOutput>;
				public writeEntityData(param0: native.Array<number>, param1: number): number;
				public writeEntityHeader(param0: string, param1: number): number;
			}
		}
	}
}

declare module android {
	export module app {
		export module backup {
			export class BackupHelper extends java.lang.Object {
				public static class: java.lang.Class<android.app.backup.BackupHelper>;
				/**
				 * Constructs a new instance of the android.app.backup.BackupHelper interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					performBackup(param0: android.os.ParcelFileDescriptor, param1: android.app.backup.BackupDataOutput, param2: android.os.ParcelFileDescriptor): void;
					restoreEntity(param0: android.app.backup.BackupDataInputStream): void;
					writeNewStateDescription(param0: android.os.ParcelFileDescriptor): void;
				});
				public constructor();
				public writeNewStateDescription(param0: android.os.ParcelFileDescriptor): void;
				public restoreEntity(param0: android.app.backup.BackupDataInputStream): void;
				public performBackup(param0: android.os.ParcelFileDescriptor, param1: android.app.backup.BackupDataOutput, param2: android.os.ParcelFileDescriptor): void;
			}
		}
	}
}

declare module android {
	export module app {
		export module backup {
			export class BackupManager extends java.lang.Object {
				public static class: java.lang.Class<android.app.backup.BackupManager>;
				public dataChanged(): void;
				public static dataChanged(param0: string): void;
				public constructor(param0: android.content.Context);
				public requestRestore(param0: android.app.backup.RestoreObserver): number;
			}
		}
	}
}

declare module android {
	export module app {
		export module backup {
			export class FileBackupHelper extends android.app.backup.FileBackupHelperBase implements android.app.backup.BackupHelper {
				public static class: java.lang.Class<android.app.backup.FileBackupHelper>;
				public writeNewStateDescription(param0: android.os.ParcelFileDescriptor): void;
				public constructor(param0: android.content.Context, param1: native.Array<string>);
				public restoreEntity(param0: android.app.backup.BackupDataInputStream): void;
				public performBackup(param0: android.os.ParcelFileDescriptor, param1: android.app.backup.BackupDataOutput, param2: android.os.ParcelFileDescriptor): void;
			}
		}
	}
}

declare module android {
	export module app {
		export module backup {
			export class FileBackupHelperBase extends java.lang.Object {
				public static class: java.lang.Class<android.app.backup.FileBackupHelperBase>;
				public writeNewStateDescription(param0: android.os.ParcelFileDescriptor): void;
				public finalize(): void;
			}
		}
	}
}

declare module android {
	export module app {
		export module backup {
			export class FullBackupDataOutput extends java.lang.Object {
				public static class: java.lang.Class<android.app.backup.FullBackupDataOutput>;
			}
		}
	}
}

declare module android {
	export module app {
		export module backup {
			export abstract class RestoreObserver extends java.lang.Object {
				public static class: java.lang.Class<android.app.backup.RestoreObserver>;
				public restoreStarting(param0: number): void;
				public onUpdate(param0: number, param1: string): void;
				public restoreFinished(param0: number): void;
				public constructor();
			}
		}
	}
}

declare module android {
	export module app {
		export module backup {
			export class SharedPreferencesBackupHelper extends android.app.backup.FileBackupHelperBase implements android.app.backup.BackupHelper {
				public static class: java.lang.Class<android.app.backup.SharedPreferencesBackupHelper>;
				public writeNewStateDescription(param0: android.os.ParcelFileDescriptor): void;
				public constructor(param0: android.content.Context, param1: native.Array<string>);
				public restoreEntity(param0: android.app.backup.BackupDataInputStream): void;
				public performBackup(param0: android.os.ParcelFileDescriptor, param1: android.app.backup.BackupDataOutput, param2: android.os.ParcelFileDescriptor): void;
			}
		}
	}
}

declare module android {
	export module appwidget {
		export class AppWidgetHost extends java.lang.Object {
			public static class: java.lang.Class<android.appwidget.AppWidgetHost>;
			public deleteAppWidgetId(param0: number): void;
			public clearViews(): void;
			public startListening(): void;
			public allocateAppWidgetId(): number;
			public onProviderChanged(param0: number, param1: android.appwidget.AppWidgetProviderInfo): void;
			public deleteHost(): void;
			public onCreateView(param0: android.content.Context, param1: number, param2: android.appwidget.AppWidgetProviderInfo): android.appwidget.AppWidgetHostView;
			public stopListening(): void;
			public static deleteAllHosts(): void;
			public constructor(param0: android.content.Context, param1: number);
			public createView(param0: android.content.Context, param1: number, param2: android.appwidget.AppWidgetProviderInfo): android.appwidget.AppWidgetHostView;
			public onProvidersChanged(): void;
		}
	}
}

declare module android {
	export module appwidget {
		export class AppWidgetHostView extends android.widget.FrameLayout {
			public static class: java.lang.Class<android.appwidget.AppWidgetHostView>;
			public generateLayoutParams(param0: android.util.AttributeSet): android.view.ViewGroup.LayoutParams;
			public focusableViewAvailable(param0: android.view.View): void;
			public createContextMenu(param0: android.view.ContextMenu): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public addView(param0: android.view.View, param1: number, param2: number): void;
			public focusSearch(param0: android.view.View, param1: number): android.view.View;
			public requestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public showContextMenuForChild(param0: android.view.View): boolean;
			public updateAppWidget(param0: android.widget.RemoteViews): void;
			public bringChildToFront(param0: android.view.View): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public sendAccessibilityEvent(param0: number): void;
			public requestTransparentRegion(param0: android.view.View): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public getParentForAccessibility(): android.view.ViewParent;
			public static getDefaultPaddingForWidget(param0: android.content.Context, param1: android.content.ComponentName, param2: android.graphics.Rect): android.graphics.Rect;
			public getErrorView(): android.view.View;
			public drawChild(param0: android.graphics.Canvas, param1: android.view.View, param2: number): boolean;
			public getParent(): android.view.ViewParent;
			public dispatchRestoreInstanceState(param0: android.util.SparseArray<android.os.Parcelable>): void;
			public startActionModeForChild(param0: android.view.View, param1: android.view.ActionMode.Callback): android.view.ActionMode;
			public getDefaultView(): android.view.View;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public getAppWidgetInfo(): android.appwidget.AppWidgetProviderInfo;
			public requestChildFocus(param0: android.view.View, param1: android.view.View): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public generateLayoutParams(param0: android.view.ViewGroup.LayoutParams): android.view.ViewGroup.LayoutParams;
			public requestChildRectangleOnScreen(param0: android.view.View, param1: android.graphics.Rect, param2: boolean): boolean;
			public constructor(param0: android.content.Context, param1: number, param2: number);
			public focusSearch(param0: number): android.view.View;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public recomputeViewAttributes(param0: android.view.View): void;
			public prepareView(param0: android.view.View): void;
			public isLayoutRequested(): boolean;
			public invalidateChild(param0: android.view.View, param1: android.graphics.Rect): void;
			public setAppWidget(param0: number, param1: android.appwidget.AppWidgetProviderInfo): void;
			public invalidateChildInParent(param0: native.Array<number>, param1: android.graphics.Rect): android.view.ViewParent;
			public requestLayout(): void;
			public updateAppWidgetOptions(param0: android.os.Bundle): void;
			public childDrawableStateChanged(param0: android.view.View): void;
			public addView(param0: android.view.View): void;
			public removeView(param0: android.view.View): void;
			public clearChildFocus(param0: android.view.View): void;
			public getAppWidgetId(): number;
			public updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public requestDisallowInterceptTouchEvent(param0: boolean): void;
			public updateAppWidgetSize(param0: android.os.Bundle, param1: number, param2: number, param3: number, param4: number): void;
			public getChildVisibleRect(param0: android.view.View, param1: android.graphics.Rect, param2: android.graphics.Point): boolean;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public generateLayoutParams(param0: android.util.AttributeSet): android.widget.FrameLayout.LayoutParams;
			public dispatchSaveInstanceState(param0: android.util.SparseArray<android.os.Parcelable>): void;
			public constructor(param0: android.content.Context);
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public addView(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams): void;
			public requestFitSystemWindows(): void;
			public addView(param0: android.view.View, param1: number): void;
		}
	}
}

declare module android {
	export module appwidget {
		export class AppWidgetManager extends java.lang.Object {
			public static class: java.lang.Class<android.appwidget.AppWidgetManager>;
			public static ACTION_APPWIDGET_PICK: string;
			public static ACTION_APPWIDGET_BIND: string;
			public static ACTION_APPWIDGET_CONFIGURE: string;
			public static EXTRA_APPWIDGET_ID: string;
			public static OPTION_APPWIDGET_MIN_WIDTH: string;
			public static OPTION_APPWIDGET_MIN_HEIGHT: string;
			public static OPTION_APPWIDGET_MAX_WIDTH: string;
			public static OPTION_APPWIDGET_MAX_HEIGHT: string;
			public static OPTION_APPWIDGET_HOST_CATEGORY: string;
			public static EXTRA_APPWIDGET_OPTIONS: string;
			public static EXTRA_APPWIDGET_IDS: string;
			public static EXTRA_APPWIDGET_PROVIDER: string;
			public static EXTRA_CUSTOM_INFO: string;
			public static EXTRA_CUSTOM_EXTRAS: string;
			public static INVALID_APPWIDGET_ID: number;
			public static ACTION_APPWIDGET_UPDATE: string;
			public static ACTION_APPWIDGET_OPTIONS_CHANGED: string;
			public static ACTION_APPWIDGET_DELETED: string;
			public static ACTION_APPWIDGET_DISABLED: string;
			public static ACTION_APPWIDGET_ENABLED: string;
			public static META_DATA_APPWIDGET_PROVIDER: string;
			public partiallyUpdateAppWidget(param0: number, param1: android.widget.RemoteViews): void;
			public getAppWidgetOptions(param0: number): android.os.Bundle;
			public updateAppWidget(param0: number, param1: android.widget.RemoteViews): void;
			public bindAppWidgetIdIfAllowed(param0: number, param1: android.content.ComponentName, param2: android.os.Bundle): boolean;
			public partiallyUpdateAppWidget(param0: native.Array<number>, param1: android.widget.RemoteViews): void;
			public static getInstance(param0: android.content.Context): android.appwidget.AppWidgetManager;
			public updateAppWidget(param0: native.Array<number>, param1: android.widget.RemoteViews): void;
			public updateAppWidget(param0: android.content.ComponentName, param1: android.widget.RemoteViews): void;
			public notifyAppWidgetViewDataChanged(param0: native.Array<number>, param1: number): void;
			public updateAppWidgetOptions(param0: number, param1: android.os.Bundle): void;
			public getAppWidgetInfo(param0: number): android.appwidget.AppWidgetProviderInfo;
			public notifyAppWidgetViewDataChanged(param0: number, param1: number): void;
			public bindAppWidgetIdIfAllowed(param0: number, param1: android.content.ComponentName): boolean;
			public getAppWidgetIds(param0: android.content.ComponentName): native.Array<number>;
			public getInstalledProviders(): java.util.List<android.appwidget.AppWidgetProviderInfo>;
		}
	}
}

declare module android {
	export module appwidget {
		export class AppWidgetProvider extends android.content.BroadcastReceiver {
			public static class: java.lang.Class<android.appwidget.AppWidgetProvider>;
			public onAppWidgetOptionsChanged(param0: android.content.Context, param1: android.appwidget.AppWidgetManager, param2: number, param3: android.os.Bundle): void;
			public onReceive(param0: android.content.Context, param1: android.content.Intent): void;
			public onDeleted(param0: android.content.Context, param1: native.Array<number>): void;
			public constructor();
			public onEnabled(param0: android.content.Context): void;
			public onUpdate(param0: android.content.Context, param1: android.appwidget.AppWidgetManager, param2: native.Array<number>): void;
			public onDisabled(param0: android.content.Context): void;
		}
	}
}

declare module android {
	export module appwidget {
		export class AppWidgetProviderInfo extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.appwidget.AppWidgetProviderInfo>;
			public static RESIZE_NONE: number;
			public static RESIZE_HORIZONTAL: number;
			public static RESIZE_VERTICAL: number;
			public static RESIZE_BOTH: number;
			public static WIDGET_CATEGORY_HOME_SCREEN: number;
			public static WIDGET_CATEGORY_KEYGUARD: number;
			public provider: android.content.ComponentName;
			public minWidth: number;
			public minHeight: number;
			public minResizeWidth: number;
			public minResizeHeight: number;
			public updatePeriodMillis: number;
			public initialLayout: number;
			public initialKeyguardLayout: number;
			public configure: android.content.ComponentName;
			public label: string;
			public icon: number;
			public autoAdvanceViewId: number;
			public previewImage: number;
			public resizeMode: number;
			public widgetCategory: number;
			public static CREATOR: android.os.Parcelable.Creator<android.appwidget.AppWidgetProviderInfo>;
			public clone(): any;
			public toString(): string;
			public constructor(param0: android.os.Parcel);
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public constructor();
			public clone(): android.appwidget.AppWidgetProviderInfo;
		}
	}
}

declare module android {
	export module bluetooth {
		export class BluetoothA2dp extends java.lang.Object implements android.bluetooth.BluetoothProfile {
			public static class: java.lang.Class<android.bluetooth.BluetoothA2dp>;
			public static ACTION_CONNECTION_STATE_CHANGED: string;
			public static ACTION_PLAYING_STATE_CHANGED: string;
			public static STATE_PLAYING: number;
			public static STATE_NOT_PLAYING: number;
			public getConnectedDevices(): java.util.List<android.bluetooth.BluetoothDevice>;
			public isA2dpPlaying(param0: android.bluetooth.BluetoothDevice): boolean;
			public getDevicesMatchingConnectionStates(param0: native.Array<number>): java.util.List<android.bluetooth.BluetoothDevice>;
			public getConnectionState(param0: android.bluetooth.BluetoothDevice): number;
			public finalize(): void;
		}
	}
}

declare module android {
	export module bluetooth {
		export class BluetoothAdapter extends java.lang.Object {
			public static class: java.lang.Class<android.bluetooth.BluetoothAdapter>;
			public static ERROR: number;
			public static ACTION_STATE_CHANGED: string;
			public static EXTRA_STATE: string;
			public static EXTRA_PREVIOUS_STATE: string;
			public static STATE_OFF: number;
			public static STATE_TURNING_ON: number;
			public static STATE_ON: number;
			public static STATE_TURNING_OFF: number;
			public static ACTION_REQUEST_DISCOVERABLE: string;
			public static EXTRA_DISCOVERABLE_DURATION: string;
			public static ACTION_REQUEST_ENABLE: string;
			public static ACTION_SCAN_MODE_CHANGED: string;
			public static EXTRA_SCAN_MODE: string;
			public static EXTRA_PREVIOUS_SCAN_MODE: string;
			public static SCAN_MODE_NONE: number;
			public static SCAN_MODE_CONNECTABLE: number;
			public static SCAN_MODE_CONNECTABLE_DISCOVERABLE: number;
			public static ACTION_DISCOVERY_STARTED: string;
			public static ACTION_DISCOVERY_FINISHED: string;
			public static ACTION_LOCAL_NAME_CHANGED: string;
			public static EXTRA_LOCAL_NAME: string;
			public static ACTION_CONNECTION_STATE_CHANGED: string;
			public static EXTRA_CONNECTION_STATE: string;
			public static EXTRA_PREVIOUS_CONNECTION_STATE: string;
			public static STATE_DISCONNECTED: number;
			public static STATE_CONNECTING: number;
			public static STATE_CONNECTED: number;
			public static STATE_DISCONNECTING: number;
			public getRemoteDevice(param0: native.Array<number>): android.bluetooth.BluetoothDevice;
			public getProfileProxy(param0: android.content.Context, param1: android.bluetooth.BluetoothProfile.ServiceListener, param2: number): boolean;
			public startLeScan(param0: native.Array<java.util.UUID>, param1: android.bluetooth.BluetoothAdapter.LeScanCallback): boolean;
			public listenUsingRfcommWithServiceRecord(param0: string, param1: java.util.UUID): android.bluetooth.BluetoothServerSocket;
			public static getDefaultAdapter(): android.bluetooth.BluetoothAdapter;
			public getAddress(): string;
			public setName(param0: string): boolean;
			public cancelDiscovery(): boolean;
			public static checkBluetoothAddress(param0: string): boolean;
			public isDiscovering(): boolean;
			public startDiscovery(): boolean;
			public closeProfileProxy(param0: number, param1: android.bluetooth.BluetoothProfile): void;
			public getRemoteDevice(param0: string): android.bluetooth.BluetoothDevice;
			public startLeScan(param0: android.bluetooth.BluetoothAdapter.LeScanCallback): boolean;
			public disable(): boolean;
			public getState(): number;
			public finalize(): void;
			public getBondedDevices(): java.util.Set<android.bluetooth.BluetoothDevice>;
			public enable(): boolean;
			public getScanMode(): number;
			public isEnabled(): boolean;
			public stopLeScan(param0: android.bluetooth.BluetoothAdapter.LeScanCallback): void;
			public getProfileConnectionState(param0: number): number;
			public getName(): string;
			public listenUsingInsecureRfcommWithServiceRecord(param0: string, param1: java.util.UUID): android.bluetooth.BluetoothServerSocket;
		}
		export module BluetoothAdapter {
			export class LeScanCallback extends java.lang.Object {
				public static class: java.lang.Class<android.bluetooth.BluetoothAdapter.LeScanCallback>;
				/**
				 * Constructs a new instance of the android.bluetooth.BluetoothAdapter$LeScanCallback interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onLeScan(param0: android.bluetooth.BluetoothDevice, param1: number, param2: native.Array<number>): void;
				});
				public constructor();
				public onLeScan(param0: android.bluetooth.BluetoothDevice, param1: number, param2: native.Array<number>): void;
			}
		}
	}
}

declare module android {
	export module bluetooth {
		export class BluetoothAssignedNumbers extends java.lang.Object {
			public static class: java.lang.Class<android.bluetooth.BluetoothAssignedNumbers>;
			public static ERICSSON_TECHNOLOGY: number;
			public static NOKIA_MOBILE_PHONES: number;
			public static INTEL: number;
			public static IBM: number;
			public static TOSHIBA: number;
			public static THREECOM: number;
			public static MICROSOFT: number;
			public static LUCENT: number;
			public static MOTOROLA: number;
			public static INFINEON_TECHNOLOGIES: number;
			public static CAMBRIDGE_SILICON_RADIO: number;
			public static SILICON_WAVE: number;
			public static DIGIANSWER: number;
			public static TEXAS_INSTRUMENTS: number;
			public static PARTHUS_TECHNOLOGIES: number;
			public static BROADCOM: number;
			public static MITEL_SEMICONDUCTOR: number;
			public static WIDCOMM: number;
			public static ZEEVO: number;
			public static ATMEL: number;
			public static MITSUBISHI_ELECTRIC: number;
			public static RTX_TELECOM: number;
			public static KC_TECHNOLOGY: number;
			public static NEWLOGIC: number;
			public static TRANSILICA: number;
			public static ROHDE_AND_SCHWARZ: number;
			public static TTPCOM: number;
			public static SIGNIA_TECHNOLOGIES: number;
			public static CONEXANT_SYSTEMS: number;
			public static QUALCOMM: number;
			public static INVENTEL: number;
			public static AVM_BERLIN: number;
			public static BANDSPEED: number;
			public static MANSELLA: number;
			public static NEC: number;
			public static WAVEPLUS_TECHNOLOGY: number;
			public static ALCATEL: number;
			public static PHILIPS_SEMICONDUCTORS: number;
			public static C_TECHNOLOGIES: number;
			public static OPEN_INTERFACE: number;
			public static RF_MICRO_DEVICES: number;
			public static HITACHI: number;
			public static SYMBOL_TECHNOLOGIES: number;
			public static TENOVIS: number;
			public static MACRONIX: number;
			public static GCT_SEMICONDUCTOR: number;
			public static NORWOOD_SYSTEMS: number;
			public static MEWTEL_TECHNOLOGY: number;
			public static ST_MICROELECTRONICS: number;
			public static SYNOPSYS: number;
			public static RED_M: number;
			public static COMMIL: number;
			public static CATC: number;
			public static ECLIPSE: number;
			public static RENESAS_TECHNOLOGY: number;
			public static MOBILIAN_CORPORATION: number;
			public static TERAX: number;
			public static INTEGRATED_SYSTEM_SOLUTION: number;
			public static MATSUSHITA_ELECTRIC: number;
			public static GENNUM: number;
			public static RESEARCH_IN_MOTION: number;
			public static IPEXTREME: number;
			public static SYSTEMS_AND_CHIPS: number;
			public static BLUETOOTH_SIG: number;
			public static SEIKO_EPSON: number;
			public static INTEGRATED_SILICON_SOLUTION: number;
			public static CONWISE_TECHNOLOGY: number;
			public static PARROT: number;
			public static SOCKET_MOBILE: number;
			public static ATHEROS_COMMUNICATIONS: number;
			public static MEDIATEK: number;
			public static BLUEGIGA: number;
			public static MARVELL: number;
			public static THREE_DSP: number;
			public static ACCEL_SEMICONDUCTOR: number;
			public static CONTINENTAL_AUTOMOTIVE: number;
			public static APPLE: number;
			public static STACCATO_COMMUNICATIONS: number;
			public static AVAGO: number;
			public static APT_LICENSING: number;
			public static SIRF_TECHNOLOGY: number;
			public static TZERO_TECHNOLOGIES: number;
			public static J_AND_M: number;
			public static FREE2MOVE: number;
			public static THREE_DIJOY: number;
			public static PLANTRONICS: number;
			public static SONY_ERICSSON: number;
			public static HARMAN_INTERNATIONAL: number;
			public static VIZIO: number;
			public static NORDIC_SEMICONDUCTOR: number;
			public static EM_MICROELECTRONIC_MARIN: number;
			public static RALINK_TECHNOLOGY: number;
			public static BELKIN_INTERNATIONAL: number;
			public static REALTEK_SEMICONDUCTOR: number;
			public static STONESTREET_ONE: number;
			public static WICENTRIC: number;
			public static RIVIERAWAVES: number;
		}
	}
}

declare module android {
	export module bluetooth {
		export class BluetoothClass extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.bluetooth.BluetoothClass>;
			public static CREATOR: android.os.Parcelable.Creator<android.bluetooth.BluetoothClass>;
			public equals(param0: any): boolean;
			public toString(): string;
			public hasService(param0: number): boolean;
			public describeContents(): number;
			public getDeviceClass(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public getMajorDeviceClass(): number;
			public hashCode(): number;
		}
		export module BluetoothClass {
			export class Device extends java.lang.Object {
				public static class: java.lang.Class<android.bluetooth.BluetoothClass.Device>;
				public static COMPUTER_UNCATEGORIZED: number;
				public static COMPUTER_DESKTOP: number;
				public static COMPUTER_SERVER: number;
				public static COMPUTER_LAPTOP: number;
				public static COMPUTER_HANDHELD_PC_PDA: number;
				public static COMPUTER_PALM_SIZE_PC_PDA: number;
				public static COMPUTER_WEARABLE: number;
				public static PHONE_UNCATEGORIZED: number;
				public static PHONE_CELLULAR: number;
				public static PHONE_CORDLESS: number;
				public static PHONE_SMART: number;
				public static PHONE_MODEM_OR_GATEWAY: number;
				public static PHONE_ISDN: number;
				public static AUDIO_VIDEO_UNCATEGORIZED: number;
				public static AUDIO_VIDEO_WEARABLE_HEADSET: number;
				public static AUDIO_VIDEO_HANDSFREE: number;
				public static AUDIO_VIDEO_MICROPHONE: number;
				public static AUDIO_VIDEO_LOUDSPEAKER: number;
				public static AUDIO_VIDEO_HEADPHONES: number;
				public static AUDIO_VIDEO_PORTABLE_AUDIO: number;
				public static AUDIO_VIDEO_CAR_AUDIO: number;
				public static AUDIO_VIDEO_SET_TOP_BOX: number;
				public static AUDIO_VIDEO_HIFI_AUDIO: number;
				public static AUDIO_VIDEO_VCR: number;
				public static AUDIO_VIDEO_VIDEO_CAMERA: number;
				public static AUDIO_VIDEO_CAMCORDER: number;
				public static AUDIO_VIDEO_VIDEO_MONITOR: number;
				public static AUDIO_VIDEO_VIDEO_DISPLAY_AND_LOUDSPEAKER: number;
				public static AUDIO_VIDEO_VIDEO_CONFERENCING: number;
				public static AUDIO_VIDEO_VIDEO_GAMING_TOY: number;
				public static WEARABLE_UNCATEGORIZED: number;
				public static WEARABLE_WRIST_WATCH: number;
				public static WEARABLE_PAGER: number;
				public static WEARABLE_JACKET: number;
				public static WEARABLE_HELMET: number;
				public static WEARABLE_GLASSES: number;
				public static TOY_UNCATEGORIZED: number;
				public static TOY_ROBOT: number;
				public static TOY_VEHICLE: number;
				public static TOY_DOLL_ACTION_FIGURE: number;
				public static TOY_CONTROLLER: number;
				public static TOY_GAME: number;
				public static HEALTH_UNCATEGORIZED: number;
				public static HEALTH_BLOOD_PRESSURE: number;
				public static HEALTH_THERMOMETER: number;
				public static HEALTH_WEIGHING: number;
				public static HEALTH_GLUCOSE: number;
				public static HEALTH_PULSE_OXIMETER: number;
				public static HEALTH_PULSE_RATE: number;
				public static HEALTH_DATA_DISPLAY: number;
				public constructor();
			}
			export module Device {
				export class Major extends java.lang.Object {
					public static class: java.lang.Class<android.bluetooth.BluetoothClass.Device.Major>;
					public static MISC: number;
					public static COMPUTER: number;
					public static PHONE: number;
					public static NETWORKING: number;
					public static AUDIO_VIDEO: number;
					public static PERIPHERAL: number;
					public static IMAGING: number;
					public static WEARABLE: number;
					public static TOY: number;
					public static HEALTH: number;
					public static UNCATEGORIZED: number;
					public constructor();
				}
			}
			export class Service extends java.lang.Object {
				public static class: java.lang.Class<android.bluetooth.BluetoothClass.Service>;
				public static LIMITED_DISCOVERABILITY: number;
				public static POSITIONING: number;
				public static NETWORKING: number;
				public static RENDER: number;
				public static CAPTURE: number;
				public static OBJECT_TRANSFER: number;
				public static AUDIO: number;
				public static TELEPHONY: number;
				public static INFORMATION: number;
				public constructor();
			}
		}
	}
}

declare module android {
	export module bluetooth {
		export class BluetoothDevice extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.bluetooth.BluetoothDevice>;
			public static ERROR: number;
			public static ACTION_FOUND: string;
			public static ACTION_CLASS_CHANGED: string;
			public static ACTION_ACL_CONNECTED: string;
			public static ACTION_ACL_DISCONNECT_REQUESTED: string;
			public static ACTION_ACL_DISCONNECTED: string;
			public static ACTION_NAME_CHANGED: string;
			public static ACTION_BOND_STATE_CHANGED: string;
			public static EXTRA_DEVICE: string;
			public static EXTRA_NAME: string;
			public static EXTRA_RSSI: string;
			public static EXTRA_CLASS: string;
			public static EXTRA_BOND_STATE: string;
			public static EXTRA_PREVIOUS_BOND_STATE: string;
			public static BOND_NONE: number;
			public static BOND_BONDING: number;
			public static BOND_BONDED: number;
			public static DEVICE_TYPE_UNKNOWN: number;
			public static DEVICE_TYPE_CLASSIC: number;
			public static DEVICE_TYPE_LE: number;
			public static DEVICE_TYPE_DUAL: number;
			public static ACTION_UUID: string;
			public static EXTRA_UUID: string;
			public static CREATOR: android.os.Parcelable.Creator<android.bluetooth.BluetoothDevice>;
			public equals(param0: any): boolean;
			public getType(): number;
			public fetchUuidsWithSdp(): boolean;
			public getAddress(): string;
			public createInsecureRfcommSocketToServiceRecord(param0: java.util.UUID): android.bluetooth.BluetoothSocket;
			public connectGatt(param0: android.content.Context, param1: boolean, param2: android.bluetooth.BluetoothGattCallback): android.bluetooth.BluetoothGatt;
			public getBondState(): number;
			public getUuids(): native.Array<android.os.ParcelUuid>;
			public toString(): string;
			public getName(): string;
			public describeContents(): number;
			public createRfcommSocketToServiceRecord(param0: java.util.UUID): android.bluetooth.BluetoothSocket;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public getBluetoothClass(): android.bluetooth.BluetoothClass;
			public hashCode(): number;
		}
	}
}

declare module android {
	export module bluetooth {
		export class BluetoothGatt extends java.lang.Object implements android.bluetooth.BluetoothProfile {
			public static class: java.lang.Class<android.bluetooth.BluetoothGatt>;
			public static GATT_SUCCESS: number;
			public static GATT_READ_NOT_PERMITTED: number;
			public static GATT_WRITE_NOT_PERMITTED: number;
			public static GATT_INSUFFICIENT_AUTHENTICATION: number;
			public static GATT_REQUEST_NOT_SUPPORTED: number;
			public static GATT_INSUFFICIENT_ENCRYPTION: number;
			public static GATT_INVALID_OFFSET: number;
			public static GATT_INVALID_ATTRIBUTE_LENGTH: number;
			public static GATT_FAILURE: number;
			public getConnectedDevices(): java.util.List<android.bluetooth.BluetoothDevice>;
			public connect(): boolean;
			public getServices(): java.util.List<android.bluetooth.BluetoothGattService>;
			public getDevicesMatchingConnectionStates(param0: native.Array<number>): java.util.List<android.bluetooth.BluetoothDevice>;
			public executeReliableWrite(): boolean;
			public setCharacteristicNotification(param0: android.bluetooth.BluetoothGattCharacteristic, param1: boolean): boolean;
			public readRemoteRssi(): boolean;
			public beginReliableWrite(): boolean;
			public writeDescriptor(param0: android.bluetooth.BluetoothGattDescriptor): boolean;
			public readCharacteristic(param0: android.bluetooth.BluetoothGattCharacteristic): boolean;
			public getConnectionState(param0: android.bluetooth.BluetoothDevice): number;
			public getDevice(): android.bluetooth.BluetoothDevice;
			public readDescriptor(param0: android.bluetooth.BluetoothGattDescriptor): boolean;
			public close(): void;
			public abortReliableWrite(param0: android.bluetooth.BluetoothDevice): void;
			public getService(param0: java.util.UUID): android.bluetooth.BluetoothGattService;
			public writeCharacteristic(param0: android.bluetooth.BluetoothGattCharacteristic): boolean;
			public disconnect(): void;
			public discoverServices(): boolean;
		}
	}
}

declare module android {
	export module bluetooth {
		export abstract class BluetoothGattCallback extends java.lang.Object {
			public static class: java.lang.Class<android.bluetooth.BluetoothGattCallback>;
			public onDescriptorRead(param0: android.bluetooth.BluetoothGatt, param1: android.bluetooth.BluetoothGattDescriptor, param2: number): void;
			public onConnectionStateChange(param0: android.bluetooth.BluetoothGatt, param1: number, param2: number): void;
			public onServicesDiscovered(param0: android.bluetooth.BluetoothGatt, param1: number): void;
			public onReliableWriteCompleted(param0: android.bluetooth.BluetoothGatt, param1: number): void;
			public onCharacteristicWrite(param0: android.bluetooth.BluetoothGatt, param1: android.bluetooth.BluetoothGattCharacteristic, param2: number): void;
			public constructor();
			public onDescriptorWrite(param0: android.bluetooth.BluetoothGatt, param1: android.bluetooth.BluetoothGattDescriptor, param2: number): void;
			public onReadRemoteRssi(param0: android.bluetooth.BluetoothGatt, param1: number, param2: number): void;
			public onCharacteristicRead(param0: android.bluetooth.BluetoothGatt, param1: android.bluetooth.BluetoothGattCharacteristic, param2: number): void;
			public onCharacteristicChanged(param0: android.bluetooth.BluetoothGatt, param1: android.bluetooth.BluetoothGattCharacteristic): void;
		}
	}
}

declare module android {
	export module bluetooth {
		export class BluetoothGattCharacteristic extends java.lang.Object {
			public static class: java.lang.Class<android.bluetooth.BluetoothGattCharacteristic>;
			public static PROPERTY_BROADCAST: number;
			public static PROPERTY_READ: number;
			public static PROPERTY_WRITE_NO_RESPONSE: number;
			public static PROPERTY_WRITE: number;
			public static PROPERTY_NOTIFY: number;
			public static PROPERTY_INDICATE: number;
			public static PROPERTY_SIGNED_WRITE: number;
			public static PROPERTY_EXTENDED_PROPS: number;
			public static PERMISSION_READ: number;
			public static PERMISSION_READ_ENCRYPTED: number;
			public static PERMISSION_READ_ENCRYPTED_MITM: number;
			public static PERMISSION_WRITE: number;
			public static PERMISSION_WRITE_ENCRYPTED: number;
			public static PERMISSION_WRITE_ENCRYPTED_MITM: number;
			public static PERMISSION_WRITE_SIGNED: number;
			public static PERMISSION_WRITE_SIGNED_MITM: number;
			public static WRITE_TYPE_DEFAULT: number;
			public static WRITE_TYPE_NO_RESPONSE: number;
			public static WRITE_TYPE_SIGNED: number;
			public static FORMAT_UINT8: number;
			public static FORMAT_UINT16: number;
			public static FORMAT_UINT32: number;
			public static FORMAT_SINT8: number;
			public static FORMAT_SINT16: number;
			public static FORMAT_SINT32: number;
			public static FORMAT_SFLOAT: number;
			public static FORMAT_FLOAT: number;
			public mDescriptors: java.util.List<android.bluetooth.BluetoothGattDescriptor>;
			public setValue(param0: string): boolean;
			public constructor(param0: java.util.UUID, param1: number, param2: number);
			public getStringValue(param0: number): string;
			public getFloatValue(param0: number, param1: number): java.lang.Float;
			public addDescriptor(param0: android.bluetooth.BluetoothGattDescriptor): boolean;
			public getValue(): native.Array<number>;
			public getIntValue(param0: number, param1: number): java.lang.Integer;
			public setValue(param0: number, param1: number, param2: number): boolean;
			public getUuid(): java.util.UUID;
			public getDescriptor(param0: java.util.UUID): android.bluetooth.BluetoothGattDescriptor;
			public getService(): android.bluetooth.BluetoothGattService;
			public getProperties(): number;
			public getPermissions(): number;
			public getInstanceId(): number;
			public setValue(param0: number, param1: number, param2: number, param3: number): boolean;
			public getDescriptors(): java.util.List<android.bluetooth.BluetoothGattDescriptor>;
			public setValue(param0: native.Array<number>): boolean;
			public getWriteType(): number;
			public setWriteType(param0: number): void;
		}
	}
}

declare module android {
	export module bluetooth {
		export class BluetoothGattDescriptor extends java.lang.Object {
			public static class: java.lang.Class<android.bluetooth.BluetoothGattDescriptor>;
			public static ENABLE_NOTIFICATION_VALUE: native.Array<number>;
			public static ENABLE_INDICATION_VALUE: native.Array<number>;
			public static DISABLE_NOTIFICATION_VALUE: native.Array<number>;
			public static PERMISSION_READ: number;
			public static PERMISSION_READ_ENCRYPTED: number;
			public static PERMISSION_READ_ENCRYPTED_MITM: number;
			public static PERMISSION_WRITE: number;
			public static PERMISSION_WRITE_ENCRYPTED: number;
			public static PERMISSION_WRITE_ENCRYPTED_MITM: number;
			public static PERMISSION_WRITE_SIGNED: number;
			public static PERMISSION_WRITE_SIGNED_MITM: number;
			public constructor(param0: java.util.UUID, param1: number);
			public getPermissions(): number;
			public getCharacteristic(): android.bluetooth.BluetoothGattCharacteristic;
			public getValue(): native.Array<number>;
			public setValue(param0: native.Array<number>): boolean;
			public getUuid(): java.util.UUID;
		}
	}
}

declare module android {
	export module bluetooth {
		export class BluetoothGattServer extends java.lang.Object implements android.bluetooth.BluetoothProfile {
			public static class: java.lang.Class<android.bluetooth.BluetoothGattServer>;
			public getConnectedDevices(): java.util.List<android.bluetooth.BluetoothDevice>;
			public cancelConnection(param0: android.bluetooth.BluetoothDevice): void;
			public getServices(): java.util.List<android.bluetooth.BluetoothGattService>;
			public getDevicesMatchingConnectionStates(param0: native.Array<number>): java.util.List<android.bluetooth.BluetoothDevice>;
			public removeService(param0: android.bluetooth.BluetoothGattService): boolean;
			public clearServices(): void;
			public sendResponse(param0: android.bluetooth.BluetoothDevice, param1: number, param2: number, param3: number, param4: native.Array<number>): boolean;
			public notifyCharacteristicChanged(param0: android.bluetooth.BluetoothDevice, param1: android.bluetooth.BluetoothGattCharacteristic, param2: boolean): boolean;
			public addService(param0: android.bluetooth.BluetoothGattService): boolean;
			public getConnectionState(param0: android.bluetooth.BluetoothDevice): number;
			public connect(param0: android.bluetooth.BluetoothDevice, param1: boolean): boolean;
			public close(): void;
			public getService(param0: java.util.UUID): android.bluetooth.BluetoothGattService;
		}
	}
}

declare module android {
	export module bluetooth {
		export abstract class BluetoothGattServerCallback extends java.lang.Object {
			public static class: java.lang.Class<android.bluetooth.BluetoothGattServerCallback>;
			public onCharacteristicReadRequest(param0: android.bluetooth.BluetoothDevice, param1: number, param2: number, param3: android.bluetooth.BluetoothGattCharacteristic): void;
			public onCharacteristicWriteRequest(param0: android.bluetooth.BluetoothDevice, param1: number, param2: android.bluetooth.BluetoothGattCharacteristic, param3: boolean, param4: boolean, param5: number, param6: native.Array<number>): void;
			public onDescriptorWriteRequest(param0: android.bluetooth.BluetoothDevice, param1: number, param2: android.bluetooth.BluetoothGattDescriptor, param3: boolean, param4: boolean, param5: number, param6: native.Array<number>): void;
			public onServiceAdded(param0: number, param1: android.bluetooth.BluetoothGattService): void;
			public constructor();
			public onExecuteWrite(param0: android.bluetooth.BluetoothDevice, param1: number, param2: boolean): void;
			public onConnectionStateChange(param0: android.bluetooth.BluetoothDevice, param1: number, param2: number): void;
			public onDescriptorReadRequest(param0: android.bluetooth.BluetoothDevice, param1: number, param2: number, param3: android.bluetooth.BluetoothGattDescriptor): void;
		}
	}
}

declare module android {
	export module bluetooth {
		export class BluetoothGattService extends java.lang.Object {
			public static class: java.lang.Class<android.bluetooth.BluetoothGattService>;
			public static SERVICE_TYPE_PRIMARY: number;
			public static SERVICE_TYPE_SECONDARY: number;
			public mCharacteristics: java.util.List<android.bluetooth.BluetoothGattCharacteristic>;
			public mIncludedServices: java.util.List<android.bluetooth.BluetoothGattService>;
			public getType(): number;
			public constructor(param0: java.util.UUID, param1: number);
			public addService(param0: android.bluetooth.BluetoothGattService): boolean;
			public getInstanceId(): number;
			public getCharacteristic(param0: java.util.UUID): android.bluetooth.BluetoothGattCharacteristic;
			public getIncludedServices(): java.util.List<android.bluetooth.BluetoothGattService>;
			public getCharacteristics(): java.util.List<android.bluetooth.BluetoothGattCharacteristic>;
			public getUuid(): java.util.UUID;
			public addCharacteristic(param0: android.bluetooth.BluetoothGattCharacteristic): boolean;
		}
	}
}

declare module android {
	export module bluetooth {
		export class BluetoothHeadset extends java.lang.Object implements android.bluetooth.BluetoothProfile {
			public static class: java.lang.Class<android.bluetooth.BluetoothHeadset>;
			public static ACTION_CONNECTION_STATE_CHANGED: string;
			public static ACTION_AUDIO_STATE_CHANGED: string;
			public static ACTION_VENDOR_SPECIFIC_HEADSET_EVENT: string;
			public static EXTRA_VENDOR_SPECIFIC_HEADSET_EVENT_CMD: string;
			public static EXTRA_VENDOR_SPECIFIC_HEADSET_EVENT_CMD_TYPE: string;
			public static AT_CMD_TYPE_READ: number;
			public static AT_CMD_TYPE_TEST: number;
			public static AT_CMD_TYPE_SET: number;
			public static AT_CMD_TYPE_BASIC: number;
			public static AT_CMD_TYPE_ACTION: number;
			public static EXTRA_VENDOR_SPECIFIC_HEADSET_EVENT_ARGS: string;
			public static VENDOR_SPECIFIC_HEADSET_EVENT_COMPANY_ID_CATEGORY: string;
			public static STATE_AUDIO_DISCONNECTED: number;
			public static STATE_AUDIO_CONNECTING: number;
			public static STATE_AUDIO_CONNECTED: number;
			public getConnectedDevices(): java.util.List<android.bluetooth.BluetoothDevice>;
			public isAudioConnected(param0: android.bluetooth.BluetoothDevice): boolean;
			public getDevicesMatchingConnectionStates(param0: native.Array<number>): java.util.List<android.bluetooth.BluetoothDevice>;
			public getConnectionState(param0: android.bluetooth.BluetoothDevice): number;
			public stopVoiceRecognition(param0: android.bluetooth.BluetoothDevice): boolean;
			public startVoiceRecognition(param0: android.bluetooth.BluetoothDevice): boolean;
		}
	}
}

declare module android {
	export module bluetooth {
		export class BluetoothHealth extends java.lang.Object implements android.bluetooth.BluetoothProfile {
			public static class: java.lang.Class<android.bluetooth.BluetoothHealth>;
			public static SOURCE_ROLE: number;
			public static SINK_ROLE: number;
			public static CHANNEL_TYPE_RELIABLE: number;
			public static CHANNEL_TYPE_STREAMING: number;
			public static STATE_CHANNEL_DISCONNECTED: number;
			public static STATE_CHANNEL_CONNECTING: number;
			public static STATE_CHANNEL_CONNECTED: number;
			public static STATE_CHANNEL_DISCONNECTING: number;
			public static APP_CONFIG_REGISTRATION_SUCCESS: number;
			public static APP_CONFIG_REGISTRATION_FAILURE: number;
			public static APP_CONFIG_UNREGISTRATION_SUCCESS: number;
			public static APP_CONFIG_UNREGISTRATION_FAILURE: number;
			public connectChannelToSource(param0: android.bluetooth.BluetoothDevice, param1: android.bluetooth.BluetoothHealthAppConfiguration): boolean;
			public getConnectedDevices(): java.util.List<android.bluetooth.BluetoothDevice>;
			public unregisterAppConfiguration(param0: android.bluetooth.BluetoothHealthAppConfiguration): boolean;
			public getDevicesMatchingConnectionStates(param0: native.Array<number>): java.util.List<android.bluetooth.BluetoothDevice>;
			public getConnectionState(param0: android.bluetooth.BluetoothDevice): number;
			public getMainChannelFd(param0: android.bluetooth.BluetoothDevice, param1: android.bluetooth.BluetoothHealthAppConfiguration): android.os.ParcelFileDescriptor;
			public disconnectChannel(param0: android.bluetooth.BluetoothDevice, param1: android.bluetooth.BluetoothHealthAppConfiguration, param2: number): boolean;
			public registerSinkAppConfiguration(param0: string, param1: number, param2: android.bluetooth.BluetoothHealthCallback): boolean;
		}
	}
}

declare module android {
	export module bluetooth {
		export class BluetoothHealthAppConfiguration extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.bluetooth.BluetoothHealthAppConfiguration>;
			public static CREATOR: android.os.Parcelable.Creator<android.bluetooth.BluetoothHealthAppConfiguration>;
			public equals(param0: any): boolean;
			public toString(): string;
			public getDataType(): number;
			public getName(): string;
			public getRole(): number;
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public hashCode(): number;
		}
	}
}

declare module android {
	export module bluetooth {
		export abstract class BluetoothHealthCallback extends java.lang.Object {
			public static class: java.lang.Class<android.bluetooth.BluetoothHealthCallback>;
			public onHealthChannelStateChange(param0: android.bluetooth.BluetoothHealthAppConfiguration, param1: android.bluetooth.BluetoothDevice, param2: number, param3: number, param4: android.os.ParcelFileDescriptor, param5: number): void;
			public constructor();
			public onHealthAppConfigurationStatusChange(param0: android.bluetooth.BluetoothHealthAppConfiguration, param1: number): void;
		}
	}
}

declare module android {
	export module bluetooth {
		export class BluetoothManager extends java.lang.Object {
			public static class: java.lang.Class<android.bluetooth.BluetoothManager>;
			public getDevicesMatchingConnectionStates(param0: number, param1: native.Array<number>): java.util.List<android.bluetooth.BluetoothDevice>;
			public getAdapter(): android.bluetooth.BluetoothAdapter;
			public getConnectedDevices(param0: number): java.util.List<android.bluetooth.BluetoothDevice>;
			public openGattServer(param0: android.content.Context, param1: android.bluetooth.BluetoothGattServerCallback): android.bluetooth.BluetoothGattServer;
			public getConnectionState(param0: android.bluetooth.BluetoothDevice, param1: number): number;
		}
	}
}

declare module android {
	export module bluetooth {
		export class BluetoothProfile extends java.lang.Object {
			public static class: java.lang.Class<android.bluetooth.BluetoothProfile>;
			/**
			 * Constructs a new instance of the android.bluetooth.BluetoothProfile interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				getConnectedDevices(): java.util.List<android.bluetooth.BluetoothDevice>;
				getDevicesMatchingConnectionStates(param0: native.Array<number>): java.util.List<android.bluetooth.BluetoothDevice>;
				getConnectionState(param0: android.bluetooth.BluetoothDevice): number;
			});
			public constructor();
			public static STATE_DISCONNECTED: number;
			public static EXTRA_STATE: string;
			public static HEALTH: number;
			public static GATT: number;
			public static STATE_DISCONNECTING: number;
			public static HEADSET: number;
			public static STATE_CONNECTING: number;
			public static A2DP: number;
			public static STATE_CONNECTED: number;
			public static EXTRA_PREVIOUS_STATE: string;
			public static GATT_SERVER: number;
			public getConnectedDevices(): java.util.List<android.bluetooth.BluetoothDevice>;
			public getDevicesMatchingConnectionStates(param0: native.Array<number>): java.util.List<android.bluetooth.BluetoothDevice>;
			public getConnectionState(param0: android.bluetooth.BluetoothDevice): number;
		}
		export module BluetoothProfile {
			export class ServiceListener extends java.lang.Object {
				public static class: java.lang.Class<android.bluetooth.BluetoothProfile.ServiceListener>;
				/**
				 * Constructs a new instance of the android.bluetooth.BluetoothProfile$ServiceListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onServiceConnected(param0: number, param1: android.bluetooth.BluetoothProfile): void;
					onServiceDisconnected(param0: number): void;
				});
				public constructor();
				public onServiceConnected(param0: number, param1: android.bluetooth.BluetoothProfile): void;
				public onServiceDisconnected(param0: number): void;
			}
		}
	}
}

declare module android {
	export module bluetooth {
		export class BluetoothServerSocket extends java.lang.Object implements java.io.Closeable {
			public static class: java.lang.Class<android.bluetooth.BluetoothServerSocket>;
			public accept(): android.bluetooth.BluetoothSocket;
			public close(): void;
			public accept(param0: number): android.bluetooth.BluetoothSocket;
		}
	}
}

declare module android {
	export module bluetooth {
		export class BluetoothSocket extends java.lang.Object implements java.io.Closeable {
			public static class: java.lang.Class<android.bluetooth.BluetoothSocket>;
			public getInputStream(): java.io.InputStream;
			public isConnected(): boolean;
			public getOutputStream(): java.io.OutputStream;
			public connect(): void;
			public close(): void;
			public getRemoteDevice(): android.bluetooth.BluetoothDevice;
		}
	}
}

declare module android {
	export module content {
		export abstract class AbstractThreadedSyncAdapter extends java.lang.Object {
			public static class: java.lang.Class<android.content.AbstractThreadedSyncAdapter>;
			public static LOG_SYNC_DETAILS: number;
			public getSyncAdapterBinder(): android.os.IBinder;
			public onPerformSync(param0: android.accounts.Account, param1: android.os.Bundle, param2: string, param3: android.content.ContentProviderClient, param4: android.content.SyncResult): void;
			public onSyncCanceled(): void;
			public onSyncCanceled(param0: java.lang.Thread): void;
			public constructor(param0: android.content.Context, param1: boolean);
			public constructor(param0: android.content.Context, param1: boolean, param2: boolean);
			public getContext(): android.content.Context;
		}
	}
}

declare module android {
	export module content {
		export class ActivityNotFoundException extends java.lang.RuntimeException {
			public static class: java.lang.Class<android.content.ActivityNotFoundException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module android {
	export module content {
		export abstract class AsyncQueryHandler extends android.os.Handler {
			public static class: java.lang.Class<android.content.AsyncQueryHandler>;
			public startDelete(param0: number, param1: any, param2: android.net.Uri, param3: string, param4: native.Array<string>): void;
			public constructor(param0: android.os.Looper, param1: android.os.Handler.Callback);
			public cancelOperation(param0: number): void;
			public constructor(param0: android.os.Handler.Callback);
			public constructor(param0: android.os.Looper);
			public constructor();
			public constructor(param0: android.content.ContentResolver);
			public onQueryComplete(param0: number, param1: any, param2: android.database.Cursor): void;
			public createHandler(param0: android.os.Looper): android.os.Handler;
			public onUpdateComplete(param0: number, param1: any, param2: number): void;
			public onInsertComplete(param0: number, param1: any, param2: android.net.Uri): void;
			public onDeleteComplete(param0: number, param1: any, param2: number): void;
			public startQuery(param0: number, param1: any, param2: android.net.Uri, param3: native.Array<string>, param4: string, param5: native.Array<string>, param6: string): void;
			public startUpdate(param0: number, param1: any, param2: android.net.Uri, param3: android.content.ContentValues, param4: string, param5: native.Array<string>): void;
			public handleMessage(param0: android.os.Message): void;
			public startInsert(param0: number, param1: any, param2: android.net.Uri, param3: android.content.ContentValues): void;
		}
		export module AsyncQueryHandler {
			export class WorkerArgs extends java.lang.Object {
				public static class: java.lang.Class<android.content.AsyncQueryHandler.WorkerArgs>;
				public uri: android.net.Uri;
				public handler: android.os.Handler;
				public projection: native.Array<string>;
				public selection: string;
				public selectionArgs: native.Array<string>;
				public orderBy: string;
				public result: any;
				public cookie: any;
				public values: android.content.ContentValues;
				public constructor();
			}
			export class WorkerHandler extends android.os.Handler {
				public static class: java.lang.Class<android.content.AsyncQueryHandler.WorkerHandler>;
				public constructor(param0: android.os.Handler.Callback);
				public constructor(param0: android.content.AsyncQueryHandler, param1: android.os.Looper);
				public constructor(param0: android.os.Looper);
				public constructor(param0: android.os.Looper, param1: android.os.Handler.Callback);
				public constructor();
				public handleMessage(param0: android.os.Message): void;
			}
		}
	}
}

declare module android {
	export module content {
		export abstract class AsyncTaskLoader<D>  extends android.content.Loader<any> {
			public static class: java.lang.Class<android.content.AsyncTaskLoader<any>>;
			public onCancelLoad(): boolean;
			public onCanceled(param0: any): void;
			public loadInBackground(): any;
			public onLoadInBackground(): any;
			public isLoadInBackgroundCanceled(): boolean;
			public setUpdateThrottle(param0: number): void;
			public constructor(param0: android.content.Context);
			public cancelLoadInBackground(): void;
			public dump(param0: string, param1: java.io.FileDescriptor, param2: java.io.PrintWriter, param3: native.Array<string>): void;
			public onForceLoad(): void;
		}
	}
}

declare module android {
	export module content {
		export abstract class BroadcastReceiver extends java.lang.Object {
			public static class: java.lang.Class<android.content.BroadcastReceiver>;
			public clearAbortBroadcast(): void;
			public isOrderedBroadcast(): boolean;
			public peekService(param0: android.content.Context, param1: android.content.Intent): android.os.IBinder;
			public getAbortBroadcast(): boolean;
			public goAsync(): android.content.BroadcastReceiver.PendingResult;
			public setResultData(param0: string): void;
			public onReceive(param0: android.content.Context, param1: android.content.Intent): void;
			public constructor();
			public setResultExtras(param0: android.os.Bundle): void;
			public getResultData(): string;
			public setResultCode(param0: number): void;
			public getDebugUnregister(): boolean;
			public abortBroadcast(): void;
			public getResultExtras(param0: boolean): android.os.Bundle;
			public setResult(param0: number, param1: string, param2: android.os.Bundle): void;
			public getResultCode(): number;
			public isInitialStickyBroadcast(): boolean;
			public setOrderedHint(param0: boolean): void;
			public setDebugUnregister(param0: boolean): void;
		}
		export module BroadcastReceiver {
			export class PendingResult extends java.lang.Object {
				public static class: java.lang.Class<android.content.BroadcastReceiver.PendingResult>;
				public getResultExtras(param0: boolean): android.os.Bundle;
				public setResult(param0: number, param1: string, param2: android.os.Bundle): void;
				public clearAbortBroadcast(): void;
				public setResultCode(param0: number): void;
				public getAbortBroadcast(): boolean;
				public abortBroadcast(): void;
				public setResultData(param0: string): void;
				public getResultData(): string;
				public setResultExtras(param0: android.os.Bundle): void;
				public finish(): void;
				public getResultCode(): number;
			}
		}
	}
}

declare module android {
	export module content {
		export class ClipData extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.content.ClipData>;
			public static CREATOR: android.os.Parcelable.Creator<android.content.ClipData>;
			public constructor(param0: android.content.ClipData);
			public getDescription(): android.content.ClipDescription;
			public constructor(param0: string, param1: native.Array<string>, param2: android.content.ClipData.Item);
			public static newPlainText(param0: string, param1: string): android.content.ClipData;
			public static newUri(param0: android.content.ContentResolver, param1: string, param2: android.net.Uri): android.content.ClipData;
			public getItemCount(): number;
			public toString(): string;
			public constructor(param0: android.content.ClipDescription, param1: android.content.ClipData.Item);
			public static newRawUri(param0: string, param1: android.net.Uri): android.content.ClipData;
			public getItemAt(param0: number): android.content.ClipData.Item;
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public static newHtmlText(param0: string, param1: string, param2: string): android.content.ClipData;
			public addItem(param0: android.content.ClipData.Item): void;
			public static newIntent(param0: string, param1: android.content.Intent): android.content.ClipData;
		}
		export module ClipData {
			export class Item extends java.lang.Object {
				public static class: java.lang.Class<android.content.ClipData.Item>;
				public constructor(param0: android.net.Uri);
				public getIntent(): android.content.Intent;
				public constructor(param0: string, param1: string, param2: android.content.Intent, param3: android.net.Uri);
				public constructor(param0: android.content.Intent);
				public toString(): string;
				public constructor(param0: string);
				public getText(): string;
				public coerceToText(param0: android.content.Context): string;
				public getHtmlText(): string;
				public getUri(): android.net.Uri;
				public coerceToStyledText(param0: android.content.Context): string;
				public constructor(param0: string, param1: android.content.Intent, param2: android.net.Uri);
				public constructor(param0: string, param1: string);
				public coerceToHtmlText(param0: android.content.Context): string;
			}
		}
	}
}

declare module android {
	export module content {
		export class ClipDescription extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.content.ClipDescription>;
			public static MIMETYPE_TEXT_PLAIN: string;
			public static MIMETYPE_TEXT_HTML: string;
			public static MIMETYPE_TEXT_URILIST: string;
			public static MIMETYPE_TEXT_INTENT: string;
			public static CREATOR: android.os.Parcelable.Creator<android.content.ClipDescription>;
			public getLabel(): string;
			public hasMimeType(param0: string): boolean;
			public filterMimeTypes(param0: string): native.Array<string>;
			public toString(): string;
			public static compareMimeTypes(param0: string, param1: string): boolean;
			public getMimeTypeCount(): number;
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public constructor(param0: android.content.ClipDescription);
			public constructor(param0: string, param1: native.Array<string>);
			public getMimeType(param0: number): string;
		}
	}
}

declare module android {
	export module content {
		export class ClipboardManager extends android.text.ClipboardManager {
			public static class: java.lang.Class<android.content.ClipboardManager>;
			public hasPrimaryClip(): boolean;
			/** @deprecated */
			public getText(): string;
			public setText(param0: string): void;
			public hasText(): boolean;
			public removePrimaryClipChangedListener(param0: android.content.ClipboardManager.OnPrimaryClipChangedListener): void;
			public getPrimaryClipDescription(): android.content.ClipDescription;
			public setPrimaryClip(param0: android.content.ClipData): void;
			public getText(): string;
			/** @deprecated */
			public hasText(): boolean;
			public getPrimaryClip(): android.content.ClipData;
			public addPrimaryClipChangedListener(param0: android.content.ClipboardManager.OnPrimaryClipChangedListener): void;
			/** @deprecated */
			public setText(param0: string): void;
		}
		export module ClipboardManager {
			export class OnPrimaryClipChangedListener extends java.lang.Object {
				public static class: java.lang.Class<android.content.ClipboardManager.OnPrimaryClipChangedListener>;
				/**
				 * Constructs a new instance of the android.content.ClipboardManager$OnPrimaryClipChangedListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onPrimaryClipChanged(): void;
				});
				public constructor();
				public onPrimaryClipChanged(): void;
			}
		}
	}
}

declare module android {
	export module content {
		export class ComponentCallbacks extends java.lang.Object {
			public static class: java.lang.Class<android.content.ComponentCallbacks>;
			/**
			 * Constructs a new instance of the android.content.ComponentCallbacks interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				onConfigurationChanged(param0: android.content.res.Configuration): void;
				onLowMemory(): void;
			});
			public constructor();
			public onConfigurationChanged(param0: android.content.res.Configuration): void;
			public onLowMemory(): void;
		}
	}
}

declare module android {
	export module content {
		export class ComponentCallbacks2 extends java.lang.Object implements android.content.ComponentCallbacks {
			public static class: java.lang.Class<android.content.ComponentCallbacks2>;
			/**
			 * Constructs a new instance of the android.content.ComponentCallbacks2 interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				onTrimMemory(param0: number): void;
				onConfigurationChanged(param0: android.content.res.Configuration): void;
				onLowMemory(): void;
			});
			public constructor();
			public static TRIM_MEMORY_RUNNING_MODERATE: number;
			public static TRIM_MEMORY_UI_HIDDEN: number;
			public static TRIM_MEMORY_RUNNING_CRITICAL: number;
			public static TRIM_MEMORY_COMPLETE: number;
			public static TRIM_MEMORY_BACKGROUND: number;
			public static TRIM_MEMORY_MODERATE: number;
			public static TRIM_MEMORY_RUNNING_LOW: number;
			public onConfigurationChanged(param0: android.content.res.Configuration): void;
			public onTrimMemory(param0: number): void;
			public onLowMemory(): void;
		}
	}
}

declare module android {
	export module content {
		export class ComponentName extends java.lang.Object {
			public static class: java.lang.Class<android.content.ComponentName>;
			public static CREATOR: android.os.Parcelable.Creator<android.content.ComponentName>;
			public equals(param0: any): boolean;
			public flattenToShortString(): string;
			public static writeToParcel(param0: android.content.ComponentName, param1: android.os.Parcel): void;
			public constructor(param0: android.content.Context, param1: string);
			public getPackageName(): string;
			public toShortString(): string;
			public getShortClassName(): string;
			public constructor(param0: android.content.Context, param1: java.lang.Class<any>);
			public static unflattenFromString(param0: string): android.content.ComponentName;
			public static readFromParcel(param0: android.os.Parcel): android.content.ComponentName;
			public clone(): android.content.ComponentName;
			public constructor(param0: string, param1: string);
			public clone(): any;
			public toString(): string;
			public compareTo(param0: android.content.ComponentName): number;
			public constructor(param0: android.os.Parcel);
			public getClassName(): string;
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public flattenToString(): string;
			public hashCode(): number;
		}
	}
}

declare module android {
	export module content {
		export abstract class ContentProvider extends java.lang.Object implements android.content.ComponentCallbacks2 {
			public static class: java.lang.Class<android.content.ContentProvider>;
			public query(param0: android.net.Uri, param1: native.Array<string>, param2: string, param3: native.Array<string>, param4: string, param5: android.os.CancellationSignal): android.database.Cursor;
			public setPathPermissions(param0: native.Array<android.content.pm.PathPermission>): void;
			public delete(param0: android.net.Uri, param1: string, param2: native.Array<string>): number;
			public openAssetFile(param0: android.net.Uri, param1: string): android.content.res.AssetFileDescriptor;
			public dump(param0: java.io.FileDescriptor, param1: java.io.PrintWriter, param2: native.Array<string>): void;
			public getReadPermission(): string;
			public insert(param0: android.net.Uri, param1: android.content.ContentValues): android.net.Uri;
			public onLowMemory(): void;
			public openFileHelper(param0: android.net.Uri, param1: string): android.os.ParcelFileDescriptor;
			public setReadPermission(param0: string): void;
			public getPathPermissions(): native.Array<android.content.pm.PathPermission>;
			public getType(param0: android.net.Uri): string;
			public onCreate(): boolean;
			public onTrimMemory(param0: number): void;
			public attachInfo(param0: android.content.Context, param1: android.content.pm.ProviderInfo): void;
			public isTemporary(): boolean;
			public getContext(): android.content.Context;
			public shutdown(): void;
			public onConfigurationChanged(param0: android.content.res.Configuration): void;
			public update(param0: android.net.Uri, param1: android.content.ContentValues, param2: string, param3: native.Array<string>): number;
			public setWritePermission(param0: string): void;
			public getWritePermission(): string;
			public query(param0: android.net.Uri, param1: native.Array<string>, param2: string, param3: native.Array<string>, param4: string): android.database.Cursor;
			public constructor();
			public getStreamTypes(param0: android.net.Uri, param1: string): native.Array<string>;
			public openPipeHelper(param0: android.net.Uri, param1: string, param2: android.os.Bundle, param3: any, param4: android.content.ContentProvider.PipeDataWriter<any>): android.os.ParcelFileDescriptor;
			public openFile(param0: android.net.Uri, param1: string): android.os.ParcelFileDescriptor;
			public applyBatch(param0: java.util.ArrayList<android.content.ContentProviderOperation>): native.Array<android.content.ContentProviderResult>;
			public call(param0: string, param1: string, param2: android.os.Bundle): android.os.Bundle;
			public openTypedAssetFile(param0: android.net.Uri, param1: string, param2: android.os.Bundle): android.content.res.AssetFileDescriptor;
			public bulkInsert(param0: android.net.Uri, param1: native.Array<android.content.ContentValues>): number;
		}
		export module ContentProvider {
			export class PipeDataWriter<T>  extends java.lang.Object {
				public static class: java.lang.Class<android.content.ContentProvider.PipeDataWriter<any>>;
				/**
				 * Constructs a new instance of the android.content.ContentProvider$PipeDataWriter interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					writeDataToPipe(param0: android.os.ParcelFileDescriptor, param1: android.net.Uri, param2: string, param3: android.os.Bundle, param4: T): void;
				});
				public constructor();
				public writeDataToPipe(param0: android.os.ParcelFileDescriptor, param1: android.net.Uri, param2: string, param3: android.os.Bundle, param4: T): void;
			}
		}
	}
}

declare module android {
	export module content {
		export class ContentProviderClient extends java.lang.Object {
			public static class: java.lang.Class<android.content.ContentProviderClient>;
			public query(param0: android.net.Uri, param1: native.Array<string>, param2: string, param3: native.Array<string>, param4: string, param5: android.os.CancellationSignal): android.database.Cursor;
			public update(param0: android.net.Uri, param1: android.content.ContentValues, param2: string, param3: native.Array<string>): number;
			public delete(param0: android.net.Uri, param1: string, param2: native.Array<string>): number;
			public openTypedAssetFileDescriptor(param0: android.net.Uri, param1: string, param2: android.os.Bundle): android.content.res.AssetFileDescriptor;
			public query(param0: android.net.Uri, param1: native.Array<string>, param2: string, param3: native.Array<string>, param4: string): android.database.Cursor;
			public openAssetFile(param0: android.net.Uri, param1: string): android.content.res.AssetFileDescriptor;
			public insert(param0: android.net.Uri, param1: android.content.ContentValues): android.net.Uri;
			public getStreamTypes(param0: android.net.Uri, param1: string): native.Array<string>;
			public getLocalContentProvider(): android.content.ContentProvider;
			public getType(param0: android.net.Uri): string;
			public openFile(param0: android.net.Uri, param1: string): android.os.ParcelFileDescriptor;
			public applyBatch(param0: java.util.ArrayList<android.content.ContentProviderOperation>): native.Array<android.content.ContentProviderResult>;
			public call(param0: string, param1: string, param2: android.os.Bundle): android.os.Bundle;
			public release(): boolean;
			public bulkInsert(param0: android.net.Uri, param1: native.Array<android.content.ContentValues>): number;
		}
	}
}

declare module android {
	export module content {
		export class ContentProviderOperation extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.content.ContentProviderOperation>;
			public static CREATOR: android.os.Parcelable.Creator<android.content.ContentProviderOperation>;
			public static newDelete(param0: android.net.Uri): android.content.ContentProviderOperation.Builder;
			public static newAssertQuery(param0: android.net.Uri): android.content.ContentProviderOperation.Builder;
			public isWriteOperation(): boolean;
			public resolveValueBackReferences(param0: native.Array<android.content.ContentProviderResult>, param1: number): android.content.ContentValues;
			public getUri(): android.net.Uri;
			public isReadOperation(): boolean;
			public static newInsert(param0: android.net.Uri): android.content.ContentProviderOperation.Builder;
			public resolveSelectionArgsBackReferences(param0: native.Array<android.content.ContentProviderResult>, param1: number): native.Array<string>;
			public toString(): string;
			public isYieldAllowed(): boolean;
			public apply(param0: android.content.ContentProvider, param1: native.Array<android.content.ContentProviderResult>, param2: number): android.content.ContentProviderResult;
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public static newUpdate(param0: android.net.Uri): android.content.ContentProviderOperation.Builder;
		}
		export module ContentProviderOperation {
			export class Builder extends java.lang.Object {
				public static class: java.lang.Class<android.content.ContentProviderOperation.Builder>;
				public withSelection(param0: string, param1: native.Array<string>): android.content.ContentProviderOperation.Builder;
				public withValueBackReference(param0: string, param1: number): android.content.ContentProviderOperation.Builder;
				public withValues(param0: android.content.ContentValues): android.content.ContentProviderOperation.Builder;
				public withValueBackReferences(param0: android.content.ContentValues): android.content.ContentProviderOperation.Builder;
				public withValue(param0: string, param1: any): android.content.ContentProviderOperation.Builder;
				public build(): android.content.ContentProviderOperation;
				public withYieldAllowed(param0: boolean): android.content.ContentProviderOperation.Builder;
				public withSelectionBackReference(param0: number, param1: number): android.content.ContentProviderOperation.Builder;
				public withExpectedCount(param0: number): android.content.ContentProviderOperation.Builder;
			}
		}
	}
}

declare module android {
	export module content {
		export class ContentProviderResult extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.content.ContentProviderResult>;
			public uri: android.net.Uri;
			public count: java.lang.Integer;
			public static CREATOR: android.os.Parcelable.Creator<android.content.ContentProviderResult>;
			public toString(): string;
			public constructor(param0: android.os.Parcel);
			public describeContents(): number;
			public constructor(param0: number);
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public constructor(param0: android.net.Uri);
		}
	}
}

declare module android {
	export module content {
		export class ContentQueryMap extends java.util.Observable {
			public static class: java.lang.Class<android.content.ContentQueryMap>;
			public getValues(param0: string): android.content.ContentValues;
			public requery(): void;
			public setKeepUpdated(param0: boolean): void;
			public constructor();
			public getRows(): java.util.Map<string,android.content.ContentValues>;
			public close(): void;
			public finalize(): void;
			public constructor(param0: android.database.Cursor, param1: string, param2: boolean, param3: android.os.Handler);
		}
	}
}

declare module android {
	export module content {
		export abstract class ContentResolver extends java.lang.Object {
			public static class: java.lang.Class<android.content.ContentResolver>;
			public static SYNC_EXTRAS_ACCOUNT: string;
			public static SYNC_EXTRAS_EXPEDITED: string;
			public static SYNC_EXTRAS_FORCE: string;
			public static SYNC_EXTRAS_IGNORE_SETTINGS: string;
			public static SYNC_EXTRAS_IGNORE_BACKOFF: string;
			public static SYNC_EXTRAS_DO_NOT_RETRY: string;
			public static SYNC_EXTRAS_MANUAL: string;
			public static SYNC_EXTRAS_UPLOAD: string;
			public static SYNC_EXTRAS_OVERRIDE_TOO_MANY_DELETIONS: string;
			public static SYNC_EXTRAS_DISCARD_LOCAL_DELETIONS: string;
			public static SYNC_EXTRAS_INITIALIZE: string;
			public static SCHEME_CONTENT: string;
			public static SCHEME_ANDROID_RESOURCE: string;
			public static SCHEME_FILE: string;
			public static CURSOR_ITEM_BASE_TYPE: string;
			public static CURSOR_DIR_BASE_TYPE: string;
			public static SYNC_OBSERVER_TYPE_SETTINGS: number;
			public static SYNC_OBSERVER_TYPE_PENDING: number;
			public static SYNC_OBSERVER_TYPE_ACTIVE: number;
			public query(param0: android.net.Uri, param1: native.Array<string>, param2: string, param3: native.Array<string>, param4: string, param5: android.os.CancellationSignal): android.database.Cursor;
			public static addPeriodicSync(param0: android.accounts.Account, param1: string, param2: android.os.Bundle, param3: number): void;
			public openInputStream(param0: android.net.Uri): java.io.InputStream;
			public openAssetFileDescriptor(param0: android.net.Uri, param1: string): android.content.res.AssetFileDescriptor;
			public openOutputStream(param0: android.net.Uri): java.io.OutputStream;
			public delete(param0: android.net.Uri, param1: string, param2: native.Array<string>): number;
			public call(param0: android.net.Uri, param1: string, param2: string, param3: android.os.Bundle): android.os.Bundle;
			public static setMasterSyncAutomatically(param0: boolean): void;
			public insert(param0: android.net.Uri, param1: android.content.ContentValues): android.net.Uri;
			public static getPeriodicSyncs(param0: android.accounts.Account, param1: string): java.util.List<android.content.PeriodicSync>;
			public static getIsSyncable(param0: android.accounts.Account, param1: string): number;
			public getType(param0: android.net.Uri): string;
			public static removeStatusChangeListener(param0: any): void;
			/** @deprecated */
			public startSync(param0: android.net.Uri, param1: android.os.Bundle): void;
			public static addStatusChangeListener(param0: number, param1: android.content.SyncStatusObserver): any;
			public acquireUnstableContentProviderClient(param0: string): android.content.ContentProviderClient;
			public acquireContentProviderClient(param0: android.net.Uri): android.content.ContentProviderClient;
			public notifyChange(param0: android.net.Uri, param1: android.database.ContentObserver): void;
			public notifyChange(param0: android.net.Uri, param1: android.database.ContentObserver, param2: boolean): void;
			public acquireContentProviderClient(param0: string): android.content.ContentProviderClient;
			public static removePeriodicSync(param0: android.accounts.Account, param1: string, param2: android.os.Bundle): void;
			public unregisterContentObserver(param0: android.database.ContentObserver): void;
			public static getCurrentSyncs(): java.util.List<android.content.SyncInfo>;
			public update(param0: android.net.Uri, param1: android.content.ContentValues, param2: string, param3: native.Array<string>): number;
			public static setSyncAutomatically(param0: android.accounts.Account, param1: string, param2: boolean): void;
			public static cancelSync(param0: android.accounts.Account, param1: string): void;
			public openTypedAssetFileDescriptor(param0: android.net.Uri, param1: string, param2: android.os.Bundle): android.content.res.AssetFileDescriptor;
			public acquireUnstableContentProviderClient(param0: android.net.Uri): android.content.ContentProviderClient;
			public query(param0: android.net.Uri, param1: native.Array<string>, param2: string, param3: native.Array<string>, param4: string): android.database.Cursor;
			public static getMasterSyncAutomatically(): boolean;
			public static validateSyncExtrasBundle(param0: android.os.Bundle): void;
			public getStreamTypes(param0: android.net.Uri, param1: string): native.Array<string>;
			public static getSyncAutomatically(param0: android.accounts.Account, param1: string): boolean;
			public static isSyncPending(param0: android.accounts.Account, param1: string): boolean;
			public openFileDescriptor(param0: android.net.Uri, param1: string): android.os.ParcelFileDescriptor;
			public registerContentObserver(param0: android.net.Uri, param1: boolean, param2: android.database.ContentObserver): void;
			public static requestSync(param0: android.accounts.Account, param1: string, param2: android.os.Bundle): void;
			public openOutputStream(param0: android.net.Uri, param1: string): java.io.OutputStream;
			public constructor(param0: android.content.Context);
			public static setIsSyncable(param0: android.accounts.Account, param1: string, param2: number): void;
			/** @deprecated */
			public static getCurrentSync(): android.content.SyncInfo;
			public applyBatch(param0: string, param1: java.util.ArrayList<android.content.ContentProviderOperation>): native.Array<android.content.ContentProviderResult>;
			public static getSyncAdapterTypes(): native.Array<android.content.SyncAdapterType>;
			public bulkInsert(param0: android.net.Uri, param1: native.Array<android.content.ContentValues>): number;
			/** @deprecated */
			public cancelSync(param0: android.net.Uri): void;
			public static isSyncActive(param0: android.accounts.Account, param1: string): boolean;
		}
	}
}

declare module android {
	export module content {
		export class ContentUris extends java.lang.Object {
			public static class: java.lang.Class<android.content.ContentUris>;
			public static parseId(param0: android.net.Uri): number;
			public static withAppendedId(param0: android.net.Uri, param1: number): android.net.Uri;
			public static appendId(param0: android.net.Uri.Builder, param1: number): android.net.Uri.Builder;
			public constructor();
		}
	}
}

declare module android {
	export module content {
		export class ContentValues extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.content.ContentValues>;
			public static TAG: string;
			public static CREATOR: android.os.Parcelable.Creator<android.content.ContentValues>;
			public keySet(): java.util.Set<string>;
			public equals(param0: any): boolean;
			public getAsLong(param0: string): java.lang.Long;
			public putAll(param0: android.content.ContentValues): void;
			public getAsByteArray(param0: string): native.Array<number>;
			public put(param0: string, param1: java.lang.Short): void;
			public remove(param0: string): void;
			public valueSet(): java.util.Set<java.util.Map.Entry<string,any>>;
			public getAsShort(param0: string): java.lang.Short;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public put(param0: string, param1: java.lang.Integer): void;
			public getAsDouble(param0: string): java.lang.Double;
			public containsKey(param0: string): boolean;
			public put(param0: string, param1: native.Array<number>): void;
			public put(param0: string, param1: java.lang.Double): void;
			public clear(): void;
			public get(param0: string): any;
			public putNull(param0: string): void;
			public size(): number;
			public constructor(param0: number);
			public getAsFloat(param0: string): java.lang.Float;
			public constructor();
			public put(param0: string, param1: java.lang.Float): void;
			public constructor(param0: android.content.ContentValues);
			public put(param0: string, param1: java.lang.Boolean): void;
			public getAsByte(param0: string): java.lang.Byte;
			public getAsString(param0: string): string;
			public toString(): string;
			public put(param0: string, param1: java.lang.Byte): void;
			public getAsBoolean(param0: string): java.lang.Boolean;
			public describeContents(): number;
			public getAsInteger(param0: string): java.lang.Integer;
			public put(param0: string, param1: java.lang.Long): void;
			public hashCode(): number;
			public put(param0: string, param1: string): void;
		}
	}
}

declare module android {
	export module content {
		export abstract class Context extends java.lang.Object {
			public static class: java.lang.Class<android.content.Context>;
			public static MODE_PRIVATE: number;
			public static MODE_WORLD_READABLE: number;
			public static MODE_WORLD_WRITEABLE: number;
			public static MODE_APPEND: number;
			public static MODE_MULTI_PROCESS: number;
			public static MODE_ENABLE_WRITE_AHEAD_LOGGING: number;
			public static BIND_AUTO_CREATE: number;
			public static BIND_DEBUG_UNBIND: number;
			public static BIND_NOT_FOREGROUND: number;
			public static BIND_ABOVE_CLIENT: number;
			public static BIND_ALLOW_OOM_MANAGEMENT: number;
			public static BIND_WAIVE_PRIORITY: number;
			public static BIND_IMPORTANT: number;
			public static BIND_ADJUST_WITH_ACTIVITY: number;
			public static POWER_SERVICE: string;
			public static WINDOW_SERVICE: string;
			public static LAYOUT_INFLATER_SERVICE: string;
			public static ACCOUNT_SERVICE: string;
			public static ACTIVITY_SERVICE: string;
			public static ALARM_SERVICE: string;
			public static NOTIFICATION_SERVICE: string;
			public static ACCESSIBILITY_SERVICE: string;
			public static KEYGUARD_SERVICE: string;
			public static LOCATION_SERVICE: string;
			public static SEARCH_SERVICE: string;
			public static SENSOR_SERVICE: string;
			public static STORAGE_SERVICE: string;
			public static WALLPAPER_SERVICE: string;
			public static VIBRATOR_SERVICE: string;
			public static CONNECTIVITY_SERVICE: string;
			public static WIFI_SERVICE: string;
			public static WIFI_P2P_SERVICE: string;
			public static NSD_SERVICE: string;
			public static AUDIO_SERVICE: string;
			public static MEDIA_ROUTER_SERVICE: string;
			public static TELEPHONY_SERVICE: string;
			public static CLIPBOARD_SERVICE: string;
			public static INPUT_METHOD_SERVICE: string;
			public static TEXT_SERVICES_MANAGER_SERVICE: string;
			public static DROPBOX_SERVICE: string;
			public static DEVICE_POLICY_SERVICE: string;
			public static UI_MODE_SERVICE: string;
			public static DOWNLOAD_SERVICE: string;
			public static NFC_SERVICE: string;
			public static BLUETOOTH_SERVICE: string;
			public static USB_SERVICE: string;
			public static INPUT_SERVICE: string;
			public static DISPLAY_SERVICE: string;
			public static USER_SERVICE: string;
			public static CONTEXT_INCLUDE_CODE: number;
			public static CONTEXT_IGNORE_SECURITY: number;
			public static CONTEXT_RESTRICTED: number;
			public getPackageResourcePath(): string;
			public checkCallingUriPermission(param0: android.net.Uri, param1: number): number;
			public getClassLoader(): java.lang.ClassLoader;
			public databaseList(): native.Array<string>;
			public getFilesDir(): java.io.File;
			public fileList(): native.Array<string>;
			public checkCallingPermission(param0: string): number;
			public getPackageName(): string;
			public sendBroadcastAsUser(param0: android.content.Intent, param1: android.os.UserHandle, param2: string): void;
			public registerReceiver(param0: android.content.BroadcastReceiver, param1: android.content.IntentFilter, param2: string, param3: android.os.Handler): android.content.Intent;
			public sendOrderedBroadcast(param0: android.content.Intent, param1: string): void;
			public getObbDir(): java.io.File;
			public getFileStreamPath(param0: string): java.io.File;
			public openFileInput(param0: string): java.io.FileInputStream;
			public sendStickyBroadcast(param0: android.content.Intent): void;
			public getDatabasePath(param0: string): java.io.File;
			/** @deprecated */
			public getWallpaper(): android.graphics.drawable.Drawable;
			public unregisterReceiver(param0: android.content.BroadcastReceiver): void;
			public bindService(param0: android.content.Intent, param1: android.content.ServiceConnection, param2: number): boolean;
			public createConfigurationContext(param0: android.content.res.Configuration): android.content.Context;
			public checkCallingOrSelfPermission(param0: string): number;
			public getAssets(): android.content.res.AssetManager;
			public startActivities(param0: native.Array<android.content.Intent>): void;
			public getPackageCodePath(): string;
			public getString(param0: number): string;
			public obtainStyledAttributes(param0: native.Array<number>): android.content.res.TypedArray;
			public getPackageManager(): android.content.pm.PackageManager;
			public constructor();
			public registerComponentCallbacks(param0: android.content.ComponentCallbacks): void;
			public revokeUriPermission(param0: android.net.Uri, param1: number): void;
			public obtainStyledAttributes(param0: android.util.AttributeSet, param1: native.Array<number>, param2: number, param3: number): android.content.res.TypedArray;
			public sendBroadcast(param0: android.content.Intent, param1: string): void;
			public getExternalFilesDir(param0: string): java.io.File;
			public enforceCallingUriPermission(param0: android.net.Uri, param1: number, param2: string): void;
			public getExternalCacheDir(): java.io.File;
			public obtainStyledAttributes(param0: android.util.AttributeSet, param1: native.Array<number>): android.content.res.TypedArray;
			public stopService(param0: android.content.Intent): boolean;
			public getTheme(): android.content.res.Resources.Theme;
			public createDisplayContext(param0: android.view.Display): android.content.Context;
			public sendStickyOrderedBroadcastAsUser(param0: android.content.Intent, param1: android.os.UserHandle, param2: android.content.BroadcastReceiver, param3: android.os.Handler, param4: number, param5: string, param6: android.os.Bundle): void;
			public openOrCreateDatabase(param0: string, param1: number, param2: android.database.sqlite.SQLiteDatabase.CursorFactory): android.database.sqlite.SQLiteDatabase;
			public sendBroadcastAsUser(param0: android.content.Intent, param1: android.os.UserHandle): void;
			public getResources(): android.content.res.Resources;
			public getApplicationInfo(): android.content.pm.ApplicationInfo;
			/** @deprecated */
			public setWallpaper(param0: android.graphics.Bitmap): void;
			public unbindService(param0: android.content.ServiceConnection): void;
			public getDir(param0: string, param1: number): java.io.File;
			public registerReceiver(param0: android.content.BroadcastReceiver, param1: android.content.IntentFilter): android.content.Intent;
			public sendOrderedBroadcast(param0: android.content.Intent, param1: string, param2: android.content.BroadcastReceiver, param3: android.os.Handler, param4: number, param5: string, param6: android.os.Bundle): void;
			public openFileOutput(param0: string, param1: number): java.io.FileOutputStream;
			public deleteDatabase(param0: string): boolean;
			public sendStickyBroadcastAsUser(param0: android.content.Intent, param1: android.os.UserHandle): void;
			public getApplicationContext(): android.content.Context;
			public getText(param0: number): string;
			public sendOrderedBroadcastAsUser(param0: android.content.Intent, param1: android.os.UserHandle, param2: string, param3: android.content.BroadcastReceiver, param4: android.os.Handler, param5: number, param6: string, param7: android.os.Bundle): void;
			public startService(param0: android.content.Intent): android.content.ComponentName;
			public checkUriPermission(param0: android.net.Uri, param1: number, param2: number, param3: number): number;
			public unregisterComponentCallbacks(param0: android.content.ComponentCallbacks): void;
			public startActivity(param0: android.content.Intent, param1: android.os.Bundle): void;
			public startInstrumentation(param0: android.content.ComponentName, param1: string, param2: android.os.Bundle): boolean;
			public getSystemService(param0: string): any;
			/** @deprecated */
			public getWallpaperDesiredMinimumHeight(): number;
			public checkCallingOrSelfUriPermission(param0: android.net.Uri, param1: number): number;
			public obtainStyledAttributes(param0: number, param1: native.Array<number>): android.content.res.TypedArray;
			public getCacheDir(): java.io.File;
			/** @deprecated */
			public getWallpaperDesiredMinimumWidth(): number;
			public checkPermission(param0: string, param1: number, param2: number): number;
			public enforceUriPermission(param0: android.net.Uri, param1: number, param2: number, param3: number, param4: string): void;
			public getSharedPreferences(param0: string, param1: number): android.content.SharedPreferences;
			public enforceCallingPermission(param0: string, param1: string): void;
			public grantUriPermission(param0: string, param1: android.net.Uri, param2: number): void;
			public startActivities(param0: native.Array<android.content.Intent>, param1: android.os.Bundle): void;
			public createPackageContext(param0: string, param1: number): android.content.Context;
			public isRestricted(): boolean;
			public openOrCreateDatabase(param0: string, param1: number, param2: android.database.sqlite.SQLiteDatabase.CursorFactory, param3: android.database.DatabaseErrorHandler): android.database.sqlite.SQLiteDatabase;
			public checkUriPermission(param0: android.net.Uri, param1: string, param2: string, param3: number, param4: number, param5: number): number;
			public getString(param0: number, param1: native.Array<any>): string;
			/** @deprecated */
			public setWallpaper(param0: java.io.InputStream): void;
			public startIntentSender(param0: android.content.IntentSender, param1: android.content.Intent, param2: number, param3: number, param4: number): void;
			public getContentResolver(): android.content.ContentResolver;
			public removeStickyBroadcast(param0: android.content.Intent): void;
			public enforceCallingOrSelfPermission(param0: string, param1: string): void;
			public enforceUriPermission(param0: android.net.Uri, param1: string, param2: string, param3: number, param4: number, param5: number, param6: string): void;
			public sendStickyOrderedBroadcast(param0: android.content.Intent, param1: android.content.BroadcastReceiver, param2: android.os.Handler, param3: number, param4: string, param5: android.os.Bundle): void;
			public setTheme(param0: number): void;
			public startActivity(param0: android.content.Intent): void;
			public deleteFile(param0: string): boolean;
			public enforcePermission(param0: string, param1: number, param2: number, param3: string): void;
			public getMainLooper(): android.os.Looper;
			/** @deprecated */
			public peekWallpaper(): android.graphics.drawable.Drawable;
			public removeStickyBroadcastAsUser(param0: android.content.Intent, param1: android.os.UserHandle): void;
			public enforceCallingOrSelfUriPermission(param0: android.net.Uri, param1: number, param2: string): void;
			/** @deprecated */
			public clearWallpaper(): void;
			public startIntentSender(param0: android.content.IntentSender, param1: android.content.Intent, param2: number, param3: number, param4: number, param5: android.os.Bundle): void;
			public sendBroadcast(param0: android.content.Intent): void;
		}
	}
}

declare module android {
	export module content {
		export class ContextWrapper extends android.content.Context {
			public static class: java.lang.Class<android.content.ContextWrapper>;
			public getPackageResourcePath(): string;
			public checkCallingUriPermission(param0: android.net.Uri, param1: number): number;
			public clearWallpaper(): void;
			public getClassLoader(): java.lang.ClassLoader;
			public databaseList(): native.Array<string>;
			public getFilesDir(): java.io.File;
			public fileList(): native.Array<string>;
			public peekWallpaper(): android.graphics.drawable.Drawable;
			public checkCallingPermission(param0: string): number;
			public getPackageName(): string;
			public getWallpaper(): android.graphics.drawable.Drawable;
			public sendBroadcastAsUser(param0: android.content.Intent, param1: android.os.UserHandle, param2: string): void;
			public registerReceiver(param0: android.content.BroadcastReceiver, param1: android.content.IntentFilter, param2: string, param3: android.os.Handler): android.content.Intent;
			public sendOrderedBroadcast(param0: android.content.Intent, param1: string): void;
			public getObbDir(): java.io.File;
			public getFileStreamPath(param0: string): java.io.File;
			public openFileInput(param0: string): java.io.FileInputStream;
			public sendStickyBroadcast(param0: android.content.Intent): void;
			public getDatabasePath(param0: string): java.io.File;
			/** @deprecated */
			public getWallpaper(): android.graphics.drawable.Drawable;
			public unregisterReceiver(param0: android.content.BroadcastReceiver): void;
			public bindService(param0: android.content.Intent, param1: android.content.ServiceConnection, param2: number): boolean;
			public createConfigurationContext(param0: android.content.res.Configuration): android.content.Context;
			public checkCallingOrSelfPermission(param0: string): number;
			public getAssets(): android.content.res.AssetManager;
			public startActivities(param0: native.Array<android.content.Intent>): void;
			public getPackageCodePath(): string;
			public getWallpaperDesiredMinimumWidth(): number;
			public getPackageManager(): android.content.pm.PackageManager;
			public constructor();
			public getWallpaperDesiredMinimumHeight(): number;
			public revokeUriPermission(param0: android.net.Uri, param1: number): void;
			public sendBroadcast(param0: android.content.Intent, param1: string): void;
			public getExternalFilesDir(param0: string): java.io.File;
			public enforceCallingUriPermission(param0: android.net.Uri, param1: number, param2: string): void;
			public getExternalCacheDir(): java.io.File;
			public stopService(param0: android.content.Intent): boolean;
			public getTheme(): android.content.res.Resources.Theme;
			public createDisplayContext(param0: android.view.Display): android.content.Context;
			public sendStickyOrderedBroadcastAsUser(param0: android.content.Intent, param1: android.os.UserHandle, param2: android.content.BroadcastReceiver, param3: android.os.Handler, param4: number, param5: string, param6: android.os.Bundle): void;
			public openOrCreateDatabase(param0: string, param1: number, param2: android.database.sqlite.SQLiteDatabase.CursorFactory): android.database.sqlite.SQLiteDatabase;
			public sendBroadcastAsUser(param0: android.content.Intent, param1: android.os.UserHandle): void;
			public getResources(): android.content.res.Resources;
			public getApplicationInfo(): android.content.pm.ApplicationInfo;
			/** @deprecated */
			public setWallpaper(param0: android.graphics.Bitmap): void;
			public unbindService(param0: android.content.ServiceConnection): void;
			public getDir(param0: string, param1: number): java.io.File;
			public registerReceiver(param0: android.content.BroadcastReceiver, param1: android.content.IntentFilter): android.content.Intent;
			public getBaseContext(): android.content.Context;
			public sendOrderedBroadcast(param0: android.content.Intent, param1: string, param2: android.content.BroadcastReceiver, param3: android.os.Handler, param4: number, param5: string, param6: android.os.Bundle): void;
			public openFileOutput(param0: string, param1: number): java.io.FileOutputStream;
			public deleteDatabase(param0: string): boolean;
			public sendStickyBroadcastAsUser(param0: android.content.Intent, param1: android.os.UserHandle): void;
			public getApplicationContext(): android.content.Context;
			public sendOrderedBroadcastAsUser(param0: android.content.Intent, param1: android.os.UserHandle, param2: string, param3: android.content.BroadcastReceiver, param4: android.os.Handler, param5: number, param6: string, param7: android.os.Bundle): void;
			public startService(param0: android.content.Intent): android.content.ComponentName;
			public checkUriPermission(param0: android.net.Uri, param1: number, param2: number, param3: number): number;
			public startActivity(param0: android.content.Intent, param1: android.os.Bundle): void;
			public startInstrumentation(param0: android.content.ComponentName, param1: string, param2: android.os.Bundle): boolean;
			public getSystemService(param0: string): any;
			/** @deprecated */
			public getWallpaperDesiredMinimumHeight(): number;
			public checkCallingOrSelfUriPermission(param0: android.net.Uri, param1: number): number;
			public getCacheDir(): java.io.File;
			/** @deprecated */
			public getWallpaperDesiredMinimumWidth(): number;
			public setWallpaper(param0: java.io.InputStream): void;
			public checkPermission(param0: string, param1: number, param2: number): number;
			public enforceUriPermission(param0: android.net.Uri, param1: number, param2: number, param3: number, param4: string): void;
			public getSharedPreferences(param0: string, param1: number): android.content.SharedPreferences;
			public enforceCallingPermission(param0: string, param1: string): void;
			public grantUriPermission(param0: string, param1: android.net.Uri, param2: number): void;
			public startActivities(param0: native.Array<android.content.Intent>, param1: android.os.Bundle): void;
			public setWallpaper(param0: android.graphics.Bitmap): void;
			public createPackageContext(param0: string, param1: number): android.content.Context;
			public isRestricted(): boolean;
			public openOrCreateDatabase(param0: string, param1: number, param2: android.database.sqlite.SQLiteDatabase.CursorFactory, param3: android.database.DatabaseErrorHandler): android.database.sqlite.SQLiteDatabase;
			public checkUriPermission(param0: android.net.Uri, param1: string, param2: string, param3: number, param4: number, param5: number): number;
			public attachBaseContext(param0: android.content.Context): void;
			/** @deprecated */
			public setWallpaper(param0: java.io.InputStream): void;
			public startIntentSender(param0: android.content.IntentSender, param1: android.content.Intent, param2: number, param3: number, param4: number): void;
			public getContentResolver(): android.content.ContentResolver;
			public removeStickyBroadcast(param0: android.content.Intent): void;
			public enforceCallingOrSelfPermission(param0: string, param1: string): void;
			public enforceUriPermission(param0: android.net.Uri, param1: string, param2: string, param3: number, param4: number, param5: number, param6: string): void;
			public sendStickyOrderedBroadcast(param0: android.content.Intent, param1: android.content.BroadcastReceiver, param2: android.os.Handler, param3: number, param4: string, param5: android.os.Bundle): void;
			public setTheme(param0: number): void;
			public startActivity(param0: android.content.Intent): void;
			public constructor(param0: android.content.Context);
			public deleteFile(param0: string): boolean;
			public enforcePermission(param0: string, param1: number, param2: number, param3: string): void;
			public getMainLooper(): android.os.Looper;
			/** @deprecated */
			public peekWallpaper(): android.graphics.drawable.Drawable;
			public removeStickyBroadcastAsUser(param0: android.content.Intent, param1: android.os.UserHandle): void;
			public enforceCallingOrSelfUriPermission(param0: android.net.Uri, param1: number, param2: string): void;
			/** @deprecated */
			public clearWallpaper(): void;
			public startIntentSender(param0: android.content.IntentSender, param1: android.content.Intent, param2: number, param3: number, param4: number, param5: android.os.Bundle): void;
			public sendBroadcast(param0: android.content.Intent): void;
		}
	}
}

declare module android {
	export module content {
		export class CursorLoader extends android.content.AsyncTaskLoader<android.database.Cursor> {
			public static class: java.lang.Class<android.content.CursorLoader>;
			public setUri(param0: android.net.Uri): void;
			public onReset(): void;
			public loadInBackground(): android.database.Cursor;
			public getSelectionArgs(): native.Array<string>;
			public deliverResult(param0: android.database.Cursor): void;
			public getSortOrder(): string;
			public getSelection(): string;
			public deliverResult(param0: any): void;
			public onStartLoading(): void;
			public setSelection(param0: string): void;
			public dump(param0: string, param1: java.io.FileDescriptor, param2: java.io.PrintWriter, param3: native.Array<string>): void;
			public loadInBackground(): any;
			public onCanceled(param0: any): void;
			public getUri(): android.net.Uri;
			public setSortOrder(param0: string): void;
			public setProjection(param0: native.Array<string>): void;
			public setSelectionArgs(param0: native.Array<string>): void;
			public constructor(param0: android.content.Context, param1: android.net.Uri, param2: native.Array<string>, param3: string, param4: native.Array<string>, param5: string);
			public getProjection(): native.Array<string>;
			public constructor(param0: android.content.Context);
			public onStopLoading(): void;
			public onCanceled(param0: android.database.Cursor): void;
			public cancelLoadInBackground(): void;
		}
	}
}

declare module android {
	export module content {
		export class DialogInterface extends java.lang.Object {
			public static class: java.lang.Class<android.content.DialogInterface>;
			/**
			 * Constructs a new instance of the android.content.DialogInterface interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				cancel(): void;
				dismiss(): void;
			});
			public constructor();
			public static BUTTON_POSITIVE: number;
			public static BUTTON_NEUTRAL: number;
			public static BUTTON3: number;
			public static BUTTON2: number;
			public static BUTTON_NEGATIVE: number;
			public static BUTTON1: number;
			public dismiss(): void;
			public cancel(): void;
		}
		export module DialogInterface {
			export class OnCancelListener extends java.lang.Object {
				public static class: java.lang.Class<android.content.DialogInterface.OnCancelListener>;
				/**
				 * Constructs a new instance of the android.content.DialogInterface$OnCancelListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onCancel(param0: android.content.DialogInterface): void;
				});
				public constructor();
				public onCancel(param0: android.content.DialogInterface): void;
			}
			export class OnClickListener extends java.lang.Object {
				public static class: java.lang.Class<android.content.DialogInterface.OnClickListener>;
				/**
				 * Constructs a new instance of the android.content.DialogInterface$OnClickListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onClick(param0: android.content.DialogInterface, param1: number): void;
				});
				public constructor();
				public onClick(param0: android.content.DialogInterface, param1: number): void;
			}
			export class OnDismissListener extends java.lang.Object {
				public static class: java.lang.Class<android.content.DialogInterface.OnDismissListener>;
				/**
				 * Constructs a new instance of the android.content.DialogInterface$OnDismissListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onDismiss(param0: android.content.DialogInterface): void;
				});
				public constructor();
				public onDismiss(param0: android.content.DialogInterface): void;
			}
			export class OnKeyListener extends java.lang.Object {
				public static class: java.lang.Class<android.content.DialogInterface.OnKeyListener>;
				/**
				 * Constructs a new instance of the android.content.DialogInterface$OnKeyListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onKey(param0: android.content.DialogInterface, param1: number, param2: android.view.KeyEvent): boolean;
				});
				public constructor();
				public onKey(param0: android.content.DialogInterface, param1: number, param2: android.view.KeyEvent): boolean;
			}
			export class OnMultiChoiceClickListener extends java.lang.Object {
				public static class: java.lang.Class<android.content.DialogInterface.OnMultiChoiceClickListener>;
				/**
				 * Constructs a new instance of the android.content.DialogInterface$OnMultiChoiceClickListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onClick(param0: android.content.DialogInterface, param1: number, param2: boolean): void;
				});
				public constructor();
				public onClick(param0: android.content.DialogInterface, param1: number, param2: boolean): void;
			}
			export class OnShowListener extends java.lang.Object {
				public static class: java.lang.Class<android.content.DialogInterface.OnShowListener>;
				/**
				 * Constructs a new instance of the android.content.DialogInterface$OnShowListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onShow(param0: android.content.DialogInterface): void;
				});
				public constructor();
				public onShow(param0: android.content.DialogInterface): void;
			}
		}
	}
}

declare module android {
	export module content {
		export class Entity extends java.lang.Object {
			public static class: java.lang.Class<android.content.Entity>;
			public toString(): string;
			public getEntityValues(): android.content.ContentValues;
			public addSubValue(param0: android.net.Uri, param1: android.content.ContentValues): void;
			public getSubValues(): java.util.ArrayList<android.content.Entity.NamedContentValues>;
			public constructor(param0: android.content.ContentValues);
		}
		export module Entity {
			export class NamedContentValues extends java.lang.Object {
				public static class: java.lang.Class<android.content.Entity.NamedContentValues>;
				public uri: android.net.Uri;
				public values: android.content.ContentValues;
				public constructor(param0: android.net.Uri, param1: android.content.ContentValues);
			}
		}
	}
}

declare module android {
	export module content {
		export class EntityIterator extends java.util.Iterator<android.content.Entity> {
			public static class: java.lang.Class<android.content.EntityIterator>;
			/**
			 * Constructs a new instance of the android.content.EntityIterator interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				reset(): void;
				close(): void;
			});
			public constructor();
			public reset(): void;
			public close(): void;
		}
	}
}

declare module android {
	export module content {
		export class Intent extends java.lang.Object implements android.os.Parcelable, java.lang.Cloneable {
			public static class: java.lang.Class<android.content.Intent>;
			public static ACTION_MAIN: string;
			public static ACTION_VIEW: string;
			public static ACTION_DEFAULT: string;
			public static ACTION_ATTACH_DATA: string;
			public static ACTION_EDIT: string;
			public static ACTION_INSERT_OR_EDIT: string;
			public static ACTION_PICK: string;
			public static ACTION_CREATE_SHORTCUT: string;
			public static EXTRA_SHORTCUT_INTENT: string;
			public static EXTRA_SHORTCUT_NAME: string;
			public static EXTRA_SHORTCUT_ICON: string;
			public static EXTRA_SHORTCUT_ICON_RESOURCE: string;
			public static ACTION_CHOOSER: string;
			public static ACTION_GET_CONTENT: string;
			public static ACTION_DIAL: string;
			public static ACTION_CALL: string;
			public static ACTION_SENDTO: string;
			public static ACTION_SEND: string;
			public static ACTION_SEND_MULTIPLE: string;
			public static ACTION_ANSWER: string;
			public static ACTION_INSERT: string;
			public static ACTION_PASTE: string;
			public static ACTION_DELETE: string;
			public static ACTION_RUN: string;
			public static ACTION_SYNC: string;
			public static ACTION_PICK_ACTIVITY: string;
			public static ACTION_SEARCH: string;
			public static ACTION_SYSTEM_TUTORIAL: string;
			public static ACTION_WEB_SEARCH: string;
			public static ACTION_ASSIST: string;
			public static EXTRA_ASSIST_PACKAGE: string;
			public static EXTRA_ASSIST_CONTEXT: string;
			public static ACTION_ALL_APPS: string;
			public static ACTION_SET_WALLPAPER: string;
			public static ACTION_BUG_REPORT: string;
			public static ACTION_FACTORY_TEST: string;
			public static ACTION_CALL_BUTTON: string;
			public static ACTION_VOICE_COMMAND: string;
			public static ACTION_SEARCH_LONG_PRESS: string;
			public static ACTION_APP_ERROR: string;
			public static ACTION_POWER_USAGE_SUMMARY: string;
			public static ACTION_MANAGE_NETWORK_USAGE: string;
			public static ACTION_INSTALL_PACKAGE: string;
			public static EXTRA_INSTALLER_PACKAGE_NAME: string;
			public static EXTRA_NOT_UNKNOWN_SOURCE: string;
			public static EXTRA_ORIGINATING_URI: string;
			public static EXTRA_REFERRER: string;
			public static EXTRA_ALLOW_REPLACE: string;
			public static EXTRA_RETURN_RESULT: string;
			public static ACTION_UNINSTALL_PACKAGE: string;
			public static ACTION_SCREEN_OFF: string;
			public static ACTION_SCREEN_ON: string;
			public static ACTION_DREAMING_STOPPED: string;
			public static ACTION_DREAMING_STARTED: string;
			public static ACTION_USER_PRESENT: string;
			public static ACTION_TIME_TICK: string;
			public static ACTION_TIME_CHANGED: string;
			public static ACTION_DATE_CHANGED: string;
			public static ACTION_TIMEZONE_CHANGED: string;
			public static ACTION_BOOT_COMPLETED: string;
			public static ACTION_CLOSE_SYSTEM_DIALOGS: string;
			public static ACTION_PACKAGE_INSTALL: string;
			public static ACTION_PACKAGE_ADDED: string;
			public static ACTION_PACKAGE_REPLACED: string;
			public static ACTION_MY_PACKAGE_REPLACED: string;
			public static ACTION_PACKAGE_REMOVED: string;
			public static ACTION_PACKAGE_FULLY_REMOVED: string;
			public static ACTION_PACKAGE_CHANGED: string;
			public static ACTION_PACKAGE_RESTARTED: string;
			public static ACTION_PACKAGE_DATA_CLEARED: string;
			public static ACTION_UID_REMOVED: string;
			public static ACTION_PACKAGE_FIRST_LAUNCH: string;
			public static ACTION_PACKAGE_NEEDS_VERIFICATION: string;
			public static ACTION_PACKAGE_VERIFIED: string;
			public static ACTION_EXTERNAL_APPLICATIONS_AVAILABLE: string;
			public static ACTION_EXTERNAL_APPLICATIONS_UNAVAILABLE: string;
			public static ACTION_WALLPAPER_CHANGED: string;
			public static ACTION_CONFIGURATION_CHANGED: string;
			public static ACTION_LOCALE_CHANGED: string;
			public static ACTION_BATTERY_CHANGED: string;
			public static ACTION_BATTERY_LOW: string;
			public static ACTION_BATTERY_OKAY: string;
			public static ACTION_POWER_CONNECTED: string;
			public static ACTION_POWER_DISCONNECTED: string;
			public static ACTION_SHUTDOWN: string;
			public static ACTION_DEVICE_STORAGE_LOW: string;
			public static ACTION_DEVICE_STORAGE_OK: string;
			public static ACTION_MANAGE_PACKAGE_STORAGE: string;
			public static ACTION_UMS_CONNECTED: string;
			public static ACTION_UMS_DISCONNECTED: string;
			public static ACTION_MEDIA_REMOVED: string;
			public static ACTION_MEDIA_UNMOUNTED: string;
			public static ACTION_MEDIA_CHECKING: string;
			public static ACTION_MEDIA_NOFS: string;
			public static ACTION_MEDIA_MOUNTED: string;
			public static ACTION_MEDIA_SHARED: string;
			public static ACTION_MEDIA_BAD_REMOVAL: string;
			public static ACTION_MEDIA_UNMOUNTABLE: string;
			public static ACTION_MEDIA_EJECT: string;
			public static ACTION_MEDIA_SCANNER_STARTED: string;
			public static ACTION_MEDIA_SCANNER_FINISHED: string;
			public static ACTION_MEDIA_SCANNER_SCAN_FILE: string;
			public static ACTION_MEDIA_BUTTON: string;
			public static ACTION_CAMERA_BUTTON: string;
			public static ACTION_GTALK_SERVICE_CONNECTED: string;
			public static ACTION_GTALK_SERVICE_DISCONNECTED: string;
			public static ACTION_INPUT_METHOD_CHANGED: string;
			public static ACTION_AIRPLANE_MODE_CHANGED: string;
			public static ACTION_PROVIDER_CHANGED: string;
			public static ACTION_HEADSET_PLUG: string;
			public static ACTION_NEW_OUTGOING_CALL: string;
			public static ACTION_REBOOT: string;
			public static ACTION_DOCK_EVENT: string;
			public static ACTION_GET_RESTRICTION_ENTRIES: string;
			public static ACTION_USER_INITIALIZE: string;
			public static ACTION_USER_FOREGROUND: string;
			public static ACTION_USER_BACKGROUND: string;
			public static ACTION_QUICK_CLOCK: string;
			public static CATEGORY_DEFAULT: string;
			public static CATEGORY_BROWSABLE: string;
			public static CATEGORY_ALTERNATIVE: string;
			public static CATEGORY_SELECTED_ALTERNATIVE: string;
			public static CATEGORY_TAB: string;
			public static CATEGORY_LAUNCHER: string;
			public static CATEGORY_INFO: string;
			public static CATEGORY_HOME: string;
			public static CATEGORY_PREFERENCE: string;
			public static CATEGORY_DEVELOPMENT_PREFERENCE: string;
			public static CATEGORY_EMBED: string;
			public static CATEGORY_APP_MARKET: string;
			public static CATEGORY_MONKEY: string;
			public static CATEGORY_TEST: string;
			public static CATEGORY_UNIT_TEST: string;
			public static CATEGORY_SAMPLE_CODE: string;
			public static CATEGORY_OPENABLE: string;
			public static CATEGORY_FRAMEWORK_INSTRUMENTATION_TEST: string;
			public static CATEGORY_CAR_DOCK: string;
			public static CATEGORY_DESK_DOCK: string;
			public static CATEGORY_LE_DESK_DOCK: string;
			public static CATEGORY_HE_DESK_DOCK: string;
			public static CATEGORY_CAR_MODE: string;
			public static CATEGORY_APP_BROWSER: string;
			public static CATEGORY_APP_CALCULATOR: string;
			public static CATEGORY_APP_CALENDAR: string;
			public static CATEGORY_APP_CONTACTS: string;
			public static CATEGORY_APP_EMAIL: string;
			public static CATEGORY_APP_GALLERY: string;
			public static CATEGORY_APP_MAPS: string;
			public static CATEGORY_APP_MESSAGING: string;
			public static CATEGORY_APP_MUSIC: string;
			public static EXTRA_TEMPLATE: string;
			public static EXTRA_TEXT: string;
			public static EXTRA_HTML_TEXT: string;
			public static EXTRA_STREAM: string;
			public static EXTRA_EMAIL: string;
			public static EXTRA_CC: string;
			public static EXTRA_BCC: string;
			public static EXTRA_SUBJECT: string;
			public static EXTRA_INTENT: string;
			public static EXTRA_TITLE: string;
			public static EXTRA_INITIAL_INTENTS: string;
			public static EXTRA_KEY_EVENT: string;
			public static EXTRA_DONT_KILL_APP: string;
			public static EXTRA_PHONE_NUMBER: string;
			public static EXTRA_UID: string;
			public static EXTRA_DATA_REMOVED: string;
			public static EXTRA_REPLACING: string;
			public static EXTRA_ALARM_COUNT: string;
			public static EXTRA_DOCK_STATE: string;
			public static EXTRA_DOCK_STATE_UNDOCKED: number;
			public static EXTRA_DOCK_STATE_DESK: number;
			public static EXTRA_DOCK_STATE_CAR: number;
			public static EXTRA_DOCK_STATE_LE_DESK: number;
			public static EXTRA_DOCK_STATE_HE_DESK: number;
			public static METADATA_DOCK_HOME: string;
			public static EXTRA_BUG_REPORT: string;
			public static EXTRA_REMOTE_INTENT_TOKEN: string;
			public static EXTRA_CHANGED_COMPONENT_NAME: string;
			public static EXTRA_CHANGED_COMPONENT_NAME_LIST: string;
			public static EXTRA_CHANGED_PACKAGE_LIST: string;
			public static EXTRA_CHANGED_UID_LIST: string;
			public static EXTRA_LOCAL_ONLY: string;
			public static EXTRA_ALLOW_MULTIPLE: string;
			public static EXTRA_RESTRICTIONS_LIST: string;
			public static EXTRA_RESTRICTIONS_BUNDLE: string;
			public static EXTRA_RESTRICTIONS_INTENT: string;
			public static FLAG_GRANT_READ_URI_PERMISSION: number;
			public static FLAG_GRANT_WRITE_URI_PERMISSION: number;
			public static FLAG_FROM_BACKGROUND: number;
			public static FLAG_DEBUG_LOG_RESOLUTION: number;
			public static FLAG_EXCLUDE_STOPPED_PACKAGES: number;
			public static FLAG_INCLUDE_STOPPED_PACKAGES: number;
			public static FLAG_ACTIVITY_NO_HISTORY: number;
			public static FLAG_ACTIVITY_SINGLE_TOP: number;
			public static FLAG_ACTIVITY_NEW_TASK: number;
			public static FLAG_ACTIVITY_MULTIPLE_TASK: number;
			public static FLAG_ACTIVITY_CLEAR_TOP: number;
			public static FLAG_ACTIVITY_FORWARD_RESULT: number;
			public static FLAG_ACTIVITY_PREVIOUS_IS_TOP: number;
			public static FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS: number;
			public static FLAG_ACTIVITY_BROUGHT_TO_FRONT: number;
			public static FLAG_ACTIVITY_RESET_TASK_IF_NEEDED: number;
			public static FLAG_ACTIVITY_LAUNCHED_FROM_HISTORY: number;
			public static FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET: number;
			public static FLAG_ACTIVITY_NO_USER_ACTION: number;
			public static FLAG_ACTIVITY_REORDER_TO_FRONT: number;
			public static FLAG_ACTIVITY_NO_ANIMATION: number;
			public static FLAG_ACTIVITY_CLEAR_TASK: number;
			public static FLAG_ACTIVITY_TASK_ON_HOME: number;
			public static FLAG_RECEIVER_REGISTERED_ONLY: number;
			public static FLAG_RECEIVER_REPLACE_PENDING: number;
			public static FLAG_RECEIVER_FOREGROUND: number;
			public static URI_INTENT_SCHEME: number;
			public static FILL_IN_ACTION: number;
			public static FILL_IN_DATA: number;
			public static FILL_IN_CATEGORIES: number;
			public static FILL_IN_COMPONENT: number;
			public static FILL_IN_PACKAGE: number;
			public static FILL_IN_SOURCE_BOUNDS: number;
			public static FILL_IN_SELECTOR: number;
			public static FILL_IN_CLIP_DATA: number;
			public static CREATOR: android.os.Parcelable.Creator<android.content.Intent>;
			public getParcelableExtra(param0: string): android.os.Parcelable;
			public resolveTypeIfNeeded(param0: android.content.ContentResolver): string;
			public filterEquals(param0: android.content.Intent): boolean;
			public getParcelableArrayListExtra(param0: string): java.util.ArrayList<any>;
			public getData(): android.net.Uri;
			public putParcelableArrayListExtra(param0: string, param1: java.util.ArrayList<any>): android.content.Intent;
			public static createChooser(param0: android.content.Intent, param1: string): android.content.Intent;
			public getScheme(): string;
			public setDataAndNormalize(param0: android.net.Uri): android.content.Intent;
			public setPackage(param0: string): android.content.Intent;
			public setComponent(param0: android.content.ComponentName): android.content.Intent;
			public getSelector(): android.content.Intent;
			public getIntArrayExtra(param0: string): native.Array<number>;
			public resolveActivityInfo(param0: android.content.pm.PackageManager, param1: number): android.content.pm.ActivityInfo;
			public getDoubleExtra(param0: string, param1: number): number;
			public getCharSequenceArrayExtra(param0: string): native.Array<string>;
			public fillIn(param0: android.content.Intent, param1: number): number;
			public getDoubleArrayExtra(param0: string): native.Array<number>;
			public static makeRestartActivityTask(param0: android.content.ComponentName): android.content.Intent;
			public setExtrasClassLoader(param0: java.lang.ClassLoader): void;
			public constructor();
			public putExtra(param0: string, param1: string): android.content.Intent;
			public resolveType(param0: android.content.Context): string;
			public getStringArrayExtra(param0: string): native.Array<string>;
			public clone(): any;
			public describeContents(): number;
			public setAction(param0: string): android.content.Intent;
			public getSourceBounds(): android.graphics.Rect;
			public getExtras(): android.os.Bundle;
			public putCharSequenceArrayListExtra(param0: string, param1: java.util.ArrayList<string>): android.content.Intent;
			public removeCategory(param0: string): void;
			public setClassName(param0: string, param1: string): android.content.Intent;
			public putExtras(param0: android.content.Intent): android.content.Intent;
			public setFlags(param0: number): android.content.Intent;
			public constructor(param0: android.content.Context, param1: java.lang.Class<any>);
			public getCategories(): java.util.Set<string>;
			public getPackage(): string;
			public getClipData(): android.content.ClipData;
			public getByteArrayExtra(param0: string): native.Array<number>;
			public getCharSequenceArrayListExtra(param0: string): java.util.ArrayList<string>;
			public getBooleanArrayExtra(param0: string): native.Array<boolean>;
			public getLongArrayExtra(param0: string): native.Array<number>;
			public constructor(param0: string, param1: android.net.Uri, param2: android.content.Context, param3: java.lang.Class<any>);
			public setType(param0: string): android.content.Intent;
			public removeExtra(param0: string): void;
			public addCategory(param0: string): android.content.Intent;
			public setDataAndTypeAndNormalize(param0: android.net.Uri, param1: string): android.content.Intent;
			public getCharArrayExtra(param0: string): native.Array<string>;
			public getShortExtra(param0: string, param1: number): number;
			public toUri(param0: number): string;
			public getFloatExtra(param0: string, param1: number): number;
			public resolveType(param0: android.content.ContentResolver): string;
			public getIntExtra(param0: string, param1: number): number;
			public getAction(): string;
			public getComponent(): android.content.ComponentName;
			public getDataString(): string;
			public putExtra(param0: string, param1: native.Array<number>): android.content.Intent;
			public putIntegerArrayListExtra(param0: string, param1: java.util.ArrayList<java.lang.Integer>): android.content.Intent;
			public putExtra(param0: string, param1: native.Array<boolean>): android.content.Intent;
			public constructor(param0: android.content.Intent);
			public putExtra(param0: string, param1: java.io.Serializable): android.content.Intent;
			public putExtra(param0: string, param1: native.Array<android.os.Parcelable>): android.content.Intent;
			public getFloatArrayExtra(param0: string): native.Array<number>;
			public readFromParcel(param0: android.os.Parcel): void;
			public filterHashCode(): number;
			public static getIntentOld(param0: string): android.content.Intent;
			public getSerializableExtra(param0: string): java.io.Serializable;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public putExtras(param0: android.os.Bundle): android.content.Intent;
			public static parseUri(param0: string, param1: number): android.content.Intent;
			public getType(): string;
			public putExtra(param0: string, param1: native.Array<string>): android.content.Intent;
			public constructor(param0: string);
			public hasExtra(param0: string): boolean;
			public getFlags(): number;
			public setSelector(param0: android.content.Intent): void;
			public replaceExtras(param0: android.content.Intent): android.content.Intent;
			public setClassName(param0: android.content.Context, param1: string): android.content.Intent;
			public static makeMainActivity(param0: android.content.ComponentName): android.content.Intent;
			public putStringArrayListExtra(param0: string, param1: java.util.ArrayList<string>): android.content.Intent;
			public addFlags(param0: number): android.content.Intent;
			public getStringExtra(param0: string): string;
			public constructor(param0: string, param1: android.net.Uri);
			public static parseIntent(param0: android.content.res.Resources, param1: org.xmlpull.v1.XmlPullParser, param2: android.util.AttributeSet): android.content.Intent;
			public static makeMainSelectorActivity(param0: string, param1: string): android.content.Intent;
			public getParcelableArrayExtra(param0: string): native.Array<android.os.Parcelable>;
			public putExtra(param0: string, param1: boolean): android.content.Intent;
			public getLongExtra(param0: string, param1: number): number;
			public getByteExtra(param0: string, param1: number): number;
			/** @deprecated */
			public static getIntent(param0: string): android.content.Intent;
			public getCharSequenceExtra(param0: string): string;
			public replaceExtras(param0: android.os.Bundle): android.content.Intent;
			public setSourceBounds(param0: android.graphics.Rect): void;
			public getShortArrayExtra(param0: string): native.Array<number>;
			public hasFileDescriptors(): boolean;
			public putExtra(param0: string, param1: android.os.Bundle): android.content.Intent;
			/** @deprecated */
			public toURI(): string;
			public static normalizeMimeType(param0: string): string;
			public hasCategory(param0: string): boolean;
			public getStringArrayListExtra(param0: string): java.util.ArrayList<string>;
			public setClipData(param0: android.content.ClipData): void;
			public setDataAndType(param0: android.net.Uri, param1: string): android.content.Intent;
			public putExtra(param0: string, param1: number): android.content.Intent;
			public getBooleanExtra(param0: string, param1: boolean): boolean;
			public setData(param0: android.net.Uri): android.content.Intent;
			public resolveActivity(param0: android.content.pm.PackageManager): android.content.ComponentName;
			public getIntegerArrayListExtra(param0: string): java.util.ArrayList<java.lang.Integer>;
			public setTypeAndNormalize(param0: string): android.content.Intent;
			public setClass(param0: android.content.Context, param1: java.lang.Class<any>): android.content.Intent;
			public toString(): string;
			public getCharExtra(param0: string, param1: string): string;
			public cloneFilter(): android.content.Intent;
			public getBundleExtra(param0: string): android.os.Bundle;
			public putExtra(param0: string, param1: android.os.Parcelable): android.content.Intent;
		}
		export module Intent {
			export class FilterComparison extends java.lang.Object {
				public static class: java.lang.Class<android.content.Intent.FilterComparison>;
				public getIntent(): android.content.Intent;
				public hashCode(): number;
				public equals(param0: any): boolean;
				public constructor(param0: android.content.Intent);
			}
			export class ShortcutIconResource extends java.lang.Object implements android.os.Parcelable {
				public static class: java.lang.Class<android.content.Intent.ShortcutIconResource>;
				public packageName: string;
				public resourceName: string;
				public static CREATOR: android.os.Parcelable.Creator<android.content.Intent.ShortcutIconResource>;
				public static fromContext(param0: android.content.Context, param1: number): android.content.Intent.ShortcutIconResource;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public describeContents(): number;
				public toString(): string;
				public constructor();
			}
		}
	}
}

declare module android {
	export module content {
		export class IntentFilter extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.content.IntentFilter>;
			public static SYSTEM_HIGH_PRIORITY: number;
			public static SYSTEM_LOW_PRIORITY: number;
			public static MATCH_CATEGORY_MASK: number;
			public static MATCH_ADJUSTMENT_MASK: number;
			public static MATCH_ADJUSTMENT_NORMAL: number;
			public static MATCH_CATEGORY_EMPTY: number;
			public static MATCH_CATEGORY_SCHEME: number;
			public static MATCH_CATEGORY_HOST: number;
			public static MATCH_CATEGORY_PORT: number;
			public static MATCH_CATEGORY_PATH: number;
			public static MATCH_CATEGORY_TYPE: number;
			public static NO_MATCH_TYPE: number;
			public static NO_MATCH_DATA: number;
			public static NO_MATCH_ACTION: number;
			public static NO_MATCH_CATEGORY: number;
			public static CREATOR: android.os.Parcelable.Creator<android.content.IntentFilter>;
			public addAction(param0: string): void;
			public addDataScheme(param0: string): void;
			public getDataScheme(param0: number): string;
			public match(param0: android.content.ContentResolver, param1: android.content.Intent, param2: boolean, param3: string): number;
			public typesIterator(): java.util.Iterator<string>;
			public getDataAuthority(param0: number): android.content.IntentFilter.AuthorityEntry;
			public getDataType(param0: number): string;
			public matchDataAuthority(param0: android.net.Uri): number;
			public constructor(param0: android.content.IntentFilter);
			public getCategory(param0: number): string;
			public constructor(param0: string, param1: string);
			public getAction(param0: number): string;
			public hasDataAuthority(param0: android.net.Uri): boolean;
			public addCategory(param0: string): void;
			public addDataPath(param0: string, param1: number): void;
			public countCategories(): number;
			public matchCategories(param0: java.util.Set<string>): string;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public pathsIterator(): java.util.Iterator<android.os.PatternMatcher>;
			public schemesIterator(): java.util.Iterator<string>;
			public countDataSchemes(): number;
			public hasDataScheme(param0: string): boolean;
			public constructor(param0: string);
			public addDataAuthority(param0: string, param1: string): void;
			public countDataPaths(): number;
			public countActions(): number;
			public matchAction(param0: string): boolean;
			public hasCategory(param0: string): boolean;
			public actionsIterator(): java.util.Iterator<string>;
			public categoriesIterator(): java.util.Iterator<string>;
			public hasAction(param0: string): boolean;
			public match(param0: string, param1: string, param2: string, param3: android.net.Uri, param4: java.util.Set<string>, param5: string): number;
			public constructor();
			public hasDataType(param0: string): boolean;
			public countDataAuthorities(): number;
			public readFromXml(param0: org.xmlpull.v1.XmlPullParser): void;
			public countDataTypes(): number;
			public matchData(param0: string, param1: string, param2: android.net.Uri): number;
			public static create(param0: string, param1: string): android.content.IntentFilter;
			public getPriority(): number;
			public writeToXml(param0: org.xmlpull.v1.XmlSerializer): void;
			public setPriority(param0: number): void;
			public getDataPath(param0: number): android.os.PatternMatcher;
			public describeContents(): number;
			public addDataType(param0: string): void;
			public dump(param0: android.util.Printer, param1: string): void;
			public hasDataPath(param0: string): boolean;
			public authoritiesIterator(): java.util.Iterator<android.content.IntentFilter.AuthorityEntry>;
		}
		export module IntentFilter {
			export class AuthorityEntry extends java.lang.Object {
				public static class: java.lang.Class<android.content.IntentFilter.AuthorityEntry>;
				public match(param0: android.net.Uri): number;
				public getPort(): number;
				public getHost(): string;
				public constructor(param0: string, param1: string);
			}
			export class MalformedMimeTypeException extends android.util.AndroidException {
				public static class: java.lang.Class<android.content.IntentFilter.MalformedMimeTypeException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Exception);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module android {
	export module content {
		export class IntentSender extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.content.IntentSender>;
			public static CREATOR: android.os.Parcelable.Creator<android.content.IntentSender>;
			public equals(param0: any): boolean;
			public static readIntentSenderOrNullFromParcel(param0: android.os.Parcel): android.content.IntentSender;
			public sendIntent(param0: android.content.Context, param1: number, param2: android.content.Intent, param3: android.content.IntentSender.OnFinished, param4: android.os.Handler, param5: string): void;
			/** @deprecated */
			public getTargetPackage(): string;
			public sendIntent(param0: android.content.Context, param1: number, param2: android.content.Intent, param3: android.content.IntentSender.OnFinished, param4: android.os.Handler): void;
			public getCreatorPackage(): string;
			public toString(): string;
			public static writeIntentSenderOrNullToParcel(param0: android.content.IntentSender, param1: android.os.Parcel): void;
			public getCreatorUserHandle(): android.os.UserHandle;
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public getCreatorUid(): number;
			public hashCode(): number;
		}
		export module IntentSender {
			export class OnFinished extends java.lang.Object {
				public static class: java.lang.Class<android.content.IntentSender.OnFinished>;
				/**
				 * Constructs a new instance of the android.content.IntentSender$OnFinished interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onSendFinished(param0: android.content.IntentSender, param1: android.content.Intent, param2: number, param3: string, param4: android.os.Bundle): void;
				});
				public constructor();
				public onSendFinished(param0: android.content.IntentSender, param1: android.content.Intent, param2: number, param3: string, param4: android.os.Bundle): void;
			}
			export class SendIntentException extends android.util.AndroidException {
				public static class: java.lang.Class<android.content.IntentSender.SendIntentException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Exception);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module android {
	export module content {
		export class Loader<D>  extends java.lang.Object {
			public static class: java.lang.Class<android.content.Loader<any>>;
			public unregisterOnLoadCanceledListener(param0: android.content.Loader.OnLoadCanceledListener<D>): void;
			public rollbackContentChanged(): void;
			public registerListener(param0: number, param1: android.content.Loader.OnLoadCompleteListener<D>): void;
			public onStartLoading(): void;
			public onForceLoad(): void;
			public isReset(): boolean;
			public forceLoad(): void;
			public getId(): number;
			public reset(): void;
			public getContext(): android.content.Context;
			public onStopLoading(): void;
			public abandon(): void;
			public isAbandoned(): boolean;
			public startLoading(): void;
			public deliverResult(param0: D): void;
			public onCancelLoad(): boolean;
			public unregisterListener(param0: android.content.Loader.OnLoadCompleteListener<D>): void;
			public commitContentChanged(): void;
			public onReset(): void;
			public isStarted(): boolean;
			public dataToString(param0: D): string;
			public registerOnLoadCanceledListener(param0: android.content.Loader.OnLoadCanceledListener<D>): void;
			public cancelLoad(): boolean;
			public dump(param0: string, param1: java.io.FileDescriptor, param2: java.io.PrintWriter, param3: native.Array<string>): void;
			public deliverCancellation(): void;
			public toString(): string;
			public stopLoading(): void;
			public constructor(param0: android.content.Context);
			public onContentChanged(): void;
			public onAbandon(): void;
			public takeContentChanged(): boolean;
		}
		export module Loader {
			export class ForceLoadContentObserver extends android.database.ContentObserver {
				public static class: java.lang.Class<android.content.Loader.ForceLoadContentObserver>;
				public constructor(param0: android.content.Loader<any>);
				public deliverSelfNotifications(): boolean;
				public onChange(param0: boolean, param1: android.net.Uri): void;
				public constructor(param0: android.os.Handler);
				public onChange(param0: boolean): void;
			}
			export class OnLoadCanceledListener<D>  extends java.lang.Object {
				public static class: java.lang.Class<android.content.Loader.OnLoadCanceledListener<any>>;
				/**
				 * Constructs a new instance of the android.content.Loader$OnLoadCanceledListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onLoadCanceled(param0: android.content.Loader<D>): void;
				});
				public constructor();
				public onLoadCanceled(param0: android.content.Loader<D>): void;
			}
			export class OnLoadCompleteListener<D>  extends java.lang.Object {
				public static class: java.lang.Class<android.content.Loader.OnLoadCompleteListener<any>>;
				/**
				 * Constructs a new instance of the android.content.Loader$OnLoadCompleteListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onLoadComplete(param0: android.content.Loader<D>, param1: D): void;
				});
				public constructor();
				public onLoadComplete(param0: android.content.Loader<D>, param1: D): void;
			}
		}
	}
}

declare module android {
	export module content {
		export class MutableContextWrapper extends android.content.ContextWrapper {
			public static class: java.lang.Class<android.content.MutableContextWrapper>;
			public constructor(param0: android.content.Context);
			public constructor();
			public setBaseContext(param0: android.content.Context): void;
		}
	}
}

declare module android {
	export module content {
		export class OperationApplicationException extends java.lang.Exception {
			public static class: java.lang.Class<android.content.OperationApplicationException>;
			public constructor(param0: java.lang.Throwable);
			public getNumSuccessfulYieldPoints(): number;
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor(param0: string, param1: number);
			public constructor(param0: number);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module android {
	export module content {
		export class PeriodicSync extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.content.PeriodicSync>;
			public account: android.accounts.Account;
			public authority: string;
			public extras: android.os.Bundle;
			public period: number;
			public static CREATOR: android.os.Parcelable.Creator<android.content.PeriodicSync>;
			public equals(param0: any): boolean;
			public describeContents(): number;
			public constructor(param0: android.accounts.Account, param1: string, param2: android.os.Bundle, param3: number);
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
		}
	}
}

declare module android {
	export module content {
		export class ReceiverCallNotAllowedException extends android.util.AndroidRuntimeException {
			public static class: java.lang.Class<android.content.ReceiverCallNotAllowedException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
			public constructor(param0: java.lang.Exception);
		}
	}
}

declare module android {
	export module content {
		export class RestrictionEntry extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.content.RestrictionEntry>;
			public static TYPE_NULL: number;
			public static TYPE_BOOLEAN: number;
			public static TYPE_CHOICE: number;
			public static TYPE_MULTI_SELECT: number;
			public static CREATOR: android.os.Parcelable.Creator<android.content.RestrictionEntry>;
			public getType(): number;
			public setChoiceValues(param0: android.content.Context, param1: number): void;
			public equals(param0: any): boolean;
			public setTitle(param0: string): void;
			public setType(param0: number): void;
			public getChoiceValues(): native.Array<string>;
			public setChoiceEntries(param0: android.content.Context, param1: number): void;
			public constructor(param0: string, param1: string);
			public getSelectedString(): string;
			public setSelectedState(param0: boolean): void;
			public setAllSelectedStrings(param0: native.Array<string>): void;
			public constructor(param0: android.os.Parcel);
			public getKey(): string;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public constructor(param0: string, param1: boolean);
			public setSelectedString(param0: string): void;
			public getAllSelectedStrings(): native.Array<string>;
			public getSelectedState(): boolean;
			public getTitle(): string;
			public getChoiceEntries(): native.Array<string>;
			public setDescription(param0: string): void;
			public setChoiceEntries(param0: native.Array<string>): void;
			public constructor(param0: string, param1: native.Array<string>);
			public toString(): string;
			public describeContents(): number;
			public getDescription(): string;
			public setChoiceValues(param0: native.Array<string>): void;
			public hashCode(): number;
		}
	}
}

declare module android {
	export module content {
		export class SearchRecentSuggestionsProvider extends android.content.ContentProvider {
			public static class: java.lang.Class<android.content.SearchRecentSuggestionsProvider>;
			public static DATABASE_MODE_QUERIES: number;
			public static DATABASE_MODE_2LINES: number;
			public onCreate(): boolean;
			public query(param0: android.net.Uri, param1: native.Array<string>, param2: string, param3: native.Array<string>, param4: string, param5: android.os.CancellationSignal): android.database.Cursor;
			public onTrimMemory(param0: number): void;
			public update(param0: android.net.Uri, param1: android.content.ContentValues, param2: string, param3: native.Array<string>): number;
			public setupSuggestions(param0: string, param1: number): void;
			public delete(param0: android.net.Uri, param1: string, param2: native.Array<string>): number;
			public query(param0: android.net.Uri, param1: native.Array<string>, param2: string, param3: native.Array<string>, param4: string): android.database.Cursor;
			public constructor();
			public insert(param0: android.net.Uri, param1: android.content.ContentValues): android.net.Uri;
			public getType(param0: android.net.Uri): string;
		}
	}
}

declare module android {
	export module content {
		export class ServiceConnection extends java.lang.Object {
			public static class: java.lang.Class<android.content.ServiceConnection>;
			/**
			 * Constructs a new instance of the android.content.ServiceConnection interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				onServiceConnected(param0: android.content.ComponentName, param1: android.os.IBinder): void;
				onServiceDisconnected(param0: android.content.ComponentName): void;
			});
			public constructor();
			public onServiceDisconnected(param0: android.content.ComponentName): void;
			public onServiceConnected(param0: android.content.ComponentName, param1: android.os.IBinder): void;
		}
	}
}

declare module android {
	export module content {
		export class SharedPreferences extends java.lang.Object {
			public static class: java.lang.Class<android.content.SharedPreferences>;
			/**
			 * Constructs a new instance of the android.content.SharedPreferences interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				getAll(): java.util.Map<string,any>;
				getString(param0: string, param1: string): string;
				getStringSet(param0: string, param1: java.util.Set<string>): java.util.Set<string>;
				getInt(param0: string, param1: number): number;
				getLong(param0: string, param1: number): number;
				getFloat(param0: string, param1: number): number;
				getBoolean(param0: string, param1: boolean): boolean;
				contains(param0: string): boolean;
				edit(): android.content.SharedPreferences.Editor;
				registerOnSharedPreferenceChangeListener(param0: android.content.SharedPreferences.OnSharedPreferenceChangeListener): void;
				unregisterOnSharedPreferenceChangeListener(param0: android.content.SharedPreferences.OnSharedPreferenceChangeListener): void;
			});
			public constructor();
			public getInt(param0: string, param1: number): number;
			public getFloat(param0: string, param1: number): number;
			public contains(param0: string): boolean;
			public getBoolean(param0: string, param1: boolean): boolean;
			public getStringSet(param0: string, param1: java.util.Set<string>): java.util.Set<string>;
			public getLong(param0: string, param1: number): number;
			public edit(): android.content.SharedPreferences.Editor;
			public getString(param0: string, param1: string): string;
			public registerOnSharedPreferenceChangeListener(param0: android.content.SharedPreferences.OnSharedPreferenceChangeListener): void;
			public getAll(): java.util.Map<string,any>;
			public unregisterOnSharedPreferenceChangeListener(param0: android.content.SharedPreferences.OnSharedPreferenceChangeListener): void;
		}
		export module SharedPreferences {
			export class Editor extends java.lang.Object {
				public static class: java.lang.Class<android.content.SharedPreferences.Editor>;
				/**
				 * Constructs a new instance of the android.content.SharedPreferences$Editor interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					putString(param0: string, param1: string): android.content.SharedPreferences.Editor;
					putStringSet(param0: string, param1: java.util.Set<string>): android.content.SharedPreferences.Editor;
					putInt(param0: string, param1: number): android.content.SharedPreferences.Editor;
					putLong(param0: string, param1: number): android.content.SharedPreferences.Editor;
					putFloat(param0: string, param1: number): android.content.SharedPreferences.Editor;
					putBoolean(param0: string, param1: boolean): android.content.SharedPreferences.Editor;
					remove(param0: string): android.content.SharedPreferences.Editor;
					clear(): android.content.SharedPreferences.Editor;
					commit(): boolean;
					apply(): void;
				});
				public constructor();
				public commit(): boolean;
				public apply(): void;
				public putString(param0: string, param1: string): android.content.SharedPreferences.Editor;
				public putLong(param0: string, param1: number): android.content.SharedPreferences.Editor;
				public putBoolean(param0: string, param1: boolean): android.content.SharedPreferences.Editor;
				public clear(): android.content.SharedPreferences.Editor;
				public putFloat(param0: string, param1: number): android.content.SharedPreferences.Editor;
				public remove(param0: string): android.content.SharedPreferences.Editor;
				public putStringSet(param0: string, param1: java.util.Set<string>): android.content.SharedPreferences.Editor;
				public putInt(param0: string, param1: number): android.content.SharedPreferences.Editor;
			}
			export class OnSharedPreferenceChangeListener extends java.lang.Object {
				public static class: java.lang.Class<android.content.SharedPreferences.OnSharedPreferenceChangeListener>;
				/**
				 * Constructs a new instance of the android.content.SharedPreferences$OnSharedPreferenceChangeListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onSharedPreferenceChanged(param0: android.content.SharedPreferences, param1: string): void;
				});
				public constructor();
				public onSharedPreferenceChanged(param0: android.content.SharedPreferences, param1: string): void;
			}
		}
	}
}

declare module android {
	export module content {
		export class SyncAdapterType extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.content.SyncAdapterType>;
			public authority: string;
			public accountType: string;
			public isKey: boolean;
			public static CREATOR: android.os.Parcelable.Creator<android.content.SyncAdapterType>;
			public equals(param0: any): boolean;
			public supportsUploading(): boolean;
			public isAlwaysSyncable(): boolean;
			public allowParallelSyncs(): boolean;
			public toString(): string;
			public constructor(param0: android.os.Parcel);
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public constructor(param0: string, param1: string, param2: boolean, param3: boolean);
			public getSettingsActivity(): string;
			public isUserVisible(): boolean;
			public static newKey(param0: string, param1: string): android.content.SyncAdapterType;
			public hashCode(): number;
		}
	}
}

declare module android {
	export module content {
		export class SyncContext extends java.lang.Object {
			public static class: java.lang.Class<android.content.SyncContext>;
			public onFinished(param0: android.content.SyncResult): void;
			public getSyncContextBinder(): android.os.IBinder;
		}
	}
}

declare module android {
	export module content {
		export class SyncInfo extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.content.SyncInfo>;
			public account: android.accounts.Account;
			public authority: string;
			public startTime: number;
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
		}
	}
}

declare module android {
	export module content {
		export class SyncResult extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.content.SyncResult>;
			public syncAlreadyInProgress: boolean;
			public tooManyDeletions: boolean;
			public tooManyRetries: boolean;
			public databaseError: boolean;
			public fullSyncRequested: boolean;
			public partialSyncUnavailable: boolean;
			public moreRecordsToGet: boolean;
			public delayUntil: number;
			public stats: android.content.SyncStats;
			public static ALREADY_IN_PROGRESS: android.content.SyncResult;
			public static CREATOR: android.os.Parcelable.Creator<android.content.SyncResult>;
			public clear(): void;
			public hasSoftError(): boolean;
			public toString(): string;
			public madeSomeProgress(): boolean;
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public constructor();
			public hasHardError(): boolean;
			public hasError(): boolean;
			public toDebugString(): string;
		}
	}
}

declare module android {
	export module content {
		export class SyncStats extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.content.SyncStats>;
			public numAuthExceptions: number;
			public numIoExceptions: number;
			public numParseExceptions: number;
			public numConflictDetectedExceptions: number;
			public numInserts: number;
			public numUpdates: number;
			public numDeletes: number;
			public numEntries: number;
			public numSkippedEntries: number;
			public static CREATOR: android.os.Parcelable.Creator<android.content.SyncStats>;
			public clear(): void;
			public toString(): string;
			public constructor(param0: android.os.Parcel);
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public constructor();
		}
	}
}

declare module android {
	export module content {
		export class SyncStatusObserver extends java.lang.Object {
			public static class: java.lang.Class<android.content.SyncStatusObserver>;
			/**
			 * Constructs a new instance of the android.content.SyncStatusObserver interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				onStatusChanged(param0: number): void;
			});
			public constructor();
			public onStatusChanged(param0: number): void;
		}
	}
}

declare module android {
	export module content {
		export class UriMatcher extends java.lang.Object {
			public static class: java.lang.Class<android.content.UriMatcher>;
			public static NO_MATCH: number;
			public match(param0: android.net.Uri): number;
			public addURI(param0: string, param1: string, param2: number): void;
			public constructor(param0: number);
		}
	}
}

declare module android {
	export module content {
		export module pm {
			export class ActivityInfo extends android.content.pm.ComponentInfo implements android.os.Parcelable {
				public static class: java.lang.Class<android.content.pm.ActivityInfo>;
				public theme: number;
				public static LAUNCH_MULTIPLE: number;
				public static LAUNCH_SINGLE_TOP: number;
				public static LAUNCH_SINGLE_TASK: number;
				public static LAUNCH_SINGLE_INSTANCE: number;
				public launchMode: number;
				public permission: string;
				public taskAffinity: string;
				public targetActivity: string;
				public static FLAG_MULTIPROCESS: number;
				public static FLAG_FINISH_ON_TASK_LAUNCH: number;
				public static FLAG_CLEAR_TASK_ON_LAUNCH: number;
				public static FLAG_ALWAYS_RETAIN_TASK_STATE: number;
				public static FLAG_STATE_NOT_NEEDED: number;
				public static FLAG_EXCLUDE_FROM_RECENTS: number;
				public static FLAG_ALLOW_TASK_REPARENTING: number;
				public static FLAG_NO_HISTORY: number;
				public static FLAG_FINISH_ON_CLOSE_SYSTEM_DIALOGS: number;
				public static FLAG_HARDWARE_ACCELERATED: number;
				public static FLAG_IMMERSIVE: number;
				public static FLAG_SINGLE_USER: number;
				public flags: number;
				public static SCREEN_ORIENTATION_UNSPECIFIED: number;
				public static SCREEN_ORIENTATION_LANDSCAPE: number;
				public static SCREEN_ORIENTATION_PORTRAIT: number;
				public static SCREEN_ORIENTATION_USER: number;
				public static SCREEN_ORIENTATION_BEHIND: number;
				public static SCREEN_ORIENTATION_SENSOR: number;
				public static SCREEN_ORIENTATION_NOSENSOR: number;
				public static SCREEN_ORIENTATION_SENSOR_LANDSCAPE: number;
				public static SCREEN_ORIENTATION_SENSOR_PORTRAIT: number;
				public static SCREEN_ORIENTATION_REVERSE_LANDSCAPE: number;
				public static SCREEN_ORIENTATION_REVERSE_PORTRAIT: number;
				public static SCREEN_ORIENTATION_FULL_SENSOR: number;
				public static SCREEN_ORIENTATION_USER_LANDSCAPE: number;
				public static SCREEN_ORIENTATION_USER_PORTRAIT: number;
				public static SCREEN_ORIENTATION_FULL_USER: number;
				public static SCREEN_ORIENTATION_LOCKED: number;
				public screenOrientation: number;
				public static CONFIG_MCC: number;
				public static CONFIG_MNC: number;
				public static CONFIG_LOCALE: number;
				public static CONFIG_TOUCHSCREEN: number;
				public static CONFIG_KEYBOARD: number;
				public static CONFIG_KEYBOARD_HIDDEN: number;
				public static CONFIG_NAVIGATION: number;
				public static CONFIG_ORIENTATION: number;
				public static CONFIG_SCREEN_LAYOUT: number;
				public static CONFIG_UI_MODE: number;
				public static CONFIG_SCREEN_SIZE: number;
				public static CONFIG_SMALLEST_SCREEN_SIZE: number;
				public static CONFIG_DENSITY: number;
				public static CONFIG_LAYOUT_DIRECTION: number;
				public static CONFIG_FONT_SCALE: number;
				public configChanges: number;
				public softInputMode: number;
				public uiOptions: number;
				public static UIOPTION_SPLIT_ACTION_BAR_WHEN_NARROW: number;
				public parentActivityName: string;
				public static CREATOR: android.os.Parcelable.Creator<android.content.pm.ActivityInfo>;
				public getThemeResource(): number;
				public constructor(param0: android.os.Parcel);
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public dump(param0: android.util.Printer, param1: string): void;
				public describeContents(): number;
				public constructor(param0: android.content.pm.ActivityInfo);
				public constructor(param0: android.content.pm.PackageItemInfo);
				public toString(): string;
				public constructor(param0: android.content.pm.ComponentInfo);
				public constructor();
			}
		}
	}
}

declare module android {
	export module content {
		export module pm {
			export class ApplicationInfo extends android.content.pm.PackageItemInfo implements android.os.Parcelable {
				public static class: java.lang.Class<android.content.pm.ApplicationInfo>;
				public taskAffinity: string;
				public permission: string;
				public processName: string;
				public className: string;
				public descriptionRes: number;
				public theme: number;
				public manageSpaceActivityName: string;
				public backupAgentName: string;
				public uiOptions: number;
				public static FLAG_SYSTEM: number;
				public static FLAG_DEBUGGABLE: number;
				public static FLAG_HAS_CODE: number;
				public static FLAG_PERSISTENT: number;
				public static FLAG_FACTORY_TEST: number;
				public static FLAG_ALLOW_TASK_REPARENTING: number;
				public static FLAG_ALLOW_CLEAR_USER_DATA: number;
				public static FLAG_UPDATED_SYSTEM_APP: number;
				public static FLAG_TEST_ONLY: number;
				public static FLAG_SUPPORTS_SMALL_SCREENS: number;
				public static FLAG_SUPPORTS_NORMAL_SCREENS: number;
				public static FLAG_SUPPORTS_LARGE_SCREENS: number;
				public static FLAG_RESIZEABLE_FOR_SCREENS: number;
				public static FLAG_SUPPORTS_SCREEN_DENSITIES: number;
				public static FLAG_VM_SAFE_MODE: number;
				public static FLAG_ALLOW_BACKUP: number;
				public static FLAG_KILL_AFTER_RESTORE: number;
				public static FLAG_RESTORE_ANY_VERSION: number;
				public static FLAG_EXTERNAL_STORAGE: number;
				public static FLAG_SUPPORTS_XLARGE_SCREENS: number;
				public static FLAG_LARGE_HEAP: number;
				public static FLAG_STOPPED: number;
				public static FLAG_SUPPORTS_RTL: number;
				public static FLAG_INSTALLED: number;
				public static FLAG_IS_DATA_ONLY: number;
				public flags: number;
				public requiresSmallestWidthDp: number;
				public compatibleWidthLimitDp: number;
				public largestWidthLimitDp: number;
				public sourceDir: string;
				public publicSourceDir: string;
				public sharedLibraryFiles: native.Array<string>;
				public dataDir: string;
				public nativeLibraryDir: string;
				public uid: number;
				public targetSdkVersion: number;
				public enabled: boolean;
				public static CREATOR: android.os.Parcelable.Creator<android.content.pm.ApplicationInfo>;
				public loadDescription(param0: android.content.pm.PackageManager): string;
				public constructor(param0: android.os.Parcel);
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public constructor(param0: android.content.pm.ApplicationInfo);
				public dump(param0: android.util.Printer, param1: string): void;
				public describeContents(): number;
				public constructor(param0: android.content.pm.PackageItemInfo);
				public toString(): string;
				public constructor();
			}
			export module ApplicationInfo {
				export class DisplayNameComparator extends java.util.Comparator<android.content.pm.ApplicationInfo> {
					public static class: java.lang.Class<android.content.pm.ApplicationInfo.DisplayNameComparator>;
					public equals(param0: any): boolean;
					public compare(param0: any, param1: any): number;
					public constructor(param0: android.content.pm.PackageManager);
					public compare(param0: android.content.pm.ApplicationInfo, param1: android.content.pm.ApplicationInfo): number;
				}
			}
		}
	}
}

declare module android {
	export module content {
		export module pm {
			export class ComponentInfo extends android.content.pm.PackageItemInfo {
				public static class: java.lang.Class<android.content.pm.ComponentInfo>;
				public applicationInfo: android.content.pm.ApplicationInfo;
				public processName: string;
				public descriptionRes: number;
				public enabled: boolean;
				public exported: boolean;
				public constructor(param0: android.os.Parcel);
				public loadLabel(param0: android.content.pm.PackageManager): string;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public isEnabled(): boolean;
				public getIconResource(): number;
				public dumpBack(param0: android.util.Printer, param1: string): void;
				public constructor(param0: android.content.pm.PackageItemInfo);
				public constructor(param0: android.content.pm.ComponentInfo);
				public dumpFront(param0: android.util.Printer, param1: string): void;
				public constructor();
			}
		}
	}
}

declare module android {
	export module content {
		export module pm {
			export class ConfigurationInfo extends java.lang.Object implements android.os.Parcelable {
				public static class: java.lang.Class<android.content.pm.ConfigurationInfo>;
				public reqTouchScreen: number;
				public reqKeyboardType: number;
				public reqNavigation: number;
				public static INPUT_FEATURE_HARD_KEYBOARD: number;
				public static INPUT_FEATURE_FIVE_WAY_NAV: number;
				public reqInputFeatures: number;
				public static GL_ES_VERSION_UNDEFINED: number;
				public reqGlEsVersion: number;
				public static CREATOR: android.os.Parcelable.Creator<android.content.pm.ConfigurationInfo>;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public getGlEsVersion(): string;
				public describeContents(): number;
				public toString(): string;
				public constructor(param0: android.content.pm.ConfigurationInfo);
				public constructor();
			}
		}
	}
}

declare module android {
	export module content {
		export module pm {
			export class FeatureInfo extends java.lang.Object implements android.os.Parcelable {
				public static class: java.lang.Class<android.content.pm.FeatureInfo>;
				public name: string;
				public static GL_ES_VERSION_UNDEFINED: number;
				public reqGlEsVersion: number;
				public static FLAG_REQUIRED: number;
				public flags: number;
				public static CREATOR: android.os.Parcelable.Creator<android.content.pm.FeatureInfo>;
				public constructor(param0: android.content.pm.FeatureInfo);
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public getGlEsVersion(): string;
				public describeContents(): number;
				public toString(): string;
				public constructor();
			}
		}
	}
}

declare module android {
	export module content {
		export module pm {
			export class InstrumentationInfo extends android.content.pm.PackageItemInfo implements android.os.Parcelable {
				public static class: java.lang.Class<android.content.pm.InstrumentationInfo>;
				public targetPackage: string;
				public sourceDir: string;
				public publicSourceDir: string;
				public dataDir: string;
				public handleProfiling: boolean;
				public functionalTest: boolean;
				public static CREATOR: android.os.Parcelable.Creator<android.content.pm.InstrumentationInfo>;
				public constructor(param0: android.os.Parcel);
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public constructor(param0: android.content.pm.InstrumentationInfo);
				public describeContents(): number;
				public constructor(param0: android.content.pm.PackageItemInfo);
				public toString(): string;
				public constructor();
			}
		}
	}
}

declare module android {
	export module content {
		export module pm {
			export class LabeledIntent extends android.content.Intent {
				public static class: java.lang.Class<android.content.pm.LabeledIntent>;
				public static CREATOR: android.os.Parcelable.Creator<android.content.pm.LabeledIntent>;
				public constructor(param0: android.content.Context, param1: java.lang.Class<any>);
				public constructor(param0: string, param1: string, param2: number);
				public loadLabel(param0: android.content.pm.PackageManager): string;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public loadIcon(param0: android.content.pm.PackageManager): android.graphics.drawable.Drawable;
				public constructor(param0: string, param1: number, param2: number);
				public constructor(param0: android.content.Intent);
				public getIconResource(): number;
				public getSourcePackage(): string;
				public constructor(param0: string);
				public constructor();
				public constructor(param0: android.content.Intent, param1: string, param2: string, param3: number);
				public getNonLocalizedLabel(): string;
				public getLabelResource(): number;
				public describeContents(): number;
				public constructor(param0: android.content.Intent, param1: string, param2: number, param3: number);
				public readFromParcel(param0: android.os.Parcel): void;
				public constructor(param0: string, param1: android.net.Uri, param2: android.content.Context, param3: java.lang.Class<any>);
				public constructor(param0: string, param1: android.net.Uri);
			}
		}
	}
}

declare module android {
	export module content {
		export module pm {
			export class PackageInfo extends java.lang.Object implements android.os.Parcelable {
				public static class: java.lang.Class<android.content.pm.PackageInfo>;
				public packageName: string;
				public versionCode: number;
				public versionName: string;
				public sharedUserId: string;
				public sharedUserLabel: number;
				public applicationInfo: android.content.pm.ApplicationInfo;
				public firstInstallTime: number;
				public lastUpdateTime: number;
				public gids: native.Array<number>;
				public activities: native.Array<android.content.pm.ActivityInfo>;
				public receivers: native.Array<android.content.pm.ActivityInfo>;
				public services: native.Array<android.content.pm.ServiceInfo>;
				public providers: native.Array<android.content.pm.ProviderInfo>;
				public instrumentation: native.Array<android.content.pm.InstrumentationInfo>;
				public permissions: native.Array<android.content.pm.PermissionInfo>;
				public requestedPermissions: native.Array<string>;
				public requestedPermissionsFlags: native.Array<number>;
				public static REQUESTED_PERMISSION_REQUIRED: number;
				public static REQUESTED_PERMISSION_GRANTED: number;
				public signatures: native.Array<android.content.pm.Signature>;
				public configPreferences: native.Array<android.content.pm.ConfigurationInfo>;
				public reqFeatures: native.Array<android.content.pm.FeatureInfo>;
				public static CREATOR: android.os.Parcelable.Creator<android.content.pm.PackageInfo>;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public describeContents(): number;
				public toString(): string;
				public constructor();
			}
		}
	}
}

declare module android {
	export module content {
		export module pm {
			export class PackageItemInfo extends java.lang.Object {
				public static class: java.lang.Class<android.content.pm.PackageItemInfo>;
				public name: string;
				public packageName: string;
				public labelRes: number;
				public nonLocalizedLabel: string;
				public icon: number;
				public logo: number;
				public metaData: android.os.Bundle;
				public constructor(param0: android.os.Parcel);
				public loadLabel(param0: android.content.pm.PackageManager): string;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public loadIcon(param0: android.content.pm.PackageManager): android.graphics.drawable.Drawable;
				public loadLogo(param0: android.content.pm.PackageManager): android.graphics.drawable.Drawable;
				public dumpBack(param0: android.util.Printer, param1: string): void;
				public constructor(param0: android.content.pm.PackageItemInfo);
				public loadXmlMetaData(param0: android.content.pm.PackageManager, param1: string): android.content.res.XmlResourceParser;
				public dumpFront(param0: android.util.Printer, param1: string): void;
				public constructor();
			}
			export module PackageItemInfo {
				export class DisplayNameComparator extends java.util.Comparator<android.content.pm.PackageItemInfo> {
					public static class: java.lang.Class<android.content.pm.PackageItemInfo.DisplayNameComparator>;
					public equals(param0: any): boolean;
					public compare(param0: any, param1: any): number;
					public compare(param0: android.content.pm.PackageItemInfo, param1: android.content.pm.PackageItemInfo): number;
					public constructor(param0: android.content.pm.PackageManager);
				}
			}
		}
	}
}

declare module android {
	export module content {
		export module pm {
			export abstract class PackageManager extends java.lang.Object {
				public static class: java.lang.Class<android.content.pm.PackageManager>;
				public static GET_ACTIVITIES: number;
				public static GET_RECEIVERS: number;
				public static GET_SERVICES: number;
				public static GET_PROVIDERS: number;
				public static GET_INSTRUMENTATION: number;
				public static GET_INTENT_FILTERS: number;
				public static GET_SIGNATURES: number;
				public static GET_RESOLVED_FILTER: number;
				public static GET_META_DATA: number;
				public static GET_GIDS: number;
				public static GET_DISABLED_COMPONENTS: number;
				public static GET_SHARED_LIBRARY_FILES: number;
				public static GET_URI_PERMISSION_PATTERNS: number;
				public static GET_PERMISSIONS: number;
				public static GET_UNINSTALLED_PACKAGES: number;
				public static GET_CONFIGURATIONS: number;
				public static GET_DISABLED_UNTIL_USED_COMPONENTS: number;
				public static MATCH_DEFAULT_ONLY: number;
				public static PERMISSION_GRANTED: number;
				public static PERMISSION_DENIED: number;
				public static SIGNATURE_MATCH: number;
				public static SIGNATURE_NEITHER_SIGNED: number;
				public static SIGNATURE_FIRST_NOT_SIGNED: number;
				public static SIGNATURE_SECOND_NOT_SIGNED: number;
				public static SIGNATURE_NO_MATCH: number;
				public static SIGNATURE_UNKNOWN_PACKAGE: number;
				public static COMPONENT_ENABLED_STATE_DEFAULT: number;
				public static COMPONENT_ENABLED_STATE_ENABLED: number;
				public static COMPONENT_ENABLED_STATE_DISABLED: number;
				public static COMPONENT_ENABLED_STATE_DISABLED_USER: number;
				public static COMPONENT_ENABLED_STATE_DISABLED_UNTIL_USED: number;
				public static DONT_KILL_APP: number;
				public static VERIFICATION_ALLOW: number;
				public static VERIFICATION_REJECT: number;
				public static MAXIMUM_VERIFICATION_TIMEOUT: number;
				public static FEATURE_AUDIO_LOW_LATENCY: string;
				public static FEATURE_BLUETOOTH: string;
				public static FEATURE_BLUETOOTH_LE: string;
				public static FEATURE_CAMERA: string;
				public static FEATURE_CAMERA_AUTOFOCUS: string;
				public static FEATURE_CAMERA_ANY: string;
				public static FEATURE_CAMERA_FLASH: string;
				public static FEATURE_CAMERA_FRONT: string;
				public static FEATURE_LOCATION: string;
				public static FEATURE_LOCATION_GPS: string;
				public static FEATURE_LOCATION_NETWORK: string;
				public static FEATURE_MICROPHONE: string;
				public static FEATURE_NFC: string;
				public static FEATURE_SENSOR_ACCELEROMETER: string;
				public static FEATURE_SENSOR_BAROMETER: string;
				public static FEATURE_SENSOR_COMPASS: string;
				public static FEATURE_SENSOR_GYROSCOPE: string;
				public static FEATURE_SENSOR_LIGHT: string;
				public static FEATURE_SENSOR_PROXIMITY: string;
				public static FEATURE_TELEPHONY: string;
				public static FEATURE_TELEPHONY_CDMA: string;
				public static FEATURE_TELEPHONY_GSM: string;
				public static FEATURE_USB_HOST: string;
				public static FEATURE_USB_ACCESSORY: string;
				public static FEATURE_SIP: string;
				public static FEATURE_SIP_VOIP: string;
				public static FEATURE_TOUCHSCREEN: string;
				public static FEATURE_TOUCHSCREEN_MULTITOUCH: string;
				public static FEATURE_TOUCHSCREEN_MULTITOUCH_DISTINCT: string;
				public static FEATURE_TOUCHSCREEN_MULTITOUCH_JAZZHAND: string;
				public static FEATURE_FAKETOUCH: string;
				public static FEATURE_FAKETOUCH_MULTITOUCH_DISTINCT: string;
				public static FEATURE_FAKETOUCH_MULTITOUCH_JAZZHAND: string;
				public static FEATURE_SCREEN_PORTRAIT: string;
				public static FEATURE_SCREEN_LANDSCAPE: string;
				public static FEATURE_LIVE_WALLPAPER: string;
				public static FEATURE_APP_WIDGETS: string;
				public static FEATURE_HOME_SCREEN: string;
				public static FEATURE_INPUT_METHODS: string;
				public static FEATURE_WIFI: string;
				public static FEATURE_WIFI_DIRECT: string;
				public static FEATURE_TELEVISION: string;
				public static EXTRA_VERIFICATION_ID: string;
				public static EXTRA_VERIFICATION_RESULT: string;
				public getServiceInfo(param0: android.content.ComponentName, param1: number): android.content.pm.ServiceInfo;
				public checkSignatures(param0: number, param1: number): number;
				public getApplicationInfo(param0: string, param1: number): android.content.pm.ApplicationInfo;
				public addPermission(param0: android.content.pm.PermissionInfo): boolean;
				public resolveService(param0: android.content.Intent, param1: number): android.content.pm.ResolveInfo;
				public getPackageGids(param0: string): native.Array<number>;
				public getApplicationLabel(param0: android.content.pm.ApplicationInfo): string;
				public checkPermission(param0: string, param1: string): number;
				public getDefaultActivityIcon(): android.graphics.drawable.Drawable;
				public constructor();
				public getPackagesHoldingPermissions(param0: native.Array<string>, param1: number): java.util.List<android.content.pm.PackageInfo>;
				public getSystemAvailableFeatures(): native.Array<android.content.pm.FeatureInfo>;
				public setInstallerPackageName(param0: string, param1: string): void;
				public getActivityIcon(param0: android.content.ComponentName): android.graphics.drawable.Drawable;
				public getDrawable(param0: string, param1: number, param2: android.content.pm.ApplicationInfo): android.graphics.drawable.Drawable;
				public getPermissionGroupInfo(param0: string, param1: number): android.content.pm.PermissionGroupInfo;
				public getActivityLogo(param0: android.content.ComponentName): android.graphics.drawable.Drawable;
				public getPreferredActivities(param0: java.util.List<android.content.IntentFilter>, param1: java.util.List<android.content.ComponentName>, param2: string): number;
				public queryBroadcastReceivers(param0: android.content.Intent, param1: number): java.util.List<android.content.pm.ResolveInfo>;
				public getText(param0: string, param1: number, param2: android.content.pm.ApplicationInfo): string;
				/** @deprecated */
				public addPreferredActivity(param0: android.content.IntentFilter, param1: number, param2: native.Array<android.content.ComponentName>, param3: android.content.ComponentName): void;
				public getComponentEnabledSetting(param0: android.content.ComponentName): number;
				public getResourcesForActivity(param0: android.content.ComponentName): android.content.res.Resources;
				public getInstrumentationInfo(param0: android.content.ComponentName, param1: number): android.content.pm.InstrumentationInfo;
				public getInstallerPackageName(param0: string): string;
				public getPreferredPackages(param0: number): java.util.List<android.content.pm.PackageInfo>;
				public getAllPermissionGroups(param0: number): java.util.List<android.content.pm.PermissionGroupInfo>;
				public resolveActivity(param0: android.content.Intent, param1: number): android.content.pm.ResolveInfo;
				public queryIntentActivityOptions(param0: android.content.ComponentName, param1: native.Array<android.content.Intent>, param2: android.content.Intent, param3: number): java.util.List<android.content.pm.ResolveInfo>;
				public getApplicationIcon(param0: string): android.graphics.drawable.Drawable;
				public getActivityInfo(param0: android.content.ComponentName, param1: number): android.content.pm.ActivityInfo;
				public setApplicationEnabledSetting(param0: string, param1: number, param2: number): void;
				public setComponentEnabledSetting(param0: android.content.ComponentName, param1: number, param2: number): void;
				public getResourcesForApplication(param0: string): android.content.res.Resources;
				public queryIntentActivities(param0: android.content.Intent, param1: number): java.util.List<android.content.pm.ResolveInfo>;
				public resolveContentProvider(param0: string, param1: number): android.content.pm.ProviderInfo;
				public getInstalledPackages(param0: number): java.util.List<android.content.pm.PackageInfo>;
				public removePermission(param0: string): void;
				public canonicalToCurrentPackageNames(param0: native.Array<string>): native.Array<string>;
				public getActivityLogo(param0: android.content.Intent): android.graphics.drawable.Drawable;
				public getPermissionInfo(param0: string, param1: number): android.content.pm.PermissionInfo;
				public getLaunchIntentForPackage(param0: string): android.content.Intent;
				public getResourcesForApplication(param0: android.content.pm.ApplicationInfo): android.content.res.Resources;
				/** @deprecated */
				public removePackageFromPreferred(param0: string): void;
				public queryPermissionsByGroup(param0: string, param1: number): java.util.List<android.content.pm.PermissionInfo>;
				public checkSignatures(param0: string, param1: string): number;
				public clearPackagePreferredActivities(param0: string): void;
				public getInstalledApplications(param0: number): java.util.List<android.content.pm.ApplicationInfo>;
				public addPermissionAsync(param0: android.content.pm.PermissionInfo): boolean;
				public queryIntentServices(param0: android.content.Intent, param1: number): java.util.List<android.content.pm.ResolveInfo>;
				public queryInstrumentation(param0: string, param1: number): java.util.List<android.content.pm.InstrumentationInfo>;
				public getApplicationLogo(param0: string): android.graphics.drawable.Drawable;
				public extendVerificationTimeout(param0: number, param1: number, param2: number): void;
				public getActivityIcon(param0: android.content.Intent): android.graphics.drawable.Drawable;
				public getSystemSharedLibraryNames(): native.Array<string>;
				public getApplicationIcon(param0: android.content.pm.ApplicationInfo): android.graphics.drawable.Drawable;
				public verifyPendingInstall(param0: number, param1: number): void;
				public getPackageArchiveInfo(param0: string, param1: number): android.content.pm.PackageInfo;
				public getProviderInfo(param0: android.content.ComponentName, param1: number): android.content.pm.ProviderInfo;
				public getApplicationEnabledSetting(param0: string): number;
				public getReceiverInfo(param0: android.content.ComponentName, param1: number): android.content.pm.ActivityInfo;
				public hasSystemFeature(param0: string): boolean;
				public getXml(param0: string, param1: number, param2: android.content.pm.ApplicationInfo): android.content.res.XmlResourceParser;
				public getNameForUid(param0: number): string;
				public getPackageInfo(param0: string, param1: number): android.content.pm.PackageInfo;
				public getPackagesForUid(param0: number): native.Array<string>;
				public queryContentProviders(param0: string, param1: number, param2: number): java.util.List<android.content.pm.ProviderInfo>;
				public isSafeMode(): boolean;
				public currentToCanonicalPackageNames(param0: native.Array<string>): native.Array<string>;
				/** @deprecated */
				public addPackageToPreferred(param0: string): void;
				public getApplicationLogo(param0: android.content.pm.ApplicationInfo): android.graphics.drawable.Drawable;
			}
			export module PackageManager {
				export class NameNotFoundException extends android.util.AndroidException {
					public static class: java.lang.Class<android.content.pm.PackageManager.NameNotFoundException>;
					public constructor(param0: string, param1: java.lang.Throwable);
					public constructor(param0: string);
					public constructor(param0: java.lang.Throwable);
					public constructor();
					public constructor(param0: java.lang.Exception);
				}
			}
		}
	}
}

declare module android {
	export module content {
		export module pm {
			export class PackageStats extends java.lang.Object implements android.os.Parcelable {
				public static class: java.lang.Class<android.content.pm.PackageStats>;
				public packageName: string;
				public codeSize: number;
				public dataSize: number;
				public cacheSize: number;
				public externalCodeSize: number;
				public externalDataSize: number;
				public externalCacheSize: number;
				public externalMediaSize: number;
				public externalObbSize: number;
				public static CREATOR: android.os.Parcelable.Creator<android.content.pm.PackageStats>;
				public constructor(param0: android.os.Parcel);
				public constructor(param0: android.content.pm.PackageStats);
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public describeContents(): number;
				public toString(): string;
				public constructor(param0: string);
			}
		}
	}
}

declare module android {
	export module content {
		export module pm {
			export class PathPermission extends android.os.PatternMatcher {
				public static class: java.lang.Class<android.content.pm.PathPermission>;
				public static CREATOR: android.os.Parcelable.Creator<android.content.pm.PathPermission>;
				public constructor(param0: android.os.Parcel);
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public constructor(param0: string, param1: number);
				public getWritePermission(): string;
				public describeContents(): number;
				public constructor(param0: string, param1: number, param2: string, param3: string);
				public getReadPermission(): string;
			}
		}
	}
}

declare module android {
	export module content {
		export module pm {
			export class PermissionGroupInfo extends android.content.pm.PackageItemInfo implements android.os.Parcelable {
				public static class: java.lang.Class<android.content.pm.PermissionGroupInfo>;
				public descriptionRes: number;
				public nonLocalizedDescription: string;
				public static FLAG_PERSONAL_INFO: number;
				public flags: number;
				public priority: number;
				public static CREATOR: android.os.Parcelable.Creator<android.content.pm.PermissionGroupInfo>;
				public loadDescription(param0: android.content.pm.PackageManager): string;
				public constructor(param0: android.os.Parcel);
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public describeContents(): number;
				public constructor(param0: android.content.pm.PermissionGroupInfo);
				public constructor(param0: android.content.pm.PackageItemInfo);
				public toString(): string;
				public constructor();
			}
		}
	}
}

declare module android {
	export module content {
		export module pm {
			export class PermissionInfo extends android.content.pm.PackageItemInfo implements android.os.Parcelable {
				public static class: java.lang.Class<android.content.pm.PermissionInfo>;
				public static PROTECTION_NORMAL: number;
				public static PROTECTION_DANGEROUS: number;
				public static PROTECTION_SIGNATURE: number;
				public static PROTECTION_SIGNATURE_OR_SYSTEM: number;
				public static PROTECTION_FLAG_SYSTEM: number;
				public static PROTECTION_FLAG_DEVELOPMENT: number;
				public static PROTECTION_MASK_BASE: number;
				public static PROTECTION_MASK_FLAGS: number;
				public protectionLevel: number;
				public group: string;
				public static FLAG_COSTS_MONEY: number;
				public flags: number;
				public descriptionRes: number;
				public nonLocalizedDescription: string;
				public static CREATOR: android.os.Parcelable.Creator<android.content.pm.PermissionInfo>;
				public constructor(param0: android.content.pm.PermissionInfo);
				public loadDescription(param0: android.content.pm.PackageManager): string;
				public constructor(param0: android.os.Parcel);
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public describeContents(): number;
				public constructor(param0: android.content.pm.PackageItemInfo);
				public toString(): string;
				public constructor();
			}
		}
	}
}

declare module android {
	export module content {
		export module pm {
			export class ProviderInfo extends android.content.pm.ComponentInfo implements android.os.Parcelable {
				public static class: java.lang.Class<android.content.pm.ProviderInfo>;
				public authority: string;
				public readPermission: string;
				public writePermission: string;
				public grantUriPermissions: boolean;
				public uriPermissionPatterns: native.Array<android.os.PatternMatcher>;
				public pathPermissions: native.Array<android.content.pm.PathPermission>;
				public multiprocess: boolean;
				public initOrder: number;
				public static FLAG_SINGLE_USER: number;
				public flags: number;
				public isSyncable: boolean;
				public static CREATOR: android.os.Parcelable.Creator<android.content.pm.ProviderInfo>;
				public constructor(param0: android.os.Parcel);
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public describeContents(): number;
				public constructor(param0: android.content.pm.ProviderInfo);
				public constructor(param0: android.content.pm.PackageItemInfo);
				public toString(): string;
				public constructor(param0: android.content.pm.ComponentInfo);
				public constructor();
			}
		}
	}
}

declare module android {
	export module content {
		export module pm {
			export class ResolveInfo extends java.lang.Object implements android.os.Parcelable {
				public static class: java.lang.Class<android.content.pm.ResolveInfo>;
				public activityInfo: android.content.pm.ActivityInfo;
				public serviceInfo: android.content.pm.ServiceInfo;
				public filter: android.content.IntentFilter;
				public priority: number;
				public preferredOrder: number;
				public match: number;
				public specificIndex: number;
				public isDefault: boolean;
				public labelRes: number;
				public nonLocalizedLabel: string;
				public icon: number;
				public resolvePackageName: string;
				public static CREATOR: android.os.Parcelable.Creator<android.content.pm.ResolveInfo>;
				public constructor(param0: android.content.pm.ResolveInfo);
				public loadLabel(param0: android.content.pm.PackageManager): string;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public loadIcon(param0: android.content.pm.PackageManager): android.graphics.drawable.Drawable;
				public dump(param0: android.util.Printer, param1: string): void;
				public describeContents(): number;
				public getIconResource(): number;
				public toString(): string;
				public constructor();
			}
			export module ResolveInfo {
				export class DisplayNameComparator extends java.util.Comparator<android.content.pm.ResolveInfo> {
					public static class: java.lang.Class<android.content.pm.ResolveInfo.DisplayNameComparator>;
					public equals(param0: any): boolean;
					public compare(param0: android.content.pm.ResolveInfo, param1: android.content.pm.ResolveInfo): number;
					public compare(param0: any, param1: any): number;
					public constructor(param0: android.content.pm.PackageManager);
				}
			}
		}
	}
}

declare module android {
	export module content {
		export module pm {
			export class ServiceInfo extends android.content.pm.ComponentInfo implements android.os.Parcelable {
				public static class: java.lang.Class<android.content.pm.ServiceInfo>;
				public permission: string;
				public static FLAG_STOP_WITH_TASK: number;
				public static FLAG_ISOLATED_PROCESS: number;
				public static FLAG_SINGLE_USER: number;
				public flags: number;
				public static CREATOR: android.os.Parcelable.Creator<android.content.pm.ServiceInfo>;
				public constructor(param0: android.content.pm.ServiceInfo);
				public constructor(param0: android.os.Parcel);
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public dump(param0: android.util.Printer, param1: string): void;
				public describeContents(): number;
				public constructor(param0: android.content.pm.PackageItemInfo);
				public toString(): string;
				public constructor(param0: android.content.pm.ComponentInfo);
				public constructor();
			}
		}
	}
}

declare module android {
	export module content {
		export module pm {
			export class Signature extends java.lang.Object implements android.os.Parcelable {
				public static class: java.lang.Class<android.content.pm.Signature>;
				public static CREATOR: android.os.Parcelable.Creator<android.content.pm.Signature>;
				public constructor(param0: native.Array<number>);
				public toChars(param0: native.Array<string>, param1: native.Array<number>): native.Array<string>;
				public hashCode(): number;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public toCharsString(): string;
				public equals(param0: any): boolean;
				public describeContents(): number;
				public toChars(): native.Array<string>;
				public toByteArray(): native.Array<number>;
				public constructor(param0: string);
			}
		}
	}
}

declare module android {
	export module content {
		export module res {
			export class AssetFileDescriptor extends java.lang.Object implements android.os.Parcelable {
				public static class: java.lang.Class<android.content.res.AssetFileDescriptor>;
				public static UNKNOWN_LENGTH: number;
				public static CREATOR: android.os.Parcelable.Creator<android.content.res.AssetFileDescriptor>;
				public getDeclaredLength(): number;
				public close(): void;
				public getStartOffset(): number;
				public getFileDescriptor(): java.io.FileDescriptor;
				public getParcelFileDescriptor(): android.os.ParcelFileDescriptor;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public createOutputStream(): java.io.FileOutputStream;
				public describeContents(): number;
				public constructor(param0: android.os.ParcelFileDescriptor, param1: number, param2: number);
				public toString(): string;
				public getLength(): number;
				public createInputStream(): java.io.FileInputStream;
			}
			export module AssetFileDescriptor {
				export class AutoCloseInputStream extends android.os.ParcelFileDescriptor.AutoCloseInputStream {
					public static class: java.lang.Class<android.content.res.AssetFileDescriptor.AutoCloseInputStream>;
					public read(): number;
					public read(param0: native.Array<number>, param1: number, param2: number): number;
					public reset(): void;
					public constructor(param0: string);
					public read(param0: native.Array<number>): number;
					public markSupported(): boolean;
					public skip(param0: number): number;
					public constructor(param0: android.content.res.AssetFileDescriptor);
					public mark(param0: number): void;
					public available(): number;
					public constructor();
					public constructor(param0: java.io.FileDescriptor);
					public close(): void;
					public constructor(param0: android.os.ParcelFileDescriptor);
					public constructor(param0: java.io.File);
				}
				export class AutoCloseOutputStream extends android.os.ParcelFileDescriptor.AutoCloseOutputStream {
					public static class: java.lang.Class<android.content.res.AssetFileDescriptor.AutoCloseOutputStream>;
					public write(param0: native.Array<number>): void;
					public constructor(param0: string);
					public write(param0: number): void;
					public flush(): void;
					public constructor(param0: java.io.File, param1: boolean);
					public constructor(param0: android.content.res.AssetFileDescriptor);
					public write(param0: native.Array<number>, param1: number, param2: number): void;
					public constructor();
					public constructor(param0: java.io.FileDescriptor);
					public close(): void;
					public constructor(param0: string, param1: boolean);
					public constructor(param0: android.os.ParcelFileDescriptor);
					public constructor(param0: java.io.File);
				}
			}
		}
	}
}

declare module android {
	export module content {
		export module res {
			export class AssetManager extends java.lang.Object {
				public static class: java.lang.Class<android.content.res.AssetManager>;
				public static ACCESS_UNKNOWN: number;
				public static ACCESS_RANDOM: number;
				public static ACCESS_STREAMING: number;
				public static ACCESS_BUFFER: number;
				public openFd(param0: string): android.content.res.AssetFileDescriptor;
				public close(): void;
				public list(param0: string): native.Array<string>;
				public open(param0: string): java.io.InputStream;
				public openXmlResourceParser(param0: number, param1: string): android.content.res.XmlResourceParser;
				public open(param0: string, param1: number): java.io.InputStream;
				public openNonAssetFd(param0: string): android.content.res.AssetFileDescriptor;
				public finalize(): void;
				public getLocales(): native.Array<string>;
				public openXmlResourceParser(param0: string): android.content.res.XmlResourceParser;
				public openNonAssetFd(param0: number, param1: string): android.content.res.AssetFileDescriptor;
			}
			export module AssetManager {
				export class AssetInputStream extends java.io.InputStream {
					public static class: java.lang.Class<android.content.res.AssetManager.AssetInputStream>;
					public available(): number;
					public read(): number;
					public read(param0: native.Array<number>, param1: number, param2: number): number;
					public reset(): void;
					public read(param0: native.Array<number>): number;
					public markSupported(): boolean;
					public finalize(): void;
					public close(): void;
					public skip(param0: number): number;
					public getAssetInt(): number;
					public mark(param0: number): void;
				}
			}
		}
	}
}

declare module android {
	export module content {
		export module res {
			export class ColorStateList extends java.lang.Object implements android.os.Parcelable {
				public static class: java.lang.Class<android.content.res.ColorStateList>;
				public static CREATOR: android.os.Parcelable.Creator<android.content.res.ColorStateList>;
				public getDefaultColor(): number;
				public static createFromXml(param0: android.content.res.Resources, param1: org.xmlpull.v1.XmlPullParser): android.content.res.ColorStateList;
				public static valueOf(param0: number): android.content.res.ColorStateList;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public getColorForState(param0: native.Array<number>, param1: number): number;
				public describeContents(): number;
				public constructor(param0: native.Array<native.Array<number>>, param1: native.Array<number>);
				public toString(): string;
				public withAlpha(param0: number): android.content.res.ColorStateList;
				public isStateful(): boolean;
			}
		}
	}
}

declare module android {
	export module content {
		export module res {
			export class Configuration extends java.lang.Object {
				public static class: java.lang.Class<android.content.res.Configuration>;
				public fontScale: number;
				public mcc: number;
				public mnc: number;
				public locale: java.util.Locale;
				public static SCREENLAYOUT_SIZE_MASK: number;
				public static SCREENLAYOUT_SIZE_UNDEFINED: number;
				public static SCREENLAYOUT_SIZE_SMALL: number;
				public static SCREENLAYOUT_SIZE_NORMAL: number;
				public static SCREENLAYOUT_SIZE_LARGE: number;
				public static SCREENLAYOUT_SIZE_XLARGE: number;
				public static SCREENLAYOUT_LONG_MASK: number;
				public static SCREENLAYOUT_LONG_UNDEFINED: number;
				public static SCREENLAYOUT_LONG_NO: number;
				public static SCREENLAYOUT_LONG_YES: number;
				public static SCREENLAYOUT_LAYOUTDIR_MASK: number;
				public static SCREENLAYOUT_LAYOUTDIR_SHIFT: number;
				public static SCREENLAYOUT_LAYOUTDIR_UNDEFINED: number;
				public static SCREENLAYOUT_LAYOUTDIR_LTR: number;
				public static SCREENLAYOUT_LAYOUTDIR_RTL: number;
				public static SCREENLAYOUT_UNDEFINED: number;
				public screenLayout: number;
				public static TOUCHSCREEN_UNDEFINED: number;
				public static TOUCHSCREEN_NOTOUCH: number;
				public static TOUCHSCREEN_STYLUS: number;
				public static TOUCHSCREEN_FINGER: number;
				public touchscreen: number;
				public static KEYBOARD_UNDEFINED: number;
				public static KEYBOARD_NOKEYS: number;
				public static KEYBOARD_QWERTY: number;
				public static KEYBOARD_12KEY: number;
				public keyboard: number;
				public static KEYBOARDHIDDEN_UNDEFINED: number;
				public static KEYBOARDHIDDEN_NO: number;
				public static KEYBOARDHIDDEN_YES: number;
				public keyboardHidden: number;
				public static HARDKEYBOARDHIDDEN_UNDEFINED: number;
				public static HARDKEYBOARDHIDDEN_NO: number;
				public static HARDKEYBOARDHIDDEN_YES: number;
				public hardKeyboardHidden: number;
				public static NAVIGATION_UNDEFINED: number;
				public static NAVIGATION_NONAV: number;
				public static NAVIGATION_DPAD: number;
				public static NAVIGATION_TRACKBALL: number;
				public static NAVIGATION_WHEEL: number;
				public navigation: number;
				public static NAVIGATIONHIDDEN_UNDEFINED: number;
				public static NAVIGATIONHIDDEN_NO: number;
				public static NAVIGATIONHIDDEN_YES: number;
				public navigationHidden: number;
				public static ORIENTATION_UNDEFINED: number;
				public static ORIENTATION_PORTRAIT: number;
				public static ORIENTATION_LANDSCAPE: number;
				public static ORIENTATION_SQUARE: number;
				public orientation: number;
				public static UI_MODE_TYPE_MASK: number;
				public static UI_MODE_TYPE_UNDEFINED: number;
				public static UI_MODE_TYPE_NORMAL: number;
				public static UI_MODE_TYPE_DESK: number;
				public static UI_MODE_TYPE_CAR: number;
				public static UI_MODE_TYPE_TELEVISION: number;
				public static UI_MODE_TYPE_APPLIANCE: number;
				public static UI_MODE_NIGHT_MASK: number;
				public static UI_MODE_NIGHT_UNDEFINED: number;
				public static UI_MODE_NIGHT_NO: number;
				public static UI_MODE_NIGHT_YES: number;
				public uiMode: number;
				public static SCREEN_WIDTH_DP_UNDEFINED: number;
				public screenWidthDp: number;
				public static SCREEN_HEIGHT_DP_UNDEFINED: number;
				public screenHeightDp: number;
				public static SMALLEST_SCREEN_WIDTH_DP_UNDEFINED: number;
				public smallestScreenWidthDp: number;
				public static DENSITY_DPI_UNDEFINED: number;
				public densityDpi: number;
				public static CREATOR: android.os.Parcelable.Creator<android.content.res.Configuration>;
				public getLayoutDirection(): number;
				public setTo(param0: android.content.res.Configuration): void;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public diff(param0: android.content.res.Configuration): number;
				public updateFrom(param0: android.content.res.Configuration): number;
				public toString(): string;
				public isLayoutSizeAtLeast(param0: number): boolean;
				public constructor();
				public compareTo(param0: android.content.res.Configuration): number;
				public setLayoutDirection(param0: java.util.Locale): void;
				public hashCode(): number;
				public setToDefaults(): void;
				public describeContents(): number;
				public equals(param0: any): boolean;
				public readFromParcel(param0: android.os.Parcel): void;
				public static needNewResources(param0: number, param1: number): boolean;
				public setLocale(param0: java.util.Locale): void;
				public constructor(param0: android.content.res.Configuration);
				public equals(param0: android.content.res.Configuration): boolean;
			}
		}
	}
}

declare module android {
	export module content {
		export module res {
			export class ObbInfo extends java.lang.Object implements android.os.Parcelable {
				public static class: java.lang.Class<android.content.res.ObbInfo>;
				public static OBB_OVERLAY: number;
				public filename: string;
				public packageName: string;
				public version: number;
				public flags: number;
				public static CREATOR: android.os.Parcelable.Creator<android.content.res.ObbInfo>;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public describeContents(): number;
				public toString(): string;
			}
		}
	}
}

declare module android {
	export module content {
		export module res {
			export class ObbScanner extends java.lang.Object {
				public static class: java.lang.Class<android.content.res.ObbScanner>;
				public static getObbInfo(param0: string): android.content.res.ObbInfo;
			}
		}
	}
}

declare module android {
	export module content {
		export module res {
			export class Resources extends java.lang.Object {
				public static class: java.lang.Class<android.content.res.Resources>;
				public getDimensionPixelSize(param0: number): number;
				public getXml(param0: number): android.content.res.XmlResourceParser;
				public getDisplayMetrics(): android.util.DisplayMetrics;
				public getString(param0: number): string;
				public getInteger(param0: number): number;
				public getValue(param0: number, param1: android.util.TypedValue, param2: boolean): void;
				public getConfiguration(): android.content.res.Configuration;
				public getMovie(param0: number): android.graphics.Movie;
				public openRawResource(param0: number, param1: android.util.TypedValue): java.io.InputStream;
				public openRawResourceFd(param0: number): android.content.res.AssetFileDescriptor;
				public getResourceEntryName(param0: number): string;
				public newTheme(): android.content.res.Resources.Theme;
				public getString(param0: number, param1: native.Array<any>): string;
				public getTextArray(param0: number): native.Array<string>;
				public getDimension(param0: number): number;
				public getResourceTypeName(param0: number): string;
				public getQuantityText(param0: number, param1: number): string;
				public getValueForDensity(param0: number, param1: number, param2: android.util.TypedValue, param3: boolean): void;
				public updateConfiguration(param0: android.content.res.Configuration, param1: android.util.DisplayMetrics): void;
				public openRawResource(param0: number): java.io.InputStream;
				public getDrawable(param0: number): android.graphics.drawable.Drawable;
				public parseBundleExtras(param0: android.content.res.XmlResourceParser, param1: android.os.Bundle): void;
				public getText(param0: number): string;
				public getIntArray(param0: number): native.Array<number>;
				public getDrawableForDensity(param0: number, param1: number): android.graphics.drawable.Drawable;
				public finishPreloading(): void;
				public getAnimation(param0: number): android.content.res.XmlResourceParser;
				public getColor(param0: number): number;
				public getStringArray(param0: number): native.Array<string>;
				public getFraction(param0: number, param1: number, param2: number): number;
				public getQuantityString(param0: number, param1: number, param2: native.Array<any>): string;
				public getText(param0: number, param1: string): string;
				public getDimensionPixelOffset(param0: number): number;
				public obtainAttributes(param0: android.util.AttributeSet, param1: native.Array<number>): android.content.res.TypedArray;
				public getResourcePackageName(param0: number): string;
				public obtainTypedArray(param0: number): android.content.res.TypedArray;
				public getBoolean(param0: number): boolean;
				public getIdentifier(param0: string, param1: string, param2: string): number;
				public getResourceName(param0: number): string;
				public getAssets(): android.content.res.AssetManager;
				public constructor(param0: android.content.res.AssetManager, param1: android.util.DisplayMetrics, param2: android.content.res.Configuration);
				public getLayout(param0: number): android.content.res.XmlResourceParser;
				public getQuantityString(param0: number, param1: number): string;
				public parseBundleExtra(param0: string, param1: android.util.AttributeSet, param2: android.os.Bundle): void;
				public getValue(param0: string, param1: android.util.TypedValue, param2: boolean): void;
				public flushLayoutCache(): void;
				public static getSystem(): android.content.res.Resources;
				public getColorStateList(param0: number): android.content.res.ColorStateList;
			}
			export module Resources {
				export class NotFoundException extends java.lang.RuntimeException {
					public static class: java.lang.Class<android.content.res.Resources.NotFoundException>;
					public constructor(param0: string, param1: java.lang.Throwable);
					public constructor(param0: string);
					public constructor(param0: java.lang.Throwable);
					public constructor();
				}
				export class Theme extends java.lang.Object {
					public static class: java.lang.Class<android.content.res.Resources.Theme>;
					public resolveAttribute(param0: number, param1: android.util.TypedValue, param2: boolean): boolean;
					public finalize(): void;
					public obtainStyledAttributes(param0: native.Array<number>): android.content.res.TypedArray;
					public dump(param0: number, param1: string, param2: string): void;
					public applyStyle(param0: number, param1: boolean): void;
					public setTo(param0: android.content.res.Resources.Theme): void;
					public obtainStyledAttributes(param0: number, param1: native.Array<number>): android.content.res.TypedArray;
					public obtainStyledAttributes(param0: android.util.AttributeSet, param1: native.Array<number>, param2: number, param3: number): android.content.res.TypedArray;
				}
			}
		}
	}
}

declare module android {
	export module content {
		export module res {
			export class TypedArray extends java.lang.Object {
				public static class: java.lang.Class<android.content.res.TypedArray>;
				public recycle(): void;
				public getString(param0: number): string;
				public getFraction(param0: number, param1: number, param2: number, param3: number): number;
				public getFloat(param0: number, param1: number): number;
				public getPositionDescription(): string;
				public hasValue(param0: number): boolean;
				public getNonResourceString(param0: number): string;
				public getInt(param0: number, param1: number): number;
				public getTextArray(param0: number): native.Array<string>;
				public getIndex(param0: number): number;
				public getInteger(param0: number, param1: number): number;
				public getValue(param0: number, param1: android.util.TypedValue): boolean;
				public getDrawable(param0: number): android.graphics.drawable.Drawable;
				public getText(param0: number): string;
				public getIndexCount(): number;
				public getDimensionPixelSize(param0: number, param1: number): number;
				public getLayoutDimension(param0: number, param1: number): number;
				public length(): number;
				public getColor(param0: number, param1: number): number;
				public peekValue(param0: number): android.util.TypedValue;
				public toString(): string;
				public getResources(): android.content.res.Resources;
				public getBoolean(param0: number, param1: boolean): boolean;
				public getResourceId(param0: number, param1: number): number;
				public getDimension(param0: number, param1: number): number;
				public getLayoutDimension(param0: number, param1: string): number;
				public getColorStateList(param0: number): android.content.res.ColorStateList;
				public getDimensionPixelOffset(param0: number, param1: number): number;
			}
		}
	}
}

declare module android {
	export module content {
		export module res {
			export class XmlResourceParser extends java.lang.Object implements org.xmlpull.v1.XmlPullParser, android.util.AttributeSet {
				public static class: java.lang.Class<android.content.res.XmlResourceParser>;
				/**
				 * Constructs a new instance of the android.content.res.XmlResourceParser interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					close(): void;
					setFeature(param0: string, param1: boolean): void;
					getFeature(param0: string): boolean;
					setProperty(param0: string, param1: any): void;
					getProperty(param0: string): any;
					setInput(param0: java.io.Reader): void;
					setInput(param0: java.io.InputStream, param1: string): void;
					getInputEncoding(): string;
					defineEntityReplacementText(param0: string, param1: string): void;
					getNamespaceCount(param0: number): number;
					getNamespacePrefix(param0: number): string;
					getNamespaceUri(param0: number): string;
					getNamespace(param0: string): string;
					getDepth(): number;
					getPositionDescription(): string;
					getLineNumber(): number;
					getColumnNumber(): number;
					isWhitespace(): boolean;
					getText(): string;
					getTextCharacters(param0: native.Array<number>): native.Array<string>;
					getNamespace(): string;
					getName(): string;
					getPrefix(): string;
					isEmptyElementTag(): boolean;
					getAttributeCount(): number;
					getAttributeNamespace(param0: number): string;
					getAttributeName(param0: number): string;
					getAttributePrefix(param0: number): string;
					getAttributeType(param0: number): string;
					isAttributeDefault(param0: number): boolean;
					getAttributeValue(param0: number): string;
					getAttributeValue(param0: string, param1: string): string;
					getEventType(): number;
					next(): number;
					nextToken(): number;
					require(param0: number, param1: string, param2: string): void;
					nextText(): string;
					nextTag(): number;
					<clinit>(): void;
					getAttributeCount(): number;
					getAttributeName(param0: number): string;
					getAttributeValue(param0: number): string;
					getAttributeValue(param0: string, param1: string): string;
					getPositionDescription(): string;
					getAttributeNameResource(param0: number): number;
					getAttributeListValue(param0: string, param1: string, param2: native.Array<string>, param3: number): number;
					getAttributeBooleanValue(param0: string, param1: string, param2: boolean): boolean;
					getAttributeResourceValue(param0: string, param1: string, param2: number): number;
					getAttributeIntValue(param0: string, param1: string, param2: number): number;
					getAttributeUnsignedIntValue(param0: string, param1: string, param2: number): number;
					getAttributeFloatValue(param0: string, param1: string, param2: number): number;
					getAttributeListValue(param0: number, param1: native.Array<string>, param2: number): number;
					getAttributeBooleanValue(param0: number, param1: boolean): boolean;
					getAttributeResourceValue(param0: number, param1: number): number;
					getAttributeIntValue(param0: number, param1: number): number;
					getAttributeUnsignedIntValue(param0: number, param1: number): number;
					getAttributeFloatValue(param0: number, param1: number): number;
					getIdAttribute(): string;
					getClassAttribute(): string;
					getIdAttributeResourceValue(param0: number): number;
					getStyleAttribute(): number;
				});
				public constructor();
				public static NO_NAMESPACE: string;
				public static TEXT: number;
				public static ENTITY_REF: number;
				public static COMMENT: number;
				public static END_DOCUMENT: number;
				public static END_TAG: number;
				public static DOCDECL: number;
				public static FEATURE_VALIDATION: string;
				public static START_DOCUMENT: number;
				public static CDSECT: number;
				public static START_TAG: number;
				public static IGNORABLE_WHITESPACE: number;
				public static FEATURE_PROCESS_NAMESPACES: string;
				public static TYPES: native.Array<string>;
				public static PROCESSING_INSTRUCTION: number;
				public static FEATURE_PROCESS_DOCDECL: string;
				public static FEATURE_REPORT_NAMESPACE_ATTRIBUTES: string;
				public setInput(param0: java.io.Reader): void;
				public getLineNumber(): number;
				public getAttributeIntValue(param0: number, param1: number): number;
				public getEventType(): number;
				public getAttributeResourceValue(param0: number, param1: number): number;
				public getProperty(param0: string): any;
				public setInput(param0: java.io.InputStream, param1: string): void;
				public getAttributeUnsignedIntValue(param0: string, param1: string, param2: number): number;
				public getPositionDescription(): string;
				public getAttributePrefix(param0: number): string;
				public getAttributeIntValue(param0: string, param1: string, param2: number): number;
				public nextText(): string;
				public nextToken(): number;
				public getColumnNumber(): number;
				public getAttributeNamespace(param0: number): string;
				public close(): void;
				public require(param0: number, param1: string, param2: string): void;
				public getNamespaceCount(param0: number): number;
				public getAttributeName(param0: number): string;
				public setProperty(param0: string, param1: any): void;
				public getName(): string;
				public getNamespace(param0: string): string;
				public getTextCharacters(param0: native.Array<number>): native.Array<string>;
				public getAttributeType(param0: number): string;
				public getStyleAttribute(): number;
				public getAttributeValue(param0: number): string;
				public getAttributeUnsignedIntValue(param0: number, param1: number): number;
				public isWhitespace(): boolean;
				public next(): number;
				public getInputEncoding(): string;
				public getAttributeValue(param0: string, param1: string): string;
				public getIdAttributeResourceValue(param0: number): number;
				public nextTag(): number;
				public getIdAttribute(): string;
				public getAttributeCount(): number;
				public getAttributeNameResource(param0: number): number;
				public getAttributeBooleanValue(param0: string, param1: string, param2: boolean): boolean;
				public getClassAttribute(): string;
				public getAttributeFloatValue(param0: string, param1: string, param2: number): number;
				public getAttributeListValue(param0: number, param1: native.Array<string>, param2: number): number;
				public getAttributeResourceValue(param0: string, param1: string, param2: number): number;
				public getAttributeListValue(param0: string, param1: string, param2: native.Array<string>, param3: number): number;
				public getNamespaceUri(param0: number): string;
				public isEmptyElementTag(): boolean;
				public getNamespacePrefix(param0: number): string;
				public getPrefix(): string;
				public getAttributeFloatValue(param0: number, param1: number): number;
				public getFeature(param0: string): boolean;
				public getText(): string;
				public isAttributeDefault(param0: number): boolean;
				public getNamespace(): string;
				public setFeature(param0: string, param1: boolean): void;
				public getAttributeBooleanValue(param0: number, param1: boolean): boolean;
				public defineEntityReplacementText(param0: string, param1: string): void;
				public getDepth(): number;
			}
		}
	}
}

declare module android {
	export module database {
		export abstract class AbstractCursor extends java.lang.Object implements android.database.CrossProcessCursor {
			public static class: java.lang.Class<android.database.AbstractCursor>;
			public mUpdatedRows: java.util.HashMap<java.lang.Long,java.util.Map<string,any>>;
			public mPos: number;
			public mRowIdColumnIndex: number;
			public mCurrentRowID: java.lang.Long;
			public mClosed: boolean;
			public mContentResolver: android.content.ContentResolver;
			/** @deprecated */
			public requery(): boolean;
			public getFloat(param0: number): number;
			public requery(): boolean;
			/** @deprecated */
			public getUpdatedField(param0: number): any;
			public isAfterLast(): boolean;
			public unregisterDataSetObserver(param0: android.database.DataSetObserver): void;
			public getColumnIndexOrThrow(param0: string): number;
			public onMove(param0: number, param1: number): boolean;
			/** @deprecated */
			public deactivate(): void;
			public getCount(): number;
			public getShort(param0: number): number;
			public getType(param0: number): number;
			public isNull(param0: number): boolean;
			public getDouble(param0: number): number;
			public getColumnName(param0: number): string;
			public getString(param0: number): string;
			public deactivate(): void;
			public copyStringToBuffer(param0: number, param1: android.database.CharArrayBuffer): void;
			public constructor();
			public move(param0: number): boolean;
			public registerContentObserver(param0: android.database.ContentObserver): void;
			public getColumnIndex(param0: string): number;
			public moveToPrevious(): boolean;
			public fillWindow(param0: number, param1: android.database.CursorWindow): void;
			public getExtras(): android.os.Bundle;
			/** @deprecated */
			public isFieldUpdated(param0: number): boolean;
			public getInt(param0: number): number;
			public getWantsAllOnMoveCalls(): boolean;
			public isClosed(): boolean;
			public registerDataSetObserver(param0: android.database.DataSetObserver): void;
			public onChange(param0: boolean): void;
			public getPosition(): number;
			public getWindow(): android.database.CursorWindow;
			public getColumnNames(): native.Array<string>;
			public isBeforeFirst(): boolean;
			public moveToFirst(): boolean;
			public getNotificationUri(): android.net.Uri;
			public respond(param0: android.os.Bundle): android.os.Bundle;
			public isLast(): boolean;
			public getBlob(param0: number): native.Array<number>;
			public close(): void;
			public moveToNext(): boolean;
			public setNotificationUri(param0: android.content.ContentResolver, param1: android.net.Uri): void;
			public finalize(): void;
			public moveToLast(): boolean;
			public getColumnCount(): number;
			public checkPosition(): void;
			public unregisterContentObserver(param0: android.database.ContentObserver): void;
			public isFirst(): boolean;
			public moveToPosition(param0: number): boolean;
			public getLong(param0: number): number;
		}
		export module AbstractCursor {
			export class SelfContentObserver extends android.database.ContentObserver {
				public static class: java.lang.Class<android.database.AbstractCursor.SelfContentObserver>;
				public deliverSelfNotifications(): boolean;
				public constructor(param0: android.database.AbstractCursor);
				public onChange(param0: boolean, param1: android.net.Uri): void;
				public constructor(param0: android.os.Handler);
				public onChange(param0: boolean): void;
			}
		}
	}
}

declare module android {
	export module database {
		export abstract class AbstractWindowedCursor extends android.database.AbstractCursor {
			public static class: java.lang.Class<android.database.AbstractWindowedCursor>;
			public mWindow: android.database.CursorWindow;
			/** @deprecated */
			public isBlob(param0: number): boolean;
			public isNull(param0: number): boolean;
			public checkPosition(): void;
			public getDouble(param0: number): number;
			public getString(param0: number): string;
			public getFloat(param0: number): number;
			public copyStringToBuffer(param0: number, param1: android.database.CharArrayBuffer): void;
			public constructor();
			public setWindow(param0: android.database.CursorWindow): void;
			/** @deprecated */
			public isString(param0: number): boolean;
			/** @deprecated */
			public isFloat(param0: number): boolean;
			public getWindow(): android.database.CursorWindow;
			public hasWindow(): boolean;
			public getLong(param0: number): number;
			public onMove(param0: number, param1: number): boolean;
			/** @deprecated */
			public isLong(param0: number): boolean;
			public getBlob(param0: number): native.Array<number>;
			public getShort(param0: number): number;
			public getType(param0: number): number;
			public fillWindow(param0: number, param1: android.database.CursorWindow): void;
			public getInt(param0: number): number;
		}
	}
}

declare module android {
	export module database {
		export class CharArrayBuffer extends java.lang.Object {
			public static class: java.lang.Class<android.database.CharArrayBuffer>;
			public data: native.Array<string>;
			public sizeCopied: number;
			public constructor(param0: native.Array<string>);
			public constructor(param0: number);
		}
	}
}

declare module android {
	export module database {
		export class ContentObservable extends android.database.Observable<android.database.ContentObserver> {
			public static class: java.lang.Class<android.database.ContentObservable>;
			public registerObserver(param0: android.database.ContentObserver): void;
			public registerObserver(param0: any): void;
			public dispatchChange(param0: boolean, param1: android.net.Uri): void;
			/** @deprecated */
			public dispatchChange(param0: boolean): void;
			public constructor();
			/** @deprecated */
			public notifyChange(param0: boolean): void;
		}
	}
}

declare module android {
	export module database {
		export abstract class ContentObserver extends java.lang.Object {
			public static class: java.lang.Class<android.database.ContentObserver>;
			public deliverSelfNotifications(): boolean;
			public onChange(param0: boolean): void;
			public onChange(param0: boolean, param1: android.net.Uri): void;
			public constructor(param0: android.os.Handler);
			public dispatchChange(param0: boolean, param1: android.net.Uri): void;
			/** @deprecated */
			public dispatchChange(param0: boolean): void;
		}
	}
}

declare module android {
	export module database {
		export class CrossProcessCursor extends java.lang.Object implements android.database.Cursor {
			public static class: java.lang.Class<android.database.CrossProcessCursor>;
			/**
			 * Constructs a new instance of the android.database.CrossProcessCursor interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				getWindow(): android.database.CursorWindow;
				fillWindow(param0: number, param1: android.database.CursorWindow): void;
				onMove(param0: number, param1: number): boolean;
				getCount(): number;
				getPosition(): number;
				move(param0: number): boolean;
				moveToPosition(param0: number): boolean;
				moveToFirst(): boolean;
				moveToLast(): boolean;
				moveToNext(): boolean;
				moveToPrevious(): boolean;
				isFirst(): boolean;
				isLast(): boolean;
				isBeforeFirst(): boolean;
				isAfterLast(): boolean;
				getColumnIndex(param0: string): number;
				getColumnIndexOrThrow(param0: string): number;
				getColumnName(param0: number): string;
				getColumnNames(): native.Array<string>;
				getColumnCount(): number;
				getBlob(param0: number): native.Array<number>;
				getString(param0: number): string;
				copyStringToBuffer(param0: number, param1: android.database.CharArrayBuffer): void;
				getShort(param0: number): number;
				getInt(param0: number): number;
				getLong(param0: number): number;
				getFloat(param0: number): number;
				getDouble(param0: number): number;
				getType(param0: number): number;
				isNull(param0: number): boolean;
				deactivate(): void;
				requery(): boolean;
				close(): void;
				isClosed(): boolean;
				registerContentObserver(param0: android.database.ContentObserver): void;
				unregisterContentObserver(param0: android.database.ContentObserver): void;
				registerDataSetObserver(param0: android.database.DataSetObserver): void;
				unregisterDataSetObserver(param0: android.database.DataSetObserver): void;
				setNotificationUri(param0: android.content.ContentResolver, param1: android.net.Uri): void;
				getWantsAllOnMoveCalls(): boolean;
				getExtras(): android.os.Bundle;
				respond(param0: android.os.Bundle): android.os.Bundle;
				close(): void;
			});
			public constructor();
			public static FIELD_TYPE_INTEGER: number;
			public static FIELD_TYPE_NULL: number;
			public static FIELD_TYPE_STRING: number;
			public static FIELD_TYPE_BLOB: number;
			public static FIELD_TYPE_FLOAT: number;
			public isClosed(): boolean;
			public registerDataSetObserver(param0: android.database.DataSetObserver): void;
			/** @deprecated */
			public requery(): boolean;
			public getFloat(param0: number): number;
			public getPosition(): number;
			public getWindow(): android.database.CursorWindow;
			public isBeforeFirst(): boolean;
			public isAfterLast(): boolean;
			public getColumnNames(): native.Array<string>;
			public moveToFirst(): boolean;
			public unregisterDataSetObserver(param0: android.database.DataSetObserver): void;
			public respond(param0: android.os.Bundle): android.os.Bundle;
			public getColumnIndexOrThrow(param0: string): number;
			public onMove(param0: number, param1: number): boolean;
			/** @deprecated */
			public deactivate(): void;
			public isLast(): boolean;
			public getCount(): number;
			public getBlob(param0: number): native.Array<number>;
			public moveToNext(): boolean;
			public getShort(param0: number): number;
			public close(): void;
			public getType(param0: number): number;
			public setNotificationUri(param0: android.content.ContentResolver, param1: android.net.Uri): void;
			public moveToLast(): boolean;
			public isNull(param0: number): boolean;
			public getColumnCount(): number;
			public getColumnName(param0: number): string;
			public getDouble(param0: number): number;
			public unregisterContentObserver(param0: android.database.ContentObserver): void;
			public isFirst(): boolean;
			public getString(param0: number): string;
			public copyStringToBuffer(param0: number, param1: android.database.CharArrayBuffer): void;
			public move(param0: number): boolean;
			public moveToPosition(param0: number): boolean;
			public getLong(param0: number): number;
			public registerContentObserver(param0: android.database.ContentObserver): void;
			public getColumnIndex(param0: string): number;
			public moveToPrevious(): boolean;
			public fillWindow(param0: number, param1: android.database.CursorWindow): void;
			public getExtras(): android.os.Bundle;
			public getInt(param0: number): number;
			public getWantsAllOnMoveCalls(): boolean;
		}
	}
}

declare module android {
	export module database {
		export class CrossProcessCursorWrapper extends android.database.CursorWrapper implements android.database.CrossProcessCursor {
			public static class: java.lang.Class<android.database.CrossProcessCursorWrapper>;
			public isClosed(): boolean;
			public registerDataSetObserver(param0: android.database.DataSetObserver): void;
			/** @deprecated */
			public requery(): boolean;
			public getFloat(param0: number): number;
			public requery(): boolean;
			public getPosition(): number;
			public getWindow(): android.database.CursorWindow;
			public isBeforeFirst(): boolean;
			public isAfterLast(): boolean;
			public getColumnNames(): native.Array<string>;
			public moveToFirst(): boolean;
			public unregisterDataSetObserver(param0: android.database.DataSetObserver): void;
			public respond(param0: android.os.Bundle): android.os.Bundle;
			public getColumnIndexOrThrow(param0: string): number;
			public onMove(param0: number, param1: number): boolean;
			/** @deprecated */
			public deactivate(): void;
			public isLast(): boolean;
			public getCount(): number;
			public getBlob(param0: number): native.Array<number>;
			public moveToNext(): boolean;
			public getShort(param0: number): number;
			public close(): void;
			public getType(param0: number): number;
			public setNotificationUri(param0: android.content.ContentResolver, param1: android.net.Uri): void;
			public moveToLast(): boolean;
			public isNull(param0: number): boolean;
			public getColumnCount(): number;
			public getColumnName(param0: number): string;
			public getDouble(param0: number): number;
			public unregisterContentObserver(param0: android.database.ContentObserver): void;
			public isFirst(): boolean;
			public getString(param0: number): string;
			public deactivate(): void;
			public copyStringToBuffer(param0: number, param1: android.database.CharArrayBuffer): void;
			public move(param0: number): boolean;
			public moveToPosition(param0: number): boolean;
			public constructor(param0: android.database.Cursor);
			public getLong(param0: number): number;
			public registerContentObserver(param0: android.database.ContentObserver): void;
			public getColumnIndex(param0: string): number;
			public moveToPrevious(): boolean;
			public fillWindow(param0: number, param1: android.database.CursorWindow): void;
			public getExtras(): android.os.Bundle;
			public getInt(param0: number): number;
			public getWantsAllOnMoveCalls(): boolean;
		}
	}
}

declare module android {
	export module database {
		export class Cursor extends java.lang.Object implements java.io.Closeable {
			public static class: java.lang.Class<android.database.Cursor>;
			/**
			 * Constructs a new instance of the android.database.Cursor interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				getCount(): number;
				getPosition(): number;
				move(param0: number): boolean;
				moveToPosition(param0: number): boolean;
				moveToFirst(): boolean;
				moveToLast(): boolean;
				moveToNext(): boolean;
				moveToPrevious(): boolean;
				isFirst(): boolean;
				isLast(): boolean;
				isBeforeFirst(): boolean;
				isAfterLast(): boolean;
				getColumnIndex(param0: string): number;
				getColumnIndexOrThrow(param0: string): number;
				getColumnName(param0: number): string;
				getColumnNames(): native.Array<string>;
				getColumnCount(): number;
				getBlob(param0: number): native.Array<number>;
				getString(param0: number): string;
				copyStringToBuffer(param0: number, param1: android.database.CharArrayBuffer): void;
				getShort(param0: number): number;
				getInt(param0: number): number;
				getLong(param0: number): number;
				getFloat(param0: number): number;
				getDouble(param0: number): number;
				getType(param0: number): number;
				isNull(param0: number): boolean;
				deactivate(): void;
				requery(): boolean;
				close(): void;
				isClosed(): boolean;
				registerContentObserver(param0: android.database.ContentObserver): void;
				unregisterContentObserver(param0: android.database.ContentObserver): void;
				registerDataSetObserver(param0: android.database.DataSetObserver): void;
				unregisterDataSetObserver(param0: android.database.DataSetObserver): void;
				setNotificationUri(param0: android.content.ContentResolver, param1: android.net.Uri): void;
				getWantsAllOnMoveCalls(): boolean;
				getExtras(): android.os.Bundle;
				respond(param0: android.os.Bundle): android.os.Bundle;
				close(): void;
			});
			public constructor();
			public static FIELD_TYPE_INTEGER: number;
			public static FIELD_TYPE_NULL: number;
			public static FIELD_TYPE_STRING: number;
			public static FIELD_TYPE_BLOB: number;
			public static FIELD_TYPE_FLOAT: number;
			public isClosed(): boolean;
			public registerDataSetObserver(param0: android.database.DataSetObserver): void;
			/** @deprecated */
			public requery(): boolean;
			public getFloat(param0: number): number;
			public getPosition(): number;
			public isBeforeFirst(): boolean;
			public isAfterLast(): boolean;
			public getColumnNames(): native.Array<string>;
			public moveToFirst(): boolean;
			public unregisterDataSetObserver(param0: android.database.DataSetObserver): void;
			public respond(param0: android.os.Bundle): android.os.Bundle;
			public getColumnIndexOrThrow(param0: string): number;
			/** @deprecated */
			public deactivate(): void;
			public isLast(): boolean;
			public getCount(): number;
			public getBlob(param0: number): native.Array<number>;
			public moveToNext(): boolean;
			public getShort(param0: number): number;
			public close(): void;
			public getType(param0: number): number;
			public setNotificationUri(param0: android.content.ContentResolver, param1: android.net.Uri): void;
			public moveToLast(): boolean;
			public isNull(param0: number): boolean;
			public getColumnCount(): number;
			public getColumnName(param0: number): string;
			public getDouble(param0: number): number;
			public unregisterContentObserver(param0: android.database.ContentObserver): void;
			public isFirst(): boolean;
			public getString(param0: number): string;
			public copyStringToBuffer(param0: number, param1: android.database.CharArrayBuffer): void;
			public move(param0: number): boolean;
			public moveToPosition(param0: number): boolean;
			public getLong(param0: number): number;
			public registerContentObserver(param0: android.database.ContentObserver): void;
			public getColumnIndex(param0: string): number;
			public moveToPrevious(): boolean;
			public getExtras(): android.os.Bundle;
			public getInt(param0: number): number;
			public getWantsAllOnMoveCalls(): boolean;
		}
	}
}

declare module android {
	export module database {
		export class CursorIndexOutOfBoundsException extends java.lang.IndexOutOfBoundsException {
			public static class: java.lang.Class<android.database.CursorIndexOutOfBoundsException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
			public constructor(param0: number, param1: number);
		}
	}
}

declare module android {
	export module database {
		export class CursorJoiner extends java.lang.Object {
			public static class: java.lang.Class<android.database.CursorJoiner>;
			public constructor(param0: android.database.Cursor, param1: native.Array<string>, param2: android.database.Cursor, param3: native.Array<string>);
			public iterator(): java.util.Iterator<android.database.CursorJoiner.Result>;
			public next(): android.database.CursorJoiner.Result;
			public hasNext(): boolean;
			public remove(): void;
			public iterator(): java.util.Iterator<any>;
		}
		export module CursorJoiner {
			export class Result {
				public static class: java.lang.Class<android.database.CursorJoiner.Result>;
				public static BOTH: android.database.CursorJoiner.Result;
				public static LEFT: android.database.CursorJoiner.Result;
				public static RIGHT: android.database.CursorJoiner.Result;
				public static valueOf(param0: string): android.database.CursorJoiner.Result;
				public static values(): native.Array<android.database.CursorJoiner.Result>;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			}
		}
	}
}

declare module android {
	export module database {
		export class CursorWindow extends android.database.sqlite.SQLiteClosable implements android.os.Parcelable {
			public static class: java.lang.Class<android.database.CursorWindow>;
			public static CREATOR: android.os.Parcelable.Creator<android.database.CursorWindow>;
			public getShort(param0: number, param1: number): number;
			public getType(param0: number, param1: number): number;
			public getStartPosition(): number;
			public copyStringToBuffer(param0: number, param1: number, param2: android.database.CharArrayBuffer): void;
			public onAllReferencesReleased(): void;
			/** @deprecated */
			public isFloat(param0: number, param1: number): boolean;
			public allocRow(): boolean;
			public getBlob(param0: number, param1: number): native.Array<number>;
			public putNull(param0: number, param1: number): boolean;
			public getLong(param0: number, param1: number): number;
			/** @deprecated */
			public isBlob(param0: number, param1: number): boolean;
			public getNumRows(): number;
			public getInt(param0: number, param1: number): number;
			public setStartPosition(param0: number): void;
			public putBlob(param0: native.Array<number>, param1: number, param2: number): boolean;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public getFloat(param0: number, param1: number): number;
			/** @deprecated */
			public isNull(param0: number, param1: number): boolean;
			public close(): void;
			public constructor(param0: string);
			public finalize(): void;
			public setNumColumns(param0: number): boolean;
			/** @deprecated */
			public isString(param0: number, param1: number): boolean;
			public putString(param0: string, param1: number, param2: number): boolean;
			public putDouble(param0: number, param1: number, param2: number): boolean;
			public clear(): void;
			public getString(param0: number, param1: number): string;
			public getDouble(param0: number, param1: number): number;
			public static newFromParcel(param0: android.os.Parcel): android.database.CursorWindow;
			public constructor();
			/** @deprecated */
			public isLong(param0: number, param1: number): boolean;
			public freeLastRow(): void;
			public toString(): string;
			public describeContents(): number;
			/** @deprecated */
			public constructor(param0: boolean);
			public putLong(param0: number, param1: number, param2: number): boolean;
		}
	}
}

declare module android {
	export module database {
		export class CursorWrapper extends java.lang.Object implements android.database.Cursor {
			public static class: java.lang.Class<android.database.CursorWrapper>;
			public isClosed(): boolean;
			public registerDataSetObserver(param0: android.database.DataSetObserver): void;
			/** @deprecated */
			public requery(): boolean;
			public getFloat(param0: number): number;
			public requery(): boolean;
			public getPosition(): number;
			public getWrappedCursor(): android.database.Cursor;
			public getColumnNames(): native.Array<string>;
			public isAfterLast(): boolean;
			public isBeforeFirst(): boolean;
			public moveToFirst(): boolean;
			public unregisterDataSetObserver(param0: android.database.DataSetObserver): void;
			public respond(param0: android.os.Bundle): android.os.Bundle;
			public getColumnIndexOrThrow(param0: string): number;
			/** @deprecated */
			public deactivate(): void;
			public isLast(): boolean;
			public getCount(): number;
			public getBlob(param0: number): native.Array<number>;
			public close(): void;
			public getShort(param0: number): number;
			public moveToNext(): boolean;
			public getType(param0: number): number;
			public setNotificationUri(param0: android.content.ContentResolver, param1: android.net.Uri): void;
			public moveToLast(): boolean;
			public isNull(param0: number): boolean;
			public getColumnCount(): number;
			public getColumnName(param0: number): string;
			public getDouble(param0: number): number;
			public unregisterContentObserver(param0: android.database.ContentObserver): void;
			public isFirst(): boolean;
			public deactivate(): void;
			public getString(param0: number): string;
			public copyStringToBuffer(param0: number, param1: android.database.CharArrayBuffer): void;
			public move(param0: number): boolean;
			public moveToPosition(param0: number): boolean;
			public constructor(param0: android.database.Cursor);
			public getLong(param0: number): number;
			public registerContentObserver(param0: android.database.ContentObserver): void;
			public getColumnIndex(param0: string): number;
			public moveToPrevious(): boolean;
			public getExtras(): android.os.Bundle;
			public getInt(param0: number): number;
			public getWantsAllOnMoveCalls(): boolean;
		}
	}
}

declare module android {
	export module database {
		export class DataSetObservable extends android.database.Observable<android.database.DataSetObserver> {
			public static class: java.lang.Class<android.database.DataSetObservable>;
			public notifyChanged(): void;
			public constructor();
			public notifyInvalidated(): void;
		}
	}
}

declare module android {
	export module database {
		export abstract class DataSetObserver extends java.lang.Object {
			public static class: java.lang.Class<android.database.DataSetObserver>;
			public onInvalidated(): void;
			public constructor();
			public onChanged(): void;
		}
	}
}

declare module android {
	export module database {
		export class DatabaseErrorHandler extends java.lang.Object {
			public static class: java.lang.Class<android.database.DatabaseErrorHandler>;
			/**
			 * Constructs a new instance of the android.database.DatabaseErrorHandler interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				onCorruption(param0: android.database.sqlite.SQLiteDatabase): void;
			});
			public constructor();
			public onCorruption(param0: android.database.sqlite.SQLiteDatabase): void;
		}
	}
}

declare module android {
	export module database {
		export class DatabaseUtils extends java.lang.Object {
			public static class: java.lang.Class<android.database.DatabaseUtils>;
			public static STATEMENT_SELECT: number;
			public static STATEMENT_UPDATE: number;
			public static STATEMENT_ATTACH: number;
			public static STATEMENT_BEGIN: number;
			public static STATEMENT_COMMIT: number;
			public static STATEMENT_ABORT: number;
			public static STATEMENT_PRAGMA: number;
			public static STATEMENT_DDL: number;
			public static STATEMENT_UNPREPARED: number;
			public static STATEMENT_OTHER: number;
			public static queryNumEntries(param0: android.database.sqlite.SQLiteDatabase, param1: string, param2: string, param3: native.Array<string>): number;
			public static createDbFromSqlStatements(param0: android.content.Context, param1: string, param2: number, param3: string): void;
			public static cursorDoubleToCursorValues(param0: android.database.Cursor, param1: string, param2: android.content.ContentValues): void;
			public static longForQuery(param0: android.database.sqlite.SQLiteDatabase, param1: string, param2: native.Array<string>): number;
			public static readExceptionWithFileNotFoundExceptionFromParcel(param0: android.os.Parcel): void;
			public static dumpCursor(param0: android.database.Cursor, param1: java.lang.StringBuilder): void;
			public static cursorFloatToContentValuesIfPresent(param0: android.database.Cursor, param1: android.content.ContentValues, param2: string): void;
			public static dumpCurrentRow(param0: android.database.Cursor, param1: java.io.PrintStream): void;
			public static cursorDoubleToContentValuesIfPresent(param0: android.database.Cursor, param1: android.content.ContentValues, param2: string): void;
			public static cursorRowToContentValues(param0: android.database.Cursor, param1: android.content.ContentValues): void;
			public static cursorLongToContentValuesIfPresent(param0: android.database.Cursor, param1: android.content.ContentValues, param2: string): void;
			public static readExceptionFromParcel(param0: android.os.Parcel): void;
			public static dumpCurrentRow(param0: android.database.Cursor, param1: java.lang.StringBuilder): void;
			public static dumpCurrentRow(param0: android.database.Cursor): void;
			public static writeExceptionToParcel(param0: android.os.Parcel, param1: java.lang.Exception): void;
			public static queryNumEntries(param0: android.database.sqlite.SQLiteDatabase, param1: string): number;
			public static dumpCursorToString(param0: android.database.Cursor): string;
			public static blobFileDescriptorForQuery(param0: android.database.sqlite.SQLiteStatement, param1: native.Array<string>): android.os.ParcelFileDescriptor;
			public static cursorStringToInsertHelper(param0: android.database.Cursor, param1: string, param2: android.database.DatabaseUtils.InsertHelper, param3: number): void;
			public static queryNumEntries(param0: android.database.sqlite.SQLiteDatabase, param1: string, param2: string): number;
			public static appendEscapedSQLString(param0: java.lang.StringBuilder, param1: string): void;
			public static blobFileDescriptorForQuery(param0: android.database.sqlite.SQLiteDatabase, param1: string, param2: native.Array<string>): android.os.ParcelFileDescriptor;
			public static cursorLongToContentValues(param0: android.database.Cursor, param1: string, param2: android.content.ContentValues): void;
			public static appendValueToSql(param0: java.lang.StringBuilder, param1: any): void;
			public static cursorLongToContentValues(param0: android.database.Cursor, param1: string, param2: android.content.ContentValues, param3: string): void;
			public static getHexCollationKey(param0: string): string;
			public static cursorDoubleToContentValues(param0: android.database.Cursor, param1: string, param2: android.content.ContentValues, param3: string): void;
			public static cursorStringToContentValuesIfPresent(param0: android.database.Cursor, param1: android.content.ContentValues, param2: string): void;
			public static dumpCursor(param0: android.database.Cursor): void;
			public static sqlEscapeString(param0: string): string;
			public static getSqlStatementType(param0: string): number;
			public static cursorStringToContentValues(param0: android.database.Cursor, param1: string, param2: android.content.ContentValues, param3: string): void;
			public static readExceptionWithOperationApplicationExceptionFromParcel(param0: android.os.Parcel): void;
			public constructor();
			public static longForQuery(param0: android.database.sqlite.SQLiteStatement, param1: native.Array<string>): number;
			public static cursorIntToContentValues(param0: android.database.Cursor, param1: string, param2: android.content.ContentValues): void;
			public static getCollationKey(param0: string): string;
			public static stringForQuery(param0: android.database.sqlite.SQLiteStatement, param1: native.Array<string>): string;
			public static appendSelectionArgs(param0: native.Array<string>, param1: native.Array<string>): native.Array<string>;
			public static stringForQuery(param0: android.database.sqlite.SQLiteDatabase, param1: string, param2: native.Array<string>): string;
			public static concatenateWhere(param0: string, param1: string): string;
			public static cursorIntToContentValuesIfPresent(param0: android.database.Cursor, param1: android.content.ContentValues, param2: string): void;
			public static dumpCurrentRowToString(param0: android.database.Cursor): string;
			public static cursorShortToContentValuesIfPresent(param0: android.database.Cursor, param1: android.content.ContentValues, param2: string): void;
			public static cursorStringToContentValues(param0: android.database.Cursor, param1: string, param2: android.content.ContentValues): void;
			public static cursorIntToContentValues(param0: android.database.Cursor, param1: string, param2: android.content.ContentValues, param3: string): void;
			public static bindObjectToProgram(param0: android.database.sqlite.SQLiteProgram, param1: number, param2: any): void;
			public static dumpCursor(param0: android.database.Cursor, param1: java.io.PrintStream): void;
		}
		export module DatabaseUtils {
			export class InsertHelper extends java.lang.Object {
				public static class: java.lang.Class<android.database.DatabaseUtils.InsertHelper>;
				public replace(param0: android.content.ContentValues): number;
				public bind(param0: number, param1: native.Array<number>): void;
				public bind(param0: number, param1: boolean): void;
				public bind(param0: number, param1: string): void;
				public close(): void;
				public getColumnIndex(param0: string): number;
				public prepareForReplace(): void;
				public prepareForInsert(): void;
				public bindNull(param0: number): void;
				public constructor(param0: android.database.sqlite.SQLiteDatabase, param1: string);
				public bind(param0: number, param1: number): void;
				public insert(param0: android.content.ContentValues): number;
				public execute(): number;
			}
		}
	}
}

declare module android {
	export module database {
		export class DefaultDatabaseErrorHandler extends java.lang.Object implements android.database.DatabaseErrorHandler {
			public static class: java.lang.Class<android.database.DefaultDatabaseErrorHandler>;
			public onCorruption(param0: android.database.sqlite.SQLiteDatabase): void;
			public constructor();
		}
	}
}

declare module android {
	export module database {
		export class MatrixCursor extends android.database.AbstractCursor {
			public static class: java.lang.Class<android.database.MatrixCursor>;
			public isNull(param0: number): boolean;
			public constructor(param0: native.Array<string>, param1: number);
			public getDouble(param0: number): number;
			public addRow(param0: java.lang.Iterable<any>): void;
			public getString(param0: number): string;
			public getFloat(param0: number): number;
			public constructor();
			public newRow(): android.database.MatrixCursor.RowBuilder;
			public getWindow(): android.database.CursorWindow;
			public getColumnNames(): native.Array<string>;
			public constructor(param0: native.Array<string>);
			public getLong(param0: number): number;
			public onMove(param0: number, param1: number): boolean;
			public addRow(param0: native.Array<any>): void;
			public getCount(): number;
			public getBlob(param0: number): native.Array<number>;
			public getShort(param0: number): number;
			public getType(param0: number): number;
			public fillWindow(param0: number, param1: android.database.CursorWindow): void;
			public getInt(param0: number): number;
		}
		export module MatrixCursor {
			export class RowBuilder extends java.lang.Object {
				public static class: java.lang.Class<android.database.MatrixCursor.RowBuilder>;
				public add(param0: any): android.database.MatrixCursor.RowBuilder;
			}
		}
	}
}

declare module android {
	export module database {
		export class MergeCursor extends android.database.AbstractCursor {
			public static class: java.lang.Class<android.database.MergeCursor>;
			public isNull(param0: number): boolean;
			public getDouble(param0: number): number;
			public unregisterContentObserver(param0: android.database.ContentObserver): void;
			public registerDataSetObserver(param0: android.database.DataSetObserver): void;
			public getString(param0: number): string;
			public deactivate(): void;
			public getFloat(param0: number): number;
			public requery(): boolean;
			public constructor(param0: native.Array<android.database.Cursor>);
			public constructor();
			public getWindow(): android.database.CursorWindow;
			public getColumnNames(): native.Array<string>;
			public unregisterDataSetObserver(param0: android.database.DataSetObserver): void;
			public getLong(param0: number): number;
			public registerContentObserver(param0: android.database.ContentObserver): void;
			public onMove(param0: number, param1: number): boolean;
			public getCount(): number;
			public getBlob(param0: number): native.Array<number>;
			public getShort(param0: number): number;
			public close(): void;
			public getType(param0: number): number;
			public fillWindow(param0: number, param1: android.database.CursorWindow): void;
			public getInt(param0: number): number;
		}
	}
}

declare module android {
	export module database {
		export abstract class Observable<T>  extends java.lang.Object {
			public static class: java.lang.Class<android.database.Observable<any>>;
			public mObservers: java.util.ArrayList<T>;
			public registerObserver(param0: T): void;
			public unregisterAll(): void;
			public unregisterObserver(param0: T): void;
			public constructor();
		}
	}
}

declare module android {
	export module database {
		export class SQLException extends java.lang.RuntimeException {
			public static class: java.lang.Class<android.database.SQLException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module android {
	export module database {
		export class StaleDataException extends java.lang.RuntimeException {
			public static class: java.lang.Class<android.database.StaleDataException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module android {
	export module database {
		export module sqlite {
			export class SQLiteAbortException extends android.database.sqlite.SQLiteException {
				public static class: java.lang.Class<android.database.sqlite.SQLiteAbortException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module android {
	export module database {
		export module sqlite {
			export class SQLiteAccessPermException extends android.database.sqlite.SQLiteException {
				public static class: java.lang.Class<android.database.sqlite.SQLiteAccessPermException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module android {
	export module database {
		export module sqlite {
			export class SQLiteBindOrColumnIndexOutOfRangeException extends android.database.sqlite.SQLiteException {
				public static class: java.lang.Class<android.database.sqlite.SQLiteBindOrColumnIndexOutOfRangeException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module android {
	export module database {
		export module sqlite {
			export class SQLiteBlobTooBigException extends android.database.sqlite.SQLiteException {
				public static class: java.lang.Class<android.database.sqlite.SQLiteBlobTooBigException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module android {
	export module database {
		export module sqlite {
			export class SQLiteCantOpenDatabaseException extends android.database.sqlite.SQLiteException {
				public static class: java.lang.Class<android.database.sqlite.SQLiteCantOpenDatabaseException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module android {
	export module database {
		export module sqlite {
			export abstract class SQLiteClosable extends java.lang.Object implements java.io.Closeable {
				public static class: java.lang.Class<android.database.sqlite.SQLiteClosable>;
				public releaseReference(): void;
				public acquireReference(): void;
				public close(): void;
				/** @deprecated */
				public onAllReferencesReleasedFromContainer(): void;
				/** @deprecated */
				public releaseReferenceFromContainer(): void;
				public constructor();
				public onAllReferencesReleased(): void;
			}
		}
	}
}

declare module android {
	export module database {
		export module sqlite {
			export class SQLiteConstraintException extends android.database.sqlite.SQLiteException {
				public static class: java.lang.Class<android.database.sqlite.SQLiteConstraintException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module android {
	export module database {
		export module sqlite {
			export class SQLiteCursor extends android.database.AbstractWindowedCursor {
				public static class: java.lang.Class<android.database.sqlite.SQLiteCursor>;
				public getDatabase(): android.database.sqlite.SQLiteDatabase;
				public getColumnNames(): native.Array<string>;
				public requery(): boolean;
				public close(): void;
				public setSelectionArguments(param0: native.Array<string>): void;
				public constructor(param0: android.database.sqlite.SQLiteCursorDriver, param1: string, param2: android.database.sqlite.SQLiteQuery);
				public onMove(param0: number, param1: number): boolean;
				public fillWindow(param0: number, param1: android.database.CursorWindow): void;
				public finalize(): void;
				public getCount(): number;
				public getColumnIndex(param0: string): number;
				public constructor();
				public setWindow(param0: android.database.CursorWindow): void;
				public getWindow(): android.database.CursorWindow;
				/** @deprecated */
				public constructor(param0: android.database.sqlite.SQLiteDatabase, param1: android.database.sqlite.SQLiteCursorDriver, param2: string, param3: android.database.sqlite.SQLiteQuery);
				public deactivate(): void;
			}
		}
	}
}

declare module android {
	export module database {
		export module sqlite {
			export class SQLiteCursorDriver extends java.lang.Object {
				public static class: java.lang.Class<android.database.sqlite.SQLiteCursorDriver>;
				/**
				 * Constructs a new instance of the android.database.sqlite.SQLiteCursorDriver interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					query(param0: android.database.sqlite.SQLiteDatabase.CursorFactory, param1: native.Array<string>): android.database.Cursor;
					cursorDeactivated(): void;
					cursorRequeried(param0: android.database.Cursor): void;
					cursorClosed(): void;
					setBindArguments(param0: native.Array<string>): void;
				});
				public constructor();
				public cursorRequeried(param0: android.database.Cursor): void;
				public setBindArguments(param0: native.Array<string>): void;
				public cursorDeactivated(): void;
				public cursorClosed(): void;
				public query(param0: android.database.sqlite.SQLiteDatabase.CursorFactory, param1: native.Array<string>): android.database.Cursor;
			}
		}
	}
}

declare module android {
	export module database {
		export module sqlite {
			export class SQLiteDatabase extends android.database.sqlite.SQLiteClosable {
				public static class: java.lang.Class<android.database.sqlite.SQLiteDatabase>;
				public static CONFLICT_ROLLBACK: number;
				public static CONFLICT_ABORT: number;
				public static CONFLICT_FAIL: number;
				public static CONFLICT_IGNORE: number;
				public static CONFLICT_REPLACE: number;
				public static CONFLICT_NONE: number;
				public static SQLITE_MAX_LIKE_PATTERN_LENGTH: number;
				public static OPEN_READWRITE: number;
				public static OPEN_READONLY: number;
				public static NO_LOCALIZED_COLLATORS: number;
				public static CREATE_IF_NECESSARY: number;
				public static ENABLE_WRITE_AHEAD_LOGGING: number;
				public static MAX_SQL_CACHE_SIZE: number;
				public beginTransaction(): void;
				public update(param0: string, param1: android.content.ContentValues, param2: string, param3: native.Array<string>): number;
				public compileStatement(param0: string): android.database.sqlite.SQLiteStatement;
				public replace(param0: string, param1: string, param2: android.content.ContentValues): number;
				public needUpgrade(param0: number): boolean;
				public static deleteDatabase(param0: java.io.File): boolean;
				public beginTransactionWithListenerNonExclusive(param0: android.database.sqlite.SQLiteTransactionListener): void;
				public yieldIfContendedSafely(param0: number): boolean;
				public setMaxSqlCacheSize(param0: number): void;
				public static openDatabase(param0: string, param1: android.database.sqlite.SQLiteDatabase.CursorFactory, param2: number): android.database.sqlite.SQLiteDatabase;
				public setVersion(param0: number): void;
				public query(param0: string, param1: native.Array<string>, param2: string, param3: native.Array<string>, param4: string, param5: string, param6: string, param7: string): android.database.Cursor;
				public isDbLockedByCurrentThread(): boolean;
				public isWriteAheadLoggingEnabled(): boolean;
				public static releaseMemory(): number;
				/** @deprecated */
				public markTableSyncable(param0: string, param1: string): void;
				public queryWithFactory(param0: android.database.sqlite.SQLiteDatabase.CursorFactory, param1: boolean, param2: string, param3: native.Array<string>, param4: string, param5: native.Array<string>, param6: string, param7: string, param8: string, param9: string, param10: android.os.CancellationSignal): android.database.Cursor;
				/** @deprecated */
				public yieldIfContended(): boolean;
				public inTransaction(): boolean;
				public enableWriteAheadLogging(): boolean;
				/** @deprecated */
				public setLockingEnabled(param0: boolean): void;
				public close(): void;
				public rawQueryWithFactory(param0: android.database.sqlite.SQLiteDatabase.CursorFactory, param1: string, param2: native.Array<string>, param3: string, param4: android.os.CancellationSignal): android.database.Cursor;
				public execSQL(param0: string): void;
				public setTransactionSuccessful(): void;
				public static openOrCreateDatabase(param0: java.io.File, param1: android.database.sqlite.SQLiteDatabase.CursorFactory): android.database.sqlite.SQLiteDatabase;
				public insertOrThrow(param0: string, param1: string, param2: android.content.ContentValues): number;
				public getPath(): string;
				public toString(): string;
				public yieldIfContendedSafely(): boolean;
				public static openOrCreateDatabase(param0: string, param1: android.database.sqlite.SQLiteDatabase.CursorFactory, param2: android.database.DatabaseErrorHandler): android.database.sqlite.SQLiteDatabase;
				public static openOrCreateDatabase(param0: string, param1: android.database.sqlite.SQLiteDatabase.CursorFactory): android.database.sqlite.SQLiteDatabase;
				public delete(param0: string, param1: string, param2: native.Array<string>): number;
				public getVersion(): number;
				public query(param0: string, param1: native.Array<string>, param2: string, param3: native.Array<string>, param4: string, param5: string, param6: string): android.database.Cursor;
				public beginTransactionWithListener(param0: android.database.sqlite.SQLiteTransactionListener): void;
				public setForeignKeyConstraintsEnabled(param0: boolean): void;
				public getAttachedDbs(): java.util.List<android.util.Pair<string,string>>;
				public rawQuery(param0: string, param1: native.Array<string>, param2: android.os.CancellationSignal): android.database.Cursor;
				public query(param0: boolean, param1: string, param2: native.Array<string>, param3: string, param4: native.Array<string>, param5: string, param6: string, param7: string, param8: string, param9: android.os.CancellationSignal): android.database.Cursor;
				public finalize(): void;
				public beginTransactionNonExclusive(): void;
				public setMaximumSize(param0: number): number;
				/** @deprecated */
				public getSyncedTables(): java.util.Map<string,string>;
				public static create(param0: android.database.sqlite.SQLiteDatabase.CursorFactory): android.database.sqlite.SQLiteDatabase;
				public setPageSize(param0: number): void;
				public static findEditTable(param0: string): string;
				public static openDatabase(param0: string, param1: android.database.sqlite.SQLiteDatabase.CursorFactory, param2: number, param3: android.database.DatabaseErrorHandler): android.database.sqlite.SQLiteDatabase;
				public getMaximumSize(): number;
				public isDatabaseIntegrityOk(): boolean;
				public execSQL(param0: string, param1: native.Array<any>): void;
				public onAllReferencesReleased(): void;
				public replaceOrThrow(param0: string, param1: string, param2: android.content.ContentValues): number;
				/** @deprecated */
				public isDbLockedByOtherThreads(): boolean;
				public disableWriteAheadLogging(): void;
				public updateWithOnConflict(param0: string, param1: android.content.ContentValues, param2: string, param3: native.Array<string>, param4: number): number;
				public insert(param0: string, param1: string, param2: android.content.ContentValues): number;
				public getPageSize(): number;
				public query(param0: boolean, param1: string, param2: native.Array<string>, param3: string, param4: native.Array<string>, param5: string, param6: string, param7: string, param8: string): android.database.Cursor;
				public isReadOnly(): boolean;
				public insertWithOnConflict(param0: string, param1: string, param2: android.content.ContentValues, param3: number): number;
				public isOpen(): boolean;
				public endTransaction(): void;
				/** @deprecated */
				public markTableSyncable(param0: string, param1: string, param2: string): void;
				public rawQuery(param0: string, param1: native.Array<string>): android.database.Cursor;
				public setLocale(param0: java.util.Locale): void;
				public rawQueryWithFactory(param0: android.database.sqlite.SQLiteDatabase.CursorFactory, param1: string, param2: native.Array<string>, param3: string): android.database.Cursor;
				public queryWithFactory(param0: android.database.sqlite.SQLiteDatabase.CursorFactory, param1: boolean, param2: string, param3: native.Array<string>, param4: string, param5: native.Array<string>, param6: string, param7: string, param8: string, param9: string): android.database.Cursor;
			}
			export module SQLiteDatabase {
				export class CursorFactory extends java.lang.Object {
					public static class: java.lang.Class<android.database.sqlite.SQLiteDatabase.CursorFactory>;
					/**
					 * Constructs a new instance of the android.database.sqlite.SQLiteDatabase$CursorFactory interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						newCursor(param0: android.database.sqlite.SQLiteDatabase, param1: android.database.sqlite.SQLiteCursorDriver, param2: string, param3: android.database.sqlite.SQLiteQuery): android.database.Cursor;
					});
					public constructor();
					public newCursor(param0: android.database.sqlite.SQLiteDatabase, param1: android.database.sqlite.SQLiteCursorDriver, param2: string, param3: android.database.sqlite.SQLiteQuery): android.database.Cursor;
				}
			}
		}
	}
}

declare module android {
	export module database {
		export module sqlite {
			export class SQLiteDatabaseCorruptException extends android.database.sqlite.SQLiteException {
				public static class: java.lang.Class<android.database.sqlite.SQLiteDatabaseCorruptException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module android {
	export module database {
		export module sqlite {
			export class SQLiteDatabaseLockedException extends android.database.sqlite.SQLiteException {
				public static class: java.lang.Class<android.database.sqlite.SQLiteDatabaseLockedException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module android {
	export module database {
		export module sqlite {
			export class SQLiteDatatypeMismatchException extends android.database.sqlite.SQLiteException {
				public static class: java.lang.Class<android.database.sqlite.SQLiteDatatypeMismatchException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module android {
	export module database {
		export module sqlite {
			export class SQLiteDiskIOException extends android.database.sqlite.SQLiteException {
				public static class: java.lang.Class<android.database.sqlite.SQLiteDiskIOException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module android {
	export module database {
		export module sqlite {
			export class SQLiteDoneException extends android.database.sqlite.SQLiteException {
				public static class: java.lang.Class<android.database.sqlite.SQLiteDoneException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module android {
	export module database {
		export module sqlite {
			export class SQLiteException extends android.database.SQLException {
				public static class: java.lang.Class<android.database.sqlite.SQLiteException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module android {
	export module database {
		export module sqlite {
			export class SQLiteFullException extends android.database.sqlite.SQLiteException {
				public static class: java.lang.Class<android.database.sqlite.SQLiteFullException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module android {
	export module database {
		export module sqlite {
			export class SQLiteMisuseException extends android.database.sqlite.SQLiteException {
				public static class: java.lang.Class<android.database.sqlite.SQLiteMisuseException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module android {
	export module database {
		export module sqlite {
			export abstract class SQLiteOpenHelper extends java.lang.Object {
				public static class: java.lang.Class<android.database.sqlite.SQLiteOpenHelper>;
				public onOpen(param0: android.database.sqlite.SQLiteDatabase): void;
				public close(): void;
				public setWriteAheadLoggingEnabled(param0: boolean): void;
				public onCreate(param0: android.database.sqlite.SQLiteDatabase): void;
				public constructor(param0: android.content.Context, param1: string, param2: android.database.sqlite.SQLiteDatabase.CursorFactory, param3: number, param4: android.database.DatabaseErrorHandler);
				public onUpgrade(param0: android.database.sqlite.SQLiteDatabase, param1: number, param2: number): void;
				public constructor(param0: android.content.Context, param1: string, param2: android.database.sqlite.SQLiteDatabase.CursorFactory, param3: number);
				public onDowngrade(param0: android.database.sqlite.SQLiteDatabase, param1: number, param2: number): void;
				public getDatabaseName(): string;
				public getWritableDatabase(): android.database.sqlite.SQLiteDatabase;
				public getReadableDatabase(): android.database.sqlite.SQLiteDatabase;
				public onConfigure(param0: android.database.sqlite.SQLiteDatabase): void;
			}
		}
	}
}

declare module android {
	export module database {
		export module sqlite {
			export class SQLiteOutOfMemoryException extends android.database.sqlite.SQLiteException {
				public static class: java.lang.Class<android.database.sqlite.SQLiteOutOfMemoryException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module android {
	export module database {
		export module sqlite {
			export abstract class SQLiteProgram extends android.database.sqlite.SQLiteClosable {
				public static class: java.lang.Class<android.database.sqlite.SQLiteProgram>;
				public clearBindings(): void;
				public close(): void;
				public bindAllArgsAsStrings(param0: native.Array<string>): void;
				public bindString(param0: number, param1: string): void;
				public bindDouble(param0: number, param1: number): void;
				public bindBlob(param0: number, param1: native.Array<number>): void;
				public bindLong(param0: number, param1: number): void;
				/** @deprecated */
				public getUniqueId(): number;
				public bindNull(param0: number): void;
				public onAllReferencesReleased(): void;
			}
		}
	}
}

declare module android {
	export module database {
		export module sqlite {
			export class SQLiteQuery extends android.database.sqlite.SQLiteProgram {
				public static class: java.lang.Class<android.database.sqlite.SQLiteQuery>;
				public close(): void;
				public toString(): string;
			}
		}
	}
}

declare module android {
	export module database {
		export module sqlite {
			export class SQLiteQueryBuilder extends java.lang.Object {
				public static class: java.lang.Class<android.database.sqlite.SQLiteQueryBuilder>;
				public static appendColumns(param0: java.lang.StringBuilder, param1: native.Array<string>): void;
				public buildQuery(param0: native.Array<string>, param1: string, param2: string, param3: string, param4: string, param5: string): string;
				public query(param0: android.database.sqlite.SQLiteDatabase, param1: native.Array<string>, param2: string, param3: native.Array<string>, param4: string, param5: string, param6: string): android.database.Cursor;
				public constructor();
				public query(param0: android.database.sqlite.SQLiteDatabase, param1: native.Array<string>, param2: string, param3: native.Array<string>, param4: string, param5: string, param6: string, param7: string): android.database.Cursor;
				public setProjectionMap(param0: java.util.Map<string,string>): void;
				public buildUnionQuery(param0: native.Array<string>, param1: string, param2: string): string;
				public setStrict(param0: boolean): void;
				public setCursorFactory(param0: android.database.sqlite.SQLiteDatabase.CursorFactory): void;
				public setTables(param0: string): void;
				public buildUnionSubQuery(param0: string, param1: native.Array<string>, param2: java.util.Set<string>, param3: number, param4: string, param5: string, param6: string, param7: string): string;
				/** @deprecated */
				public buildUnionSubQuery(param0: string, param1: native.Array<string>, param2: java.util.Set<string>, param3: number, param4: string, param5: string, param6: native.Array<string>, param7: string, param8: string): string;
				public getTables(): string;
				public setDistinct(param0: boolean): void;
				public appendWhere(param0: string): void;
				/** @deprecated */
				public buildQuery(param0: native.Array<string>, param1: string, param2: native.Array<string>, param3: string, param4: string, param5: string, param6: string): string;
				public static buildQueryString(param0: boolean, param1: string, param2: native.Array<string>, param3: string, param4: string, param5: string, param6: string, param7: string): string;
				public appendWhereEscapeString(param0: string): void;
				public query(param0: android.database.sqlite.SQLiteDatabase, param1: native.Array<string>, param2: string, param3: native.Array<string>, param4: string, param5: string, param6: string, param7: string, param8: android.os.CancellationSignal): android.database.Cursor;
			}
		}
	}
}

declare module android {
	export module database {
		export module sqlite {
			export class SQLiteReadOnlyDatabaseException extends android.database.sqlite.SQLiteException {
				public static class: java.lang.Class<android.database.sqlite.SQLiteReadOnlyDatabaseException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module android {
	export module database {
		export module sqlite {
			export class SQLiteStatement extends android.database.sqlite.SQLiteProgram {
				public static class: java.lang.Class<android.database.sqlite.SQLiteStatement>;
				public execute(): void;
				public simpleQueryForString(): string;
				public close(): void;
				public executeUpdateDelete(): number;
				public simpleQueryForLong(): number;
				public simpleQueryForBlobFileDescriptor(): android.os.ParcelFileDescriptor;
				public executeInsert(): number;
				public toString(): string;
			}
		}
	}
}

declare module android {
	export module database {
		export module sqlite {
			export class SQLiteTableLockedException extends android.database.sqlite.SQLiteException {
				public static class: java.lang.Class<android.database.sqlite.SQLiteTableLockedException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module android {
	export module database {
		export module sqlite {
			export class SQLiteTransactionListener extends java.lang.Object {
				public static class: java.lang.Class<android.database.sqlite.SQLiteTransactionListener>;
				/**
				 * Constructs a new instance of the android.database.sqlite.SQLiteTransactionListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onBegin(): void;
					onCommit(): void;
					onRollback(): void;
				});
				public constructor();
				public onCommit(): void;
				public onBegin(): void;
				public onRollback(): void;
			}
		}
	}
}

declare module android {
	export module drm {
		export class DrmConvertedStatus extends java.lang.Object {
			public static class: java.lang.Class<android.drm.DrmConvertedStatus>;
			public static STATUS_OK: number;
			public static STATUS_INPUTDATA_ERROR: number;
			public static STATUS_ERROR: number;
			public statusCode: number;
			public convertedData: native.Array<number>;
			public offset: number;
			public constructor(param0: number, param1: native.Array<number>, param2: number);
		}
	}
}

declare module android {
	export module drm {
		export class DrmErrorEvent extends android.drm.DrmEvent {
			public static class: java.lang.Class<android.drm.DrmErrorEvent>;
			public static TYPE_RIGHTS_NOT_INSTALLED: number;
			public static TYPE_RIGHTS_RENEWAL_NOT_ALLOWED: number;
			public static TYPE_NOT_SUPPORTED: number;
			public static TYPE_OUT_OF_MEMORY: number;
			public static TYPE_NO_INTERNET_CONNECTION: number;
			public static TYPE_PROCESS_DRM_INFO_FAILED: number;
			public static TYPE_REMOVE_ALL_RIGHTS_FAILED: number;
			public static TYPE_ACQUIRE_DRM_INFO_FAILED: number;
			public constructor(param0: number, param1: number, param2: string);
			public constructor(param0: number, param1: number, param2: string, param3: java.util.HashMap<string,any>);
		}
	}
}

declare module android {
	export module drm {
		export class DrmEvent extends java.lang.Object {
			public static class: java.lang.Class<android.drm.DrmEvent>;
			public static TYPE_ALL_RIGHTS_REMOVED: number;
			public static TYPE_DRM_INFO_PROCESSED: number;
			public static DRM_INFO_STATUS_OBJECT: string;
			public static DRM_INFO_OBJECT: string;
			public getMessage(): string;
			public getType(): number;
			public getUniqueId(): number;
			public getAttribute(param0: string): any;
			public constructor(param0: number, param1: number, param2: string);
			public constructor(param0: number, param1: number, param2: string, param3: java.util.HashMap<string,any>);
		}
	}
}

declare module android {
	export module drm {
		export class DrmInfo extends java.lang.Object {
			public static class: java.lang.Class<android.drm.DrmInfo>;
			public constructor(param0: number, param1: string, param2: string);
			public get(param0: string): any;
			public keyIterator(): java.util.Iterator<string>;
			public getData(): native.Array<number>;
			public getMimeType(): string;
			public put(param0: string, param1: any): void;
			public getInfoType(): number;
			public constructor(param0: number, param1: native.Array<number>, param2: string);
			public iterator(): java.util.Iterator<any>;
		}
	}
}

declare module android {
	export module drm {
		export class DrmInfoEvent extends android.drm.DrmEvent {
			public static class: java.lang.Class<android.drm.DrmInfoEvent>;
			public static TYPE_ALREADY_REGISTERED_BY_ANOTHER_ACCOUNT: number;
			public static TYPE_REMOVE_RIGHTS: number;
			public static TYPE_RIGHTS_INSTALLED: number;
			public static TYPE_WAIT_FOR_RIGHTS: number;
			public static TYPE_ACCOUNT_ALREADY_REGISTERED: number;
			public static TYPE_RIGHTS_REMOVED: number;
			public constructor(param0: number, param1: number, param2: string);
			public constructor(param0: number, param1: number, param2: string, param3: java.util.HashMap<string,any>);
		}
	}
}

declare module android {
	export module drm {
		export class DrmInfoRequest extends java.lang.Object {
			public static class: java.lang.Class<android.drm.DrmInfoRequest>;
			public static TYPE_REGISTRATION_INFO: number;
			public static TYPE_UNREGISTRATION_INFO: number;
			public static TYPE_RIGHTS_ACQUISITION_INFO: number;
			public static TYPE_RIGHTS_ACQUISITION_PROGRESS_INFO: number;
			public static ACCOUNT_ID: string;
			public static SUBSCRIPTION_ID: string;
			public get(param0: string): any;
			public getMimeType(): string;
			public keyIterator(): java.util.Iterator<string>;
			public put(param0: string, param1: any): void;
			public constructor(param0: number, param1: string);
			public getInfoType(): number;
			public iterator(): java.util.Iterator<any>;
		}
	}
}

declare module android {
	export module drm {
		export class DrmInfoStatus extends java.lang.Object {
			public static class: java.lang.Class<android.drm.DrmInfoStatus>;
			public static STATUS_OK: number;
			public static STATUS_ERROR: number;
			public statusCode: number;
			public infoType: number;
			public mimeType: string;
			public data: android.drm.ProcessedData;
			public constructor(param0: number, param1: number, param2: android.drm.ProcessedData, param3: string);
		}
	}
}

declare module android {
	export module drm {
		export class DrmManagerClient extends java.lang.Object {
			public static class: java.lang.Class<android.drm.DrmManagerClient>;
			public static ERROR_NONE: number;
			public static ERROR_UNKNOWN: number;
			public canHandle(param0: string, param1: string): boolean;
			public getOriginalMimeType(param0: string): string;
			public checkRightsStatus(param0: string, param1: number): number;
			public getConstraints(param0: android.net.Uri, param1: number): android.content.ContentValues;
			public processDrmInfo(param0: android.drm.DrmInfo): number;
			public acquireRights(param0: android.drm.DrmInfoRequest): number;
			public setOnInfoListener(param0: android.drm.DrmManagerClient.OnInfoListener): void;
			public setOnErrorListener(param0: android.drm.DrmManagerClient.OnErrorListener): void;
			public checkRightsStatus(param0: string): number;
			public getAvailableDrmEngines(): native.Array<string>;
			public getMetadata(param0: string): android.content.ContentValues;
			public finalize(): void;
			public release(): void;
			public saveRights(param0: android.drm.DrmRights, param1: string, param2: string): number;
			public convertData(param0: number, param1: native.Array<number>): android.drm.DrmConvertedStatus;
			public openConvertSession(param0: string): number;
			public removeRights(param0: android.net.Uri): number;
			public getDrmObjectType(param0: string, param1: string): number;
			public getDrmObjectType(param0: android.net.Uri, param1: string): number;
			public getConstraints(param0: string, param1: number): android.content.ContentValues;
			public getOriginalMimeType(param0: android.net.Uri): string;
			public checkRightsStatus(param0: android.net.Uri): number;
			public removeRights(param0: string): number;
			public removeAllRights(): number;
			public getMetadata(param0: android.net.Uri): android.content.ContentValues;
			public canHandle(param0: android.net.Uri, param1: string): boolean;
			public closeConvertSession(param0: number): android.drm.DrmConvertedStatus;
			public setOnEventListener(param0: android.drm.DrmManagerClient.OnEventListener): void;
			public constructor(param0: android.content.Context);
			public acquireDrmInfo(param0: android.drm.DrmInfoRequest): android.drm.DrmInfo;
			public checkRightsStatus(param0: android.net.Uri, param1: number): number;
		}
		export module DrmManagerClient {
			export class OnErrorListener extends java.lang.Object {
				public static class: java.lang.Class<android.drm.DrmManagerClient.OnErrorListener>;
				/**
				 * Constructs a new instance of the android.drm.DrmManagerClient$OnErrorListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onError(param0: android.drm.DrmManagerClient, param1: android.drm.DrmErrorEvent): void;
				});
				public constructor();
				public onError(param0: android.drm.DrmManagerClient, param1: android.drm.DrmErrorEvent): void;
			}
			export class OnEventListener extends java.lang.Object {
				public static class: java.lang.Class<android.drm.DrmManagerClient.OnEventListener>;
				/**
				 * Constructs a new instance of the android.drm.DrmManagerClient$OnEventListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onEvent(param0: android.drm.DrmManagerClient, param1: android.drm.DrmEvent): void;
				});
				public constructor();
				public onEvent(param0: android.drm.DrmManagerClient, param1: android.drm.DrmEvent): void;
			}
			export class OnInfoListener extends java.lang.Object {
				public static class: java.lang.Class<android.drm.DrmManagerClient.OnInfoListener>;
				/**
				 * Constructs a new instance of the android.drm.DrmManagerClient$OnInfoListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onInfo(param0: android.drm.DrmManagerClient, param1: android.drm.DrmInfoEvent): void;
				});
				public constructor();
				public onInfo(param0: android.drm.DrmManagerClient, param1: android.drm.DrmInfoEvent): void;
			}
		}
	}
}

declare module android {
	export module drm {
		export class DrmRights extends java.lang.Object {
			public static class: java.lang.Class<android.drm.DrmRights>;
			public constructor(param0: string, param1: string);
			public getSubscriptionId(): string;
			public getAccountId(): string;
			public constructor(param0: java.io.File, param1: string);
			public getData(): native.Array<number>;
			public getMimeType(): string;
			public constructor(param0: string, param1: string, param2: string);
			public constructor(param0: android.drm.ProcessedData, param1: string);
			public constructor(param0: string, param1: string, param2: string, param3: string);
		}
	}
}

declare module android {
	export module drm {
		export class DrmStore extends java.lang.Object {
			public static class: java.lang.Class<android.drm.DrmStore>;
			/** @deprecated */
			public constructor();
		}
		export module DrmStore {
			export class Action extends java.lang.Object {
				public static class: java.lang.Class<android.drm.DrmStore.Action>;
				public static DEFAULT: number;
				public static PLAY: number;
				public static RINGTONE: number;
				public static TRANSFER: number;
				public static OUTPUT: number;
				public static PREVIEW: number;
				public static EXECUTE: number;
				public static DISPLAY: number;
				/** @deprecated */
				public constructor();
			}
			export class ConstraintsColumns extends java.lang.Object {
				public static class: java.lang.Class<android.drm.DrmStore.ConstraintsColumns>;
				/**
				 * Constructs a new instance of the android.drm.DrmStore$ConstraintsColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
				public static LICENSE_AVAILABLE_TIME: string;
				public static LICENSE_EXPIRY_TIME: string;
				public static EXTENDED_METADATA: string;
				public static MAX_REPEAT_COUNT: string;
				public static LICENSE_START_TIME: string;
				public static REMAINING_REPEAT_COUNT: string;
			}
			export class DrmObjectType extends java.lang.Object {
				public static class: java.lang.Class<android.drm.DrmStore.DrmObjectType>;
				public static UNKNOWN: number;
				public static CONTENT: number;
				public static RIGHTS_OBJECT: number;
				public static TRIGGER_OBJECT: number;
				/** @deprecated */
				public constructor();
			}
			export class Playback extends java.lang.Object {
				public static class: java.lang.Class<android.drm.DrmStore.Playback>;
				public static START: number;
				public static STOP: number;
				public static PAUSE: number;
				public static RESUME: number;
				/** @deprecated */
				public constructor();
			}
			export class RightsStatus extends java.lang.Object {
				public static class: java.lang.Class<android.drm.DrmStore.RightsStatus>;
				public static RIGHTS_VALID: number;
				public static RIGHTS_INVALID: number;
				public static RIGHTS_EXPIRED: number;
				public static RIGHTS_NOT_ACQUIRED: number;
				/** @deprecated */
				public constructor();
			}
		}
	}
}

declare module android {
	export module drm {
		export class DrmSupportInfo extends java.lang.Object {
			public static class: java.lang.Class<android.drm.DrmSupportInfo>;
			public equals(param0: any): boolean;
			public getFileSuffixIterator(): java.util.Iterator<string>;
			public addMimeType(param0: string): void;
			public addFileSuffix(param0: string): void;
			public getMimeTypeIterator(): java.util.Iterator<string>;
			public setDescription(param0: string): void;
			/** @deprecated */
			public getDescriprition(): string;
			public constructor();
			public getDescription(): string;
			public hashCode(): number;
		}
	}
}

declare module android {
	export module drm {
		export class DrmUtils extends java.lang.Object {
			public static class: java.lang.Class<android.drm.DrmUtils>;
			public static getExtendedMetadataParser(param0: native.Array<number>): android.drm.DrmUtils.ExtendedMetadataParser;
			public constructor();
		}
		export module DrmUtils {
			export class ExtendedMetadataParser extends java.lang.Object {
				public static class: java.lang.Class<android.drm.DrmUtils.ExtendedMetadataParser>;
				public get(param0: string): string;
				public iterator(): java.util.Iterator<string>;
				public keyIterator(): java.util.Iterator<string>;
			}
		}
	}
}

declare module android {
	export module drm {
		export class ProcessedData extends java.lang.Object {
			public static class: java.lang.Class<android.drm.ProcessedData>;
			public getSubscriptionId(): string;
			public getAccountId(): string;
			public getData(): native.Array<number>;
		}
	}
}

declare module android {
	export module gesture {
		export class Gesture extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.gesture.Gesture>;
			public static CREATOR: android.os.Parcelable.Creator<android.gesture.Gesture>;
			public getID(): number;
			public addStroke(param0: android.gesture.GestureStroke): void;
			public getLength(): number;
			public getStrokes(): java.util.ArrayList<android.gesture.GestureStroke>;
			public getBoundingBox(): android.graphics.RectF;
			public toPath(param0: android.graphics.Path, param1: number, param2: number, param3: number, param4: number): android.graphics.Path;
			public toBitmap(param0: number, param1: number, param2: number, param3: number): android.graphics.Bitmap;
			public constructor();
			public toPath(): android.graphics.Path;
			public toPath(param0: android.graphics.Path): android.graphics.Path;
			public clone(): any;
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public getStrokesCount(): number;
			public toBitmap(param0: number, param1: number, param2: number, param3: number, param4: number): android.graphics.Bitmap;
			public toPath(param0: number, param1: number, param2: number, param3: number): android.graphics.Path;
		}
	}
}

declare module android {
	export module gesture {
		export class GestureLibraries extends java.lang.Object {
			public static class: java.lang.Class<android.gesture.GestureLibraries>;
			public static fromFile(param0: java.io.File): android.gesture.GestureLibrary;
			public static fromRawResource(param0: android.content.Context, param1: number): android.gesture.GestureLibrary;
			public static fromPrivateFile(param0: android.content.Context, param1: string): android.gesture.GestureLibrary;
			public static fromFile(param0: string): android.gesture.GestureLibrary;
		}
	}
}

declare module android {
	export module gesture {
		export abstract class GestureLibrary extends java.lang.Object {
			public static class: java.lang.Class<android.gesture.GestureLibrary>;
			public mStore: android.gesture.GestureStore;
			public isReadOnly(): boolean;
			public addGesture(param0: string, param1: android.gesture.Gesture): void;
			public getGestureEntries(): java.util.Set<string>;
			public removeEntry(param0: string): void;
			public save(): boolean;
			public setSequenceType(param0: number): void;
			public constructor();
			public getSequenceType(): number;
			public load(): boolean;
			public getGestures(param0: string): java.util.ArrayList<android.gesture.Gesture>;
			public removeGesture(param0: string, param1: android.gesture.Gesture): void;
			public recognize(param0: android.gesture.Gesture): java.util.ArrayList<android.gesture.Prediction>;
			public setOrientationStyle(param0: number): void;
			public getOrientationStyle(): number;
		}
	}
}

declare module android {
	export module gesture {
		export class GestureOverlayView extends android.widget.FrameLayout {
			public static class: java.lang.Class<android.gesture.GestureOverlayView>;
			public static GESTURE_STROKE_TYPE_SINGLE: number;
			public static GESTURE_STROKE_TYPE_MULTIPLE: number;
			public static ORIENTATION_HORIZONTAL: number;
			public static ORIENTATION_VERTICAL: number;
			public getGestureStrokeLengthThreshold(): number;
			public setGestureStrokeLengthThreshold(param0: number): void;
			public removeAllOnGesturingListeners(): void;
			public addOnGestureListener(param0: android.gesture.GestureOverlayView.OnGestureListener): void;
			public cancelGesture(): void;
			public focusableViewAvailable(param0: android.view.View): void;
			public createContextMenu(param0: android.view.ContextMenu): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public addView(param0: android.view.View, param1: number, param2: number): void;
			public focusSearch(param0: android.view.View, param1: number): android.view.View;
			public requestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public setGestureStrokeAngleThreshold(param0: number): void;
			public showContextMenuForChild(param0: android.view.View): boolean;
			public bringChildToFront(param0: android.view.View): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public isGestureVisible(): boolean;
			public draw(param0: android.graphics.Canvas): void;
			public onDetachedFromWindow(): void;
			public sendAccessibilityEvent(param0: number): void;
			public requestTransparentRegion(param0: android.view.View): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public getParentForAccessibility(): android.view.ViewParent;
			public setGestureColor(param0: number): void;
			public getParent(): android.view.ViewParent;
			public getGestureStrokeSquarenessTreshold(): number;
			public getFadeOffset(): number;
			public setGestureStrokeWidth(param0: number): void;
			public getGesturePath(): android.graphics.Path;
			public setEventsInterceptionEnabled(param0: boolean): void;
			public addOnGesturePerformedListener(param0: android.gesture.GestureOverlayView.OnGesturePerformedListener): void;
			public startActionModeForChild(param0: android.view.View, param1: android.view.ActionMode.Callback): android.view.ActionMode;
			public addOnGesturingListener(param0: android.gesture.GestureOverlayView.OnGesturingListener): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public getCurrentStroke(): java.util.ArrayList<android.gesture.GesturePoint>;
			public setFadeEnabled(param0: boolean): void;
			public dispatchTouchEvent(param0: android.view.MotionEvent): boolean;
			public setGestureStrokeType(param0: number): void;
			public isEventsInterceptionEnabled(): boolean;
			public setGestureVisible(param0: boolean): void;
			public requestChildFocus(param0: android.view.View, param1: android.view.View): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public requestChildRectangleOnScreen(param0: android.view.View, param1: android.graphics.Rect, param2: boolean): boolean;
			public setGestureStrokeSquarenessTreshold(param0: number): void;
			public focusSearch(param0: number): android.view.View;
			public removeOnGestureListener(param0: android.gesture.GestureOverlayView.OnGestureListener): void;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public recomputeViewAttributes(param0: android.view.View): void;
			public isLayoutRequested(): boolean;
			public getGestureStrokeWidth(): number;
			public invalidateChild(param0: android.view.View, param1: android.graphics.Rect): void;
			public removeOnGesturingListener(param0: android.gesture.GestureOverlayView.OnGesturingListener): void;
			public setUncertainGestureColor(param0: number): void;
			public invalidateChildInParent(param0: native.Array<number>, param1: android.graphics.Rect): android.view.ViewParent;
			public getUncertainGestureColor(): number;
			public getOrientation(): number;
			public getGestureStrokeAngleThreshold(): number;
			public cancelClearAnimation(): void;
			public requestLayout(): void;
			public getGestureColor(): number;
			public childDrawableStateChanged(param0: android.view.View): void;
			public addView(param0: android.view.View): void;
			public removeView(param0: android.view.View): void;
			public getGesturePath(param0: android.graphics.Path): android.graphics.Path;
			public clearChildFocus(param0: android.view.View): void;
			public updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public getGestureStrokeType(): number;
			public isFadeEnabled(): boolean;
			public removeOnGesturePerformedListener(param0: android.gesture.GestureOverlayView.OnGesturePerformedListener): void;
			public removeAllOnGestureListeners(): void;
			public requestDisallowInterceptTouchEvent(param0: boolean): void;
			public getChildVisibleRect(param0: android.view.View, param1: android.graphics.Rect, param2: android.graphics.Point): boolean;
			public clear(param0: boolean): void;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public setGesture(param0: android.gesture.Gesture): void;
			public constructor(param0: android.content.Context);
			public removeAllOnGesturePerformedListeners(): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public addView(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams): void;
			public setFadeOffset(param0: number): void;
			public isGesturing(): boolean;
			public setOrientation(param0: number): void;
			public getGesture(): android.gesture.Gesture;
			public requestFitSystemWindows(): void;
			public addView(param0: android.view.View, param1: number): void;
		}
		export module GestureOverlayView {
			export class OnGestureListener extends java.lang.Object {
				public static class: java.lang.Class<android.gesture.GestureOverlayView.OnGestureListener>;
				/**
				 * Constructs a new instance of the android.gesture.GestureOverlayView$OnGestureListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onGestureStarted(param0: android.gesture.GestureOverlayView, param1: android.view.MotionEvent): void;
					onGesture(param0: android.gesture.GestureOverlayView, param1: android.view.MotionEvent): void;
					onGestureEnded(param0: android.gesture.GestureOverlayView, param1: android.view.MotionEvent): void;
					onGestureCancelled(param0: android.gesture.GestureOverlayView, param1: android.view.MotionEvent): void;
				});
				public constructor();
				public onGestureEnded(param0: android.gesture.GestureOverlayView, param1: android.view.MotionEvent): void;
				public onGesture(param0: android.gesture.GestureOverlayView, param1: android.view.MotionEvent): void;
				public onGestureStarted(param0: android.gesture.GestureOverlayView, param1: android.view.MotionEvent): void;
				public onGestureCancelled(param0: android.gesture.GestureOverlayView, param1: android.view.MotionEvent): void;
			}
			export class OnGesturePerformedListener extends java.lang.Object {
				public static class: java.lang.Class<android.gesture.GestureOverlayView.OnGesturePerformedListener>;
				/**
				 * Constructs a new instance of the android.gesture.GestureOverlayView$OnGesturePerformedListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onGesturePerformed(param0: android.gesture.GestureOverlayView, param1: android.gesture.Gesture): void;
				});
				public constructor();
				public onGesturePerformed(param0: android.gesture.GestureOverlayView, param1: android.gesture.Gesture): void;
			}
			export class OnGesturingListener extends java.lang.Object {
				public static class: java.lang.Class<android.gesture.GestureOverlayView.OnGesturingListener>;
				/**
				 * Constructs a new instance of the android.gesture.GestureOverlayView$OnGesturingListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onGesturingStarted(param0: android.gesture.GestureOverlayView): void;
					onGesturingEnded(param0: android.gesture.GestureOverlayView): void;
				});
				public constructor();
				public onGesturingStarted(param0: android.gesture.GestureOverlayView): void;
				public onGesturingEnded(param0: android.gesture.GestureOverlayView): void;
			}
		}
	}
}

declare module android {
	export module gesture {
		export class GesturePoint extends java.lang.Object {
			public static class: java.lang.Class<android.gesture.GesturePoint>;
			public x: number;
			public y: number;
			public timestamp: number;
			public constructor(param0: number, param1: number, param2: number);
			public clone(): any;
		}
	}
}

declare module android {
	export module gesture {
		export class GestureStore extends java.lang.Object {
			public static class: java.lang.Class<android.gesture.GestureStore>;
			public static SEQUENCE_INVARIANT: number;
			public static SEQUENCE_SENSITIVE: number;
			public static ORIENTATION_INVARIANT: number;
			public static ORIENTATION_SENSITIVE: number;
			public addGesture(param0: string, param1: android.gesture.Gesture): void;
			public hasChanged(): boolean;
			public save(param0: java.io.OutputStream): void;
			public getGestureEntries(): java.util.Set<string>;
			public removeEntry(param0: string): void;
			public setSequenceType(param0: number): void;
			public load(param0: java.io.InputStream, param1: boolean): void;
			public constructor();
			public getSequenceType(): number;
			public save(param0: java.io.OutputStream, param1: boolean): void;
			public getGestures(param0: string): java.util.ArrayList<android.gesture.Gesture>;
			public removeGesture(param0: string, param1: android.gesture.Gesture): void;
			public recognize(param0: android.gesture.Gesture): java.util.ArrayList<android.gesture.Prediction>;
			public setOrientationStyle(param0: number): void;
			public getOrientationStyle(): number;
			public load(param0: java.io.InputStream): void;
		}
	}
}

declare module android {
	export module gesture {
		export class GestureStroke extends java.lang.Object {
			public static class: java.lang.Class<android.gesture.GestureStroke>;
			public boundingBox: android.graphics.RectF;
			public length: number;
			public points: native.Array<number>;
			public clearPath(): void;
			public clone(): any;
			public getPath(): android.graphics.Path;
			public toPath(param0: number, param1: number, param2: number): android.graphics.Path;
			public computeOrientedBoundingBox(): android.gesture.OrientedBoundingBox;
			public constructor(param0: java.util.ArrayList<android.gesture.GesturePoint>);
		}
	}
}

declare module android {
	export module gesture {
		export class GestureUtils extends java.lang.Object {
			public static class: java.lang.Class<android.gesture.GestureUtils>;
			public static spatialSampling(param0: android.gesture.Gesture, param1: number): native.Array<number>;
			public static computeOrientedBoundingBox(param0: native.Array<number>): android.gesture.OrientedBoundingBox;
			public static computeOrientedBoundingBox(param0: java.util.ArrayList<android.gesture.GesturePoint>): android.gesture.OrientedBoundingBox;
			public static spatialSampling(param0: android.gesture.Gesture, param1: number, param2: boolean): native.Array<number>;
			public static temporalSampling(param0: android.gesture.GestureStroke, param1: number): native.Array<number>;
		}
	}
}

declare module android {
	export module gesture {
		export class OrientedBoundingBox extends java.lang.Object {
			public static class: java.lang.Class<android.gesture.OrientedBoundingBox>;
			public squareness: number;
			public width: number;
			public height: number;
			public orientation: number;
			public centerX: number;
			public centerY: number;
		}
	}
}

declare module android {
	export module gesture {
		export class Prediction extends java.lang.Object {
			public static class: java.lang.Class<android.gesture.Prediction>;
			public name: string;
			public score: number;
			public toString(): string;
		}
	}
}

declare module android {
	export module graphics {
		export class AvoidXfermode extends android.graphics.Xfermode {
			public static class: java.lang.Class<android.graphics.AvoidXfermode>;
			public constructor(param0: number, param1: number, param2: android.graphics.AvoidXfermode.Mode);
			public constructor();
		}
		export module AvoidXfermode {
			export class Mode {
				public static class: java.lang.Class<android.graphics.AvoidXfermode.Mode>;
				public static AVOID: android.graphics.AvoidXfermode.Mode;
				public static TARGET: android.graphics.AvoidXfermode.Mode;
				public static valueOf(param0: string): android.graphics.AvoidXfermode.Mode;
				public static values(): native.Array<android.graphics.AvoidXfermode.Mode>;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			}
		}
	}
}

declare module android {
	export module graphics {
		export class Bitmap extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.graphics.Bitmap>;
			public static DENSITY_NONE: number;
			public static CREATOR: android.os.Parcelable.Creator<android.graphics.Bitmap>;
			public setDensity(param0: number): void;
			public copyPixelsFromBuffer(param0: java.nio.Buffer): void;
			public getConfig(): android.graphics.Bitmap.Config;
			public getScaledHeight(param0: android.util.DisplayMetrics): number;
			public hasMipMap(): boolean;
			public getWidth(): number;
			public getScaledHeight(param0: android.graphics.Canvas): number;
			public getPixels(param0: native.Array<number>, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number): void;
			public static createBitmap(param0: android.graphics.Bitmap, param1: number, param2: number, param3: number, param4: number): android.graphics.Bitmap;
			public getNinePatchChunk(): native.Array<number>;
			public hasAlpha(): boolean;
			public getScaledWidth(param0: android.util.DisplayMetrics): number;
			public getRowBytes(): number;
			public static createBitmap(param0: android.graphics.Bitmap, param1: number, param2: number, param3: number, param4: number, param5: android.graphics.Matrix, param6: boolean): android.graphics.Bitmap;
			public copyPixelsToBuffer(param0: java.nio.Buffer): void;
			public static createBitmap(param0: android.util.DisplayMetrics, param1: native.Array<number>, param2: number, param3: number, param4: number, param5: number, param6: android.graphics.Bitmap.Config): android.graphics.Bitmap;
			public recycle(): void;
			public getScaledWidth(param0: android.graphics.Canvas): number;
			public eraseColor(param0: number): void;
			public getPixel(param0: number, param1: number): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public static createBitmap(param0: native.Array<number>, param1: number, param2: number, param3: number, param4: number, param5: android.graphics.Bitmap.Config): android.graphics.Bitmap;
			public getGenerationId(): number;
			public static createBitmap(param0: native.Array<number>, param1: number, param2: number, param3: android.graphics.Bitmap.Config): android.graphics.Bitmap;
			public setHasMipMap(param0: boolean): void;
			public setHasAlpha(param0: boolean): void;
			public isMutable(): boolean;
			public getHeight(): number;
			public getByteCount(): number;
			public isRecycled(): boolean;
			public extractAlpha(): android.graphics.Bitmap;
			public isPremultiplied(): boolean;
			public static createBitmap(param0: android.graphics.Bitmap): android.graphics.Bitmap;
			public sameAs(param0: android.graphics.Bitmap): boolean;
			public extractAlpha(param0: android.graphics.Paint, param1: native.Array<number>): android.graphics.Bitmap;
			public static createBitmap(param0: android.util.DisplayMetrics, param1: number, param2: number, param3: android.graphics.Bitmap.Config): android.graphics.Bitmap;
			public static createScaledBitmap(param0: android.graphics.Bitmap, param1: number, param2: number, param3: boolean): android.graphics.Bitmap;
			public compress(param0: android.graphics.Bitmap.CompressFormat, param1: number, param2: java.io.OutputStream): boolean;
			public getDensity(): number;
			public static createBitmap(param0: android.util.DisplayMetrics, param1: native.Array<number>, param2: number, param3: number, param4: android.graphics.Bitmap.Config): android.graphics.Bitmap;
			public describeContents(): number;
			public static createBitmap(param0: number, param1: number, param2: android.graphics.Bitmap.Config): android.graphics.Bitmap;
			public getScaledWidth(param0: number): number;
			public getScaledHeight(param0: number): number;
			public setPixel(param0: number, param1: number, param2: number): void;
			public copy(param0: android.graphics.Bitmap.Config, param1: boolean): android.graphics.Bitmap;
			public setPixels(param0: native.Array<number>, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number): void;
			public prepareToDraw(): void;
		}
		export module Bitmap {
			export class CompressFormat {
				public static class: java.lang.Class<android.graphics.Bitmap.CompressFormat>;
				public static JPEG: android.graphics.Bitmap.CompressFormat;
				public static PNG: android.graphics.Bitmap.CompressFormat;
				public static WEBP: android.graphics.Bitmap.CompressFormat;
				public static valueOf(param0: string): android.graphics.Bitmap.CompressFormat;
				public static values(): native.Array<android.graphics.Bitmap.CompressFormat>;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			}
			export class Config {
				public static class: java.lang.Class<android.graphics.Bitmap.Config>;
				public static ALPHA_8: android.graphics.Bitmap.Config;
				public static ARGB_4444: android.graphics.Bitmap.Config;
				public static ARGB_8888: android.graphics.Bitmap.Config;
				public static RGB_565: android.graphics.Bitmap.Config;
				public static values(): native.Array<android.graphics.Bitmap.Config>;
				public static valueOf(param0: string): android.graphics.Bitmap.Config;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			}
		}
	}
}

declare module android {
	export module graphics {
		export class BitmapFactory extends java.lang.Object {
			public static class: java.lang.Class<android.graphics.BitmapFactory>;
			public static decodeByteArray(param0: native.Array<number>, param1: number, param2: number, param3: android.graphics.BitmapFactory.Options): android.graphics.Bitmap;
			public static decodeResource(param0: android.content.res.Resources, param1: number, param2: android.graphics.BitmapFactory.Options): android.graphics.Bitmap;
			public static decodeStream(param0: java.io.InputStream, param1: android.graphics.Rect, param2: android.graphics.BitmapFactory.Options): android.graphics.Bitmap;
			public static decodeFile(param0: string): android.graphics.Bitmap;
			public static decodeByteArray(param0: native.Array<number>, param1: number, param2: number): android.graphics.Bitmap;
			public static decodeResourceStream(param0: android.content.res.Resources, param1: android.util.TypedValue, param2: java.io.InputStream, param3: android.graphics.Rect, param4: android.graphics.BitmapFactory.Options): android.graphics.Bitmap;
			public static decodeResource(param0: android.content.res.Resources, param1: number): android.graphics.Bitmap;
			public static decodeFileDescriptor(param0: java.io.FileDescriptor): android.graphics.Bitmap;
			public constructor();
			public static decodeStream(param0: java.io.InputStream): android.graphics.Bitmap;
			public static decodeFileDescriptor(param0: java.io.FileDescriptor, param1: android.graphics.Rect, param2: android.graphics.BitmapFactory.Options): android.graphics.Bitmap;
			public static decodeFile(param0: string, param1: android.graphics.BitmapFactory.Options): android.graphics.Bitmap;
		}
		export module BitmapFactory {
			export class Options extends java.lang.Object {
				public static class: java.lang.Class<android.graphics.BitmapFactory.Options>;
				public inBitmap: android.graphics.Bitmap;
				public inMutable: boolean;
				public inJustDecodeBounds: boolean;
				public inSampleSize: number;
				public inPreferredConfig: android.graphics.Bitmap.Config;
				public inDither: boolean;
				public inDensity: number;
				public inTargetDensity: number;
				public inScreenDensity: number;
				public inScaled: boolean;
				public inPurgeable: boolean;
				public inInputShareable: boolean;
				public inPreferQualityOverSpeed: boolean;
				public outWidth: number;
				public outHeight: number;
				public outMimeType: string;
				public inTempStorage: native.Array<number>;
				public mCancel: boolean;
				public requestCancelDecode(): void;
				public constructor();
			}
		}
	}
}

declare module android {
	export module graphics {
		export class BitmapRegionDecoder extends java.lang.Object {
			public static class: java.lang.Class<android.graphics.BitmapRegionDecoder>;
			public static newInstance(param0: java.io.InputStream, param1: boolean): android.graphics.BitmapRegionDecoder;
			public getHeight(): number;
			public isRecycled(): boolean;
			public static newInstance(param0: native.Array<number>, param1: number, param2: number, param3: boolean): android.graphics.BitmapRegionDecoder;
			public recycle(): void;
			public static newInstance(param0: string, param1: boolean): android.graphics.BitmapRegionDecoder;
			public getWidth(): number;
			public decodeRegion(param0: android.graphics.Rect, param1: android.graphics.BitmapFactory.Options): android.graphics.Bitmap;
			public finalize(): void;
			public static newInstance(param0: java.io.FileDescriptor, param1: boolean): android.graphics.BitmapRegionDecoder;
		}
	}
}

declare module android {
	export module graphics {
		export class BitmapShader extends android.graphics.Shader {
			public static class: java.lang.Class<android.graphics.BitmapShader>;
			public constructor();
			public constructor(param0: android.graphics.Bitmap, param1: android.graphics.Shader.TileMode, param2: android.graphics.Shader.TileMode);
		}
	}
}

declare module android {
	export module graphics {
		export class BlurMaskFilter extends android.graphics.MaskFilter {
			public static class: java.lang.Class<android.graphics.BlurMaskFilter>;
			public constructor();
			public constructor(param0: number, param1: android.graphics.BlurMaskFilter.Blur);
		}
		export module BlurMaskFilter {
			export class Blur {
				public static class: java.lang.Class<android.graphics.BlurMaskFilter.Blur>;
				public static INNER: android.graphics.BlurMaskFilter.Blur;
				public static NORMAL: android.graphics.BlurMaskFilter.Blur;
				public static OUTER: android.graphics.BlurMaskFilter.Blur;
				public static SOLID: android.graphics.BlurMaskFilter.Blur;
				public static values(): native.Array<android.graphics.BlurMaskFilter.Blur>;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
				public static valueOf(param0: string): android.graphics.BlurMaskFilter.Blur;
			}
		}
	}
}

declare module android {
	export module graphics {
		export class Camera extends java.lang.Object {
			public static class: java.lang.Class<android.graphics.Camera>;
			public setLocation(param0: number, param1: number, param2: number): void;
			public applyToCanvas(param0: android.graphics.Canvas): void;
			public save(): void;
			public restore(): void;
			public getLocationZ(): number;
			public constructor();
			public rotate(param0: number, param1: number, param2: number): void;
			public dotWithNormal(param0: number, param1: number, param2: number): number;
			public getLocationX(): number;
			public rotateY(param0: number): void;
			public translate(param0: number, param1: number, param2: number): void;
			public rotateX(param0: number): void;
			public getMatrix(param0: android.graphics.Matrix): void;
			public rotateZ(param0: number): void;
			public getLocationY(): number;
			public finalize(): void;
		}
	}
}

declare module android {
	export module graphics {
		export class Canvas extends java.lang.Object {
			public static class: java.lang.Class<android.graphics.Canvas>;
			public static MATRIX_SAVE_FLAG: number;
			public static CLIP_SAVE_FLAG: number;
			public static HAS_ALPHA_LAYER_SAVE_FLAG: number;
			public static FULL_COLOR_LAYER_SAVE_FLAG: number;
			public static CLIP_TO_LAYER_SAVE_FLAG: number;
			public static ALL_SAVE_FLAG: number;
			public rotate(param0: number): void;
			public isHardwareAccelerated(): boolean;
			public drawRoundRect(param0: android.graphics.RectF, param1: number, param2: number, param3: android.graphics.Paint): void;
			public drawARGB(param0: number, param1: number, param2: number, param3: number): void;
			public getWidth(): number;
			public restore(): void;
			/** @deprecated */
			public drawPosText(param0: native.Array<string>, param1: number, param2: number, param3: native.Array<number>, param4: android.graphics.Paint): void;
			public clipRegion(param0: android.graphics.Region, param1: android.graphics.Region.Op): boolean;
			public drawColor(param0: number, param1: android.graphics.PorterDuff.Mode): void;
			public drawBitmap(param0: android.graphics.Bitmap, param1: android.graphics.Matrix, param2: android.graphics.Paint): void;
			public drawBitmapMesh(param0: android.graphics.Bitmap, param1: number, param2: number, param3: native.Array<number>, param4: number, param5: native.Array<number>, param6: number, param7: android.graphics.Paint): void;
			public drawPoint(param0: number, param1: number, param2: android.graphics.Paint): void;
			public drawText(param0: string, param1: number, param2: number, param3: number, param4: number, param5: android.graphics.Paint): void;
			public saveLayer(param0: number, param1: number, param2: number, param3: number, param4: android.graphics.Paint, param5: number): number;
			public drawPoints(param0: native.Array<number>, param1: android.graphics.Paint): void;
			public clipPath(param0: android.graphics.Path): boolean;
			public getSaveCount(): number;
			public setMatrix(param0: android.graphics.Matrix): void;
			public getClipBounds(param0: android.graphics.Rect): boolean;
			/** @deprecated */
			public drawPosText(param0: string, param1: native.Array<number>, param2: android.graphics.Paint): void;
			public clipRegion(param0: android.graphics.Region): boolean;
			public drawColor(param0: number): void;
			/** @deprecated */
			public getMatrix(param0: android.graphics.Matrix): void;
			public saveLayerAlpha(param0: android.graphics.RectF, param1: number, param2: number): number;
			public drawOval(param0: android.graphics.RectF, param1: android.graphics.Paint): void;
			public drawPaint(param0: android.graphics.Paint): void;
			public constructor(param0: android.graphics.Bitmap);
			public drawText(param0: native.Array<string>, param1: number, param2: number, param3: number, param4: number, param5: android.graphics.Paint): void;
			public skew(param0: number, param1: number): void;
			public getHeight(): number;
			public drawLines(param0: native.Array<number>, param1: number, param2: number, param3: android.graphics.Paint): void;
			public drawRGB(param0: number, param1: number, param2: number): void;
			public drawArc(param0: android.graphics.RectF, param1: number, param2: number, param3: boolean, param4: android.graphics.Paint): void;
			public constructor();
			public clipRect(param0: number, param1: number, param2: number, param3: number): boolean;
			public setBitmap(param0: android.graphics.Bitmap): void;
			public clipRect(param0: number, param1: number, param2: number, param3: number, param4: android.graphics.Region.Op): boolean;
			public drawTextOnPath(param0: native.Array<string>, param1: number, param2: number, param3: android.graphics.Path, param4: number, param5: number, param6: android.graphics.Paint): void;
			public drawBitmap(param0: android.graphics.Bitmap, param1: android.graphics.Rect, param2: android.graphics.RectF, param3: android.graphics.Paint): void;
			public drawRect(param0: number, param1: number, param2: number, param3: number, param4: android.graphics.Paint): void;
			public drawVertices(param0: android.graphics.Canvas.VertexMode, param1: number, param2: native.Array<number>, param3: number, param4: native.Array<number>, param5: number, param6: native.Array<number>, param7: number, param8: native.Array<number>, param9: number, param10: number, param11: android.graphics.Paint): void;
			public scale(param0: number, param1: number): void;
			public getDensity(): number;
			public save(param0: number): number;
			public clipRect(param0: android.graphics.Rect): boolean;
			public quickReject(param0: number, param1: number, param2: number, param3: number, param4: android.graphics.Canvas.EdgeType): boolean;
			public restoreToCount(param0: number): void;
			public quickReject(param0: android.graphics.RectF, param1: android.graphics.Canvas.EdgeType): boolean;
			public saveLayer(param0: android.graphics.RectF, param1: android.graphics.Paint, param2: number): number;
			public scale(param0: number, param1: number, param2: number, param3: number): void;
			public setDensity(param0: number): void;
			public rotate(param0: number, param1: number, param2: number): void;
			public clipRect(param0: android.graphics.Rect, param1: android.graphics.Region.Op): boolean;
			public drawLine(param0: number, param1: number, param2: number, param3: number, param4: android.graphics.Paint): void;
			public clipRect(param0: android.graphics.RectF): boolean;
			public drawTextOnPath(param0: string, param1: android.graphics.Path, param2: number, param3: number, param4: android.graphics.Paint): void;
			public drawPicture(param0: android.graphics.Picture, param1: android.graphics.RectF): void;
			public translate(param0: number, param1: number): void;
			public drawCircle(param0: number, param1: number, param2: number, param3: android.graphics.Paint): void;
			public getMaximumBitmapHeight(): number;
			public save(): number;
			public getDrawFilter(): android.graphics.DrawFilter;
			public isOpaque(): boolean;
			public drawLines(param0: native.Array<number>, param1: android.graphics.Paint): void;
			public drawBitmap(param0: android.graphics.Bitmap, param1: android.graphics.Rect, param2: android.graphics.Rect, param3: android.graphics.Paint): void;
			public concat(param0: android.graphics.Matrix): void;
			/** @deprecated */
			public getMatrix(): android.graphics.Matrix;
			public clipRect(param0: android.graphics.RectF, param1: android.graphics.Region.Op): boolean;
			public getClipBounds(): android.graphics.Rect;
			public drawRect(param0: android.graphics.Rect, param1: android.graphics.Paint): void;
			public drawBitmap(param0: android.graphics.Bitmap, param1: number, param2: number, param3: android.graphics.Paint): void;
			public drawBitmap(param0: native.Array<number>, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: boolean, param8: android.graphics.Paint): void;
			public drawPicture(param0: android.graphics.Picture, param1: android.graphics.Rect): void;
			public saveLayerAlpha(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): number;
			public drawText(param0: string, param1: number, param2: number, param3: android.graphics.Paint): void;
			public drawPicture(param0: android.graphics.Picture): void;
			public quickReject(param0: android.graphics.Path, param1: android.graphics.Canvas.EdgeType): boolean;
			public drawPoints(param0: native.Array<number>, param1: number, param2: number, param3: android.graphics.Paint): void;
			public getMaximumBitmapWidth(): number;
			public drawPath(param0: android.graphics.Path, param1: android.graphics.Paint): void;
			public drawRect(param0: android.graphics.RectF, param1: android.graphics.Paint): void;
			public setDrawFilter(param0: android.graphics.DrawFilter): void;
			public clipPath(param0: android.graphics.Path, param1: android.graphics.Region.Op): boolean;
		}
		export module Canvas {
			export class EdgeType {
				public static class: java.lang.Class<android.graphics.Canvas.EdgeType>;
				public static AA: android.graphics.Canvas.EdgeType;
				public static BW: android.graphics.Canvas.EdgeType;
				public static values(): native.Array<android.graphics.Canvas.EdgeType>;
				public static valueOf(param0: string): android.graphics.Canvas.EdgeType;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			}
			export class VertexMode {
				public static class: java.lang.Class<android.graphics.Canvas.VertexMode>;
				public static TRIANGLES: android.graphics.Canvas.VertexMode;
				public static TRIANGLE_FAN: android.graphics.Canvas.VertexMode;
				public static TRIANGLE_STRIP: android.graphics.Canvas.VertexMode;
				public static values(): native.Array<android.graphics.Canvas.VertexMode>;
				public static valueOf(param0: string): android.graphics.Canvas.VertexMode;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			}
		}
	}
}

declare module android {
	export module graphics {
		export class Color extends java.lang.Object {
			public static class: java.lang.Class<android.graphics.Color>;
			public static BLACK: number;
			public static DKGRAY: number;
			public static GRAY: number;
			public static LTGRAY: number;
			public static WHITE: number;
			public static RED: number;
			public static GREEN: number;
			public static BLUE: number;
			public static YELLOW: number;
			public static CYAN: number;
			public static MAGENTA: number;
			public static TRANSPARENT: number;
			public static alpha(param0: number): number;
			public static blue(param0: number): number;
			public static parseColor(param0: string): number;
			public static colorToHSV(param0: number, param1: native.Array<number>): void;
			public static HSVToColor(param0: number, param1: native.Array<number>): number;
			public static green(param0: number): number;
			public static rgb(param0: number, param1: number, param2: number): number;
			public static HSVToColor(param0: native.Array<number>): number;
			public static RGBToHSV(param0: number, param1: number, param2: number, param3: native.Array<number>): void;
			public static argb(param0: number, param1: number, param2: number, param3: number): number;
			public constructor();
			public static red(param0: number): number;
		}
	}
}

declare module android {
	export module graphics {
		export class ColorFilter extends java.lang.Object {
			public static class: java.lang.Class<android.graphics.ColorFilter>;
			public constructor();
			public finalize(): void;
		}
	}
}

declare module android {
	export module graphics {
		export class ColorMatrix extends java.lang.Object {
			public static class: java.lang.Class<android.graphics.ColorMatrix>;
			public setConcat(param0: android.graphics.ColorMatrix, param1: android.graphics.ColorMatrix): void;
			public constructor();
			public constructor(param0: native.Array<number>);
			public setScale(param0: number, param1: number, param2: number, param3: number): void;
			public getArray(): native.Array<number>;
			public setSaturation(param0: number): void;
			public preConcat(param0: android.graphics.ColorMatrix): void;
			public set(param0: native.Array<number>): void;
			public setRGB2YUV(): void;
			public constructor(param0: android.graphics.ColorMatrix);
			public setRotate(param0: number, param1: number): void;
			public reset(): void;
			public set(param0: android.graphics.ColorMatrix): void;
			public postConcat(param0: android.graphics.ColorMatrix): void;
			public setYUV2RGB(): void;
		}
	}
}

declare module android {
	export module graphics {
		export class ColorMatrixColorFilter extends android.graphics.ColorFilter {
			public static class: java.lang.Class<android.graphics.ColorMatrixColorFilter>;
			public constructor(param0: android.graphics.ColorMatrix);
			public constructor();
			public constructor(param0: native.Array<number>);
		}
	}
}

declare module android {
	export module graphics {
		export class ComposePathEffect extends android.graphics.PathEffect {
			public static class: java.lang.Class<android.graphics.ComposePathEffect>;
			public constructor();
			public constructor(param0: android.graphics.PathEffect, param1: android.graphics.PathEffect);
		}
	}
}

declare module android {
	export module graphics {
		export class ComposeShader extends android.graphics.Shader {
			public static class: java.lang.Class<android.graphics.ComposeShader>;
			public constructor(param0: android.graphics.Shader, param1: android.graphics.Shader, param2: android.graphics.Xfermode);
			public constructor(param0: android.graphics.Shader, param1: android.graphics.Shader, param2: android.graphics.PorterDuff.Mode);
			public constructor();
		}
	}
}

declare module android {
	export module graphics {
		export class CornerPathEffect extends android.graphics.PathEffect {
			public static class: java.lang.Class<android.graphics.CornerPathEffect>;
			public constructor(param0: number);
			public constructor();
		}
	}
}

declare module android {
	export module graphics {
		export class DashPathEffect extends android.graphics.PathEffect {
			public static class: java.lang.Class<android.graphics.DashPathEffect>;
			public constructor();
			public constructor(param0: native.Array<number>, param1: number);
		}
	}
}

declare module android {
	export module graphics {
		export class DiscretePathEffect extends android.graphics.PathEffect {
			public static class: java.lang.Class<android.graphics.DiscretePathEffect>;
			public constructor();
			public constructor(param0: number, param1: number);
		}
	}
}

declare module android {
	export module graphics {
		export class DrawFilter extends java.lang.Object {
			public static class: java.lang.Class<android.graphics.DrawFilter>;
			public constructor();
			public finalize(): void;
		}
	}
}

declare module android {
	export module graphics {
		export class EmbossMaskFilter extends android.graphics.MaskFilter {
			public static class: java.lang.Class<android.graphics.EmbossMaskFilter>;
			public constructor(param0: native.Array<number>, param1: number, param2: number, param3: number);
			public constructor();
		}
	}
}

declare module android {
	export module graphics {
		export class ImageFormat extends java.lang.Object {
			public static class: java.lang.Class<android.graphics.ImageFormat>;
			public static UNKNOWN: number;
			public static RGB_565: number;
			public static YV12: number;
			public static NV16: number;
			public static NV21: number;
			public static YUY2: number;
			public static JPEG: number;
			public static getBitsPerPixel(param0: number): number;
			public constructor();
		}
	}
}

declare module android {
	export module graphics {
		export class Interpolator extends java.lang.Object {
			public static class: java.lang.Class<android.graphics.Interpolator>;
			public getKeyFrameCount(): number;
			public setKeyFrame(param0: number, param1: number, param2: native.Array<number>, param3: native.Array<number>): void;
			public reset(param0: number): void;
			public setRepeatMirror(param0: number, param1: boolean): void;
			public reset(param0: number, param1: number): void;
			public getValueCount(): number;
			public constructor(param0: number);
			public setKeyFrame(param0: number, param1: number, param2: native.Array<number>): void;
			public timeToValues(param0: number, param1: native.Array<number>): android.graphics.Interpolator.Result;
			public timeToValues(param0: native.Array<number>): android.graphics.Interpolator.Result;
			public constructor(param0: number, param1: number);
			public finalize(): void;
		}
		export module Interpolator {
			export class Result {
				public static class: java.lang.Class<android.graphics.Interpolator.Result>;
				public static FREEZE_END: android.graphics.Interpolator.Result;
				public static FREEZE_START: android.graphics.Interpolator.Result;
				public static NORMAL: android.graphics.Interpolator.Result;
				public static values(): native.Array<android.graphics.Interpolator.Result>;
				public static valueOf(param0: string): android.graphics.Interpolator.Result;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			}
		}
	}
}

declare module android {
	export module graphics {
		export class LayerRasterizer extends android.graphics.Rasterizer {
			public static class: java.lang.Class<android.graphics.LayerRasterizer>;
			public constructor();
			public addLayer(param0: android.graphics.Paint): void;
			public addLayer(param0: android.graphics.Paint, param1: number, param2: number): void;
		}
	}
}

declare module android {
	export module graphics {
		export class LightingColorFilter extends android.graphics.ColorFilter {
			public static class: java.lang.Class<android.graphics.LightingColorFilter>;
			public constructor();
			public constructor(param0: number, param1: number);
		}
	}
}

declare module android {
	export module graphics {
		export class LinearGradient extends android.graphics.Shader {
			public static class: java.lang.Class<android.graphics.LinearGradient>;
			public constructor(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: android.graphics.Shader.TileMode);
			public constructor();
			public constructor(param0: number, param1: number, param2: number, param3: number, param4: native.Array<number>, param5: native.Array<number>, param6: android.graphics.Shader.TileMode);
		}
	}
}

declare module android {
	export module graphics {
		export class MaskFilter extends java.lang.Object {
			public static class: java.lang.Class<android.graphics.MaskFilter>;
			public constructor();
			public finalize(): void;
		}
	}
}

declare module android {
	export module graphics {
		export class Matrix extends java.lang.Object {
			public static class: java.lang.Class<android.graphics.Matrix>;
			public static MSCALE_X: number;
			public static MSKEW_X: number;
			public static MTRANS_X: number;
			public static MSKEW_Y: number;
			public static MSCALE_Y: number;
			public static MTRANS_Y: number;
			public static MPERSP_0: number;
			public static MPERSP_1: number;
			public static MPERSP_2: number;
			public setRotate(param0: number, param1: number, param2: number): void;
			public getValues(param0: native.Array<number>): void;
			public setScale(param0: number, param1: number): void;
			public mapRect(param0: android.graphics.RectF): boolean;
			public preScale(param0: number, param1: number, param2: number, param3: number): boolean;
			public setScale(param0: number, param1: number, param2: number, param3: number): void;
			public setConcat(param0: android.graphics.Matrix, param1: android.graphics.Matrix): boolean;
			public postSkew(param0: number, param1: number): boolean;
			public setRotate(param0: number): void;
			public postScale(param0: number, param1: number): boolean;
			public preSkew(param0: number, param1: number, param2: number, param3: number): boolean;
			public postScale(param0: number, param1: number, param2: number, param3: number): boolean;
			public mapPoints(param0: native.Array<number>, param1: native.Array<number>): void;
			public preScale(param0: number, param1: number): boolean;
			public mapVectors(param0: native.Array<number>, param1: native.Array<number>): void;
			public mapRect(param0: android.graphics.RectF, param1: android.graphics.RectF): boolean;
			public setPolyToPoly(param0: native.Array<number>, param1: number, param2: native.Array<number>, param3: number, param4: number): boolean;
			public postRotate(param0: number, param1: number, param2: number): boolean;
			public preConcat(param0: android.graphics.Matrix): boolean;
			public mapRadius(param0: number): number;
			public constructor();
			public set(param0: android.graphics.Matrix): void;
			public preRotate(param0: number): boolean;
			public postTranslate(param0: number, param1: number): boolean;
			public setSinCos(param0: number, param1: number, param2: number, param3: number): void;
			public rectStaysRect(): boolean;
			public mapVectors(param0: native.Array<number>): void;
			public equals(param0: any): boolean;
			public preSkew(param0: number, param1: number): boolean;
			public mapPoints(param0: native.Array<number>, param1: number, param2: native.Array<number>, param3: number, param4: number): void;
			public setSkew(param0: number, param1: number): void;
			public postRotate(param0: number): boolean;
			public setSinCos(param0: number, param1: number): void;
			public reset(): void;
			public finalize(): void;
			public toShortString(): string;
			public setTranslate(param0: number, param1: number): void;
			public postConcat(param0: android.graphics.Matrix): boolean;
			public setRectToRect(param0: android.graphics.RectF, param1: android.graphics.RectF, param2: android.graphics.Matrix.ScaleToFit): boolean;
			public postSkew(param0: number, param1: number, param2: number, param3: number): boolean;
			public setSkew(param0: number, param1: number, param2: number, param3: number): void;
			public isIdentity(): boolean;
			public toString(): string;
			public preRotate(param0: number, param1: number, param2: number): boolean;
			public constructor(param0: android.graphics.Matrix);
			public mapVectors(param0: native.Array<number>, param1: number, param2: native.Array<number>, param3: number, param4: number): void;
			public preTranslate(param0: number, param1: number): boolean;
			public setValues(param0: native.Array<number>): void;
			public invert(param0: android.graphics.Matrix): boolean;
			public mapPoints(param0: native.Array<number>): void;
		}
		export module Matrix {
			export class ScaleToFit {
				public static class: java.lang.Class<android.graphics.Matrix.ScaleToFit>;
				public static CENTER: android.graphics.Matrix.ScaleToFit;
				public static END: android.graphics.Matrix.ScaleToFit;
				public static FILL: android.graphics.Matrix.ScaleToFit;
				public static START: android.graphics.Matrix.ScaleToFit;
				public static values(): native.Array<android.graphics.Matrix.ScaleToFit>;
				public static valueOf(param0: string): android.graphics.Matrix.ScaleToFit;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			}
		}
	}
}

declare module android {
	export module graphics {
		export class Movie extends java.lang.Object {
			public static class: java.lang.Class<android.graphics.Movie>;
			public static decodeByteArray(param0: native.Array<number>, param1: number, param2: number): android.graphics.Movie;
			public static decodeStream(param0: java.io.InputStream): android.graphics.Movie;
			public static decodeFile(param0: string): android.graphics.Movie;
			public duration(): number;
			public setTime(param0: number): boolean;
			public draw(param0: android.graphics.Canvas, param1: number, param2: number): void;
			public width(): number;
			public height(): number;
			public draw(param0: android.graphics.Canvas, param1: number, param2: number, param3: android.graphics.Paint): void;
			public finalize(): void;
			public isOpaque(): boolean;
		}
	}
}

declare module android {
	export module graphics {
		export class NinePatch extends java.lang.Object {
			public static class: java.lang.Class<android.graphics.NinePatch>;
			public getTransparentRegion(param0: android.graphics.Rect): android.graphics.Region;
			public hasAlpha(): boolean;
			public draw(param0: android.graphics.Canvas, param1: android.graphics.Rect): void;
			public draw(param0: android.graphics.Canvas, param1: android.graphics.Rect, param2: android.graphics.Paint): void;
			public getHeight(): number;
			public constructor(param0: android.graphics.Bitmap, param1: native.Array<number>, param2: string);
			public setPaint(param0: android.graphics.Paint): void;
			public getDensity(): number;
			public static isNinePatchChunk(param0: native.Array<number>): boolean;
			public getWidth(): number;
			public draw(param0: android.graphics.Canvas, param1: android.graphics.RectF): void;
		}
	}
}

declare module android {
	export module graphics {
		export class Paint extends java.lang.Object {
			public static class: java.lang.Class<android.graphics.Paint>;
			public static ANTI_ALIAS_FLAG: number;
			public static FILTER_BITMAP_FLAG: number;
			public static DITHER_FLAG: number;
			public static UNDERLINE_TEXT_FLAG: number;
			public static STRIKE_THRU_TEXT_FLAG: number;
			public static FAKE_BOLD_TEXT_FLAG: number;
			public static LINEAR_TEXT_FLAG: number;
			public static SUBPIXEL_TEXT_FLAG: number;
			public static DEV_KERN_TEXT_FLAG: number;
			public static HINTING_OFF: number;
			public static HINTING_ON: number;
			public set(param0: android.graphics.Paint): void;
			public setTextSkewX(param0: number): void;
			public getColorFilter(): android.graphics.ColorFilter;
			public breakText(param0: string, param1: boolean, param2: number, param3: native.Array<number>): number;
			public getAlpha(): number;
			public getTextAlign(): android.graphics.Paint.Align;
			public breakText(param0: string, param1: number, param2: number, param3: boolean, param4: number, param5: native.Array<number>): number;
			public getStyle(): android.graphics.Paint.Style;
			public getFontMetricsInt(): android.graphics.Paint.FontMetricsInt;
			public setTextScaleX(param0: number): void;
			public setAntiAlias(param0: boolean): void;
			public breakText(param0: native.Array<string>, param1: number, param2: number, param3: number, param4: native.Array<number>): number;
			public setStrokeMiter(param0: number): void;
			public getRasterizer(): android.graphics.Rasterizer;
			public setSubpixelText(param0: boolean): void;
			public isFakeBoldText(): boolean;
			public getTextPath(param0: string, param1: number, param2: number, param3: number, param4: number, param5: android.graphics.Path): void;
			public ascent(): number;
			public setARGB(param0: number, param1: number, param2: number, param3: number): void;
			public getFillPath(param0: android.graphics.Path, param1: android.graphics.Path): boolean;
			public setMaskFilter(param0: android.graphics.MaskFilter): android.graphics.MaskFilter;
			public measureText(param0: string): number;
			public constructor(param0: android.graphics.Paint);
			public setLinearText(param0: boolean): void;
			public getStrokeWidth(): number;
			public getFlags(): number;
			public setStrikeThruText(param0: boolean): void;
			public isUnderlineText(): boolean;
			public constructor(param0: number);
			public isFilterBitmap(): boolean;
			public constructor();
			public getTextSize(): number;
			public getTextBounds(param0: string, param1: number, param2: number, param3: android.graphics.Rect): void;
			public isLinearText(): boolean;
			public isSubpixelText(): boolean;
			public getTextLocale(): java.util.Locale;
			public clearShadowLayer(): void;
			public setPathEffect(param0: android.graphics.PathEffect): android.graphics.PathEffect;
			public isAntiAlias(): boolean;
			public setStrokeJoin(param0: android.graphics.Paint.Join): void;
			public getTextWidths(param0: native.Array<string>, param1: number, param2: number, param3: native.Array<number>): number;
			public isStrikeThruText(): boolean;
			public getTextScaleX(): number;
			public getTextPath(param0: native.Array<string>, param1: number, param2: number, param3: number, param4: number, param5: android.graphics.Path): void;
			public getStrokeJoin(): android.graphics.Paint.Join;
			public getColor(): number;
			public getShader(): android.graphics.Shader;
			public measureText(param0: string, param1: number, param2: number): number;
			public setStrokeWidth(param0: number): void;
			public setHinting(param0: number): void;
			public getFontMetrics(param0: android.graphics.Paint.FontMetrics): number;
			public setStrokeCap(param0: android.graphics.Paint.Cap): void;
			public getStrokeCap(): android.graphics.Paint.Cap;
			public setXfermode(param0: android.graphics.Xfermode): android.graphics.Xfermode;
			public getTextBounds(param0: native.Array<string>, param1: number, param2: number, param3: android.graphics.Rect): void;
			public setTextSize(param0: number): void;
			public setFlags(param0: number): void;
			public isDither(): boolean;
			public setShader(param0: android.graphics.Shader): android.graphics.Shader;
			public descent(): number;
			public setShadowLayer(param0: number, param1: number, param2: number, param3: number): void;
			public getFontSpacing(): number;
			public setTypeface(param0: android.graphics.Typeface): android.graphics.Typeface;
			public getTypeface(): android.graphics.Typeface;
			public getTextWidths(param0: string, param1: number, param2: number, param3: native.Array<number>): number;
			public reset(): void;
			public measureText(param0: native.Array<string>, param1: number, param2: number): number;
			public finalize(): void;
			public setAlpha(param0: number): void;
			public getTextWidths(param0: string, param1: native.Array<number>): number;
			public setFakeBoldText(param0: boolean): void;
			public setTextAlign(param0: android.graphics.Paint.Align): void;
			public setColorFilter(param0: android.graphics.ColorFilter): android.graphics.ColorFilter;
			public getTextSkewX(): number;
			public setTextLocale(param0: java.util.Locale): void;
			public setColor(param0: number): void;
			public setFilterBitmap(param0: boolean): void;
			public getPathEffect(): android.graphics.PathEffect;
			public getFontMetrics(): android.graphics.Paint.FontMetrics;
			public getFontMetricsInt(param0: android.graphics.Paint.FontMetricsInt): number;
			public getHinting(): number;
			public setUnderlineText(param0: boolean): void;
			public setStyle(param0: android.graphics.Paint.Style): void;
			public getStrokeMiter(): number;
			public setRasterizer(param0: android.graphics.Rasterizer): android.graphics.Rasterizer;
			public getMaskFilter(): android.graphics.MaskFilter;
			public getXfermode(): android.graphics.Xfermode;
			public setDither(param0: boolean): void;
		}
		export module Paint {
			export class Align {
				public static class: java.lang.Class<android.graphics.Paint.Align>;
				public static CENTER: android.graphics.Paint.Align;
				public static LEFT: android.graphics.Paint.Align;
				public static RIGHT: android.graphics.Paint.Align;
				public static valueOf(param0: string): android.graphics.Paint.Align;
				public static values(): native.Array<android.graphics.Paint.Align>;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			}
			export class Cap {
				public static class: java.lang.Class<android.graphics.Paint.Cap>;
				public static BUTT: android.graphics.Paint.Cap;
				public static ROUND: android.graphics.Paint.Cap;
				public static SQUARE: android.graphics.Paint.Cap;
				public static values(): native.Array<android.graphics.Paint.Cap>;
				public static valueOf(param0: string): android.graphics.Paint.Cap;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			}
			export class FontMetrics extends java.lang.Object {
				public static class: java.lang.Class<android.graphics.Paint.FontMetrics>;
				public top: number;
				public ascent: number;
				public descent: number;
				public bottom: number;
				public leading: number;
				public constructor();
			}
			export class FontMetricsInt extends java.lang.Object {
				public static class: java.lang.Class<android.graphics.Paint.FontMetricsInt>;
				public top: number;
				public ascent: number;
				public descent: number;
				public bottom: number;
				public leading: number;
				public toString(): string;
				public constructor();
			}
			export class Join {
				public static class: java.lang.Class<android.graphics.Paint.Join>;
				public static BEVEL: android.graphics.Paint.Join;
				public static MITER: android.graphics.Paint.Join;
				public static ROUND: android.graphics.Paint.Join;
				public static values(): native.Array<android.graphics.Paint.Join>;
				public static valueOf(param0: string): android.graphics.Paint.Join;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			}
			export class Style {
				public static class: java.lang.Class<android.graphics.Paint.Style>;
				public static FILL: android.graphics.Paint.Style;
				public static FILL_AND_STROKE: android.graphics.Paint.Style;
				public static STROKE: android.graphics.Paint.Style;
				public static valueOf(param0: string): android.graphics.Paint.Style;
				public static values(): native.Array<android.graphics.Paint.Style>;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			}
		}
	}
}

declare module android {
	export module graphics {
		export class PaintFlagsDrawFilter extends android.graphics.DrawFilter {
			public static class: java.lang.Class<android.graphics.PaintFlagsDrawFilter>;
			public constructor();
			public constructor(param0: number, param1: number);
		}
	}
}

declare module android {
	export module graphics {
		export class Path extends java.lang.Object {
			public static class: java.lang.Class<android.graphics.Path>;
			public isRect(param0: android.graphics.RectF): boolean;
			public rMoveTo(param0: number, param1: number): void;
			public arcTo(param0: android.graphics.RectF, param1: number, param2: number, param3: boolean): void;
			public offset(param0: number, param1: number): void;
			public rCubicTo(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): void;
			public rQuadTo(param0: number, param1: number, param2: number, param3: number): void;
			public addRoundRect(param0: android.graphics.RectF, param1: number, param2: number, param3: android.graphics.Path.Direction): void;
			public offset(param0: number, param1: number, param2: android.graphics.Path): void;
			public addPath(param0: android.graphics.Path, param1: android.graphics.Matrix): void;
			public addPath(param0: android.graphics.Path, param1: number, param2: number): void;
			public arcTo(param0: android.graphics.RectF, param1: number, param2: number): void;
			public rLineTo(param0: number, param1: number): void;
			public lineTo(param0: number, param1: number): void;
			public quadTo(param0: number, param1: number, param2: number, param3: number): void;
			public transform(param0: android.graphics.Matrix, param1: android.graphics.Path): void;
			public reset(): void;
			public addArc(param0: android.graphics.RectF, param1: number, param2: number): void;
			public addPath(param0: android.graphics.Path): void;
			public close(): void;
			public addCircle(param0: number, param1: number, param2: number, param3: android.graphics.Path.Direction): void;
			public rewind(): void;
			public setLastPoint(param0: number, param1: number): void;
			public finalize(): void;
			public toggleInverseFillType(): void;
			public moveTo(param0: number, param1: number): void;
			public transform(param0: android.graphics.Matrix): void;
			public setFillType(param0: android.graphics.Path.FillType): void;
			public isEmpty(): boolean;
			public addRoundRect(param0: android.graphics.RectF, param1: native.Array<number>, param2: android.graphics.Path.Direction): void;
			public cubicTo(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): void;
			public constructor();
			public incReserve(param0: number): void;
			public getFillType(): android.graphics.Path.FillType;
			public addRect(param0: number, param1: number, param2: number, param3: number, param4: android.graphics.Path.Direction): void;
			public addOval(param0: android.graphics.RectF, param1: android.graphics.Path.Direction): void;
			public constructor(param0: android.graphics.Path);
			public addRect(param0: android.graphics.RectF, param1: android.graphics.Path.Direction): void;
			public isInverseFillType(): boolean;
			public computeBounds(param0: android.graphics.RectF, param1: boolean): void;
			public set(param0: android.graphics.Path): void;
		}
		export module Path {
			export class Direction {
				public static class: java.lang.Class<android.graphics.Path.Direction>;
				public static CCW: android.graphics.Path.Direction;
				public static CW: android.graphics.Path.Direction;
				public static values(): native.Array<android.graphics.Path.Direction>;
				public static valueOf(param0: string): android.graphics.Path.Direction;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			}
			export class FillType {
				public static class: java.lang.Class<android.graphics.Path.FillType>;
				public static EVEN_ODD: android.graphics.Path.FillType;
				public static INVERSE_EVEN_ODD: android.graphics.Path.FillType;
				public static INVERSE_WINDING: android.graphics.Path.FillType;
				public static WINDING: android.graphics.Path.FillType;
				public static valueOf(param0: string): android.graphics.Path.FillType;
				public static values(): native.Array<android.graphics.Path.FillType>;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			}
		}
	}
}

declare module android {
	export module graphics {
		export class PathDashPathEffect extends android.graphics.PathEffect {
			public static class: java.lang.Class<android.graphics.PathDashPathEffect>;
			public constructor();
			public constructor(param0: android.graphics.Path, param1: number, param2: number, param3: android.graphics.PathDashPathEffect.Style);
		}
		export module PathDashPathEffect {
			export class Style {
				public static class: java.lang.Class<android.graphics.PathDashPathEffect.Style>;
				public static MORPH: android.graphics.PathDashPathEffect.Style;
				public static ROTATE: android.graphics.PathDashPathEffect.Style;
				public static TRANSLATE: android.graphics.PathDashPathEffect.Style;
				public static valueOf(param0: string): android.graphics.PathDashPathEffect.Style;
				public static values(): native.Array<android.graphics.PathDashPathEffect.Style>;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			}
		}
	}
}

declare module android {
	export module graphics {
		export class PathEffect extends java.lang.Object {
			public static class: java.lang.Class<android.graphics.PathEffect>;
			public constructor();
			public finalize(): void;
		}
	}
}

declare module android {
	export module graphics {
		export class PathMeasure extends java.lang.Object {
			public static class: java.lang.Class<android.graphics.PathMeasure>;
			public static POSITION_MATRIX_FLAG: number;
			public static TANGENT_MATRIX_FLAG: number;
			public isClosed(): boolean;
			public setPath(param0: android.graphics.Path, param1: boolean): void;
			public getMatrix(param0: number, param1: android.graphics.Matrix, param2: number): boolean;
			public getLength(): number;
			public constructor();
			public getPosTan(param0: number, param1: native.Array<number>, param2: native.Array<number>): boolean;
			public nextContour(): boolean;
			public constructor(param0: android.graphics.Path, param1: boolean);
			public finalize(): void;
			public getSegment(param0: number, param1: number, param2: android.graphics.Path, param3: boolean): boolean;
		}
	}
}

declare module android {
	export module graphics {
		export class Picture extends java.lang.Object {
			public static class: java.lang.Class<android.graphics.Picture>;
			/** @deprecated */
			public static createFromStream(param0: java.io.InputStream): android.graphics.Picture;
			public beginRecording(param0: number, param1: number): android.graphics.Canvas;
			public getHeight(): number;
			/** @deprecated */
			public writeToStream(param0: java.io.OutputStream): void;
			public constructor(param0: android.graphics.Picture);
			public getWidth(): number;
			public constructor();
			public endRecording(): void;
			public finalize(): void;
			public draw(param0: android.graphics.Canvas): void;
		}
	}
}

declare module android {
	export module graphics {
		export class PixelFormat extends java.lang.Object {
			public static class: java.lang.Class<android.graphics.PixelFormat>;
			public static UNKNOWN: number;
			public static TRANSLUCENT: number;
			public static TRANSPARENT: number;
			public static OPAQUE: number;
			public static RGBA_8888: number;
			public static RGBX_8888: number;
			public static RGB_888: number;
			public static RGB_565: number;
			public static RGBA_5551: number;
			public static RGBA_4444: number;
			public static A_8: number;
			public static L_8: number;
			public static LA_88: number;
			public static RGB_332: number;
			public static YCbCr_422_SP: number;
			public static YCbCr_420_SP: number;
			public static YCbCr_422_I: number;
			public static JPEG: number;
			public bytesPerPixel: number;
			public bitsPerPixel: number;
			public static formatHasAlpha(param0: number): boolean;
			public constructor();
			public static getPixelFormatInfo(param0: number, param1: android.graphics.PixelFormat): void;
		}
	}
}

declare module android {
	export module graphics {
		export class PixelXorXfermode extends android.graphics.Xfermode {
			public static class: java.lang.Class<android.graphics.PixelXorXfermode>;
			public constructor(param0: number);
			public constructor();
		}
	}
}

declare module android {
	export module graphics {
		export class Point extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.graphics.Point>;
			public x: number;
			public y: number;
			public static CREATOR: android.os.Parcelable.Creator<android.graphics.Point>;
			public equals(param0: any): boolean;
			public offset(param0: number, param1: number): void;
			public equals(param0: number, param1: number): boolean;
			public constructor();
			public set(param0: number, param1: number): void;
			public readFromParcel(param0: android.os.Parcel): void;
			public constructor(param0: android.graphics.Point);
			public negate(): void;
			public toString(): string;
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public constructor(param0: number, param1: number);
			public hashCode(): number;
		}
	}
}

declare module android {
	export module graphics {
		export class PointF extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.graphics.PointF>;
			public x: number;
			public y: number;
			public static CREATOR: android.os.Parcelable.Creator<android.graphics.PointF>;
			public equals(param0: any): boolean;
			public offset(param0: number, param1: number): void;
			public equals(param0: number, param1: number): boolean;
			public length(): number;
			public constructor();
			public set(param0: number, param1: number): void;
			public readFromParcel(param0: android.os.Parcel): void;
			public constructor(param0: android.graphics.Point);
			public static length(param0: number, param1: number): number;
			public negate(): void;
			public toString(): string;
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public set(param0: android.graphics.PointF): void;
			public constructor(param0: number, param1: number);
			public hashCode(): number;
		}
	}
}

declare module android {
	export module graphics {
		export class PorterDuff extends java.lang.Object {
			public static class: java.lang.Class<android.graphics.PorterDuff>;
			public constructor();
		}
		export module PorterDuff {
			export class Mode {
				public static class: java.lang.Class<android.graphics.PorterDuff.Mode>;
				public static ADD: android.graphics.PorterDuff.Mode;
				public static CLEAR: android.graphics.PorterDuff.Mode;
				public static DARKEN: android.graphics.PorterDuff.Mode;
				public static DST: android.graphics.PorterDuff.Mode;
				public static DST_ATOP: android.graphics.PorterDuff.Mode;
				public static DST_IN: android.graphics.PorterDuff.Mode;
				public static DST_OUT: android.graphics.PorterDuff.Mode;
				public static DST_OVER: android.graphics.PorterDuff.Mode;
				public static LIGHTEN: android.graphics.PorterDuff.Mode;
				public static MULTIPLY: android.graphics.PorterDuff.Mode;
				public static OVERLAY: android.graphics.PorterDuff.Mode;
				public static SCREEN: android.graphics.PorterDuff.Mode;
				public static SRC: android.graphics.PorterDuff.Mode;
				public static SRC_ATOP: android.graphics.PorterDuff.Mode;
				public static SRC_IN: android.graphics.PorterDuff.Mode;
				public static SRC_OUT: android.graphics.PorterDuff.Mode;
				public static SRC_OVER: android.graphics.PorterDuff.Mode;
				public static XOR: android.graphics.PorterDuff.Mode;
				public static valueOf(param0: string): android.graphics.PorterDuff.Mode;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
				public static values(): native.Array<android.graphics.PorterDuff.Mode>;
			}
		}
	}
}

declare module android {
	export module graphics {
		export class PorterDuffColorFilter extends android.graphics.ColorFilter {
			public static class: java.lang.Class<android.graphics.PorterDuffColorFilter>;
			public constructor(param0: number, param1: android.graphics.PorterDuff.Mode);
			public constructor();
		}
	}
}

declare module android {
	export module graphics {
		export class PorterDuffXfermode extends android.graphics.Xfermode {
			public static class: java.lang.Class<android.graphics.PorterDuffXfermode>;
			public constructor();
			public constructor(param0: android.graphics.PorterDuff.Mode);
		}
	}
}

declare module android {
	export module graphics {
		export class RadialGradient extends android.graphics.Shader {
			public static class: java.lang.Class<android.graphics.RadialGradient>;
			public constructor(param0: number, param1: number, param2: number, param3: number, param4: number, param5: android.graphics.Shader.TileMode);
			public constructor(param0: number, param1: number, param2: number, param3: native.Array<number>, param4: native.Array<number>, param5: android.graphics.Shader.TileMode);
			public constructor();
		}
	}
}

declare module android {
	export module graphics {
		export class Rasterizer extends java.lang.Object {
			public static class: java.lang.Class<android.graphics.Rasterizer>;
			public constructor();
			public finalize(): void;
		}
	}
}

declare module android {
	export module graphics {
		export class Rect extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.graphics.Rect>;
			public left: number;
			public top: number;
			public right: number;
			public bottom: number;
			public static CREATOR: android.os.Parcelable.Creator<android.graphics.Rect>;
			public equals(param0: any): boolean;
			public setEmpty(): void;
			public static intersects(param0: android.graphics.Rect, param1: android.graphics.Rect): boolean;
			public offset(param0: number, param1: number): void;
			public centerX(): number;
			public exactCenterX(): number;
			public set(param0: android.graphics.Rect): void;
			public set(param0: number, param1: number, param2: number, param3: number): void;
			public constructor(param0: number, param1: number, param2: number, param3: number);
			public union(param0: number, param1: number, param2: number, param3: number): void;
			public readFromParcel(param0: android.os.Parcel): void;
			public inset(param0: number, param1: number): void;
			public union(param0: number, param1: number): void;
			public sort(): void;
			public offsetTo(param0: number, param1: number): void;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public height(): number;
			public union(param0: android.graphics.Rect): void;
			public flattenToString(): string;
			public setIntersect(param0: android.graphics.Rect, param1: android.graphics.Rect): boolean;
			public static unflattenFromString(param0: string): android.graphics.Rect;
			public isEmpty(): boolean;
			public width(): number;
			public constructor(param0: android.graphics.Rect);
			public toShortString(): string;
			public exactCenterY(): number;
			public constructor();
			public contains(param0: number, param1: number, param2: number, param3: number): boolean;
			public toString(): string;
			public centerY(): number;
			public describeContents(): number;
			public contains(param0: android.graphics.Rect): boolean;
			public intersect(param0: android.graphics.Rect): boolean;
			public intersects(param0: number, param1: number, param2: number, param3: number): boolean;
			public contains(param0: number, param1: number): boolean;
			public hashCode(): number;
			public intersect(param0: number, param1: number, param2: number, param3: number): boolean;
		}
	}
}

declare module android {
	export module graphics {
		export class RectF extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.graphics.RectF>;
			public left: number;
			public top: number;
			public right: number;
			public bottom: number;
			public static CREATOR: android.os.Parcelable.Creator<android.graphics.RectF>;
			public equals(param0: any): boolean;
			public setEmpty(): void;
			public offset(param0: number, param1: number): void;
			public centerX(): number;
			public set(param0: android.graphics.Rect): void;
			public constructor(param0: android.graphics.RectF);
			public set(param0: number, param1: number, param2: number, param3: number): void;
			public union(param0: android.graphics.RectF): void;
			public round(param0: android.graphics.Rect): void;
			public constructor(param0: number, param1: number, param2: number, param3: number);
			public union(param0: number, param1: number, param2: number, param3: number): void;
			public readFromParcel(param0: android.os.Parcel): void;
			public inset(param0: number, param1: number): void;
			public union(param0: number, param1: number): void;
			public sort(): void;
			public offsetTo(param0: number, param1: number): void;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public height(): number;
			public setIntersect(param0: android.graphics.RectF, param1: android.graphics.RectF): boolean;
			public intersect(param0: android.graphics.RectF): boolean;
			public contains(param0: android.graphics.RectF): boolean;
			public static intersects(param0: android.graphics.RectF, param1: android.graphics.RectF): boolean;
			public roundOut(param0: android.graphics.Rect): void;
			public isEmpty(): boolean;
			public width(): number;
			public constructor(param0: android.graphics.Rect);
			public toShortString(): string;
			public constructor();
			public contains(param0: number, param1: number, param2: number, param3: number): boolean;
			public toString(): string;
			public centerY(): number;
			public describeContents(): number;
			public intersects(param0: number, param1: number, param2: number, param3: number): boolean;
			public set(param0: android.graphics.RectF): void;
			public contains(param0: number, param1: number): boolean;
			public hashCode(): number;
			public intersect(param0: number, param1: number, param2: number, param3: number): boolean;
		}
	}
}

declare module android {
	export module graphics {
		export class Region extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.graphics.Region>;
			public static CREATOR: android.os.Parcelable.Creator<android.graphics.Region>;
			public equals(param0: any): boolean;
			public setEmpty(): void;
			public getBounds(param0: android.graphics.Rect): boolean;
			public union(param0: android.graphics.Rect): boolean;
			public quickContains(param0: number, param1: number, param2: number, param3: number): boolean;
			public quickReject(param0: android.graphics.Region): boolean;
			public translate(param0: number, param1: number, param2: android.graphics.Region): void;
			public constructor(param0: number, param1: number, param2: number, param3: number);
			public op(param0: android.graphics.Region, param1: android.graphics.Region, param2: android.graphics.Region.Op): boolean;
			public set(param0: android.graphics.Rect): boolean;
			public set(param0: android.graphics.Region): boolean;
			public getBoundaryPath(): android.graphics.Path;
			public setPath(param0: android.graphics.Path, param1: android.graphics.Region): boolean;
			public op(param0: android.graphics.Rect, param1: android.graphics.Region.Op): boolean;
			public op(param0: android.graphics.Region, param1: android.graphics.Region.Op): boolean;
			public translate(param0: number, param1: number): void;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public isRect(): boolean;
			public quickContains(param0: android.graphics.Rect): boolean;
			public quickReject(param0: android.graphics.Rect): boolean;
			public finalize(): void;
			public isEmpty(): boolean;
			public constructor(param0: android.graphics.Rect);
			public isComplex(): boolean;
			public op(param0: number, param1: number, param2: number, param3: number, param4: android.graphics.Region.Op): boolean;
			public constructor();
			public quickReject(param0: number, param1: number, param2: number, param3: number): boolean;
			public getBounds(): android.graphics.Rect;
			public set(param0: number, param1: number, param2: number, param3: number): boolean;
			public op(param0: android.graphics.Rect, param1: android.graphics.Region, param2: android.graphics.Region.Op): boolean;
			public toString(): string;
			public describeContents(): number;
			public contains(param0: number, param1: number): boolean;
			public getBoundaryPath(param0: android.graphics.Path): boolean;
			public constructor(param0: android.graphics.Region);
		}
		export module Region {
			export class Op {
				public static class: java.lang.Class<android.graphics.Region.Op>;
				public static DIFFERENCE: android.graphics.Region.Op;
				public static INTERSECT: android.graphics.Region.Op;
				public static REPLACE: android.graphics.Region.Op;
				public static REVERSE_DIFFERENCE: android.graphics.Region.Op;
				public static UNION: android.graphics.Region.Op;
				public static XOR: android.graphics.Region.Op;
				public static values(): native.Array<android.graphics.Region.Op>;
				public static valueOf(param0: string): android.graphics.Region.Op;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			}
		}
	}
}

declare module android {
	export module graphics {
		export class RegionIterator extends java.lang.Object {
			public static class: java.lang.Class<android.graphics.RegionIterator>;
			public next(param0: android.graphics.Rect): boolean;
			public constructor(param0: android.graphics.Region);
			public finalize(): void;
		}
	}
}

declare module android {
	export module graphics {
		export class Shader extends java.lang.Object {
			public static class: java.lang.Class<android.graphics.Shader>;
			public constructor();
			public setLocalMatrix(param0: android.graphics.Matrix): void;
			public getLocalMatrix(param0: android.graphics.Matrix): boolean;
			public finalize(): void;
		}
		export module Shader {
			export class TileMode {
				public static class: java.lang.Class<android.graphics.Shader.TileMode>;
				public static CLAMP: android.graphics.Shader.TileMode;
				public static MIRROR: android.graphics.Shader.TileMode;
				public static REPEAT: android.graphics.Shader.TileMode;
				public static values(): native.Array<android.graphics.Shader.TileMode>;
				public static valueOf(param0: string): android.graphics.Shader.TileMode;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			}
		}
	}
}

declare module android {
	export module graphics {
		export class SumPathEffect extends android.graphics.PathEffect {
			public static class: java.lang.Class<android.graphics.SumPathEffect>;
			public constructor();
			public constructor(param0: android.graphics.PathEffect, param1: android.graphics.PathEffect);
		}
	}
}

declare module android {
	export module graphics {
		export class SurfaceTexture extends java.lang.Object {
			public static class: java.lang.Class<android.graphics.SurfaceTexture>;
			public getTransformMatrix(param0: native.Array<number>): void;
			public attachToGLContext(param0: number): void;
			public getTimestamp(): number;
			public updateTexImage(): void;
			public detachFromGLContext(): void;
			public constructor(param0: number);
			public setOnFrameAvailableListener(param0: android.graphics.SurfaceTexture.OnFrameAvailableListener): void;
			public setDefaultBufferSize(param0: number, param1: number): void;
			public release(): void;
			public finalize(): void;
		}
		export module SurfaceTexture {
			export class OnFrameAvailableListener extends java.lang.Object {
				public static class: java.lang.Class<android.graphics.SurfaceTexture.OnFrameAvailableListener>;
				/**
				 * Constructs a new instance of the android.graphics.SurfaceTexture$OnFrameAvailableListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onFrameAvailable(param0: android.graphics.SurfaceTexture): void;
				});
				public constructor();
				public onFrameAvailable(param0: android.graphics.SurfaceTexture): void;
			}
			export class OutOfResourcesException extends java.lang.Exception {
				public static class: java.lang.Class<android.graphics.SurfaceTexture.OutOfResourcesException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module android {
	export module graphics {
		export class SweepGradient extends android.graphics.Shader {
			public static class: java.lang.Class<android.graphics.SweepGradient>;
			public constructor(param0: number, param1: number, param2: native.Array<number>, param3: native.Array<number>);
			public constructor();
			public constructor(param0: number, param1: number, param2: number, param3: number);
		}
	}
}

declare module android {
	export module graphics {
		export class Typeface extends java.lang.Object {
			public static class: java.lang.Class<android.graphics.Typeface>;
			public static DEFAULT: android.graphics.Typeface;
			public static DEFAULT_BOLD: android.graphics.Typeface;
			public static SANS_SERIF: android.graphics.Typeface;
			public static SERIF: android.graphics.Typeface;
			public static MONOSPACE: android.graphics.Typeface;
			public static NORMAL: number;
			public static BOLD: number;
			public static ITALIC: number;
			public static BOLD_ITALIC: number;
			public equals(param0: any): boolean;
			public isItalic(): boolean;
			public static create(param0: string, param1: number): android.graphics.Typeface;
			public static createFromFile(param0: java.io.File): android.graphics.Typeface;
			public static createFromFile(param0: string): android.graphics.Typeface;
			public isBold(): boolean;
			public static defaultFromStyle(param0: number): android.graphics.Typeface;
			public getStyle(): number;
			public static createFromAsset(param0: android.content.res.AssetManager, param1: string): android.graphics.Typeface;
			public finalize(): void;
			public static create(param0: android.graphics.Typeface, param1: number): android.graphics.Typeface;
			public hashCode(): number;
		}
	}
}

declare module android {
	export module graphics {
		export class Xfermode extends java.lang.Object {
			public static class: java.lang.Class<android.graphics.Xfermode>;
			public constructor();
			public finalize(): void;
		}
	}
}

declare module android {
	export module graphics {
		export class YuvImage extends java.lang.Object {
			public static class: java.lang.Class<android.graphics.YuvImage>;
			public constructor(param0: native.Array<number>, param1: number, param2: number, param3: number, param4: native.Array<number>);
			public compressToJpeg(param0: android.graphics.Rect, param1: number, param2: java.io.OutputStream): boolean;
			public getHeight(): number;
			public getYuvData(): native.Array<number>;
			public getStrides(): native.Array<number>;
			public getWidth(): number;
			public getYuvFormat(): number;
		}
	}
}

declare module android {
	export module graphics {
		export module drawable {
			export class Animatable extends java.lang.Object {
				public static class: java.lang.Class<android.graphics.drawable.Animatable>;
				/**
				 * Constructs a new instance of the android.graphics.drawable.Animatable interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					start(): void;
					stop(): void;
					isRunning(): boolean;
				});
				public constructor();
				public stop(): void;
				public start(): void;
				public isRunning(): boolean;
			}
		}
	}
}

declare module android {
	export module graphics {
		export module drawable {
			export class AnimationDrawable extends android.graphics.drawable.DrawableContainer implements java.lang.Runnable, android.graphics.drawable.Animatable {
				public static class: java.lang.Class<android.graphics.drawable.AnimationDrawable>;
				public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
				public addFrame(param0: android.graphics.drawable.Drawable, param1: number): void;
				public unscheduleSelf(param0: java.lang.Runnable): void;
				public getNumberOfFrames(): number;
				public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
				public getDuration(param0: number): number;
				public isOneShot(): boolean;
				public constructor();
				public stop(): void;
				public run(): void;
				public inflate(param0: android.content.res.Resources, param1: org.xmlpull.v1.XmlPullParser, param2: android.util.AttributeSet): void;
				public start(): void;
				public mutate(): android.graphics.drawable.Drawable;
				public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
				public isRunning(): boolean;
				public setVisible(param0: boolean, param1: boolean): boolean;
				public setOneShot(param0: boolean): void;
				public getFrame(param0: number): android.graphics.drawable.Drawable;
			}
		}
	}
}

declare module android {
	export module graphics {
		export module drawable {
			export class BitmapDrawable extends android.graphics.drawable.Drawable {
				public static class: java.lang.Class<android.graphics.drawable.BitmapDrawable>;
				public setTargetDensity(param0: android.util.DisplayMetrics): void;
				public setAntiAlias(param0: boolean): void;
				public getTileModeX(): android.graphics.Shader.TileMode;
				/** @deprecated */
				public constructor(param0: string);
				public setTileModeX(param0: android.graphics.Shader.TileMode): void;
				public getPaint(): android.graphics.Paint;
				public constructor();
				public onBoundsChange(param0: android.graphics.Rect): void;
				public getBitmap(): android.graphics.Bitmap;
				public getIntrinsicWidth(): number;
				public getTileModeY(): android.graphics.Shader.TileMode;
				public setTargetDensity(param0: number): void;
				public getGravity(): number;
				/** @deprecated */
				public constructor(param0: android.content.res.Resources);
				public constructor(param0: android.content.res.Resources, param1: java.io.InputStream);
				public hasMipMap(): boolean;
				public setGravity(param0: number): void;
				public setColorFilter(param0: android.graphics.ColorFilter): void;
				public hasAntiAlias(): boolean;
				public setTileModeY(param0: android.graphics.Shader.TileMode): void;
				public constructor(param0: android.content.res.Resources, param1: string);
				public draw(param0: android.graphics.Canvas): void;
				public setColorFilter(param0: number, param1: android.graphics.PorterDuff.Mode): void;
				public setMipMap(param0: boolean): void;
				public setTileModeXY(param0: android.graphics.Shader.TileMode, param1: android.graphics.Shader.TileMode): void;
				public setDither(param0: boolean): void;
				/** @deprecated */
				public constructor(param0: android.graphics.Bitmap);
				public getChangingConfigurations(): number;
				public getConstantState(): android.graphics.drawable.Drawable.ConstantState;
				public constructor(param0: android.content.res.Resources, param1: android.graphics.Bitmap);
				public setAlpha(param0: number): void;
				/** @deprecated */
				public constructor(param0: java.io.InputStream);
				public setTargetDensity(param0: android.graphics.Canvas): void;
				/** @deprecated */
				public constructor();
				public getIntrinsicHeight(): number;
				public inflate(param0: android.content.res.Resources, param1: org.xmlpull.v1.XmlPullParser, param2: android.util.AttributeSet): void;
				public mutate(): android.graphics.drawable.Drawable;
				public setFilterBitmap(param0: boolean): void;
				public getOpacity(): number;
			}
		}
	}
}

declare module android {
	export module graphics {
		export module drawable {
			export class ClipDrawable extends android.graphics.drawable.Drawable implements android.graphics.drawable.Drawable.Callback {
				public static class: java.lang.Class<android.graphics.drawable.ClipDrawable>;
				public static HORIZONTAL: number;
				public static VERTICAL: number;
				public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
				public setColorFilter(param0: number, param1: android.graphics.PorterDuff.Mode): void;
				public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
				public onLevelChange(param0: number): boolean;
				public getChangingConfigurations(): number;
				public getConstantState(): android.graphics.drawable.Drawable.ConstantState;
				public setAlpha(param0: number): void;
				public constructor(param0: android.graphics.drawable.Drawable, param1: number, param2: number);
				public constructor();
				public onBoundsChange(param0: android.graphics.Rect): void;
				public getPadding(param0: android.graphics.Rect): boolean;
				public getIntrinsicWidth(): number;
				public onStateChange(param0: native.Array<number>): boolean;
				public getIntrinsicHeight(): number;
				public inflate(param0: android.content.res.Resources, param1: org.xmlpull.v1.XmlPullParser, param2: android.util.AttributeSet): void;
				public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
				public setColorFilter(param0: android.graphics.ColorFilter): void;
				public setVisible(param0: boolean, param1: boolean): boolean;
				public getOpacity(): number;
				public isStateful(): boolean;
				public draw(param0: android.graphics.Canvas): void;
			}
		}
	}
}

declare module android {
	export module graphics {
		export module drawable {
			export class ColorDrawable extends android.graphics.drawable.Drawable {
				public static class: java.lang.Class<android.graphics.drawable.ColorDrawable>;
				public getColor(): number;
				public setColorFilter(param0: number, param1: android.graphics.PorterDuff.Mode): void;
				public getChangingConfigurations(): number;
				public getConstantState(): android.graphics.drawable.Drawable.ConstantState;
				public setColor(param0: number): void;
				public getAlpha(): number;
				public setAlpha(param0: number): void;
				public constructor();
				public inflate(param0: android.content.res.Resources, param1: org.xmlpull.v1.XmlPullParser, param2: android.util.AttributeSet): void;
				public mutate(): android.graphics.drawable.Drawable;
				public constructor(param0: number);
				public setColorFilter(param0: android.graphics.ColorFilter): void;
				public getOpacity(): number;
				public draw(param0: android.graphics.Canvas): void;
			}
		}
	}
}

declare module android {
	export module graphics {
		export module drawable {
			export abstract class Drawable extends java.lang.Object {
				public static class: java.lang.Class<android.graphics.drawable.Drawable>;
				public getCurrent(): android.graphics.drawable.Drawable;
				public constructor();
				public copyBounds(): android.graphics.Rect;
				public onStateChange(param0: native.Array<number>): boolean;
				public static resolveOpacity(param0: number, param1: number): number;
				public copyBounds(param0: android.graphics.Rect): void;
				public static createFromResourceStream(param0: android.content.res.Resources, param1: android.util.TypedValue, param2: java.io.InputStream, param3: string, param4: android.graphics.BitmapFactory.Options): android.graphics.drawable.Drawable;
				public getCallback(): android.graphics.drawable.Drawable.Callback;
				public unscheduleSelf(param0: java.lang.Runnable): void;
				public onLevelChange(param0: number): boolean;
				public jumpToCurrentState(): void;
				public setBounds(param0: number, param1: number, param2: number, param3: number): void;
				public setDither(param0: boolean): void;
				public getChangingConfigurations(): number;
				public getConstantState(): android.graphics.drawable.Drawable.ConstantState;
				public invalidateSelf(): void;
				public getMinimumHeight(): number;
				public setLevel(param0: number): boolean;
				public setCallback(param0: android.graphics.drawable.Drawable.Callback): void;
				public getIntrinsicHeight(): number;
				public setState(param0: native.Array<number>): boolean;
				public getOpacity(): number;
				public isVisible(): boolean;
				public getBounds(): android.graphics.Rect;
				public static createFromXml(param0: android.content.res.Resources, param1: org.xmlpull.v1.XmlPullParser): android.graphics.drawable.Drawable;
				public static createFromPath(param0: string): android.graphics.drawable.Drawable;
				public onBoundsChange(param0: android.graphics.Rect): void;
				public getIntrinsicWidth(): number;
				public getPadding(param0: android.graphics.Rect): boolean;
				public setChangingConfigurations(param0: number): void;
				public getMinimumWidth(): number;
				public setColorFilter(param0: android.graphics.ColorFilter): void;
				public draw(param0: android.graphics.Canvas): void;
				public scheduleSelf(param0: java.lang.Runnable, param1: number): void;
				public static createFromStream(param0: java.io.InputStream, param1: string): android.graphics.drawable.Drawable;
				public static createFromXmlInner(param0: android.content.res.Resources, param1: org.xmlpull.v1.XmlPullParser, param2: android.util.AttributeSet): android.graphics.drawable.Drawable;
				public setBounds(param0: android.graphics.Rect): void;
				public setColorFilter(param0: number, param1: android.graphics.PorterDuff.Mode): void;
				public getState(): native.Array<number>;
				public setAlpha(param0: number): void;
				public clearColorFilter(): void;
				public static createFromResourceStream(param0: android.content.res.Resources, param1: android.util.TypedValue, param2: java.io.InputStream, param3: string): android.graphics.drawable.Drawable;
				public getLevel(): number;
				public inflate(param0: android.content.res.Resources, param1: org.xmlpull.v1.XmlPullParser, param2: android.util.AttributeSet): void;
				public mutate(): android.graphics.drawable.Drawable;
				public setVisible(param0: boolean, param1: boolean): boolean;
				public setFilterBitmap(param0: boolean): void;
				public getTransparentRegion(): android.graphics.Region;
				public isStateful(): boolean;
			}
			export module Drawable {
				export class Callback extends java.lang.Object {
					public static class: java.lang.Class<android.graphics.drawable.Drawable.Callback>;
					/**
					 * Constructs a new instance of the android.graphics.drawable.Drawable$Callback interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
						scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
						unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
					});
					public constructor();
					public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
					public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
					public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
				}
				export abstract class ConstantState extends java.lang.Object {
					public static class: java.lang.Class<android.graphics.drawable.Drawable.ConstantState>;
					public getChangingConfigurations(): number;
					public newDrawable(): android.graphics.drawable.Drawable;
					public constructor();
					public newDrawable(param0: android.content.res.Resources): android.graphics.drawable.Drawable;
				}
			}
		}
	}
}

declare module android {
	export module graphics {
		export module drawable {
			export class DrawableContainer extends android.graphics.drawable.Drawable implements android.graphics.drawable.Drawable.Callback {
				public static class: java.lang.Class<android.graphics.drawable.DrawableContainer>;
				public getCurrent(): android.graphics.drawable.Drawable;
				public selectDrawable(param0: number): boolean;
				public constructor();
				public onBoundsChange(param0: android.graphics.Rect): void;
				public getPadding(param0: android.graphics.Rect): boolean;
				public getIntrinsicWidth(): number;
				public onStateChange(param0: native.Array<number>): boolean;
				public getMinimumWidth(): number;
				public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
				public setColorFilter(param0: android.graphics.ColorFilter): void;
				public setEnterFadeDuration(param0: number): void;
				public draw(param0: android.graphics.Canvas): void;
				public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
				public setColorFilter(param0: number, param1: android.graphics.PorterDuff.Mode): void;
				public onLevelChange(param0: number): boolean;
				public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
				public jumpToCurrentState(): void;
				public setDither(param0: boolean): void;
				public setConstantState(param0: android.graphics.drawable.DrawableContainer.DrawableContainerState): void;
				public getChangingConfigurations(): number;
				public getConstantState(): android.graphics.drawable.Drawable.ConstantState;
				public setAlpha(param0: number): void;
				public getMinimumHeight(): number;
				public getIntrinsicHeight(): number;
				public mutate(): android.graphics.drawable.Drawable;
				public setVisible(param0: boolean, param1: boolean): boolean;
				public setExitFadeDuration(param0: number): void;
				public getOpacity(): number;
				public isStateful(): boolean;
			}
			export module DrawableContainer {
				export abstract class DrawableContainerState extends android.graphics.drawable.Drawable.ConstantState {
					public static class: java.lang.Class<android.graphics.drawable.DrawableContainer.DrawableContainerState>;
					public growArray(param0: number, param1: number): void;
					public setVariablePadding(param0: boolean): void;
					public getChildCount(): number;
					public getConstantMinimumWidth(): number;
					public addChild(param0: android.graphics.drawable.Drawable): number;
					public getEnterFadeDuration(): number;
					public getConstantWidth(): number;
					public isStateful(): boolean;
					public computeConstantSize(): void;
					public setExitFadeDuration(param0: number): void;
					public setConstantSize(param0: boolean): void;
					public getConstantHeight(): number;
					public getChangingConfigurations(): number;
					public getChildren(): native.Array<android.graphics.drawable.Drawable>;
					public getConstantPadding(): android.graphics.Rect;
					public isConstantSize(): boolean;
					public setEnterFadeDuration(param0: number): void;
					public canConstantState(): boolean;
					public getConstantMinimumHeight(): number;
					public getExitFadeDuration(): number;
					public getOpacity(): number;
				}
			}
		}
	}
}

declare module android {
	export module graphics {
		export module drawable {
			export class GradientDrawable extends android.graphics.drawable.Drawable {
				public static class: java.lang.Class<android.graphics.drawable.GradientDrawable>;
				public static RECTANGLE: number;
				public static OVAL: number;
				public static LINE: number;
				public static RING: number;
				public static LINEAR_GRADIENT: number;
				public static RADIAL_GRADIENT: number;
				public static SWEEP_GRADIENT: number;
				public setSize(param0: number, param1: number): void;
				public constructor(param0: android.graphics.drawable.GradientDrawable.Orientation, param1: native.Array<number>);
				public setShape(param0: number): void;
				public getOrientation(): android.graphics.drawable.GradientDrawable.Orientation;
				public constructor();
				public setStroke(param0: number, param1: number): void;
				public onBoundsChange(param0: android.graphics.Rect): void;
				public getPadding(param0: android.graphics.Rect): boolean;
				public getIntrinsicWidth(): number;
				public setColorFilter(param0: android.graphics.ColorFilter): void;
				public setStroke(param0: number, param1: number, param2: number, param3: number): void;
				public draw(param0: android.graphics.Canvas): void;
				public setColorFilter(param0: number, param1: android.graphics.PorterDuff.Mode): void;
				public setColors(param0: native.Array<number>): void;
				public onLevelChange(param0: number): boolean;
				public setDither(param0: boolean): void;
				public getChangingConfigurations(): number;
				public getConstantState(): android.graphics.drawable.Drawable.ConstantState;
				public setUseLevel(param0: boolean): void;
				public setColor(param0: number): void;
				public setAlpha(param0: number): void;
				public setOrientation(param0: android.graphics.drawable.GradientDrawable.Orientation): void;
				public setGradientRadius(param0: number): void;
				public setGradientCenter(param0: number, param1: number): void;
				public getIntrinsicHeight(): number;
				public inflate(param0: android.content.res.Resources, param1: org.xmlpull.v1.XmlPullParser, param2: android.util.AttributeSet): void;
				public mutate(): android.graphics.drawable.Drawable;
				public setCornerRadius(param0: number): void;
				public setCornerRadii(param0: native.Array<number>): void;
				public setGradientType(param0: number): void;
				public getOpacity(): number;
			}
			export module GradientDrawable {
				export class Orientation {
					public static class: java.lang.Class<android.graphics.drawable.GradientDrawable.Orientation>;
					public static BL_TR: android.graphics.drawable.GradientDrawable.Orientation;
					public static BOTTOM_TOP: android.graphics.drawable.GradientDrawable.Orientation;
					public static BR_TL: android.graphics.drawable.GradientDrawable.Orientation;
					public static LEFT_RIGHT: android.graphics.drawable.GradientDrawable.Orientation;
					public static RIGHT_LEFT: android.graphics.drawable.GradientDrawable.Orientation;
					public static TL_BR: android.graphics.drawable.GradientDrawable.Orientation;
					public static TOP_BOTTOM: android.graphics.drawable.GradientDrawable.Orientation;
					public static TR_BL: android.graphics.drawable.GradientDrawable.Orientation;
					public static values(): native.Array<android.graphics.drawable.GradientDrawable.Orientation>;
					public static valueOf(param0: string): android.graphics.drawable.GradientDrawable.Orientation;
					public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
				}
			}
		}
	}
}

declare module android {
	export module graphics {
		export module drawable {
			export class InsetDrawable extends android.graphics.drawable.Drawable implements android.graphics.drawable.Drawable.Callback {
				public static class: java.lang.Class<android.graphics.drawable.InsetDrawable>;
				public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
				public constructor(param0: android.graphics.drawable.Drawable, param1: number);
				public setColorFilter(param0: number, param1: android.graphics.PorterDuff.Mode): void;
				public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
				public constructor(param0: android.graphics.drawable.Drawable, param1: number, param2: number, param3: number, param4: number);
				public getChangingConfigurations(): number;
				public getConstantState(): android.graphics.drawable.Drawable.ConstantState;
				public setAlpha(param0: number): void;
				public constructor();
				public onBoundsChange(param0: android.graphics.Rect): void;
				public getPadding(param0: android.graphics.Rect): boolean;
				public getIntrinsicWidth(): number;
				public onStateChange(param0: native.Array<number>): boolean;
				public getIntrinsicHeight(): number;
				public inflate(param0: android.content.res.Resources, param1: org.xmlpull.v1.XmlPullParser, param2: android.util.AttributeSet): void;
				public mutate(): android.graphics.drawable.Drawable;
				public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
				public setColorFilter(param0: android.graphics.ColorFilter): void;
				public setVisible(param0: boolean, param1: boolean): boolean;
				public getOpacity(): number;
				public draw(param0: android.graphics.Canvas): void;
				public isStateful(): boolean;
			}
		}
	}
}

declare module android {
	export module graphics {
		export module drawable {
			export class LayerDrawable extends android.graphics.drawable.Drawable implements android.graphics.drawable.Drawable.Callback {
				public static class: java.lang.Class<android.graphics.drawable.LayerDrawable>;
				public constructor(param0: native.Array<android.graphics.drawable.Drawable>);
				public constructor();
				public onBoundsChange(param0: android.graphics.Rect): void;
				public setId(param0: number, param1: number): void;
				public getPadding(param0: android.graphics.Rect): boolean;
				public getIntrinsicWidth(): number;
				public onStateChange(param0: native.Array<number>): boolean;
				public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
				public setColorFilter(param0: android.graphics.ColorFilter): void;
				public getDrawable(param0: number): android.graphics.drawable.Drawable;
				public draw(param0: android.graphics.Canvas): void;
				public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
				public setColorFilter(param0: number, param1: android.graphics.PorterDuff.Mode): void;
				public findDrawableByLayerId(param0: number): android.graphics.drawable.Drawable;
				public setLayerInset(param0: number, param1: number, param2: number, param3: number, param4: number): void;
				public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
				public onLevelChange(param0: number): boolean;
				public setDither(param0: boolean): void;
				public getChangingConfigurations(): number;
				public getConstantState(): android.graphics.drawable.Drawable.ConstantState;
				public setAlpha(param0: number): void;
				public setOpacity(param0: number): void;
				public setDrawableByLayerId(param0: number, param1: android.graphics.drawable.Drawable): boolean;
				public getNumberOfLayers(): number;
				public getIntrinsicHeight(): number;
				public inflate(param0: android.content.res.Resources, param1: org.xmlpull.v1.XmlPullParser, param2: android.util.AttributeSet): void;
				public mutate(): android.graphics.drawable.Drawable;
				public setVisible(param0: boolean, param1: boolean): boolean;
				public getId(param0: number): number;
				public getOpacity(): number;
				public isStateful(): boolean;
			}
		}
	}
}

declare module android {
	export module graphics {
		export module drawable {
			export class LevelListDrawable extends android.graphics.drawable.DrawableContainer {
				public static class: java.lang.Class<android.graphics.drawable.LevelListDrawable>;
				public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
				public onLevelChange(param0: number): boolean;
				public inflate(param0: android.content.res.Resources, param1: org.xmlpull.v1.XmlPullParser, param2: android.util.AttributeSet): void;
				public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
				public addLevel(param0: number, param1: number, param2: android.graphics.drawable.Drawable): void;
				public mutate(): android.graphics.drawable.Drawable;
				public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
				public constructor();
			}
		}
	}
}

declare module android {
	export module graphics {
		export module drawable {
			export class NinePatchDrawable extends android.graphics.drawable.Drawable {
				public static class: java.lang.Class<android.graphics.drawable.NinePatchDrawable>;
				public setTargetDensity(param0: android.util.DisplayMetrics): void;
				/** @deprecated */
				public constructor(param0: android.graphics.NinePatch);
				public getPaint(): android.graphics.Paint;
				public constructor();
				public constructor(param0: android.content.res.Resources, param1: android.graphics.NinePatch);
				public getPadding(param0: android.graphics.Rect): boolean;
				public getIntrinsicWidth(): number;
				public setTargetDensity(param0: number): void;
				public getMinimumWidth(): number;
				/** @deprecated */
				public constructor(param0: android.graphics.Bitmap, param1: native.Array<number>, param2: android.graphics.Rect, param3: string);
				public setColorFilter(param0: android.graphics.ColorFilter): void;
				public draw(param0: android.graphics.Canvas): void;
				public setColorFilter(param0: number, param1: android.graphics.PorterDuff.Mode): void;
				public constructor(param0: android.content.res.Resources, param1: android.graphics.Bitmap, param2: native.Array<number>, param3: android.graphics.Rect, param4: string);
				public setDither(param0: boolean): void;
				public getChangingConfigurations(): number;
				public getConstantState(): android.graphics.drawable.Drawable.ConstantState;
				public setAlpha(param0: number): void;
				public setTargetDensity(param0: android.graphics.Canvas): void;
				public getMinimumHeight(): number;
				public getIntrinsicHeight(): number;
				public inflate(param0: android.content.res.Resources, param1: org.xmlpull.v1.XmlPullParser, param2: android.util.AttributeSet): void;
				public mutate(): android.graphics.drawable.Drawable;
				public setFilterBitmap(param0: boolean): void;
				public getTransparentRegion(): android.graphics.Region;
				public getOpacity(): number;
			}
		}
	}
}

declare module android {
	export module graphics {
		export module drawable {
			export class PaintDrawable extends android.graphics.drawable.ShapeDrawable {
				public static class: java.lang.Class<android.graphics.drawable.PaintDrawable>;
				public inflateTag(param0: string, param1: android.content.res.Resources, param2: org.xmlpull.v1.XmlPullParser, param3: android.util.AttributeSet): boolean;
				public constructor(param0: android.graphics.drawable.shapes.Shape);
				public constructor(param0: number);
				public setCornerRadius(param0: number): void;
				public setCornerRadii(param0: native.Array<number>): void;
				public constructor();
			}
		}
	}
}

declare module android {
	export module graphics {
		export module drawable {
			export class PictureDrawable extends android.graphics.drawable.Drawable {
				public static class: java.lang.Class<android.graphics.drawable.PictureDrawable>;
				public setColorFilter(param0: number, param1: android.graphics.PorterDuff.Mode): void;
				public constructor(param0: android.graphics.Picture);
				public setDither(param0: boolean): void;
				public setAlpha(param0: number): void;
				public getPicture(): android.graphics.Picture;
				public constructor();
				public setPicture(param0: android.graphics.Picture): void;
				public getIntrinsicWidth(): number;
				public getIntrinsicHeight(): number;
				public setColorFilter(param0: android.graphics.ColorFilter): void;
				public setFilterBitmap(param0: boolean): void;
				public getOpacity(): number;
				public draw(param0: android.graphics.Canvas): void;
			}
		}
	}
}

declare module android {
	export module graphics {
		export module drawable {
			export class RotateDrawable extends android.graphics.drawable.Drawable implements android.graphics.drawable.Drawable.Callback {
				public static class: java.lang.Class<android.graphics.drawable.RotateDrawable>;
				public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
				public setColorFilter(param0: number, param1: android.graphics.PorterDuff.Mode): void;
				public getDrawable(): android.graphics.drawable.Drawable;
				public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
				public onLevelChange(param0: number): boolean;
				public getChangingConfigurations(): number;
				public getConstantState(): android.graphics.drawable.Drawable.ConstantState;
				public setAlpha(param0: number): void;
				public constructor();
				public onBoundsChange(param0: android.graphics.Rect): void;
				public getPadding(param0: android.graphics.Rect): boolean;
				public getIntrinsicWidth(): number;
				public onStateChange(param0: native.Array<number>): boolean;
				public getIntrinsicHeight(): number;
				public inflate(param0: android.content.res.Resources, param1: org.xmlpull.v1.XmlPullParser, param2: android.util.AttributeSet): void;
				public mutate(): android.graphics.drawable.Drawable;
				public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
				public setColorFilter(param0: android.graphics.ColorFilter): void;
				public setVisible(param0: boolean, param1: boolean): boolean;
				public getOpacity(): number;
				public draw(param0: android.graphics.Canvas): void;
				public isStateful(): boolean;
			}
		}
	}
}

declare module android {
	export module graphics {
		export module drawable {
			export class ScaleDrawable extends android.graphics.drawable.Drawable implements android.graphics.drawable.Drawable.Callback {
				public static class: java.lang.Class<android.graphics.drawable.ScaleDrawable>;
				public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
				public setColorFilter(param0: number, param1: android.graphics.PorterDuff.Mode): void;
				public getDrawable(): android.graphics.drawable.Drawable;
				public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
				public onLevelChange(param0: number): boolean;
				public getChangingConfigurations(): number;
				public getConstantState(): android.graphics.drawable.Drawable.ConstantState;
				public setAlpha(param0: number): void;
				public constructor();
				public constructor(param0: android.graphics.drawable.Drawable, param1: number, param2: number, param3: number);
				public onBoundsChange(param0: android.graphics.Rect): void;
				public getPadding(param0: android.graphics.Rect): boolean;
				public getIntrinsicWidth(): number;
				public onStateChange(param0: native.Array<number>): boolean;
				public getIntrinsicHeight(): number;
				public inflate(param0: android.content.res.Resources, param1: org.xmlpull.v1.XmlPullParser, param2: android.util.AttributeSet): void;
				public mutate(): android.graphics.drawable.Drawable;
				public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
				public setColorFilter(param0: android.graphics.ColorFilter): void;
				public setVisible(param0: boolean, param1: boolean): boolean;
				public getOpacity(): number;
				public draw(param0: android.graphics.Canvas): void;
				public isStateful(): boolean;
			}
		}
	}
}

declare module android {
	export module graphics {
		export module drawable {
			export class ShapeDrawable extends android.graphics.drawable.Drawable {
				public static class: java.lang.Class<android.graphics.drawable.ShapeDrawable>;
				public setIntrinsicHeight(param0: number): void;
				public getShape(): android.graphics.drawable.shapes.Shape;
				public getShaderFactory(): android.graphics.drawable.ShapeDrawable.ShaderFactory;
				public getPaint(): android.graphics.Paint;
				public constructor();
				public onBoundsChange(param0: android.graphics.Rect): void;
				public getIntrinsicWidth(): number;
				public getPadding(param0: android.graphics.Rect): boolean;
				public inflateTag(param0: string, param1: android.content.res.Resources, param2: org.xmlpull.v1.XmlPullParser, param3: android.util.AttributeSet): boolean;
				public setPadding(param0: number, param1: number, param2: number, param3: number): void;
				public constructor(param0: android.graphics.drawable.shapes.Shape);
				public setShape(param0: android.graphics.drawable.shapes.Shape): void;
				public setColorFilter(param0: android.graphics.ColorFilter): void;
				public draw(param0: android.graphics.Canvas): void;
				public setColorFilter(param0: number, param1: android.graphics.PorterDuff.Mode): void;
				public setIntrinsicWidth(param0: number): void;
				public setDither(param0: boolean): void;
				public getChangingConfigurations(): number;
				public getConstantState(): android.graphics.drawable.Drawable.ConstantState;
				public setAlpha(param0: number): void;
				public onDraw(param0: android.graphics.drawable.shapes.Shape, param1: android.graphics.Canvas, param2: android.graphics.Paint): void;
				public setPadding(param0: android.graphics.Rect): void;
				public getIntrinsicHeight(): number;
				public inflate(param0: android.content.res.Resources, param1: org.xmlpull.v1.XmlPullParser, param2: android.util.AttributeSet): void;
				public mutate(): android.graphics.drawable.Drawable;
				public setShaderFactory(param0: android.graphics.drawable.ShapeDrawable.ShaderFactory): void;
				public getOpacity(): number;
			}
			export module ShapeDrawable {
				export abstract class ShaderFactory extends java.lang.Object {
					public static class: java.lang.Class<android.graphics.drawable.ShapeDrawable.ShaderFactory>;
					public constructor();
					public resize(param0: number, param1: number): android.graphics.Shader;
				}
			}
		}
	}
}

declare module android {
	export module graphics {
		export module drawable {
			export class StateListDrawable extends android.graphics.drawable.DrawableContainer {
				public static class: java.lang.Class<android.graphics.drawable.StateListDrawable>;
				public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
				public onStateChange(param0: native.Array<number>): boolean;
				public inflate(param0: android.content.res.Resources, param1: org.xmlpull.v1.XmlPullParser, param2: android.util.AttributeSet): void;
				public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
				public mutate(): android.graphics.drawable.Drawable;
				public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
				public addState(param0: native.Array<number>, param1: android.graphics.drawable.Drawable): void;
				public constructor();
				public isStateful(): boolean;
			}
		}
	}
}

declare module android {
	export module graphics {
		export module drawable {
			export class TransitionDrawable extends android.graphics.drawable.LayerDrawable implements android.graphics.drawable.Drawable.Callback {
				public static class: java.lang.Class<android.graphics.drawable.TransitionDrawable>;
				public constructor(param0: native.Array<android.graphics.drawable.Drawable>);
				public reverseTransition(param0: number): void;
				public setCrossFadeEnabled(param0: boolean): void;
				public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
				public resetTransition(): void;
				public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
				public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
				public startTransition(param0: number): void;
				public isCrossFadeEnabled(): boolean;
				public constructor();
				public draw(param0: android.graphics.Canvas): void;
			}
		}
	}
}

declare module android {
	export module graphics {
		export module drawable {
			export module shapes {
				export class ArcShape extends android.graphics.drawable.shapes.RectShape {
					public static class: java.lang.Class<android.graphics.drawable.shapes.ArcShape>;
					public constructor();
					public draw(param0: android.graphics.Canvas, param1: android.graphics.Paint): void;
					public constructor(param0: number, param1: number);
				}
			}
		}
	}
}

declare module android {
	export module graphics {
		export module drawable {
			export module shapes {
				export class OvalShape extends android.graphics.drawable.shapes.RectShape {
					public static class: java.lang.Class<android.graphics.drawable.shapes.OvalShape>;
					public constructor();
					public draw(param0: android.graphics.Canvas, param1: android.graphics.Paint): void;
				}
			}
		}
	}
}

declare module android {
	export module graphics {
		export module drawable {
			export module shapes {
				export class PathShape extends android.graphics.drawable.shapes.Shape {
					public static class: java.lang.Class<android.graphics.drawable.shapes.PathShape>;
					public clone(): any;
					public constructor();
					public constructor(param0: android.graphics.Path, param1: number, param2: number);
					public draw(param0: android.graphics.Canvas, param1: android.graphics.Paint): void;
					public clone(): android.graphics.drawable.shapes.PathShape;
					public onResize(param0: number, param1: number): void;
					public clone(): android.graphics.drawable.shapes.Shape;
				}
			}
		}
	}
}

declare module android {
	export module graphics {
		export module drawable {
			export module shapes {
				export class RectShape extends android.graphics.drawable.shapes.Shape {
					public static class: java.lang.Class<android.graphics.drawable.shapes.RectShape>;
					public clone(): any;
					public constructor();
					public rect(): android.graphics.RectF;
					public clone(): android.graphics.drawable.shapes.RectShape;
					public draw(param0: android.graphics.Canvas, param1: android.graphics.Paint): void;
					public onResize(param0: number, param1: number): void;
					public clone(): android.graphics.drawable.shapes.Shape;
				}
			}
		}
	}
}

declare module android {
	export module graphics {
		export module drawable {
			export module shapes {
				export class RoundRectShape extends android.graphics.drawable.shapes.RectShape {
					public static class: java.lang.Class<android.graphics.drawable.shapes.RoundRectShape>;
					public clone(): android.graphics.drawable.shapes.RoundRectShape;
					public clone(): any;
					public constructor();
					public clone(): android.graphics.drawable.shapes.RectShape;
					public draw(param0: android.graphics.Canvas, param1: android.graphics.Paint): void;
					public onResize(param0: number, param1: number): void;
					public constructor(param0: native.Array<number>, param1: android.graphics.RectF, param2: native.Array<number>);
					public clone(): android.graphics.drawable.shapes.Shape;
				}
			}
		}
	}
}

declare module android {
	export module graphics {
		export module drawable {
			export module shapes {
				export abstract class Shape extends java.lang.Object implements java.lang.Cloneable {
					public static class: java.lang.Class<android.graphics.drawable.shapes.Shape>;
					public hasAlpha(): boolean;
					public clone(): any;
					public constructor();
					public getHeight(): number;
					public resize(param0: number, param1: number): void;
					public getWidth(): number;
					public draw(param0: android.graphics.Canvas, param1: android.graphics.Paint): void;
					public onResize(param0: number, param1: number): void;
					public clone(): android.graphics.drawable.shapes.Shape;
				}
			}
		}
	}
}

declare module android {
	export module hardware {
		export class Camera extends java.lang.Object {
			public static class: java.lang.Class<android.hardware.Camera>;
			public static ACTION_NEW_PICTURE: string;
			public static ACTION_NEW_VIDEO: string;
			public static CAMERA_ERROR_UNKNOWN: number;
			public static CAMERA_ERROR_SERVER_DIED: number;
			public enableShutterSound(param0: boolean): boolean;
			public stopFaceDetection(): void;
			public static open(param0: number): android.hardware.Camera;
			public setFaceDetectionListener(param0: android.hardware.Camera.FaceDetectionListener): void;
			public takePicture(param0: android.hardware.Camera.ShutterCallback, param1: android.hardware.Camera.PictureCallback, param2: android.hardware.Camera.PictureCallback): void;
			public lock(): void;
			public startPreview(): void;
			public setErrorCallback(param0: android.hardware.Camera.ErrorCallback): void;
			public startSmoothZoom(param0: number): void;
			public setZoomChangeListener(param0: android.hardware.Camera.OnZoomChangeListener): void;
			public setPreviewTexture(param0: android.graphics.SurfaceTexture): void;
			public finalize(): void;
			public release(): void;
			public setPreviewCallbackWithBuffer(param0: android.hardware.Camera.PreviewCallback): void;
			public takePicture(param0: android.hardware.Camera.ShutterCallback, param1: android.hardware.Camera.PictureCallback, param2: android.hardware.Camera.PictureCallback, param3: android.hardware.Camera.PictureCallback): void;
			public setPreviewCallback(param0: android.hardware.Camera.PreviewCallback): void;
			public setDisplayOrientation(param0: number): void;
			public autoFocus(param0: android.hardware.Camera.AutoFocusCallback): void;
			public stopSmoothZoom(): void;
			public reconnect(): void;
			public getParameters(): android.hardware.Camera.Parameters;
			public setPreviewDisplay(param0: android.view.SurfaceHolder): void;
			public unlock(): void;
			public setAutoFocusMoveCallback(param0: android.hardware.Camera.AutoFocusMoveCallback): void;
			public setOneShotPreviewCallback(param0: android.hardware.Camera.PreviewCallback): void;
			public cancelAutoFocus(): void;
			public static getCameraInfo(param0: number, param1: android.hardware.Camera.CameraInfo): void;
			public addCallbackBuffer(param0: native.Array<number>): void;
			public static open(): android.hardware.Camera;
			public setParameters(param0: android.hardware.Camera.Parameters): void;
			public stopPreview(): void;
			public static getNumberOfCameras(): number;
			public startFaceDetection(): void;
		}
		export module Camera {
			export class Area extends java.lang.Object {
				public static class: java.lang.Class<android.hardware.Camera.Area>;
				public rect: android.graphics.Rect;
				public weight: number;
				public constructor(param0: android.graphics.Rect, param1: number);
				public equals(param0: any): boolean;
			}
			export class AutoFocusCallback extends java.lang.Object {
				public static class: java.lang.Class<android.hardware.Camera.AutoFocusCallback>;
				/**
				 * Constructs a new instance of the android.hardware.Camera$AutoFocusCallback interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onAutoFocus(param0: boolean, param1: android.hardware.Camera): void;
				});
				public constructor();
				public onAutoFocus(param0: boolean, param1: android.hardware.Camera): void;
			}
			export class AutoFocusMoveCallback extends java.lang.Object {
				public static class: java.lang.Class<android.hardware.Camera.AutoFocusMoveCallback>;
				/**
				 * Constructs a new instance of the android.hardware.Camera$AutoFocusMoveCallback interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onAutoFocusMoving(param0: boolean, param1: android.hardware.Camera): void;
				});
				public constructor();
				public onAutoFocusMoving(param0: boolean, param1: android.hardware.Camera): void;
			}
			export class CameraInfo extends java.lang.Object {
				public static class: java.lang.Class<android.hardware.Camera.CameraInfo>;
				public static CAMERA_FACING_BACK: number;
				public static CAMERA_FACING_FRONT: number;
				public facing: number;
				public orientation: number;
				public canDisableShutterSound: boolean;
				public constructor();
			}
			export class ErrorCallback extends java.lang.Object {
				public static class: java.lang.Class<android.hardware.Camera.ErrorCallback>;
				/**
				 * Constructs a new instance of the android.hardware.Camera$ErrorCallback interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onError(param0: number, param1: android.hardware.Camera): void;
				});
				public constructor();
				public onError(param0: number, param1: android.hardware.Camera): void;
			}
			export class Face extends java.lang.Object {
				public static class: java.lang.Class<android.hardware.Camera.Face>;
				public rect: android.graphics.Rect;
				public score: number;
				public id: number;
				public leftEye: android.graphics.Point;
				public rightEye: android.graphics.Point;
				public mouth: android.graphics.Point;
				public constructor();
			}
			export class FaceDetectionListener extends java.lang.Object {
				public static class: java.lang.Class<android.hardware.Camera.FaceDetectionListener>;
				/**
				 * Constructs a new instance of the android.hardware.Camera$FaceDetectionListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onFaceDetection(param0: native.Array<android.hardware.Camera.Face>, param1: android.hardware.Camera): void;
				});
				public constructor();
				public onFaceDetection(param0: native.Array<android.hardware.Camera.Face>, param1: android.hardware.Camera): void;
			}
			export class OnZoomChangeListener extends java.lang.Object {
				public static class: java.lang.Class<android.hardware.Camera.OnZoomChangeListener>;
				/**
				 * Constructs a new instance of the android.hardware.Camera$OnZoomChangeListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onZoomChange(param0: number, param1: boolean, param2: android.hardware.Camera): void;
				});
				public constructor();
				public onZoomChange(param0: number, param1: boolean, param2: android.hardware.Camera): void;
			}
			export class Parameters extends java.lang.Object {
				public static class: java.lang.Class<android.hardware.Camera.Parameters>;
				public static WHITE_BALANCE_AUTO: string;
				public static WHITE_BALANCE_INCANDESCENT: string;
				public static WHITE_BALANCE_FLUORESCENT: string;
				public static WHITE_BALANCE_WARM_FLUORESCENT: string;
				public static WHITE_BALANCE_DAYLIGHT: string;
				public static WHITE_BALANCE_CLOUDY_DAYLIGHT: string;
				public static WHITE_BALANCE_TWILIGHT: string;
				public static WHITE_BALANCE_SHADE: string;
				public static EFFECT_NONE: string;
				public static EFFECT_MONO: string;
				public static EFFECT_NEGATIVE: string;
				public static EFFECT_SOLARIZE: string;
				public static EFFECT_SEPIA: string;
				public static EFFECT_POSTERIZE: string;
				public static EFFECT_WHITEBOARD: string;
				public static EFFECT_BLACKBOARD: string;
				public static EFFECT_AQUA: string;
				public static ANTIBANDING_AUTO: string;
				public static ANTIBANDING_50HZ: string;
				public static ANTIBANDING_60HZ: string;
				public static ANTIBANDING_OFF: string;
				public static FLASH_MODE_OFF: string;
				public static FLASH_MODE_AUTO: string;
				public static FLASH_MODE_ON: string;
				public static FLASH_MODE_RED_EYE: string;
				public static FLASH_MODE_TORCH: string;
				public static SCENE_MODE_AUTO: string;
				public static SCENE_MODE_ACTION: string;
				public static SCENE_MODE_PORTRAIT: string;
				public static SCENE_MODE_LANDSCAPE: string;
				public static SCENE_MODE_NIGHT: string;
				public static SCENE_MODE_NIGHT_PORTRAIT: string;
				public static SCENE_MODE_THEATRE: string;
				public static SCENE_MODE_BEACH: string;
				public static SCENE_MODE_SNOW: string;
				public static SCENE_MODE_SUNSET: string;
				public static SCENE_MODE_STEADYPHOTO: string;
				public static SCENE_MODE_FIREWORKS: string;
				public static SCENE_MODE_SPORTS: string;
				public static SCENE_MODE_PARTY: string;
				public static SCENE_MODE_CANDLELIGHT: string;
				public static SCENE_MODE_BARCODE: string;
				public static SCENE_MODE_HDR: string;
				public static FOCUS_MODE_AUTO: string;
				public static FOCUS_MODE_INFINITY: string;
				public static FOCUS_MODE_MACRO: string;
				public static FOCUS_MODE_FIXED: string;
				public static FOCUS_MODE_EDOF: string;
				public static FOCUS_MODE_CONTINUOUS_VIDEO: string;
				public static FOCUS_MODE_CONTINUOUS_PICTURE: string;
				public static FOCUS_DISTANCE_NEAR_INDEX: number;
				public static FOCUS_DISTANCE_OPTIMAL_INDEX: number;
				public static FOCUS_DISTANCE_FAR_INDEX: number;
				public static PREVIEW_FPS_MIN_INDEX: number;
				public static PREVIEW_FPS_MAX_INDEX: number;
				public getPreviewFormat(): number;
				public setMeteringAreas(param0: java.util.List<android.hardware.Camera.Area>): void;
				public getFocusMode(): string;
				public setPreviewFpsRange(param0: number, param1: number): void;
				public getWhiteBalance(): string;
				public getSupportedPreviewSizes(): java.util.List<android.hardware.Camera.Size>;
				public setPictureFormat(param0: number): void;
				public removeGpsData(): void;
				public isAutoWhiteBalanceLockSupported(): boolean;
				public getSceneMode(): string;
				public getExposureCompensationStep(): number;
				public set(param0: string, param1: number): void;
				public getMaxNumFocusAreas(): number;
				public getFocusAreas(): java.util.List<android.hardware.Camera.Area>;
				public getJpegThumbnailQuality(): number;
				/** @deprecated */
				public setPreviewFrameRate(param0: number): void;
				public isSmoothZoomSupported(): boolean;
				public getVideoStabilization(): boolean;
				public getMaxExposureCompensation(): number;
				/** @deprecated */
				public getPreviewFrameRate(): number;
				public getSupportedJpegThumbnailSizes(): java.util.List<android.hardware.Camera.Size>;
				public getMaxNumMeteringAreas(): number;
				public setJpegThumbnailQuality(param0: number): void;
				public setColorEffect(param0: string): void;
				public setVideoStabilization(param0: boolean): void;
				/** @deprecated */
				public getSupportedPreviewFrameRates(): java.util.List<java.lang.Integer>;
				public getPictureFormat(): number;
				public get(param0: string): string;
				public setFlashMode(param0: string): void;
				public getAntibanding(): string;
				public getJpegThumbnailSize(): android.hardware.Camera.Size;
				public getSupportedPreviewFormats(): java.util.List<java.lang.Integer>;
				public getSupportedPictureSizes(): java.util.List<android.hardware.Camera.Size>;
				public setAntibanding(param0: string): void;
				public getSupportedAntibanding(): java.util.List<string>;
				public getFlashMode(): string;
				public getExposureCompensation(): number;
				public getPreviewFpsRange(param0: native.Array<number>): void;
				public getHorizontalViewAngle(): number;
				public set(param0: string, param1: string): void;
				public getSupportedPictureFormats(): java.util.List<java.lang.Integer>;
				public getPictureSize(): android.hardware.Camera.Size;
				public isVideoSnapshotSupported(): boolean;
				public getAutoWhiteBalanceLock(): boolean;
				public isVideoStabilizationSupported(): boolean;
				public setFocusAreas(param0: java.util.List<android.hardware.Camera.Area>): void;
				public setWhiteBalance(param0: string): void;
				public getMaxNumDetectedFaces(): number;
				public getFocusDistances(param0: native.Array<number>): void;
				public getPreferredPreviewSizeForVideo(): android.hardware.Camera.Size;
				public setJpegThumbnailSize(param0: number, param1: number): void;
				public getVerticalViewAngle(): number;
				public getZoom(): number;
				public setGpsTimestamp(param0: number): void;
				public getSupportedFlashModes(): java.util.List<string>;
				public setFocusMode(param0: string): void;
				public setRecordingHint(param0: boolean): void;
				public setSceneMode(param0: string): void;
				public setGpsLatitude(param0: number): void;
				public unflatten(param0: string): void;
				public flatten(): string;
				public setExposureCompensation(param0: number): void;
				public getSupportedWhiteBalance(): java.util.List<string>;
				public getSupportedSceneModes(): java.util.List<string>;
				public getJpegQuality(): number;
				public setPreviewFormat(param0: number): void;
				public getFocalLength(): number;
				public setAutoWhiteBalanceLock(param0: boolean): void;
				public getSupportedVideoSizes(): java.util.List<android.hardware.Camera.Size>;
				public setPictureSize(param0: number, param1: number): void;
				public setJpegQuality(param0: number): void;
				public setPreviewSize(param0: number, param1: number): void;
				public setZoom(param0: number): void;
				public getZoomRatios(): java.util.List<java.lang.Integer>;
				public getColorEffect(): string;
				public getSupportedColorEffects(): java.util.List<string>;
				public getPreviewSize(): android.hardware.Camera.Size;
				public getAutoExposureLock(): boolean;
				public getSupportedPreviewFpsRange(): java.util.List<native.Array<number>>;
				public getSupportedFocusModes(): java.util.List<string>;
				public setAutoExposureLock(param0: boolean): void;
				public setGpsAltitude(param0: number): void;
				public getMaxZoom(): number;
				public getMeteringAreas(): java.util.List<android.hardware.Camera.Area>;
				public isAutoExposureLockSupported(): boolean;
				public remove(param0: string): void;
				public setRotation(param0: number): void;
				public setGpsProcessingMethod(param0: string): void;
				public getMinExposureCompensation(): number;
				public isZoomSupported(): boolean;
				public setGpsLongitude(param0: number): void;
				public getInt(param0: string): number;
			}
			export class PictureCallback extends java.lang.Object {
				public static class: java.lang.Class<android.hardware.Camera.PictureCallback>;
				/**
				 * Constructs a new instance of the android.hardware.Camera$PictureCallback interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onPictureTaken(param0: native.Array<number>, param1: android.hardware.Camera): void;
				});
				public constructor();
				public onPictureTaken(param0: native.Array<number>, param1: android.hardware.Camera): void;
			}
			export class PreviewCallback extends java.lang.Object {
				public static class: java.lang.Class<android.hardware.Camera.PreviewCallback>;
				/**
				 * Constructs a new instance of the android.hardware.Camera$PreviewCallback interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onPreviewFrame(param0: native.Array<number>, param1: android.hardware.Camera): void;
				});
				public constructor();
				public onPreviewFrame(param0: native.Array<number>, param1: android.hardware.Camera): void;
			}
			export class ShutterCallback extends java.lang.Object {
				public static class: java.lang.Class<android.hardware.Camera.ShutterCallback>;
				/**
				 * Constructs a new instance of the android.hardware.Camera$ShutterCallback interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onShutter(): void;
				});
				public constructor();
				public onShutter(): void;
			}
			export class Size extends java.lang.Object {
				public static class: java.lang.Class<android.hardware.Camera.Size>;
				public width: number;
				public height: number;
				public hashCode(): number;
				public constructor(param0: android.hardware.Camera, param1: number, param2: number);
				public equals(param0: any): boolean;
			}
		}
	}
}

declare module android {
	export module hardware {
		export class GeomagneticField extends java.lang.Object {
			public static class: java.lang.Class<android.hardware.GeomagneticField>;
			public getInclination(): number;
			public getHorizontalStrength(): number;
			public getY(): number;
			public getDeclination(): number;
			public getX(): number;
			public constructor(param0: number, param1: number, param2: number, param3: number);
			public getZ(): number;
			public getFieldStrength(): number;
		}
	}
}

declare module android {
	export module hardware {
		export class Sensor extends java.lang.Object {
			public static class: java.lang.Class<android.hardware.Sensor>;
			public static TYPE_ACCELEROMETER: number;
			public static TYPE_MAGNETIC_FIELD: number;
			public static TYPE_ORIENTATION: number;
			public static TYPE_GYROSCOPE: number;
			public static TYPE_LIGHT: number;
			public static TYPE_PRESSURE: number;
			public static TYPE_TEMPERATURE: number;
			public static TYPE_PROXIMITY: number;
			public static TYPE_GRAVITY: number;
			public static TYPE_LINEAR_ACCELERATION: number;
			public static TYPE_ROTATION_VECTOR: number;
			public static TYPE_RELATIVE_HUMIDITY: number;
			public static TYPE_AMBIENT_TEMPERATURE: number;
			public static TYPE_MAGNETIC_FIELD_UNCALIBRATED: number;
			public static TYPE_GAME_ROTATION_VECTOR: number;
			public static TYPE_GYROSCOPE_UNCALIBRATED: number;
			public static TYPE_SIGNIFICANT_MOTION: number;
			public static TYPE_ALL: number;
			public getType(): number;
			public toString(): string;
			public getName(): string;
			public getVendor(): string;
			public getResolution(): number;
			public getMaximumRange(): number;
			public getPower(): number;
			public getMinDelay(): number;
			public getVersion(): number;
		}
	}
}

declare module android {
	export module hardware {
		export class SensorEvent extends java.lang.Object {
			public static class: java.lang.Class<android.hardware.SensorEvent>;
			public values: native.Array<number>;
			public sensor: android.hardware.Sensor;
			public accuracy: number;
			public timestamp: number;
		}
	}
}

declare module android {
	export module hardware {
		export class SensorEventListener extends java.lang.Object {
			public static class: java.lang.Class<android.hardware.SensorEventListener>;
			/**
			 * Constructs a new instance of the android.hardware.SensorEventListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				onSensorChanged(param0: android.hardware.SensorEvent): void;
				onAccuracyChanged(param0: android.hardware.Sensor, param1: number): void;
			});
			public constructor();
			public onAccuracyChanged(param0: android.hardware.Sensor, param1: number): void;
			public onSensorChanged(param0: android.hardware.SensorEvent): void;
		}
	}
}

declare module android {
	export module hardware {
		export class SensorListener extends java.lang.Object {
			public static class: java.lang.Class<android.hardware.SensorListener>;
			/**
			 * Constructs a new instance of the android.hardware.SensorListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				onSensorChanged(param0: number, param1: native.Array<number>): void;
				onAccuracyChanged(param0: number, param1: number): void;
			});
			public constructor();
			public onSensorChanged(param0: number, param1: native.Array<number>): void;
			public onAccuracyChanged(param0: number, param1: number): void;
		}
	}
}

declare module android {
	export module hardware {
		export abstract class SensorManager extends java.lang.Object {
			public static class: java.lang.Class<android.hardware.SensorManager>;
			public static SENSOR_ORIENTATION: number;
			public static SENSOR_ACCELEROMETER: number;
			public static SENSOR_TEMPERATURE: number;
			public static SENSOR_MAGNETIC_FIELD: number;
			public static SENSOR_LIGHT: number;
			public static SENSOR_PROXIMITY: number;
			public static SENSOR_TRICORDER: number;
			public static SENSOR_ORIENTATION_RAW: number;
			public static SENSOR_ALL: number;
			public static SENSOR_MIN: number;
			public static SENSOR_MAX: number;
			public static DATA_X: number;
			public static DATA_Y: number;
			public static DATA_Z: number;
			public static RAW_DATA_INDEX: number;
			public static RAW_DATA_X: number;
			public static RAW_DATA_Y: number;
			public static RAW_DATA_Z: number;
			public static STANDARD_GRAVITY: number;
			public static GRAVITY_SUN: number;
			public static GRAVITY_MERCURY: number;
			public static GRAVITY_VENUS: number;
			public static GRAVITY_EARTH: number;
			public static GRAVITY_MOON: number;
			public static GRAVITY_MARS: number;
			public static GRAVITY_JUPITER: number;
			public static GRAVITY_SATURN: number;
			public static GRAVITY_URANUS: number;
			public static GRAVITY_NEPTUNE: number;
			public static GRAVITY_PLUTO: number;
			public static GRAVITY_DEATH_STAR_I: number;
			public static GRAVITY_THE_ISLAND: number;
			public static MAGNETIC_FIELD_EARTH_MAX: number;
			public static MAGNETIC_FIELD_EARTH_MIN: number;
			public static PRESSURE_STANDARD_ATMOSPHERE: number;
			public static LIGHT_SUNLIGHT_MAX: number;
			public static LIGHT_SUNLIGHT: number;
			public static LIGHT_SHADE: number;
			public static LIGHT_OVERCAST: number;
			public static LIGHT_SUNRISE: number;
			public static LIGHT_CLOUDY: number;
			public static LIGHT_FULLMOON: number;
			public static LIGHT_NO_MOON: number;
			public static SENSOR_DELAY_FASTEST: number;
			public static SENSOR_DELAY_GAME: number;
			public static SENSOR_DELAY_UI: number;
			public static SENSOR_DELAY_NORMAL: number;
			public static SENSOR_STATUS_UNRELIABLE: number;
			public static SENSOR_STATUS_ACCURACY_LOW: number;
			public static SENSOR_STATUS_ACCURACY_MEDIUM: number;
			public static SENSOR_STATUS_ACCURACY_HIGH: number;
			public static AXIS_X: number;
			public static AXIS_Y: number;
			public static AXIS_Z: number;
			public static AXIS_MINUS_X: number;
			public static AXIS_MINUS_Y: number;
			public static AXIS_MINUS_Z: number;
			/** @deprecated */
			public unregisterListener(param0: android.hardware.SensorListener, param1: number): void;
			public static remapCoordinateSystem(param0: native.Array<number>, param1: number, param2: number, param3: native.Array<number>): boolean;
			public static getAngleChange(param0: native.Array<number>, param1: native.Array<number>, param2: native.Array<number>): void;
			public getDefaultSensor(param0: number): android.hardware.Sensor;
			public unregisterListener(param0: android.hardware.SensorEventListener, param1: android.hardware.Sensor): void;
			/** @deprecated */
			public registerListener(param0: android.hardware.SensorListener, param1: number, param2: number): boolean;
			public cancelTriggerSensor(param0: android.hardware.TriggerEventListener, param1: android.hardware.Sensor): boolean;
			public static getQuaternionFromVector(param0: native.Array<number>, param1: native.Array<number>): void;
			public registerListener(param0: android.hardware.SensorEventListener, param1: android.hardware.Sensor, param2: number, param3: android.os.Handler): boolean;
			public static getInclination(param0: native.Array<number>): number;
			/** @deprecated */
			public unregisterListener(param0: android.hardware.SensorListener): void;
			public static getAltitude(param0: number, param1: number): number;
			public registerListener(param0: android.hardware.SensorEventListener, param1: android.hardware.Sensor, param2: number): boolean;
			public getSensorList(param0: number): java.util.List<android.hardware.Sensor>;
			public static getRotationMatrix(param0: native.Array<number>, param1: native.Array<number>, param2: native.Array<number>, param3: native.Array<number>): boolean;
			/** @deprecated */
			public getSensors(): number;
			public requestTriggerSensor(param0: android.hardware.TriggerEventListener, param1: android.hardware.Sensor): boolean;
			public unregisterListener(param0: android.hardware.SensorEventListener): void;
			public static getRotationMatrixFromVector(param0: native.Array<number>, param1: native.Array<number>): void;
			/** @deprecated */
			public registerListener(param0: android.hardware.SensorListener, param1: number): boolean;
			public static getOrientation(param0: native.Array<number>, param1: native.Array<number>): native.Array<number>;
		}
	}
}

declare module android {
	export module hardware {
		export class TriggerEvent extends java.lang.Object {
			public static class: java.lang.Class<android.hardware.TriggerEvent>;
			public values: native.Array<number>;
			public sensor: android.hardware.Sensor;
			public timestamp: number;
		}
	}
}

declare module android {
	export module hardware {
		export abstract class TriggerEventListener extends java.lang.Object {
			public static class: java.lang.Class<android.hardware.TriggerEventListener>;
			public onTrigger(param0: android.hardware.TriggerEvent): void;
			public constructor();
		}
	}
}

declare module android {
	export module hardware {
		export module display {
			export class DisplayManager extends java.lang.Object {
				public static class: java.lang.Class<android.hardware.display.DisplayManager>;
				public static DISPLAY_CATEGORY_PRESENTATION: string;
				public getDisplay(param0: number): android.view.Display;
				public getDisplays(): native.Array<android.view.Display>;
				public getDisplays(param0: string): native.Array<android.view.Display>;
				public registerDisplayListener(param0: android.hardware.display.DisplayManager.DisplayListener, param1: android.os.Handler): void;
				public unregisterDisplayListener(param0: android.hardware.display.DisplayManager.DisplayListener): void;
			}
			export module DisplayManager {
				export class DisplayListener extends java.lang.Object {
					public static class: java.lang.Class<android.hardware.display.DisplayManager.DisplayListener>;
					/**
					 * Constructs a new instance of the android.hardware.display.DisplayManager$DisplayListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						onDisplayAdded(param0: number): void;
						onDisplayRemoved(param0: number): void;
						onDisplayChanged(param0: number): void;
					});
					public constructor();
					public onDisplayRemoved(param0: number): void;
					public onDisplayAdded(param0: number): void;
					public onDisplayChanged(param0: number): void;
				}
			}
		}
	}
}

declare module android {
	export module hardware {
		export module input {
			export class InputManager extends java.lang.Object {
				public static class: java.lang.Class<android.hardware.input.InputManager>;
				public static ACTION_QUERY_KEYBOARD_LAYOUTS: string;
				public static META_DATA_KEYBOARD_LAYOUTS: string;
				public getInputDeviceIds(): native.Array<number>;
				public registerInputDeviceListener(param0: android.hardware.input.InputManager.InputDeviceListener, param1: android.os.Handler): void;
				public getInputDevice(param0: number): android.view.InputDevice;
				public unregisterInputDeviceListener(param0: android.hardware.input.InputManager.InputDeviceListener): void;
			}
			export module InputManager {
				export class InputDeviceListener extends java.lang.Object {
					public static class: java.lang.Class<android.hardware.input.InputManager.InputDeviceListener>;
					/**
					 * Constructs a new instance of the android.hardware.input.InputManager$InputDeviceListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						onInputDeviceAdded(param0: number): void;
						onInputDeviceRemoved(param0: number): void;
						onInputDeviceChanged(param0: number): void;
					});
					public constructor();
					public onInputDeviceRemoved(param0: number): void;
					public onInputDeviceAdded(param0: number): void;
					public onInputDeviceChanged(param0: number): void;
				}
			}
		}
	}
}

declare module android {
	export module hardware {
		export module location {
			export class GeofenceHardware extends java.lang.Object {
				public static class: java.lang.Class<android.hardware.location.GeofenceHardware>;
				public static MONITORING_TYPE_GPS_HARDWARE: number;
				public static MONITOR_CURRENTLY_AVAILABLE: number;
				public static MONITOR_CURRENTLY_UNAVAILABLE: number;
				public static MONITOR_UNSUPPORTED: number;
				public static GEOFENCE_ENTERED: number;
				public static GEOFENCE_EXITED: number;
				public static GEOFENCE_UNCERTAIN: number;
				public static GEOFENCE_SUCCESS: number;
				public static GEOFENCE_ERROR_TOO_MANY_GEOFENCES: number;
				public static GEOFENCE_ERROR_ID_EXISTS: number;
				public static GEOFENCE_ERROR_ID_UNKNOWN: number;
				public static GEOFENCE_ERROR_INVALID_TRANSITION: number;
				public static GEOFENCE_FAILURE: number;
				public getStatusOfMonitoringType(param0: number): number;
				public resumeGeofence(param0: number, param1: number, param2: number): boolean;
				public getMonitoringTypes(): native.Array<number>;
				public pauseGeofence(param0: number, param1: number): boolean;
				public registerForMonitorStateChangeCallback(param0: number, param1: android.hardware.location.GeofenceHardwareMonitorCallback): boolean;
				public addGeofence(param0: number, param1: number, param2: android.hardware.location.GeofenceHardwareRequest, param3: android.hardware.location.GeofenceHardwareCallback): boolean;
				public unregisterForMonitorStateChangeCallback(param0: number, param1: android.hardware.location.GeofenceHardwareMonitorCallback): boolean;
				public removeGeofence(param0: number, param1: number): boolean;
			}
		}
	}
}

declare module android {
	export module hardware {
		export module location {
			export abstract class GeofenceHardwareCallback extends java.lang.Object {
				public static class: java.lang.Class<android.hardware.location.GeofenceHardwareCallback>;
				public onGeofenceRemove(param0: number, param1: number): void;
				public onGeofenceAdd(param0: number, param1: number): void;
				public onGeofenceResume(param0: number, param1: number): void;
				public onGeofenceTransition(param0: number, param1: number, param2: android.location.Location, param3: number, param4: number): void;
				public onGeofencePause(param0: number, param1: number): void;
				public constructor();
			}
		}
	}
}

declare module android {
	export module hardware {
		export module location {
			export abstract class GeofenceHardwareMonitorCallback extends java.lang.Object {
				public static class: java.lang.Class<android.hardware.location.GeofenceHardwareMonitorCallback>;
				public onMonitoringSystemChange(param0: number, param1: boolean, param2: android.location.Location): void;
				public constructor();
			}
		}
	}
}

declare module android {
	export module hardware {
		export module location {
			export class GeofenceHardwareRequest extends java.lang.Object {
				public static class: java.lang.Class<android.hardware.location.GeofenceHardwareRequest>;
				public getLastTransition(): number;
				public static createCircularGeofence(param0: number, param1: number, param2: number): android.hardware.location.GeofenceHardwareRequest;
				public setNotificationResponsiveness(param0: number): void;
				public constructor();
				public getRadius(): number;
				public setUnknownTimer(param0: number): void;
				public setMonitorTransitions(param0: number): void;
				public getLatitude(): number;
				public getUnknownTimer(): number;
				public getMonitorTransitions(): number;
				public getLongitude(): number;
				public setLastTransition(param0: number): void;
				public getNotificationResponsiveness(): number;
			}
		}
	}
}

declare module android {
	export module hardware {
		export module usb {
			export class UsbAccessory extends java.lang.Object implements android.os.Parcelable {
				public static class: java.lang.Class<android.hardware.usb.UsbAccessory>;
				public static CREATOR: android.os.Parcelable.Creator<android.hardware.usb.UsbAccessory>;
				public getVersion(): string;
				public getUri(): string;
				public getManufacturer(): string;
				public hashCode(): number;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public getSerial(): string;
				public equals(param0: any): boolean;
				public describeContents(): number;
				public getDescription(): string;
				public getModel(): string;
				public toString(): string;
			}
		}
	}
}

declare module android {
	export module hardware {
		export module usb {
			export class UsbConstants extends java.lang.Object {
				public static class: java.lang.Class<android.hardware.usb.UsbConstants>;
				public static USB_ENDPOINT_DIR_MASK: number;
				public static USB_DIR_OUT: number;
				public static USB_DIR_IN: number;
				public static USB_ENDPOINT_NUMBER_MASK: number;
				public static USB_ENDPOINT_XFERTYPE_MASK: number;
				public static USB_ENDPOINT_XFER_CONTROL: number;
				public static USB_ENDPOINT_XFER_ISOC: number;
				public static USB_ENDPOINT_XFER_BULK: number;
				public static USB_ENDPOINT_XFER_INT: number;
				public static USB_TYPE_MASK: number;
				public static USB_TYPE_STANDARD: number;
				public static USB_TYPE_CLASS: number;
				public static USB_TYPE_VENDOR: number;
				public static USB_TYPE_RESERVED: number;
				public static USB_CLASS_PER_INTERFACE: number;
				public static USB_CLASS_AUDIO: number;
				public static USB_CLASS_COMM: number;
				public static USB_CLASS_HID: number;
				public static USB_CLASS_PHYSICA: number;
				public static USB_CLASS_STILL_IMAGE: number;
				public static USB_CLASS_PRINTER: number;
				public static USB_CLASS_MASS_STORAGE: number;
				public static USB_CLASS_HUB: number;
				public static USB_CLASS_CDC_DATA: number;
				public static USB_CLASS_CSCID: number;
				public static USB_CLASS_CONTENT_SEC: number;
				public static USB_CLASS_VIDEO: number;
				public static USB_CLASS_WIRELESS_CONTROLLER: number;
				public static USB_CLASS_MISC: number;
				public static USB_CLASS_APP_SPEC: number;
				public static USB_CLASS_VENDOR_SPEC: number;
				public static USB_INTERFACE_SUBCLASS_BOOT: number;
				public static USB_SUBCLASS_VENDOR_SPEC: number;
				public constructor();
			}
		}
	}
}

declare module android {
	export module hardware {
		export module usb {
			export class UsbDevice extends java.lang.Object implements android.os.Parcelable {
				public static class: java.lang.Class<android.hardware.usb.UsbDevice>;
				public static CREATOR: android.os.Parcelable.Creator<android.hardware.usb.UsbDevice>;
				public getVendorId(): number;
				public getProductId(): number;
				public getDeviceName(): string;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public getDeviceProtocol(): number;
				public static getDeviceName(param0: number): string;
				public toString(): string;
				public getDeviceSubclass(): number;
				public getInterface(param0: number): android.hardware.usb.UsbInterface;
				public getDeviceId(): number;
				public static getDeviceId(param0: string): number;
				public hashCode(): number;
				public getDeviceClass(): number;
				public equals(param0: any): boolean;
				public describeContents(): number;
				public getInterfaceCount(): number;
			}
		}
	}
}

declare module android {
	export module hardware {
		export module usb {
			export class UsbDeviceConnection extends java.lang.Object {
				public static class: java.lang.Class<android.hardware.usb.UsbDeviceConnection>;
				public bulkTransfer(param0: android.hardware.usb.UsbEndpoint, param1: native.Array<number>, param2: number, param3: number): number;
				public close(): void;
				public claimInterface(param0: android.hardware.usb.UsbInterface, param1: boolean): boolean;
				public getFileDescriptor(): number;
				public getRawDescriptors(): native.Array<number>;
				public controlTransfer(param0: number, param1: number, param2: number, param3: number, param4: native.Array<number>, param5: number, param6: number, param7: number): number;
				public getSerial(): string;
				public bulkTransfer(param0: android.hardware.usb.UsbEndpoint, param1: native.Array<number>, param2: number, param3: number, param4: number): number;
				public controlTransfer(param0: number, param1: number, param2: number, param3: number, param4: native.Array<number>, param5: number, param6: number): number;
				public releaseInterface(param0: android.hardware.usb.UsbInterface): boolean;
				public requestWait(): android.hardware.usb.UsbRequest;
			}
		}
	}
}

declare module android {
	export module hardware {
		export module usb {
			export class UsbEndpoint extends java.lang.Object implements android.os.Parcelable {
				public static class: java.lang.Class<android.hardware.usb.UsbEndpoint>;
				public static CREATOR: android.os.Parcelable.Creator<android.hardware.usb.UsbEndpoint>;
				public getEndpointNumber(): number;
				public getMaxPacketSize(): number;
				public getDirection(): number;
				public getAttributes(): number;
				public getType(): number;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public getInterval(): number;
				public describeContents(): number;
				public getAddress(): number;
				public toString(): string;
			}
		}
	}
}

declare module android {
	export module hardware {
		export module usb {
			export class UsbInterface extends java.lang.Object implements android.os.Parcelable {
				public static class: java.lang.Class<android.hardware.usb.UsbInterface>;
				public static CREATOR: android.os.Parcelable.Creator<android.hardware.usb.UsbInterface>;
				public getInterfaceSubclass(): number;
				public getEndpointCount(): number;
				public getInterfaceProtocol(): number;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public getId(): number;
				public describeContents(): number;
				public getEndpoint(param0: number): android.hardware.usb.UsbEndpoint;
				public toString(): string;
				public getInterfaceClass(): number;
			}
		}
	}
}

declare module android {
	export module hardware {
		export module usb {
			export class UsbManager extends java.lang.Object {
				public static class: java.lang.Class<android.hardware.usb.UsbManager>;
				public static ACTION_USB_DEVICE_ATTACHED: string;
				public static ACTION_USB_DEVICE_DETACHED: string;
				public static ACTION_USB_ACCESSORY_ATTACHED: string;
				public static ACTION_USB_ACCESSORY_DETACHED: string;
				public static EXTRA_DEVICE: string;
				public static EXTRA_ACCESSORY: string;
				public static EXTRA_PERMISSION_GRANTED: string;
				public requestPermission(param0: android.hardware.usb.UsbDevice, param1: android.app.PendingIntent): void;
				public getAccessoryList(): native.Array<android.hardware.usb.UsbAccessory>;
				public hasPermission(param0: android.hardware.usb.UsbAccessory): boolean;
				public requestPermission(param0: android.hardware.usb.UsbAccessory, param1: android.app.PendingIntent): void;
				public getDeviceList(): java.util.HashMap<string,android.hardware.usb.UsbDevice>;
				public openDevice(param0: android.hardware.usb.UsbDevice): android.hardware.usb.UsbDeviceConnection;
				public openAccessory(param0: android.hardware.usb.UsbAccessory): android.os.ParcelFileDescriptor;
				public hasPermission(param0: android.hardware.usb.UsbDevice): boolean;
			}
		}
	}
}

declare module android {
	export module hardware {
		export module usb {
			export class UsbRequest extends java.lang.Object {
				public static class: java.lang.Class<android.hardware.usb.UsbRequest>;
				public getEndpoint(): android.hardware.usb.UsbEndpoint;
				public close(): void;
				public setClientData(param0: any): void;
				public initialize(param0: android.hardware.usb.UsbDeviceConnection, param1: android.hardware.usb.UsbEndpoint): boolean;
				public queue(param0: java.nio.ByteBuffer, param1: number): boolean;
				public finalize(): void;
				public getClientData(): any;
				public cancel(): boolean;
				public constructor();
			}
		}
	}
}

declare module android {
	export module inputmethodservice {
		export abstract class AbstractInputMethodService extends android.app.Service implements android.view.KeyEvent.Callback {
			public static class: java.lang.Class<android.inputmethodservice.AbstractInputMethodService>;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public onBind(param0: android.content.Intent): android.os.IBinder;
			public dump(param0: java.io.FileDescriptor, param1: java.io.PrintWriter, param2: native.Array<string>): void;
			public constructor();
			public onGenericMotionEvent(param0: android.view.MotionEvent): boolean;
			public getKeyDispatcherState(): android.view.KeyEvent.DispatcherState;
			public onTrackballEvent(param0: android.view.MotionEvent): boolean;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public onCreateInputMethodSessionInterface(): android.inputmethodservice.AbstractInputMethodService.AbstractInputMethodSessionImpl;
			public onTrimMemory(param0: number): void;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public constructor(param0: android.content.Context);
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public onCreateInputMethodInterface(): android.inputmethodservice.AbstractInputMethodService.AbstractInputMethodImpl;
		}
		export module AbstractInputMethodService {
			export abstract class AbstractInputMethodImpl extends java.lang.Object implements android.view.inputmethod.InputMethod {
				public static class: java.lang.Class<android.inputmethodservice.AbstractInputMethodService.AbstractInputMethodImpl>;
				public startInput(param0: android.view.inputmethod.InputConnection, param1: android.view.inputmethod.EditorInfo): void;
				public bindInput(param0: android.view.inputmethod.InputBinding): void;
				public setSessionEnabled(param0: android.view.inputmethod.InputMethodSession, param1: boolean): void;
				public restartInput(param0: android.view.inputmethod.InputConnection, param1: android.view.inputmethod.EditorInfo): void;
				public unbindInput(): void;
				public showSoftInput(param0: number, param1: android.os.ResultReceiver): void;
				public hideSoftInput(param0: number, param1: android.os.ResultReceiver): void;
				public revokeSession(param0: android.view.inputmethod.InputMethodSession): void;
				public attachToken(param0: android.os.IBinder): void;
				public constructor(param0: android.inputmethodservice.AbstractInputMethodService);
				public createSession(param0: android.view.inputmethod.InputMethod.SessionCallback): void;
				public changeInputMethodSubtype(param0: android.view.inputmethod.InputMethodSubtype): void;
			}
			export abstract class AbstractInputMethodSessionImpl extends java.lang.Object implements android.view.inputmethod.InputMethodSession {
				public static class: java.lang.Class<android.inputmethodservice.AbstractInputMethodService.AbstractInputMethodSessionImpl>;
				public revokeSelf(): void;
				public dispatchTrackballEvent(param0: number, param1: android.view.MotionEvent, param2: android.view.inputmethod.InputMethodSession.EventCallback): void;
				public appPrivateCommand(param0: string, param1: android.os.Bundle): void;
				public updateSelection(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): void;
				public setEnabled(param0: boolean): void;
				public constructor(param0: android.inputmethodservice.AbstractInputMethodService);
				public dispatchKeyEvent(param0: number, param1: android.view.KeyEvent, param2: android.view.inputmethod.InputMethodSession.EventCallback): void;
				public viewClicked(param0: boolean): void;
				public isRevoked(): boolean;
				public finishInput(): void;
				public updateCursor(param0: android.graphics.Rect): void;
				public toggleSoftInput(param0: number, param1: number): void;
				public isEnabled(): boolean;
				public dispatchGenericMotionEvent(param0: number, param1: android.view.MotionEvent, param2: android.view.inputmethod.InputMethodSession.EventCallback): void;
				public displayCompletions(param0: native.Array<android.view.inputmethod.CompletionInfo>): void;
				public updateExtractedText(param0: number, param1: android.view.inputmethod.ExtractedText): void;
			}
		}
	}
}

declare module android {
	export module inputmethodservice {
		export class ExtractEditText extends android.widget.EditText {
			public static class: java.lang.Class<android.inputmethodservice.ExtractEditText>;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public hasVerticalScrollBar(): boolean;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public finishInternalChanges(): void;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public startInternalChanges(): void;
			public onPreDraw(): boolean;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public isInputMethodTarget(): boolean;
			public sendAccessibilityEvent(param0: number): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public isFocused(): boolean;
			public onTextContextMenuItem(param0: number): boolean;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public setExtractedText(param0: android.view.inputmethod.ExtractedText): void;
			public hasWindowFocus(): boolean;
			public constructor(param0: android.content.Context);
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public performClick(): boolean;
			public onSelectionChanged(param0: number, param1: number): void;
			public hasFocus(): boolean;
		}
	}
}

declare module android {
	export module inputmethodservice {
		export class InputMethodService extends android.inputmethodservice.AbstractInputMethodService {
			public static class: java.lang.Class<android.inputmethodservice.InputMethodService>;
			public static BACK_DISPOSITION_DEFAULT: number;
			public static BACK_DISPOSITION_WILL_NOT_DISMISS: number;
			public static BACK_DISPOSITION_WILL_DISMISS: number;
			public onExtractTextContextMenuItem(param0: number): boolean;
			public onWindowHidden(): void;
			public onExtractedCursorMovement(param0: number, param1: number): void;
			public getLayoutInflater(): android.view.LayoutInflater;
			public dump(param0: java.io.FileDescriptor, param1: java.io.PrintWriter, param2: native.Array<string>): void;
			public showWindow(param0: boolean): void;
			public onCreateCandidatesView(): android.view.View;
			public onStartInput(param0: android.view.inputmethod.EditorInfo, param1: boolean): void;
			public onViewClicked(param0: boolean): void;
			public onCreateInputMethodSessionInterface(): android.inputmethodservice.AbstractInputMethodService.AbstractInputMethodSessionImpl;
			public getBackDisposition(): number;
			public getCurrentInputBinding(): android.view.inputmethod.InputBinding;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public setCandidatesView(param0: android.view.View): void;
			public onUpdateSelection(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): void;
			public sendDefaultEditorAction(param0: boolean): boolean;
			public onFinishInputView(param0: boolean): void;
			public setExtractView(param0: android.view.View): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public onCreateInputMethodInterface(): android.inputmethodservice.AbstractInputMethodService.AbstractInputMethodImpl;
			public getCurrentInputConnection(): android.view.inputmethod.InputConnection;
			public hideWindow(): void;
			public onEvaluateFullscreenMode(): boolean;
			public onConfigureWindow(param0: android.view.Window, param1: boolean, param2: boolean): void;
			public onCurrentInputMethodSubtypeChanged(param0: android.view.inputmethod.InputMethodSubtype): void;
			public onUpdateCursor(param0: android.graphics.Rect): void;
			public onCreate(): void;
			public constructor();
			public onFinishCandidatesView(param0: boolean): void;
			public requestHideSelf(param0: number): void;
			public setBackDisposition(param0: number): void;
			public onExtractingInputChanged(param0: android.view.inputmethod.EditorInfo): void;
			public onTrackballEvent(param0: android.view.MotionEvent): boolean;
			public setCandidatesViewShown(param0: boolean): void;
			public onStartInputView(param0: android.view.inputmethod.EditorInfo, param1: boolean): void;
			public onInitializeInterface(): void;
			public onShowInputRequested(param0: number, param1: boolean): boolean;
			public onExtractedSelectionChanged(param0: number, param1: number): void;
			public onFinishInput(): void;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public updateInputViewShown(): void;
			public onCreateInputView(): android.view.View;
			public isFullscreenMode(): boolean;
			public onUnbindInput(): void;
			public getWindow(): android.app.Dialog;
			public onDestroy(): void;
			public onGenericMotionEvent(param0: android.view.MotionEvent): boolean;
			public sendDownUpKeyEvents(param0: number): void;
			public onCreateExtractTextView(): android.view.View;
			public sendKeyChar(param0: string): void;
			public onTrimMemory(param0: number): void;
			public hideStatusIcon(): void;
			public onUpdateExtractedText(param0: number, param1: android.view.inputmethod.ExtractedText): void;
			public getCurrentInputEditorInfo(): android.view.inputmethod.EditorInfo;
			public onExtractedTextClicked(): void;
			public onComputeInsets(param0: android.inputmethodservice.InputMethodService.Insets): void;
			public updateFullscreenMode(): void;
			public isExtractViewShown(): boolean;
			public onConfigurationChanged(param0: android.content.res.Configuration): void;
			public getTextForImeAction(param0: number): string;
			public onUpdateExtractingViews(param0: android.view.inputmethod.EditorInfo): void;
			public switchInputMethod(param0: string): void;
			public setInputView(param0: android.view.View): void;
			public getMaxWidth(): number;
			public onStartCandidatesView(param0: android.view.inputmethod.EditorInfo, param1: boolean): void;
			public onBindInput(): void;
			public getCandidatesHiddenVisibility(): number;
			public onWindowShown(): void;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public onAppPrivateCommand(param0: string, param1: android.os.Bundle): void;
			public setExtractViewShown(param0: boolean): void;
			public setTheme(param0: number): void;
			public getCurrentInputStarted(): boolean;
			public showStatusIcon(param0: number): void;
			public constructor(param0: android.content.Context);
			public enableHardwareAcceleration(): boolean;
			public onEvaluateInputViewShown(): boolean;
			public onDisplayCompletions(param0: native.Array<android.view.inputmethod.CompletionInfo>): void;
			public isInputViewShown(): boolean;
			public onUpdateExtractingVisibility(param0: android.view.inputmethod.EditorInfo): void;
			public isShowInputRequested(): boolean;
		}
		export module InputMethodService {
			export class InputMethodImpl extends android.inputmethodservice.AbstractInputMethodService.AbstractInputMethodImpl {
				public static class: java.lang.Class<android.inputmethodservice.InputMethodService.InputMethodImpl>;
				public bindInput(param0: android.view.inputmethod.InputBinding): void;
				public setSessionEnabled(param0: android.view.inputmethod.InputMethodSession, param1: boolean): void;
				public unbindInput(): void;
				public hideSoftInput(param0: number, param1: android.os.ResultReceiver): void;
				public revokeSession(param0: android.view.inputmethod.InputMethodSession): void;
				public attachToken(param0: android.os.IBinder): void;
				public constructor(param0: android.inputmethodservice.AbstractInputMethodService);
				public createSession(param0: android.view.inputmethod.InputMethod.SessionCallback): void;
				public startInput(param0: android.view.inputmethod.InputConnection, param1: android.view.inputmethod.EditorInfo): void;
				public constructor(param0: android.inputmethodservice.InputMethodService);
				public restartInput(param0: android.view.inputmethod.InputConnection, param1: android.view.inputmethod.EditorInfo): void;
				public showSoftInput(param0: number, param1: android.os.ResultReceiver): void;
				public changeInputMethodSubtype(param0: android.view.inputmethod.InputMethodSubtype): void;
			}
			export class InputMethodSessionImpl extends android.inputmethodservice.AbstractInputMethodService.AbstractInputMethodSessionImpl {
				public static class: java.lang.Class<android.inputmethodservice.InputMethodService.InputMethodSessionImpl>;
				public appPrivateCommand(param0: string, param1: android.os.Bundle): void;
				public dispatchTrackballEvent(param0: number, param1: android.view.MotionEvent, param2: android.view.inputmethod.InputMethodSession.EventCallback): void;
				public updateSelection(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): void;
				public constructor(param0: android.inputmethodservice.AbstractInputMethodService);
				public dispatchKeyEvent(param0: number, param1: android.view.KeyEvent, param2: android.view.inputmethod.InputMethodSession.EventCallback): void;
				public constructor(param0: android.inputmethodservice.InputMethodService);
				public viewClicked(param0: boolean): void;
				public finishInput(): void;
				public updateCursor(param0: android.graphics.Rect): void;
				public toggleSoftInput(param0: number, param1: number): void;
				public dispatchGenericMotionEvent(param0: number, param1: android.view.MotionEvent, param2: android.view.inputmethod.InputMethodSession.EventCallback): void;
				public displayCompletions(param0: native.Array<android.view.inputmethod.CompletionInfo>): void;
				public updateExtractedText(param0: number, param1: android.view.inputmethod.ExtractedText): void;
			}
			export class Insets extends java.lang.Object {
				public static class: java.lang.Class<android.inputmethodservice.InputMethodService.Insets>;
				public contentTopInsets: number;
				public visibleTopInsets: number;
				public touchableRegion: android.graphics.Region;
				public static TOUCHABLE_INSETS_FRAME: number;
				public static TOUCHABLE_INSETS_CONTENT: number;
				public static TOUCHABLE_INSETS_VISIBLE: number;
				public static TOUCHABLE_INSETS_REGION: number;
				public touchableInsets: number;
				public constructor();
			}
		}
	}
}

declare module android {
	export module inputmethodservice {
		export class Keyboard extends java.lang.Object {
			public static class: java.lang.Class<android.inputmethodservice.Keyboard>;
			public static EDGE_LEFT: number;
			public static EDGE_RIGHT: number;
			public static EDGE_TOP: number;
			public static EDGE_BOTTOM: number;
			public static KEYCODE_SHIFT: number;
			public static KEYCODE_MODE_CHANGE: number;
			public static KEYCODE_CANCEL: number;
			public static KEYCODE_DONE: number;
			public static KEYCODE_DELETE: number;
			public static KEYCODE_ALT: number;
			public setKeyHeight(param0: number): void;
			public getKeyHeight(): number;
			public getHorizontalGap(): number;
			public getHeight(): number;
			public getVerticalGap(): number;
			public createKeyFromXml(param0: android.content.res.Resources, param1: android.inputmethodservice.Keyboard.Row, param2: number, param3: number, param4: android.content.res.XmlResourceParser): android.inputmethodservice.Keyboard.Key;
			public createRowFromXml(param0: android.content.res.Resources, param1: android.content.res.XmlResourceParser): android.inputmethodservice.Keyboard.Row;
			public isShifted(): boolean;
			public constructor(param0: android.content.Context, param1: number);
			public getModifierKeys(): java.util.List<android.inputmethodservice.Keyboard.Key>;
			public getKeys(): java.util.List<android.inputmethodservice.Keyboard.Key>;
			public setVerticalGap(param0: number): void;
			public setHorizontalGap(param0: number): void;
			public getShiftKeyIndex(): number;
			public getKeyWidth(): number;
			public constructor(param0: android.content.Context, param1: number, param2: string, param3: number, param4: number);
			public getMinWidth(): number;
			public constructor(param0: android.content.Context, param1: number, param2: number, param3: number, param4: number);
			public setKeyWidth(param0: number): void;
			public setShifted(param0: boolean): boolean;
			public getNearestKeys(param0: number, param1: number): native.Array<number>;
			public constructor(param0: android.content.Context, param1: number, param2: number);
		}
		export module Keyboard {
			export class Key extends java.lang.Object {
				public static class: java.lang.Class<android.inputmethodservice.Keyboard.Key>;
				public codes: native.Array<number>;
				public label: string;
				public icon: android.graphics.drawable.Drawable;
				public iconPreview: android.graphics.drawable.Drawable;
				public width: number;
				public height: number;
				public gap: number;
				public sticky: boolean;
				public x: number;
				public y: number;
				public pressed: boolean;
				public on: boolean;
				public text: string;
				public popupCharacters: string;
				public edgeFlags: number;
				public modifier: boolean;
				public popupResId: number;
				public repeatable: boolean;
				public constructor(param0: android.content.res.Resources, param1: android.inputmethodservice.Keyboard.Row, param2: number, param3: number, param4: android.content.res.XmlResourceParser);
				public squaredDistanceFrom(param0: number, param1: number): number;
				public getCurrentDrawableState(): native.Array<number>;
				public isInside(param0: number, param1: number): boolean;
				public constructor(param0: android.inputmethodservice.Keyboard.Row);
				public onPressed(): void;
				public onReleased(param0: boolean): void;
			}
			export class Row extends java.lang.Object {
				public static class: java.lang.Class<android.inputmethodservice.Keyboard.Row>;
				public defaultWidth: number;
				public defaultHeight: number;
				public defaultHorizontalGap: number;
				public verticalGap: number;
				public rowEdgeFlags: number;
				public mode: number;
				public constructor(param0: android.inputmethodservice.Keyboard);
				public constructor(param0: android.content.res.Resources, param1: android.inputmethodservice.Keyboard, param2: android.content.res.XmlResourceParser);
			}
		}
	}
}

declare module android {
	export module inputmethodservice {
		export class KeyboardView extends android.view.View implements android.view.View.OnClickListener {
			public static class: java.lang.Class<android.inputmethodservice.KeyboardView>;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public swipeDown(): void;
			public onSizeChanged(param0: number, param1: number, param2: number, param3: number): void;
			public setPreviewEnabled(param0: boolean): void;
			public invalidateAllKeys(): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onMeasure(param0: number, param1: number): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public getKeyboard(): android.inputmethodservice.Keyboard;
			public swipeLeft(): void;
			public handleBack(): boolean;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public isPreviewEnabled(): boolean;
			public getOnKeyboardActionListener(): android.inputmethodservice.KeyboardView.OnKeyboardActionListener;
			public isProximityCorrectionEnabled(): boolean;
			public onLongPress(param0: android.inputmethodservice.Keyboard.Key): boolean;
			public swipeUp(): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public setVerticalCorrection(param0: number): void;
			public onDetachedFromWindow(): void;
			public sendAccessibilityEvent(param0: number): void;
			public setProximityCorrectionEnabled(param0: boolean): void;
			public closing(): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public invalidateKey(param0: number): void;
			public setOnKeyboardActionListener(param0: android.inputmethodservice.KeyboardView.OnKeyboardActionListener): void;
			public setKeyboard(param0: android.inputmethodservice.Keyboard): void;
			public isShifted(): boolean;
			public onTouchEvent(param0: android.view.MotionEvent): boolean;
			public swipeRight(): void;
			public setPopupOffset(param0: number, param1: number): void;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public constructor(param0: android.content.Context);
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public onDraw(param0: android.graphics.Canvas): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public setShifted(param0: boolean): boolean;
			public onHoverEvent(param0: android.view.MotionEvent): boolean;
			public setPopupParent(param0: android.view.View): void;
			public onClick(param0: android.view.View): void;
		}
		export module KeyboardView {
			export class OnKeyboardActionListener extends java.lang.Object {
				public static class: java.lang.Class<android.inputmethodservice.KeyboardView.OnKeyboardActionListener>;
				/**
				 * Constructs a new instance of the android.inputmethodservice.KeyboardView$OnKeyboardActionListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onPress(param0: number): void;
					onRelease(param0: number): void;
					onKey(param0: number, param1: native.Array<number>): void;
					onText(param0: string): void;
					swipeLeft(): void;
					swipeRight(): void;
					swipeDown(): void;
					swipeUp(): void;
				});
				public constructor();
				public onRelease(param0: number): void;
				public onPress(param0: number): void;
				public onText(param0: string): void;
				public onKey(param0: number, param1: native.Array<number>): void;
				public swipeLeft(): void;
				public swipeRight(): void;
				public swipeUp(): void;
				public swipeDown(): void;
			}
		}
	}
}

declare module android {
	export module location {
		export class Address extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.location.Address>;
			public static CREATOR: android.os.Parcelable.Creator<android.location.Address>;
			public setAddressLine(param0: number, param1: string): void;
			public setCountryName(param0: string): void;
			public setLongitude(param0: number): void;
			public getCountryCode(): string;
			public getSubLocality(): string;
			public hasLatitude(): boolean;
			public getMaxAddressLineIndex(): number;
			public setExtras(param0: android.os.Bundle): void;
			public setCountryCode(param0: string): void;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public getFeatureName(): string;
			public setLatitude(param0: number): void;
			public getCountryName(): string;
			public setAdminArea(param0: string): void;
			public setSubAdminArea(param0: string): void;
			public getSubThoroughfare(): string;
			public getLocale(): java.util.Locale;
			public getThoroughfare(): string;
			public getSubAdminArea(): string;
			public getLongitude(): number;
			public setPhone(param0: string): void;
			public setSubLocality(param0: string): void;
			public getUrl(): string;
			public getPostalCode(): string;
			public clearLatitude(): void;
			public setUrl(param0: string): void;
			public getPremises(): string;
			public getLatitude(): number;
			public constructor(param0: java.util.Locale);
			public clearLongitude(): void;
			public setFeatureName(param0: string): void;
			public getAddressLine(param0: number): string;
			public toString(): string;
			public getAdminArea(): string;
			public setPostalCode(param0: string): void;
			public describeContents(): number;
			public hasLongitude(): boolean;
			public setPremises(param0: string): void;
			public setLocality(param0: string): void;
			public setThoroughfare(param0: string): void;
			public getPhone(): string;
			public setSubThoroughfare(param0: string): void;
			public getExtras(): android.os.Bundle;
			public getLocality(): string;
		}
	}
}

declare module android {
	export module location {
		export class Criteria extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.location.Criteria>;
			public static NO_REQUIREMENT: number;
			public static POWER_LOW: number;
			public static POWER_MEDIUM: number;
			public static POWER_HIGH: number;
			public static ACCURACY_FINE: number;
			public static ACCURACY_COARSE: number;
			public static ACCURACY_LOW: number;
			public static ACCURACY_MEDIUM: number;
			public static ACCURACY_HIGH: number;
			public static CREATOR: android.os.Parcelable.Creator<android.location.Criteria>;
			public getSpeedAccuracy(): number;
			public constructor(param0: android.location.Criteria);
			public setBearingAccuracy(param0: number): void;
			public isCostAllowed(): boolean;
			public setAccuracy(param0: number): void;
			public getAccuracy(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public getPowerRequirement(): number;
			public getVerticalAccuracy(): number;
			public setCostAllowed(param0: boolean): void;
			public setBearingRequired(param0: boolean): void;
			public setSpeedAccuracy(param0: number): void;
			public setPowerRequirement(param0: number): void;
			public constructor();
			public setHorizontalAccuracy(param0: number): void;
			public isSpeedRequired(): boolean;
			public isAltitudeRequired(): boolean;
			public setVerticalAccuracy(param0: number): void;
			public getBearingAccuracy(): number;
			public isBearingRequired(): boolean;
			public toString(): string;
			public describeContents(): number;
			public setAltitudeRequired(param0: boolean): void;
			public setSpeedRequired(param0: boolean): void;
			public getHorizontalAccuracy(): number;
		}
	}
}

declare module android {
	export module location {
		export class Geocoder extends java.lang.Object {
			public static class: java.lang.Class<android.location.Geocoder>;
			public static isPresent(): boolean;
			public getFromLocationName(param0: string, param1: number): java.util.List<android.location.Address>;
			public constructor(param0: android.content.Context);
			public constructor(param0: android.content.Context, param1: java.util.Locale);
			public getFromLocation(param0: number, param1: number, param2: number): java.util.List<android.location.Address>;
			public getFromLocationName(param0: string, param1: number, param2: number, param3: number, param4: number, param5: number): java.util.List<android.location.Address>;
		}
	}
}

declare module android {
	export module location {
		export class GpsSatellite extends java.lang.Object {
			public static class: java.lang.Class<android.location.GpsSatellite>;
			public getSnr(): number;
			public getElevation(): number;
			public getAzimuth(): number;
			public hasAlmanac(): boolean;
			public hasEphemeris(): boolean;
			public getPrn(): number;
			public usedInFix(): boolean;
		}
	}
}

declare module android {
	export module location {
		export class GpsStatus extends java.lang.Object {
			public static class: java.lang.Class<android.location.GpsStatus>;
			public static GPS_EVENT_STARTED: number;
			public static GPS_EVENT_STOPPED: number;
			public static GPS_EVENT_FIRST_FIX: number;
			public static GPS_EVENT_SATELLITE_STATUS: number;
			public getSatellites(): java.lang.Iterable<android.location.GpsSatellite>;
			public getTimeToFirstFix(): number;
			public getMaxSatellites(): number;
		}
		export module GpsStatus {
			export class Listener extends java.lang.Object {
				public static class: java.lang.Class<android.location.GpsStatus.Listener>;
				/**
				 * Constructs a new instance of the android.location.GpsStatus$Listener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onGpsStatusChanged(param0: number): void;
				});
				public constructor();
				public onGpsStatusChanged(param0: number): void;
			}
			export class NmeaListener extends java.lang.Object {
				public static class: java.lang.Class<android.location.GpsStatus.NmeaListener>;
				/**
				 * Constructs a new instance of the android.location.GpsStatus$NmeaListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onNmeaReceived(param0: number, param1: string): void;
				});
				public constructor();
				public onNmeaReceived(param0: number, param1: string): void;
			}
		}
	}
}

declare module android {
	export module location {
		export class Location extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.location.Location>;
			public static FORMAT_DEGREES: number;
			public static FORMAT_MINUTES: number;
			public static FORMAT_SECONDS: number;
			public static CREATOR: android.os.Parcelable.Creator<android.location.Location>;
			public getBearing(): number;
			public bearingTo(param0: android.location.Location): number;
			public setSpeed(param0: number): void;
			public removeSpeed(): void;
			public setLongitude(param0: number): void;
			public constructor(param0: android.location.Location);
			public static convert(param0: number, param1: number): string;
			public distanceTo(param0: android.location.Location): number;
			public getProvider(): string;
			public getElapsedRealtimeNanos(): number;
			public getSpeed(): number;
			public hasBearing(): boolean;
			public setBearing(param0: number): void;
			public setProvider(param0: string): void;
			public removeBearing(): void;
			public getAltitude(): number;
			public removeAccuracy(): void;
			public setAccuracy(param0: number): void;
			public setExtras(param0: android.os.Bundle): void;
			public set(param0: android.location.Location): void;
			public getAccuracy(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public reset(): void;
			public setLatitude(param0: number): void;
			public constructor(param0: string);
			public hasAccuracy(): boolean;
			public getLongitude(): number;
			public static distanceBetween(param0: number, param1: number, param2: number, param3: number, param4: native.Array<number>): void;
			public getLatitude(): number;
			public hasAltitude(): boolean;
			public hasSpeed(): boolean;
			public setAltitude(param0: number): void;
			public removeAltitude(): void;
			public isFromMockProvider(): boolean;
			public toString(): string;
			public setTime(param0: number): void;
			public static convert(param0: string): number;
			public getTime(): number;
			public describeContents(): number;
			public setElapsedRealtimeNanos(param0: number): void;
			public dump(param0: android.util.Printer, param1: string): void;
			public getExtras(): android.os.Bundle;
		}
	}
}

declare module android {
	export module location {
		export class LocationListener extends java.lang.Object {
			public static class: java.lang.Class<android.location.LocationListener>;
			/**
			 * Constructs a new instance of the android.location.LocationListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				onLocationChanged(param0: android.location.Location): void;
				onStatusChanged(param0: string, param1: number, param2: android.os.Bundle): void;
				onProviderEnabled(param0: string): void;
				onProviderDisabled(param0: string): void;
			});
			public constructor();
			public onProviderDisabled(param0: string): void;
			public onProviderEnabled(param0: string): void;
			public onLocationChanged(param0: android.location.Location): void;
			public onStatusChanged(param0: string, param1: number, param2: android.os.Bundle): void;
		}
	}
}

declare module android {
	export module location {
		export class LocationManager extends java.lang.Object {
			public static class: java.lang.Class<android.location.LocationManager>;
			public static NETWORK_PROVIDER: string;
			public static GPS_PROVIDER: string;
			public static PASSIVE_PROVIDER: string;
			public static KEY_PROXIMITY_ENTERING: string;
			public static KEY_STATUS_CHANGED: string;
			public static KEY_PROVIDER_ENABLED: string;
			public static KEY_LOCATION_CHANGED: string;
			public static PROVIDERS_CHANGED_ACTION: string;
			public requestSingleUpdate(param0: android.location.Criteria, param1: android.app.PendingIntent): void;
			public getLastKnownLocation(param0: string): android.location.Location;
			public clearTestProviderStatus(param0: string): void;
			public requestLocationUpdates(param0: number, param1: number, param2: android.location.Criteria, param3: android.location.LocationListener, param4: android.os.Looper): void;
			public requestLocationUpdates(param0: string, param1: number, param2: number, param3: android.location.LocationListener): void;
			public requestLocationUpdates(param0: string, param1: number, param2: number, param3: android.app.PendingIntent): void;
			public addTestProvider(param0: string, param1: boolean, param2: boolean, param3: boolean, param4: boolean, param5: boolean, param6: boolean, param7: boolean, param8: number, param9: number): void;
			public getBestProvider(param0: android.location.Criteria, param1: boolean): string;
			public isProviderEnabled(param0: string): boolean;
			public setTestProviderStatus(param0: string, param1: number, param2: android.os.Bundle, param3: number): void;
			public requestLocationUpdates(param0: number, param1: number, param2: android.location.Criteria, param3: android.app.PendingIntent): void;
			public getProvider(param0: string): android.location.LocationProvider;
			public getProviders(param0: boolean): java.util.List<string>;
			public setTestProviderLocation(param0: string, param1: android.location.Location): void;
			public requestSingleUpdate(param0: android.location.Criteria, param1: android.location.LocationListener, param2: android.os.Looper): void;
			public setTestProviderEnabled(param0: string, param1: boolean): void;
			public requestSingleUpdate(param0: string, param1: android.location.LocationListener, param2: android.os.Looper): void;
			public getGpsStatus(param0: android.location.GpsStatus): android.location.GpsStatus;
			public addNmeaListener(param0: android.location.GpsStatus.NmeaListener): boolean;
			public addProximityAlert(param0: number, param1: number, param2: number, param3: number, param4: android.app.PendingIntent): void;
			public sendExtraCommand(param0: string, param1: string, param2: android.os.Bundle): boolean;
			public removeProximityAlert(param0: android.app.PendingIntent): void;
			public requestSingleUpdate(param0: string, param1: android.app.PendingIntent): void;
			public clearTestProviderLocation(param0: string): void;
			public removeGpsStatusListener(param0: android.location.GpsStatus.Listener): void;
			public getAllProviders(): java.util.List<string>;
			public getProviders(param0: android.location.Criteria, param1: boolean): java.util.List<string>;
			public removeUpdates(param0: android.location.LocationListener): void;
			public requestLocationUpdates(param0: string, param1: number, param2: number, param3: android.location.LocationListener, param4: android.os.Looper): void;
			public addGpsStatusListener(param0: android.location.GpsStatus.Listener): boolean;
			public clearTestProviderEnabled(param0: string): void;
			public removeUpdates(param0: android.app.PendingIntent): void;
			public removeTestProvider(param0: string): void;
			public removeNmeaListener(param0: android.location.GpsStatus.NmeaListener): void;
		}
	}
}

declare module android {
	export module location {
		export class LocationProvider extends java.lang.Object {
			public static class: java.lang.Class<android.location.LocationProvider>;
			public static OUT_OF_SERVICE: number;
			public static TEMPORARILY_UNAVAILABLE: number;
			public static AVAILABLE: number;
			public hasMonetaryCost(): boolean;
			public supportsBearing(): boolean;
			public getName(): string;
			public requiresCell(): boolean;
			public meetsCriteria(param0: android.location.Criteria): boolean;
			public supportsSpeed(): boolean;
			public getAccuracy(): number;
			public getPowerRequirement(): number;
			public requiresSatellite(): boolean;
			public supportsAltitude(): boolean;
			public requiresNetwork(): boolean;
		}
	}
}

declare module android {
	export module media {
		export class AsyncPlayer extends java.lang.Object {
			public static class: java.lang.Class<android.media.AsyncPlayer>;
			public stop(): void;
			public play(param0: android.content.Context, param1: android.net.Uri, param2: boolean, param3: number): void;
			public constructor(param0: string);
		}
	}
}

declare module android {
	export module media {
		export class AudioFormat extends java.lang.Object {
			public static class: java.lang.Class<android.media.AudioFormat>;
			public static ENCODING_INVALID: number;
			public static ENCODING_DEFAULT: number;
			public static ENCODING_PCM_16BIT: number;
			public static ENCODING_PCM_8BIT: number;
			public static CHANNEL_CONFIGURATION_INVALID: number;
			public static CHANNEL_CONFIGURATION_DEFAULT: number;
			public static CHANNEL_CONFIGURATION_MONO: number;
			public static CHANNEL_CONFIGURATION_STEREO: number;
			public static CHANNEL_INVALID: number;
			public static CHANNEL_OUT_DEFAULT: number;
			public static CHANNEL_OUT_FRONT_LEFT: number;
			public static CHANNEL_OUT_FRONT_RIGHT: number;
			public static CHANNEL_OUT_FRONT_CENTER: number;
			public static CHANNEL_OUT_LOW_FREQUENCY: number;
			public static CHANNEL_OUT_BACK_LEFT: number;
			public static CHANNEL_OUT_BACK_RIGHT: number;
			public static CHANNEL_OUT_FRONT_LEFT_OF_CENTER: number;
			public static CHANNEL_OUT_FRONT_RIGHT_OF_CENTER: number;
			public static CHANNEL_OUT_BACK_CENTER: number;
			public static CHANNEL_OUT_MONO: number;
			public static CHANNEL_OUT_STEREO: number;
			public static CHANNEL_OUT_QUAD: number;
			public static CHANNEL_OUT_SURROUND: number;
			public static CHANNEL_OUT_5POINT1: number;
			public static CHANNEL_OUT_7POINT1: number;
			public static CHANNEL_IN_DEFAULT: number;
			public static CHANNEL_IN_LEFT: number;
			public static CHANNEL_IN_RIGHT: number;
			public static CHANNEL_IN_FRONT: number;
			public static CHANNEL_IN_BACK: number;
			public static CHANNEL_IN_LEFT_PROCESSED: number;
			public static CHANNEL_IN_RIGHT_PROCESSED: number;
			public static CHANNEL_IN_FRONT_PROCESSED: number;
			public static CHANNEL_IN_BACK_PROCESSED: number;
			public static CHANNEL_IN_PRESSURE: number;
			public static CHANNEL_IN_X_AXIS: number;
			public static CHANNEL_IN_Y_AXIS: number;
			public static CHANNEL_IN_Z_AXIS: number;
			public static CHANNEL_IN_VOICE_UPLINK: number;
			public static CHANNEL_IN_VOICE_DNLINK: number;
			public static CHANNEL_IN_MONO: number;
			public static CHANNEL_IN_STEREO: number;
			public constructor();
		}
	}
}

declare module android {
	export module media {
		export class AudioManager extends java.lang.Object {
			public static class: java.lang.Class<android.media.AudioManager>;
			public static ACTION_AUDIO_BECOMING_NOISY: string;
			public static RINGER_MODE_CHANGED_ACTION: string;
			public static EXTRA_RINGER_MODE: string;
			public static VIBRATE_SETTING_CHANGED_ACTION: string;
			public static EXTRA_VIBRATE_SETTING: string;
			public static EXTRA_VIBRATE_TYPE: string;
			public static STREAM_VOICE_CALL: number;
			public static STREAM_SYSTEM: number;
			public static STREAM_RING: number;
			public static STREAM_MUSIC: number;
			public static STREAM_ALARM: number;
			public static STREAM_NOTIFICATION: number;
			public static STREAM_DTMF: number;
			public static NUM_STREAMS: number;
			public static ADJUST_RAISE: number;
			public static ADJUST_LOWER: number;
			public static ADJUST_SAME: number;
			public static FLAG_SHOW_UI: number;
			public static FLAG_ALLOW_RINGER_MODES: number;
			public static FLAG_PLAY_SOUND: number;
			public static FLAG_REMOVE_SOUND_AND_VIBRATE: number;
			public static FLAG_VIBRATE: number;
			public static RINGER_MODE_SILENT: number;
			public static RINGER_MODE_VIBRATE: number;
			public static RINGER_MODE_NORMAL: number;
			public static VIBRATE_TYPE_RINGER: number;
			public static VIBRATE_TYPE_NOTIFICATION: number;
			public static VIBRATE_SETTING_OFF: number;
			public static VIBRATE_SETTING_ON: number;
			public static VIBRATE_SETTING_ONLY_SILENT: number;
			public static USE_DEFAULT_STREAM_TYPE: number;
			public static ACTION_SCO_AUDIO_STATE_CHANGED: string;
			public static ACTION_SCO_AUDIO_STATE_UPDATED: string;
			public static EXTRA_SCO_AUDIO_STATE: string;
			public static EXTRA_SCO_AUDIO_PREVIOUS_STATE: string;
			public static SCO_AUDIO_STATE_DISCONNECTED: number;
			public static SCO_AUDIO_STATE_CONNECTED: number;
			public static SCO_AUDIO_STATE_CONNECTING: number;
			public static SCO_AUDIO_STATE_ERROR: number;
			public static MODE_INVALID: number;
			public static MODE_CURRENT: number;
			public static MODE_NORMAL: number;
			public static MODE_RINGTONE: number;
			public static MODE_IN_CALL: number;
			public static MODE_IN_COMMUNICATION: number;
			public static ROUTE_EARPIECE: number;
			public static ROUTE_SPEAKER: number;
			public static ROUTE_BLUETOOTH: number;
			public static ROUTE_BLUETOOTH_SCO: number;
			public static ROUTE_HEADSET: number;
			public static ROUTE_BLUETOOTH_A2DP: number;
			public static ROUTE_ALL: number;
			public static FX_KEY_CLICK: number;
			public static FX_FOCUS_NAVIGATION_UP: number;
			public static FX_FOCUS_NAVIGATION_DOWN: number;
			public static FX_FOCUS_NAVIGATION_LEFT: number;
			public static FX_FOCUS_NAVIGATION_RIGHT: number;
			public static FX_KEYPRESS_STANDARD: number;
			public static FX_KEYPRESS_SPACEBAR: number;
			public static FX_KEYPRESS_DELETE: number;
			public static FX_KEYPRESS_RETURN: number;
			public static AUDIOFOCUS_GAIN: number;
			public static AUDIOFOCUS_GAIN_TRANSIENT: number;
			public static AUDIOFOCUS_GAIN_TRANSIENT_MAY_DUCK: number;
			public static AUDIOFOCUS_LOSS: number;
			public static AUDIOFOCUS_LOSS_TRANSIENT: number;
			public static AUDIOFOCUS_LOSS_TRANSIENT_CAN_DUCK: number;
			public static AUDIOFOCUS_REQUEST_FAILED: number;
			public static AUDIOFOCUS_REQUEST_GRANTED: number;
			public static PROPERTY_OUTPUT_SAMPLE_RATE: string;
			public static PROPERTY_OUTPUT_FRAMES_PER_BUFFER: string;
			/** @deprecated */
			public getVibrateSetting(param0: number): number;
			public registerRemoteControlClient(param0: android.media.RemoteControlClient): void;
			public loadSoundEffects(): void;
			public setStreamSolo(param0: number, param1: boolean): void;
			/** @deprecated */
			public shouldVibrate(param0: number): boolean;
			public adjustStreamVolume(param0: number, param1: number, param2: number): void;
			public startBluetoothSco(): void;
			public setStreamVolume(param0: number, param1: number, param2: number): void;
			public unloadSoundEffects(): void;
			public playSoundEffect(param0: number): void;
			/** @deprecated */
			public setVibrateSetting(param0: number, param1: number): void;
			public setBluetoothScoOn(param0: boolean): void;
			public unregisterRemoteControlClient(param0: android.media.RemoteControlClient): void;
			public isBluetoothScoOn(): boolean;
			public isBluetoothA2dpOn(): boolean;
			/** @deprecated */
			public setWiredHeadsetOn(param0: boolean): void;
			public playSoundEffect(param0: number, param1: number): void;
			public getParameters(param0: string): string;
			public setParameters(param0: string): void;
			public isBluetoothScoAvailableOffCall(): boolean;
			public getRingerMode(): number;
			public adjustVolume(param0: number, param1: number): void;
			public stopBluetoothSco(): void;
			public registerMediaButtonEventReceiver(param0: android.content.ComponentName): void;
			/** @deprecated */
			public isWiredHeadsetOn(): boolean;
			public isMusicActive(): boolean;
			/** @deprecated */
			public setRouting(param0: number, param1: number, param2: number): void;
			public setRingerMode(param0: number): void;
			public setMode(param0: number): void;
			public getStreamMaxVolume(param0: number): number;
			public unregisterMediaButtonEventReceiver(param0: android.content.ComponentName): void;
			public setStreamMute(param0: number, param1: boolean): void;
			public setSpeakerphoneOn(param0: boolean): void;
			public unregisterMediaButtonEventReceiver(param0: android.app.PendingIntent): void;
			public setMicrophoneMute(param0: boolean): void;
			public adjustSuggestedStreamVolume(param0: number, param1: number, param2: number): void;
			public abandonAudioFocus(param0: android.media.AudioManager.OnAudioFocusChangeListener): number;
			public getProperty(param0: string): string;
			/** @deprecated */
			public getRouting(param0: number): number;
			public getStreamVolume(param0: number): number;
			public registerMediaButtonEventReceiver(param0: android.app.PendingIntent): void;
			public getMode(): number;
			public requestAudioFocus(param0: android.media.AudioManager.OnAudioFocusChangeListener, param1: number, param2: number): number;
			public isSpeakerphoneOn(): boolean;
			/** @deprecated */
			public setBluetoothA2dpOn(param0: boolean): void;
			public isMicrophoneMute(): boolean;
		}
		export module AudioManager {
			export class OnAudioFocusChangeListener extends java.lang.Object {
				public static class: java.lang.Class<android.media.AudioManager.OnAudioFocusChangeListener>;
				/**
				 * Constructs a new instance of the android.media.AudioManager$OnAudioFocusChangeListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onAudioFocusChange(param0: number): void;
				});
				public constructor();
				public onAudioFocusChange(param0: number): void;
			}
		}
	}
}

declare module android {
	export module media {
		export class AudioRecord extends java.lang.Object {
			public static class: java.lang.Class<android.media.AudioRecord>;
			public static STATE_UNINITIALIZED: number;
			public static STATE_INITIALIZED: number;
			public static RECORDSTATE_STOPPED: number;
			public static RECORDSTATE_RECORDING: number;
			public static SUCCESS: number;
			public static ERROR: number;
			public static ERROR_BAD_VALUE: number;
			public static ERROR_INVALID_OPERATION: number;
			public getSampleRate(): number;
			public startRecording(param0: android.media.MediaSyncEvent): void;
			public read(param0: java.nio.ByteBuffer, param1: number): number;
			public getAudioSource(): number;
			public read(param0: native.Array<number>, param1: number, param2: number): number;
			public setRecordPositionUpdateListener(param0: android.media.AudioRecord.OnRecordPositionUpdateListener, param1: android.os.Handler): void;
			public getChannelCount(): number;
			public getAudioSessionId(): number;
			public setRecordPositionUpdateListener(param0: android.media.AudioRecord.OnRecordPositionUpdateListener): void;
			public static getMinBufferSize(param0: number, param1: number, param2: number): number;
			public setPositionNotificationPeriod(param0: number): number;
			public constructor(param0: number, param1: number, param2: number, param3: number, param4: number);
			public stop(): void;
			public getAudioFormat(): number;
			public getRecordingState(): number;
			public getNotificationMarkerPosition(): number;
			public getChannelConfiguration(): number;
			public startRecording(): void;
			public release(): void;
			public finalize(): void;
			public getState(): number;
			public setNotificationMarkerPosition(param0: number): number;
			public getPositionNotificationPeriod(): number;
		}
		export module AudioRecord {
			export class OnRecordPositionUpdateListener extends java.lang.Object {
				public static class: java.lang.Class<android.media.AudioRecord.OnRecordPositionUpdateListener>;
				/**
				 * Constructs a new instance of the android.media.AudioRecord$OnRecordPositionUpdateListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onMarkerReached(param0: android.media.AudioRecord): void;
					onPeriodicNotification(param0: android.media.AudioRecord): void;
				});
				public constructor();
				public onPeriodicNotification(param0: android.media.AudioRecord): void;
				public onMarkerReached(param0: android.media.AudioRecord): void;
			}
		}
	}
}

declare module android {
	export module media {
		export class AudioTrack extends java.lang.Object {
			public static class: java.lang.Class<android.media.AudioTrack>;
			public static PLAYSTATE_STOPPED: number;
			public static PLAYSTATE_PAUSED: number;
			public static PLAYSTATE_PLAYING: number;
			public static MODE_STATIC: number;
			public static MODE_STREAM: number;
			public static STATE_UNINITIALIZED: number;
			public static STATE_INITIALIZED: number;
			public static STATE_NO_STATIC_DATA: number;
			public static SUCCESS: number;
			public static ERROR: number;
			public static ERROR_BAD_VALUE: number;
			public static ERROR_INVALID_OPERATION: number;
			public getSampleRate(): number;
			public attachAuxEffect(param0: number): number;
			public setPlaybackPositionUpdateListener(param0: android.media.AudioTrack.OnPlaybackPositionUpdateListener, param1: android.os.Handler): void;
			public setState(param0: number): void;
			public setPlaybackHeadPosition(param0: number): number;
			public getStreamType(): number;
			public pause(): void;
			public setAuxEffectSendLevel(param0: number): number;
			public static getMinBufferSize(param0: number, param1: number, param2: number): number;
			public setStereoVolume(param0: number, param1: number): number;
			public getPlaybackRate(): number;
			public stop(): void;
			public getAudioFormat(): number;
			public play(): void;
			public release(): void;
			public finalize(): void;
			public getState(): number;
			public setNotificationMarkerPosition(param0: number): number;
			public getNativeFrameCount(): number;
			public flush(): void;
			public setLoopPoints(param0: number, param1: number, param2: number): number;
			public getPlaybackHeadPosition(): number;
			public setPlaybackPositionUpdateListener(param0: android.media.AudioTrack.OnPlaybackPositionUpdateListener): void;
			public write(param0: native.Array<number>, param1: number, param2: number): number;
			public constructor(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number);
			public static getNativeOutputSampleRate(param0: number): number;
			public reloadStaticData(): number;
			public getChannelCount(): number;
			public getAudioSessionId(): number;
			public static getMaxVolume(): number;
			public constructor(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number);
			public setPositionNotificationPeriod(param0: number): number;
			public getNotificationMarkerPosition(): number;
			public getChannelConfiguration(): number;
			public setPlaybackRate(param0: number): number;
			public static getMinVolume(): number;
			public getPlayState(): number;
			public getPositionNotificationPeriod(): number;
		}
		export module AudioTrack {
			export class OnPlaybackPositionUpdateListener extends java.lang.Object {
				public static class: java.lang.Class<android.media.AudioTrack.OnPlaybackPositionUpdateListener>;
				/**
				 * Constructs a new instance of the android.media.AudioTrack$OnPlaybackPositionUpdateListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onMarkerReached(param0: android.media.AudioTrack): void;
					onPeriodicNotification(param0: android.media.AudioTrack): void;
				});
				public constructor();
				public onMarkerReached(param0: android.media.AudioTrack): void;
				public onPeriodicNotification(param0: android.media.AudioTrack): void;
			}
		}
	}
}

declare module android {
	export module media {
		export class CamcorderProfile extends java.lang.Object {
			public static class: java.lang.Class<android.media.CamcorderProfile>;
			public static QUALITY_LOW: number;
			public static QUALITY_HIGH: number;
			public static QUALITY_QCIF: number;
			public static QUALITY_CIF: number;
			public static QUALITY_480P: number;
			public static QUALITY_720P: number;
			public static QUALITY_1080P: number;
			public static QUALITY_QVGA: number;
			public static QUALITY_TIME_LAPSE_LOW: number;
			public static QUALITY_TIME_LAPSE_HIGH: number;
			public static QUALITY_TIME_LAPSE_QCIF: number;
			public static QUALITY_TIME_LAPSE_CIF: number;
			public static QUALITY_TIME_LAPSE_480P: number;
			public static QUALITY_TIME_LAPSE_720P: number;
			public static QUALITY_TIME_LAPSE_1080P: number;
			public static QUALITY_TIME_LAPSE_QVGA: number;
			public duration: number;
			public quality: number;
			public fileFormat: number;
			public videoCodec: number;
			public videoBitRate: number;
			public videoFrameRate: number;
			public videoFrameWidth: number;
			public videoFrameHeight: number;
			public audioCodec: number;
			public audioBitRate: number;
			public audioSampleRate: number;
			public audioChannels: number;
			public static get(param0: number): android.media.CamcorderProfile;
			public static get(param0: number, param1: number): android.media.CamcorderProfile;
			public static hasProfile(param0: number): boolean;
			public static hasProfile(param0: number, param1: number): boolean;
		}
	}
}

declare module android {
	export module media {
		export class CameraProfile extends java.lang.Object {
			public static class: java.lang.Class<android.media.CameraProfile>;
			public static QUALITY_LOW: number;
			public static QUALITY_MEDIUM: number;
			public static QUALITY_HIGH: number;
			public constructor();
			public static getJpegEncodingQualityParameter(param0: number, param1: number): number;
			public static getJpegEncodingQualityParameter(param0: number): number;
		}
	}
}

declare module android {
	export module media {
		export class DeniedByServerException extends android.media.MediaDrmException {
			public static class: java.lang.Class<android.media.DeniedByServerException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module android {
	export module media {
		export class ExifInterface extends java.lang.Object {
			public static class: java.lang.Class<android.media.ExifInterface>;
			public static TAG_ORIENTATION: string;
			public static TAG_DATETIME: string;
			public static TAG_MAKE: string;
			public static TAG_MODEL: string;
			public static TAG_FLASH: string;
			public static TAG_IMAGE_WIDTH: string;
			public static TAG_IMAGE_LENGTH: string;
			public static TAG_GPS_LATITUDE: string;
			public static TAG_GPS_LONGITUDE: string;
			public static TAG_GPS_LATITUDE_REF: string;
			public static TAG_GPS_LONGITUDE_REF: string;
			public static TAG_EXPOSURE_TIME: string;
			public static TAG_APERTURE: string;
			public static TAG_ISO: string;
			public static TAG_GPS_ALTITUDE: string;
			public static TAG_GPS_ALTITUDE_REF: string;
			public static TAG_GPS_TIMESTAMP: string;
			public static TAG_GPS_DATESTAMP: string;
			public static TAG_WHITE_BALANCE: string;
			public static TAG_FOCAL_LENGTH: string;
			public static TAG_GPS_PROCESSING_METHOD: string;
			public static ORIENTATION_UNDEFINED: number;
			public static ORIENTATION_NORMAL: number;
			public static ORIENTATION_FLIP_HORIZONTAL: number;
			public static ORIENTATION_ROTATE_180: number;
			public static ORIENTATION_FLIP_VERTICAL: number;
			public static ORIENTATION_TRANSPOSE: number;
			public static ORIENTATION_ROTATE_90: number;
			public static ORIENTATION_TRANSVERSE: number;
			public static ORIENTATION_ROTATE_270: number;
			public static WHITEBALANCE_AUTO: number;
			public static WHITEBALANCE_MANUAL: number;
			public hasThumbnail(): boolean;
			public getAttribute(param0: string): string;
			public setAttribute(param0: string, param1: string): void;
			public getThumbnail(): native.Array<number>;
			public getAttributeInt(param0: string, param1: number): number;
			public constructor(param0: string);
			public saveAttributes(): void;
			public getAltitude(param0: number): number;
			public getAttributeDouble(param0: string, param1: number): number;
			public getLatLong(param0: native.Array<number>): boolean;
		}
	}
}

declare module android {
	export module media {
		export class FaceDetector extends java.lang.Object {
			public static class: java.lang.Class<android.media.FaceDetector>;
			public constructor(param0: number, param1: number, param2: number);
			public findFaces(param0: android.graphics.Bitmap, param1: native.Array<android.media.FaceDetector.Face>): number;
			public finalize(): void;
		}
		export module FaceDetector {
			export class Face extends java.lang.Object {
				public static class: java.lang.Class<android.media.FaceDetector.Face>;
				public static CONFIDENCE_THRESHOLD: number;
				public static EULER_X: number;
				public static EULER_Y: number;
				public static EULER_Z: number;
				public getMidPoint(param0: android.graphics.PointF): void;
				public eyesDistance(): number;
				public pose(param0: number): number;
				public confidence(): number;
			}
		}
	}
}

declare module android {
	export module media {
		export class JetPlayer extends java.lang.Object {
			public static class: java.lang.Class<android.media.JetPlayer>;
			public closeJetFile(): boolean;
			public static getJetPlayer(): android.media.JetPlayer;
			public setMuteFlag(param0: number, param1: boolean, param2: boolean): boolean;
			public loadJetFile(param0: android.content.res.AssetFileDescriptor): boolean;
			public setEventListener(param0: android.media.JetPlayer.OnJetEventListener, param1: android.os.Handler): void;
			public static getMaxTracks(): number;
			public loadJetFile(param0: string): boolean;
			public setMuteArray(param0: native.Array<boolean>, param1: boolean): boolean;
			public play(): boolean;
			public triggerClip(param0: number): boolean;
			public clone(): any;
			public setEventListener(param0: android.media.JetPlayer.OnJetEventListener): void;
			public queueJetSegment(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): boolean;
			public pause(): boolean;
			public queueJetSegmentMuteArray(param0: number, param1: number, param2: number, param3: number, param4: native.Array<boolean>, param5: number): boolean;
			public setMuteFlags(param0: number, param1: boolean): boolean;
			public clearQueue(): boolean;
			public finalize(): void;
			public release(): void;
		}
		export module JetPlayer {
			export class OnJetEventListener extends java.lang.Object {
				public static class: java.lang.Class<android.media.JetPlayer.OnJetEventListener>;
				/**
				 * Constructs a new instance of the android.media.JetPlayer$OnJetEventListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onJetEvent(param0: android.media.JetPlayer, param1: number, param2: number, param3: number, param4: number, param5: number): void;
					onJetUserIdUpdate(param0: android.media.JetPlayer, param1: number, param2: number): void;
					onJetNumQueuedSegmentUpdate(param0: android.media.JetPlayer, param1: number): void;
					onJetPauseUpdate(param0: android.media.JetPlayer, param1: number): void;
				});
				public constructor();
				public onJetEvent(param0: android.media.JetPlayer, param1: number, param2: number, param3: number, param4: number, param5: number): void;
				public onJetPauseUpdate(param0: android.media.JetPlayer, param1: number): void;
				public onJetUserIdUpdate(param0: android.media.JetPlayer, param1: number, param2: number): void;
				public onJetNumQueuedSegmentUpdate(param0: android.media.JetPlayer, param1: number): void;
			}
		}
	}
}

declare module android {
	export module media {
		export class MediaActionSound extends java.lang.Object {
			public static class: java.lang.Class<android.media.MediaActionSound>;
			public static SHUTTER_CLICK: number;
			public static FOCUS_COMPLETE: number;
			public static START_VIDEO_RECORDING: number;
			public static STOP_VIDEO_RECORDING: number;
			public play(param0: number): void;
			public load(param0: number): void;
			public constructor();
			public release(): void;
		}
	}
}

declare module android {
	export module media {
		export class MediaCodec extends java.lang.Object {
			public static class: java.lang.Class<android.media.MediaCodec>;
			public static BUFFER_FLAG_SYNC_FRAME: number;
			public static BUFFER_FLAG_CODEC_CONFIG: number;
			public static BUFFER_FLAG_END_OF_STREAM: number;
			public static CONFIGURE_FLAG_ENCODE: number;
			public static CRYPTO_MODE_UNENCRYPTED: number;
			public static CRYPTO_MODE_AES_CTR: number;
			public static INFO_TRY_AGAIN_LATER: number;
			public static INFO_OUTPUT_FORMAT_CHANGED: number;
			public static INFO_OUTPUT_BUFFERS_CHANGED: number;
			public static VIDEO_SCALING_MODE_SCALE_TO_FIT: number;
			public static VIDEO_SCALING_MODE_SCALE_TO_FIT_WITH_CROPPING: number;
			public flush(): void;
			public queueSecureInputBuffer(param0: number, param1: number, param2: android.media.MediaCodec.CryptoInfo, param3: number, param4: number): void;
			public getInputBuffers(): native.Array<java.nio.ByteBuffer>;
			public signalEndOfInputStream(): void;
			public static createByCodecName(param0: string): android.media.MediaCodec;
			public createInputSurface(): android.view.Surface;
			public configure(param0: android.media.MediaFormat, param1: android.view.Surface, param2: android.media.MediaCrypto, param3: number): void;
			public getOutputFormat(): android.media.MediaFormat;
			public setVideoScalingMode(param0: number): void;
			public dequeueInputBuffer(param0: number): number;
			public getOutputBuffers(): native.Array<java.nio.ByteBuffer>;
			public getName(): string;
			public static createEncoderByType(param0: string): android.media.MediaCodec;
			public getCodecInfo(): android.media.MediaCodecInfo;
			public stop(): void;
			public releaseOutputBuffer(param0: number, param1: boolean): void;
			public static createDecoderByType(param0: string): android.media.MediaCodec;
			public queueInputBuffer(param0: number, param1: number, param2: number, param3: number, param4: number): void;
			public dequeueOutputBuffer(param0: android.media.MediaCodec.BufferInfo, param1: number): number;
			public start(): void;
			public finalize(): void;
			public release(): void;
		}
		export module MediaCodec {
			export class BufferInfo extends java.lang.Object {
				public static class: java.lang.Class<android.media.MediaCodec.BufferInfo>;
				public offset: number;
				public size: number;
				public presentationTimeUs: number;
				public flags: number;
				public set(param0: number, param1: number, param2: number, param3: number): void;
				public constructor();
			}
			export class CryptoException extends java.lang.RuntimeException {
				public static class: java.lang.Class<android.media.MediaCodec.CryptoException>;
				public constructor(param0: number, param1: string);
				public constructor(param0: string, param1: java.lang.Throwable);
				public getErrorCode(): number;
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
			export class CryptoInfo extends java.lang.Object {
				public static class: java.lang.Class<android.media.MediaCodec.CryptoInfo>;
				public numSubSamples: number;
				public numBytesOfClearData: native.Array<number>;
				public numBytesOfEncryptedData: native.Array<number>;
				public key: native.Array<number>;
				public iv: native.Array<number>;
				public mode: number;
				public set(param0: number, param1: native.Array<number>, param2: native.Array<number>, param3: native.Array<number>, param4: native.Array<number>, param5: number): void;
				public toString(): string;
				public constructor();
			}
		}
	}
}

declare module android {
	export module media {
		export class MediaCodecInfo extends java.lang.Object {
			public static class: java.lang.Class<android.media.MediaCodecInfo>;
			public getSupportedTypes(): native.Array<string>;
			public isEncoder(): boolean;
			public getName(): string;
			public getCapabilitiesForType(param0: string): android.media.MediaCodecInfo.CodecCapabilities;
		}
		export module MediaCodecInfo {
			export class CodecCapabilities extends java.lang.Object {
				public static class: java.lang.Class<android.media.MediaCodecInfo.CodecCapabilities>;
				public profileLevels: native.Array<android.media.MediaCodecInfo.CodecProfileLevel>;
				public static COLOR_FormatMonochrome: number;
				public static COLOR_Format8bitRGB332: number;
				public static COLOR_Format12bitRGB444: number;
				public static COLOR_Format16bitARGB4444: number;
				public static COLOR_Format16bitARGB1555: number;
				public static COLOR_Format16bitRGB565: number;
				public static COLOR_Format16bitBGR565: number;
				public static COLOR_Format18bitRGB666: number;
				public static COLOR_Format18bitARGB1665: number;
				public static COLOR_Format19bitARGB1666: number;
				public static COLOR_Format24bitRGB888: number;
				public static COLOR_Format24bitBGR888: number;
				public static COLOR_Format24bitARGB1887: number;
				public static COLOR_Format25bitARGB1888: number;
				public static COLOR_Format32bitBGRA8888: number;
				public static COLOR_Format32bitARGB8888: number;
				public static COLOR_FormatYUV411Planar: number;
				public static COLOR_FormatYUV411PackedPlanar: number;
				public static COLOR_FormatYUV420Planar: number;
				public static COLOR_FormatYUV420PackedPlanar: number;
				public static COLOR_FormatYUV420SemiPlanar: number;
				public static COLOR_FormatYUV422Planar: number;
				public static COLOR_FormatYUV422PackedPlanar: number;
				public static COLOR_FormatYUV422SemiPlanar: number;
				public static COLOR_FormatYCbYCr: number;
				public static COLOR_FormatYCrYCb: number;
				public static COLOR_FormatCbYCrY: number;
				public static COLOR_FormatCrYCbY: number;
				public static COLOR_FormatYUV444Interleaved: number;
				public static COLOR_FormatRawBayer8bit: number;
				public static COLOR_FormatRawBayer10bit: number;
				public static COLOR_FormatRawBayer8bitcompressed: number;
				public static COLOR_FormatL2: number;
				public static COLOR_FormatL4: number;
				public static COLOR_FormatL8: number;
				public static COLOR_FormatL16: number;
				public static COLOR_FormatL24: number;
				public static COLOR_FormatL32: number;
				public static COLOR_FormatYUV420PackedSemiPlanar: number;
				public static COLOR_FormatYUV422PackedSemiPlanar: number;
				public static COLOR_Format18BitBGR666: number;
				public static COLOR_Format24BitARGB6666: number;
				public static COLOR_Format24BitABGR6666: number;
				public static COLOR_TI_FormatYUV420PackedSemiPlanar: number;
				public static COLOR_FormatSurface: number;
				public static COLOR_QCOM_FormatYUV420SemiPlanar: number;
				public colorFormats: native.Array<number>;
				public constructor();
			}
			export class CodecProfileLevel extends java.lang.Object {
				public static class: java.lang.Class<android.media.MediaCodecInfo.CodecProfileLevel>;
				public static AVCProfileBaseline: number;
				public static AVCProfileMain: number;
				public static AVCProfileExtended: number;
				public static AVCProfileHigh: number;
				public static AVCProfileHigh10: number;
				public static AVCProfileHigh422: number;
				public static AVCProfileHigh444: number;
				public static AVCLevel1: number;
				public static AVCLevel1b: number;
				public static AVCLevel11: number;
				public static AVCLevel12: number;
				public static AVCLevel13: number;
				public static AVCLevel2: number;
				public static AVCLevel21: number;
				public static AVCLevel22: number;
				public static AVCLevel3: number;
				public static AVCLevel31: number;
				public static AVCLevel32: number;
				public static AVCLevel4: number;
				public static AVCLevel41: number;
				public static AVCLevel42: number;
				public static AVCLevel5: number;
				public static AVCLevel51: number;
				public static H263ProfileBaseline: number;
				public static H263ProfileH320Coding: number;
				public static H263ProfileBackwardCompatible: number;
				public static H263ProfileISWV2: number;
				public static H263ProfileISWV3: number;
				public static H263ProfileHighCompression: number;
				public static H263ProfileInternet: number;
				public static H263ProfileInterlace: number;
				public static H263ProfileHighLatency: number;
				public static H263Level10: number;
				public static H263Level20: number;
				public static H263Level30: number;
				public static H263Level40: number;
				public static H263Level45: number;
				public static H263Level50: number;
				public static H263Level60: number;
				public static H263Level70: number;
				public static MPEG4ProfileSimple: number;
				public static MPEG4ProfileSimpleScalable: number;
				public static MPEG4ProfileCore: number;
				public static MPEG4ProfileMain: number;
				public static MPEG4ProfileNbit: number;
				public static MPEG4ProfileScalableTexture: number;
				public static MPEG4ProfileSimpleFace: number;
				public static MPEG4ProfileSimpleFBA: number;
				public static MPEG4ProfileBasicAnimated: number;
				public static MPEG4ProfileHybrid: number;
				public static MPEG4ProfileAdvancedRealTime: number;
				public static MPEG4ProfileCoreScalable: number;
				public static MPEG4ProfileAdvancedCoding: number;
				public static MPEG4ProfileAdvancedCore: number;
				public static MPEG4ProfileAdvancedScalable: number;
				public static MPEG4ProfileAdvancedSimple: number;
				public static MPEG4Level0: number;
				public static MPEG4Level0b: number;
				public static MPEG4Level1: number;
				public static MPEG4Level2: number;
				public static MPEG4Level3: number;
				public static MPEG4Level4: number;
				public static MPEG4Level4a: number;
				public static MPEG4Level5: number;
				public static AACObjectMain: number;
				public static AACObjectLC: number;
				public static AACObjectSSR: number;
				public static AACObjectLTP: number;
				public static AACObjectHE: number;
				public static AACObjectScalable: number;
				public static AACObjectERLC: number;
				public static AACObjectLD: number;
				public static AACObjectHE_PS: number;
				public static AACObjectELD: number;
				public static VP8Level_Version0: number;
				public static VP8Level_Version1: number;
				public static VP8Level_Version2: number;
				public static VP8Level_Version3: number;
				public static VP8ProfileMain: number;
				public profile: number;
				public level: number;
				public constructor();
			}
		}
	}
}

declare module android {
	export module media {
		export class MediaCodecList extends java.lang.Object {
			public static class: java.lang.Class<android.media.MediaCodecList>;
			public static getCodecCount(): number;
			public static getCodecInfoAt(param0: number): android.media.MediaCodecInfo;
		}
	}
}

declare module android {
	export module media {
		export class MediaCrypto extends java.lang.Object {
			public static class: java.lang.Class<android.media.MediaCrypto>;
			public static isCryptoSchemeSupported(param0: java.util.UUID): boolean;
			public requiresSecureDecoderComponent(param0: string): boolean;
			public constructor(param0: java.util.UUID, param1: native.Array<number>);
			public finalize(): void;
			public release(): void;
		}
	}
}

declare module android {
	export module media {
		export class MediaCryptoException extends java.lang.Exception {
			public static class: java.lang.Class<android.media.MediaCryptoException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module android {
	export module media {
		export class MediaDrm extends java.lang.Object {
			public static class: java.lang.Class<android.media.MediaDrm>;
			public static EVENT_PROVISION_REQUIRED: number;
			public static EVENT_KEY_REQUIRED: number;
			public static EVENT_KEY_EXPIRED: number;
			public static EVENT_VENDOR_DEFINED: number;
			public static KEY_TYPE_STREAMING: number;
			public static KEY_TYPE_OFFLINE: number;
			public static KEY_TYPE_RELEASE: number;
			public static PROPERTY_VENDOR: string;
			public static PROPERTY_VERSION: string;
			public static PROPERTY_DESCRIPTION: string;
			public static PROPERTY_ALGORITHMS: string;
			public static PROPERTY_DEVICE_UNIQUE_ID: string;
			public static isCryptoSchemeSupported(param0: java.util.UUID): boolean;
			public queryKeyStatus(param0: native.Array<number>): java.util.HashMap<string,string>;
			public setPropertyString(param0: string, param1: string): void;
			public restoreKeys(param0: native.Array<number>, param1: native.Array<number>): void;
			public getPropertyByteArray(param0: string): native.Array<number>;
			public closeSession(param0: native.Array<number>): void;
			public getSecureStops(): java.util.List<native.Array<number>>;
			public openSession(): native.Array<number>;
			public getPropertyString(param0: string): string;
			public releaseSecureStops(param0: native.Array<number>): void;
			public getCryptoSession(param0: native.Array<number>, param1: string, param2: string): android.media.MediaDrm.CryptoSession;
			public provideKeyResponse(param0: native.Array<number>, param1: native.Array<number>): native.Array<number>;
			public constructor(param0: java.util.UUID);
			public setPropertyByteArray(param0: string, param1: native.Array<number>): void;
			public setOnEventListener(param0: android.media.MediaDrm.OnEventListener): void;
			public removeKeys(param0: native.Array<number>): void;
			public getProvisionRequest(): android.media.MediaDrm.ProvisionRequest;
			public provideProvisionResponse(param0: native.Array<number>): void;
			public getKeyRequest(param0: native.Array<number>, param1: native.Array<number>, param2: string, param3: number, param4: java.util.HashMap<string,string>): android.media.MediaDrm.KeyRequest;
			public finalize(): void;
			public release(): void;
		}
		export module MediaDrm {
			export class CryptoSession extends java.lang.Object {
				public static class: java.lang.Class<android.media.MediaDrm.CryptoSession>;
				public sign(param0: native.Array<number>, param1: native.Array<number>): native.Array<number>;
				public verify(param0: native.Array<number>, param1: native.Array<number>, param2: native.Array<number>): boolean;
				public encrypt(param0: native.Array<number>, param1: native.Array<number>, param2: native.Array<number>): native.Array<number>;
				public decrypt(param0: native.Array<number>, param1: native.Array<number>, param2: native.Array<number>): native.Array<number>;
			}
			export class KeyRequest extends java.lang.Object {
				public static class: java.lang.Class<android.media.MediaDrm.KeyRequest>;
				public getData(): native.Array<number>;
				public getDefaultUrl(): string;
			}
			export class OnEventListener extends java.lang.Object {
				public static class: java.lang.Class<android.media.MediaDrm.OnEventListener>;
				/**
				 * Constructs a new instance of the android.media.MediaDrm$OnEventListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onEvent(param0: android.media.MediaDrm, param1: native.Array<number>, param2: number, param3: number, param4: native.Array<number>): void;
				});
				public constructor();
				public onEvent(param0: android.media.MediaDrm, param1: native.Array<number>, param2: number, param3: number, param4: native.Array<number>): void;
			}
			export class ProvisionRequest extends java.lang.Object {
				public static class: java.lang.Class<android.media.MediaDrm.ProvisionRequest>;
				public getData(): native.Array<number>;
				public getDefaultUrl(): string;
			}
		}
	}
}

declare module android {
	export module media {
		export class MediaDrmException extends java.lang.Exception {
			public static class: java.lang.Class<android.media.MediaDrmException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module android {
	export module media {
		export class MediaExtractor extends java.lang.Object {
			public static class: java.lang.Class<android.media.MediaExtractor>;
			public static SEEK_TO_PREVIOUS_SYNC: number;
			public static SEEK_TO_NEXT_SYNC: number;
			public static SEEK_TO_CLOSEST_SYNC: number;
			public static SAMPLE_FLAG_SYNC: number;
			public static SAMPLE_FLAG_ENCRYPTED: number;
			public setDataSource(param0: java.io.FileDescriptor, param1: number, param2: number): void;
			public getPsshInfo(): java.util.Map<java.util.UUID,native.Array<number>>;
			public getTrackFormat(param0: number): android.media.MediaFormat;
			public selectTrack(param0: number): void;
			public hasCacheReachedEndOfStream(): boolean;
			public advance(): boolean;
			public getSampleTime(): number;
			public setDataSource(param0: java.io.FileDescriptor): void;
			public seekTo(param0: number, param1: number): void;
			public getSampleCryptoInfo(param0: android.media.MediaCodec.CryptoInfo): boolean;
			public unselectTrack(param0: number): void;
			public constructor();
			public setDataSource(param0: android.content.Context, param1: android.net.Uri, param2: java.util.Map<string,string>): void;
			public setDataSource(param0: string): void;
			public getSampleFlags(): number;
			public setDataSource(param0: string, param1: java.util.Map<string,string>): void;
			public getTrackCount(): number;
			public getSampleTrackIndex(): number;
			public finalize(): void;
			public release(): void;
			public readSampleData(param0: java.nio.ByteBuffer, param1: number): number;
			public getCachedDuration(): number;
		}
	}
}

declare module android {
	export module media {
		export class MediaFormat extends java.lang.Object {
			public static class: java.lang.Class<android.media.MediaFormat>;
			public static KEY_MIME: string;
			public static KEY_SAMPLE_RATE: string;
			public static KEY_CHANNEL_COUNT: string;
			public static KEY_WIDTH: string;
			public static KEY_HEIGHT: string;
			public static KEY_MAX_INPUT_SIZE: string;
			public static KEY_BIT_RATE: string;
			public static KEY_COLOR_FORMAT: string;
			public static KEY_FRAME_RATE: string;
			public static KEY_I_FRAME_INTERVAL: string;
			public static KEY_DURATION: string;
			public static KEY_IS_ADTS: string;
			public static KEY_CHANNEL_MASK: string;
			public static KEY_AAC_PROFILE: string;
			public static KEY_FLAC_COMPRESSION_LEVEL: string;
			public getLong(param0: string): number;
			public getString(param0: string): string;
			public getByteBuffer(param0: string): java.nio.ByteBuffer;
			public setString(param0: string, param1: string): void;
			public constructor();
			public setByteBuffer(param0: string, param1: java.nio.ByteBuffer): void;
			public static createVideoFormat(param0: string, param1: number, param2: number): android.media.MediaFormat;
			public getFloat(param0: string): number;
			public toString(): string;
			public getInteger(param0: string): number;
			public static createAudioFormat(param0: string, param1: number, param2: number): android.media.MediaFormat;
			public setInteger(param0: string, param1: number): void;
			public containsKey(param0: string): boolean;
			public setLong(param0: string, param1: number): void;
			public setFloat(param0: string, param1: number): void;
		}
	}
}

declare module android {
	export module media {
		export class MediaMetadataRetriever extends java.lang.Object {
			public static class: java.lang.Class<android.media.MediaMetadataRetriever>;
			public static OPTION_PREVIOUS_SYNC: number;
			public static OPTION_NEXT_SYNC: number;
			public static OPTION_CLOSEST_SYNC: number;
			public static OPTION_CLOSEST: number;
			public static METADATA_KEY_CD_TRACK_NUMBER: number;
			public static METADATA_KEY_ALBUM: number;
			public static METADATA_KEY_ARTIST: number;
			public static METADATA_KEY_AUTHOR: number;
			public static METADATA_KEY_COMPOSER: number;
			public static METADATA_KEY_DATE: number;
			public static METADATA_KEY_GENRE: number;
			public static METADATA_KEY_TITLE: number;
			public static METADATA_KEY_YEAR: number;
			public static METADATA_KEY_DURATION: number;
			public static METADATA_KEY_NUM_TRACKS: number;
			public static METADATA_KEY_WRITER: number;
			public static METADATA_KEY_MIMETYPE: number;
			public static METADATA_KEY_ALBUMARTIST: number;
			public static METADATA_KEY_DISC_NUMBER: number;
			public static METADATA_KEY_COMPILATION: number;
			public static METADATA_KEY_HAS_AUDIO: number;
			public static METADATA_KEY_HAS_VIDEO: number;
			public static METADATA_KEY_VIDEO_WIDTH: number;
			public static METADATA_KEY_VIDEO_HEIGHT: number;
			public static METADATA_KEY_BITRATE: number;
			public static METADATA_KEY_LOCATION: number;
			public static METADATA_KEY_VIDEO_ROTATION: number;
			public setDataSource(param0: java.io.FileDescriptor, param1: number, param2: number): void;
			public getFrameAtTime(param0: number, param1: number): android.graphics.Bitmap;
			public setDataSource(param0: java.io.FileDescriptor): void;
			public setDataSource(param0: android.content.Context, param1: android.net.Uri): void;
			public extractMetadata(param0: number): string;
			public constructor();
			public setDataSource(param0: string): void;
			public setDataSource(param0: string, param1: java.util.Map<string,string>): void;
			public getEmbeddedPicture(): native.Array<number>;
			public getFrameAtTime(): android.graphics.Bitmap;
			public getFrameAtTime(param0: number): android.graphics.Bitmap;
			public release(): void;
			public finalize(): void;
		}
	}
}

declare module android {
	export module media {
		export class MediaMuxer extends java.lang.Object {
			public static class: java.lang.Class<android.media.MediaMuxer>;
			public writeSampleData(param0: number, param1: java.nio.ByteBuffer, param2: android.media.MediaCodec.BufferInfo): void;
			public constructor(param0: string, param1: number);
			public stop(): void;
			public setOrientationHint(param0: number): void;
			public start(): void;
			public finalize(): void;
			public release(): void;
			public addTrack(param0: android.media.MediaFormat): number;
		}
		export module MediaMuxer {
			export class OutputFormat extends java.lang.Object {
				public static class: java.lang.Class<android.media.MediaMuxer.OutputFormat>;
				public static MUXER_OUTPUT_MPEG_4: number;
			}
		}
	}
}

declare module android {
	export module media {
		export class MediaPlayer extends java.lang.Object {
			public static class: java.lang.Class<android.media.MediaPlayer>;
			public static VIDEO_SCALING_MODE_SCALE_TO_FIT: number;
			public static VIDEO_SCALING_MODE_SCALE_TO_FIT_WITH_CROPPING: number;
			public static MEDIA_MIMETYPE_TEXT_SUBRIP: string;
			public static MEDIA_ERROR_UNKNOWN: number;
			public static MEDIA_ERROR_SERVER_DIED: number;
			public static MEDIA_ERROR_NOT_VALID_FOR_PROGRESSIVE_PLAYBACK: number;
			public static MEDIA_ERROR_IO: number;
			public static MEDIA_ERROR_MALFORMED: number;
			public static MEDIA_ERROR_UNSUPPORTED: number;
			public static MEDIA_ERROR_TIMED_OUT: number;
			public static MEDIA_INFO_UNKNOWN: number;
			public static MEDIA_INFO_VIDEO_RENDERING_START: number;
			public static MEDIA_INFO_VIDEO_TRACK_LAGGING: number;
			public static MEDIA_INFO_BUFFERING_START: number;
			public static MEDIA_INFO_BUFFERING_END: number;
			public static MEDIA_INFO_BAD_INTERLEAVING: number;
			public static MEDIA_INFO_NOT_SEEKABLE: number;
			public static MEDIA_INFO_METADATA_UPDATE: number;
			public setDataSource(param0: java.io.FileDescriptor, param1: number, param2: number): void;
			public prepare(): void;
			public setLooping(param0: boolean): void;
			public selectTrack(param0: number): void;
			public setDataSource(param0: android.content.Context, param1: android.net.Uri): void;
			public setAudioStreamType(param0: number): void;
			public setSurface(param0: android.view.Surface): void;
			public setOnSeekCompleteListener(param0: android.media.MediaPlayer.OnSeekCompleteListener): void;
			public setOnBufferingUpdateListener(param0: android.media.MediaPlayer.OnBufferingUpdateListener): void;
			public setOnErrorListener(param0: android.media.MediaPlayer.OnErrorListener): void;
			public setNextMediaPlayer(param0: android.media.MediaPlayer): void;
			public stop(): void;
			public start(): void;
			public getVideoHeight(): number;
			public addTimedTextSource(param0: android.content.Context, param1: android.net.Uri, param2: string): void;
			public seekTo(param0: number): void;
			public getCurrentPosition(): number;
			public constructor();
			public setDataSource(param0: android.content.Context, param1: android.net.Uri, param2: java.util.Map<string,string>): void;
			public addTimedTextSource(param0: java.io.FileDescriptor, param1: number, param2: number, param3: string): void;
			public setVideoScalingMode(param0: number): void;
			public isLooping(): boolean;
			public setDataSource(param0: string): void;
			public setAuxEffectSendLevel(param0: number): void;
			public setVolume(param0: number, param1: number): void;
			public getVideoWidth(): number;
			public deselectTrack(param0: number): void;
			public setDisplay(param0: android.view.SurfaceHolder): void;
			public getDuration(): number;
			public setDataSource(param0: java.io.FileDescriptor): void;
			public setWakeMode(param0: android.content.Context, param1: number): void;
			public isPlaying(): boolean;
			public pause(): void;
			public static create(param0: android.content.Context, param1: android.net.Uri): android.media.MediaPlayer;
			public attachAuxEffect(param0: number): void;
			public setOnPreparedListener(param0: android.media.MediaPlayer.OnPreparedListener): void;
			public addTimedTextSource(param0: java.io.FileDescriptor, param1: string): void;
			public reset(): void;
			public release(): void;
			public finalize(): void;
			public prepareAsync(): void;
			public setAudioSessionId(param0: number): void;
			public setScreenOnWhilePlaying(param0: boolean): void;
			public setOnTimedTextListener(param0: android.media.MediaPlayer.OnTimedTextListener): void;
			public setOnVideoSizeChangedListener(param0: android.media.MediaPlayer.OnVideoSizeChangedListener): void;
			public static create(param0: android.content.Context, param1: android.net.Uri, param2: android.view.SurfaceHolder): android.media.MediaPlayer;
			public getAudioSessionId(): number;
			public static create(param0: android.content.Context, param1: number): android.media.MediaPlayer;
			public setOnInfoListener(param0: android.media.MediaPlayer.OnInfoListener): void;
			public getTrackInfo(): native.Array<android.media.MediaPlayer.TrackInfo>;
			public addTimedTextSource(param0: string, param1: string): void;
			public setOnCompletionListener(param0: android.media.MediaPlayer.OnCompletionListener): void;
		}
		export module MediaPlayer {
			export class OnBufferingUpdateListener extends java.lang.Object {
				public static class: java.lang.Class<android.media.MediaPlayer.OnBufferingUpdateListener>;
				/**
				 * Constructs a new instance of the android.media.MediaPlayer$OnBufferingUpdateListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onBufferingUpdate(param0: android.media.MediaPlayer, param1: number): void;
				});
				public constructor();
				public onBufferingUpdate(param0: android.media.MediaPlayer, param1: number): void;
			}
			export class OnCompletionListener extends java.lang.Object {
				public static class: java.lang.Class<android.media.MediaPlayer.OnCompletionListener>;
				/**
				 * Constructs a new instance of the android.media.MediaPlayer$OnCompletionListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onCompletion(param0: android.media.MediaPlayer): void;
				});
				public constructor();
				public onCompletion(param0: android.media.MediaPlayer): void;
			}
			export class OnErrorListener extends java.lang.Object {
				public static class: java.lang.Class<android.media.MediaPlayer.OnErrorListener>;
				/**
				 * Constructs a new instance of the android.media.MediaPlayer$OnErrorListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onError(param0: android.media.MediaPlayer, param1: number, param2: number): boolean;
				});
				public constructor();
				public onError(param0: android.media.MediaPlayer, param1: number, param2: number): boolean;
			}
			export class OnInfoListener extends java.lang.Object {
				public static class: java.lang.Class<android.media.MediaPlayer.OnInfoListener>;
				/**
				 * Constructs a new instance of the android.media.MediaPlayer$OnInfoListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onInfo(param0: android.media.MediaPlayer, param1: number, param2: number): boolean;
				});
				public constructor();
				public onInfo(param0: android.media.MediaPlayer, param1: number, param2: number): boolean;
			}
			export class OnPreparedListener extends java.lang.Object {
				public static class: java.lang.Class<android.media.MediaPlayer.OnPreparedListener>;
				/**
				 * Constructs a new instance of the android.media.MediaPlayer$OnPreparedListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onPrepared(param0: android.media.MediaPlayer): void;
				});
				public constructor();
				public onPrepared(param0: android.media.MediaPlayer): void;
			}
			export class OnSeekCompleteListener extends java.lang.Object {
				public static class: java.lang.Class<android.media.MediaPlayer.OnSeekCompleteListener>;
				/**
				 * Constructs a new instance of the android.media.MediaPlayer$OnSeekCompleteListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onSeekComplete(param0: android.media.MediaPlayer): void;
				});
				public constructor();
				public onSeekComplete(param0: android.media.MediaPlayer): void;
			}
			export class OnTimedTextListener extends java.lang.Object {
				public static class: java.lang.Class<android.media.MediaPlayer.OnTimedTextListener>;
				/**
				 * Constructs a new instance of the android.media.MediaPlayer$OnTimedTextListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onTimedText(param0: android.media.MediaPlayer, param1: android.media.TimedText): void;
				});
				public constructor();
				public onTimedText(param0: android.media.MediaPlayer, param1: android.media.TimedText): void;
			}
			export class OnVideoSizeChangedListener extends java.lang.Object {
				public static class: java.lang.Class<android.media.MediaPlayer.OnVideoSizeChangedListener>;
				/**
				 * Constructs a new instance of the android.media.MediaPlayer$OnVideoSizeChangedListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onVideoSizeChanged(param0: android.media.MediaPlayer, param1: number, param2: number): void;
				});
				public constructor();
				public onVideoSizeChanged(param0: android.media.MediaPlayer, param1: number, param2: number): void;
			}
			export class TrackInfo extends java.lang.Object implements android.os.Parcelable {
				public static class: java.lang.Class<android.media.MediaPlayer.TrackInfo>;
				public static MEDIA_TRACK_TYPE_UNKNOWN: number;
				public static MEDIA_TRACK_TYPE_VIDEO: number;
				public static MEDIA_TRACK_TYPE_AUDIO: number;
				public static MEDIA_TRACK_TYPE_TIMEDTEXT: number;
				public getLanguage(): string;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public getTrackType(): number;
				public describeContents(): number;
			}
		}
	}
}

declare module android {
	export module media {
		export class MediaRecorder extends java.lang.Object {
			public static class: java.lang.Class<android.media.MediaRecorder>;
			public static MEDIA_RECORDER_ERROR_UNKNOWN: number;
			public static MEDIA_ERROR_SERVER_DIED: number;
			public static MEDIA_RECORDER_INFO_UNKNOWN: number;
			public static MEDIA_RECORDER_INFO_MAX_DURATION_REACHED: number;
			public static MEDIA_RECORDER_INFO_MAX_FILESIZE_REACHED: number;
			public prepare(): void;
			public setVideoSource(param0: number): void;
			public setVideoEncodingBitRate(param0: number): void;
			public setVideoSize(param0: number, param1: number): void;
			public setPreviewDisplay(param0: android.view.Surface): void;
			public setAudioChannels(param0: number): void;
			public setOutputFormat(param0: number): void;
			public setVideoEncoder(param0: number): void;
			public setMaxDuration(param0: number): void;
			public setAudioEncodingBitRate(param0: number): void;
			public setMaxFileSize(param0: number): void;
			public setOnInfoListener(param0: android.media.MediaRecorder.OnInfoListener): void;
			public stop(): void;
			public reset(): void;
			public start(): void;
			public release(): void;
			public finalize(): void;
			public setCaptureRate(param0: number): void;
			public setVideoFrameRate(param0: number): void;
			public setAudioSource(param0: number): void;
			public setAudioSamplingRate(param0: number): void;
			public setProfile(param0: android.media.CamcorderProfile): void;
			public setOrientationHint(param0: number): void;
			public setOnErrorListener(param0: android.media.MediaRecorder.OnErrorListener): void;
			public constructor();
			public setCamera(param0: android.hardware.Camera): void;
			public setLocation(param0: number, param1: number): void;
			public static getAudioSourceMax(): number;
			public setOutputFile(param0: string): void;
			public setOutputFile(param0: java.io.FileDescriptor): void;
			public getMaxAmplitude(): number;
			public setAudioEncoder(param0: number): void;
		}
		export module MediaRecorder {
			export class AudioEncoder extends java.lang.Object {
				public static class: java.lang.Class<android.media.MediaRecorder.AudioEncoder>;
				public static DEFAULT: number;
				public static AMR_NB: number;
				public static AMR_WB: number;
				public static AAC: number;
				public static HE_AAC: number;
				public static AAC_ELD: number;
			}
			export class AudioSource extends java.lang.Object {
				public static class: java.lang.Class<android.media.MediaRecorder.AudioSource>;
				public static DEFAULT: number;
				public static MIC: number;
				public static VOICE_UPLINK: number;
				public static VOICE_DOWNLINK: number;
				public static VOICE_CALL: number;
				public static CAMCORDER: number;
				public static VOICE_RECOGNITION: number;
				public static VOICE_COMMUNICATION: number;
			}
			export class OnErrorListener extends java.lang.Object {
				public static class: java.lang.Class<android.media.MediaRecorder.OnErrorListener>;
				/**
				 * Constructs a new instance of the android.media.MediaRecorder$OnErrorListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onError(param0: android.media.MediaRecorder, param1: number, param2: number): void;
				});
				public constructor();
				public onError(param0: android.media.MediaRecorder, param1: number, param2: number): void;
			}
			export class OnInfoListener extends java.lang.Object {
				public static class: java.lang.Class<android.media.MediaRecorder.OnInfoListener>;
				/**
				 * Constructs a new instance of the android.media.MediaRecorder$OnInfoListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onInfo(param0: android.media.MediaRecorder, param1: number, param2: number): void;
				});
				public constructor();
				public onInfo(param0: android.media.MediaRecorder, param1: number, param2: number): void;
			}
			export class OutputFormat extends java.lang.Object {
				public static class: java.lang.Class<android.media.MediaRecorder.OutputFormat>;
				public static DEFAULT: number;
				public static THREE_GPP: number;
				public static MPEG_4: number;
				public static RAW_AMR: number;
				public static AMR_NB: number;
				public static AMR_WB: number;
				public static AAC_ADTS: number;
			}
			export class VideoEncoder extends java.lang.Object {
				public static class: java.lang.Class<android.media.MediaRecorder.VideoEncoder>;
				public static DEFAULT: number;
				public static H263: number;
				public static H264: number;
				public static MPEG_4_SP: number;
			}
			export class VideoSource extends java.lang.Object {
				public static class: java.lang.Class<android.media.MediaRecorder.VideoSource>;
				public static DEFAULT: number;
				public static CAMERA: number;
			}
		}
	}
}

declare module android {
	export module media {
		export class MediaRouter extends java.lang.Object {
			public static class: java.lang.Class<android.media.MediaRouter>;
			public static ROUTE_TYPE_LIVE_AUDIO: number;
			public static ROUTE_TYPE_LIVE_VIDEO: number;
			public static ROUTE_TYPE_USER: number;
			public static CALLBACK_FLAG_PERFORM_ACTIVE_SCAN: number;
			public static CALLBACK_FLAG_UNFILTERED_EVENTS: number;
			public getCategoryAt(param0: number): android.media.MediaRouter.RouteCategory;
			public getDefaultRoute(): android.media.MediaRouter.RouteInfo;
			public clearUserRoutes(): void;
			public getCategoryCount(): number;
			public addCallback(param0: number, param1: android.media.MediaRouter.Callback): void;
			public selectRoute(param0: number, param1: android.media.MediaRouter.RouteInfo): void;
			public getRouteCount(): number;
			public getRouteAt(param0: number): android.media.MediaRouter.RouteInfo;
			public createUserRoute(param0: android.media.MediaRouter.RouteCategory): android.media.MediaRouter.UserRouteInfo;
			public removeCallback(param0: android.media.MediaRouter.Callback): void;
			public createRouteCategory(param0: number, param1: boolean): android.media.MediaRouter.RouteCategory;
			public removeUserRoute(param0: android.media.MediaRouter.UserRouteInfo): void;
			public addCallback(param0: number, param1: android.media.MediaRouter.Callback, param2: number): void;
			public getSelectedRoute(param0: number): android.media.MediaRouter.RouteInfo;
			public addUserRoute(param0: android.media.MediaRouter.UserRouteInfo): void;
			public createRouteCategory(param0: string, param1: boolean): android.media.MediaRouter.RouteCategory;
		}
		export module MediaRouter {
			export abstract class Callback extends java.lang.Object {
				public static class: java.lang.Class<android.media.MediaRouter.Callback>;
				public onRouteVolumeChanged(param0: android.media.MediaRouter, param1: android.media.MediaRouter.RouteInfo): void;
				public onRouteGrouped(param0: android.media.MediaRouter, param1: android.media.MediaRouter.RouteInfo, param2: android.media.MediaRouter.RouteGroup, param3: number): void;
				public onRouteChanged(param0: android.media.MediaRouter, param1: android.media.MediaRouter.RouteInfo): void;
				public onRouteUngrouped(param0: android.media.MediaRouter, param1: android.media.MediaRouter.RouteInfo, param2: android.media.MediaRouter.RouteGroup): void;
				public onRouteAdded(param0: android.media.MediaRouter, param1: android.media.MediaRouter.RouteInfo): void;
				public onRouteUnselected(param0: android.media.MediaRouter, param1: number, param2: android.media.MediaRouter.RouteInfo): void;
				public onRouteRemoved(param0: android.media.MediaRouter, param1: android.media.MediaRouter.RouteInfo): void;
				public onRouteSelected(param0: android.media.MediaRouter, param1: number, param2: android.media.MediaRouter.RouteInfo): void;
				public constructor();
				public onRoutePresentationDisplayChanged(param0: android.media.MediaRouter, param1: android.media.MediaRouter.RouteInfo): void;
			}
			export class RouteCategory extends java.lang.Object {
				public static class: java.lang.Class<android.media.MediaRouter.RouteCategory>;
				public getName(param0: android.content.Context): string;
				public getRoutes(param0: java.util.List<android.media.MediaRouter.RouteInfo>): java.util.List<android.media.MediaRouter.RouteInfo>;
				public isGroupable(): boolean;
				public getName(): string;
				public getSupportedTypes(): number;
				public toString(): string;
			}
			export class RouteGroup extends android.media.MediaRouter.RouteInfo {
				public static class: java.lang.Class<android.media.MediaRouter.RouteGroup>;
				public removeRoute(param0: android.media.MediaRouter.RouteInfo): void;
				public removeRoute(param0: number): void;
				public setIconDrawable(param0: android.graphics.drawable.Drawable): void;
				public requestUpdateVolume(param0: number): void;
				public getRouteCount(): number;
				public setIconResource(param0: number): void;
				public requestSetVolume(param0: number): void;
				public addRoute(param0: android.media.MediaRouter.RouteInfo): void;
				public addRoute(param0: android.media.MediaRouter.RouteInfo, param1: number): void;
				public toString(): string;
				public getRouteAt(param0: number): android.media.MediaRouter.RouteInfo;
			}
			export class RouteInfo extends java.lang.Object {
				public static class: java.lang.Class<android.media.MediaRouter.RouteInfo>;
				public static PLAYBACK_TYPE_LOCAL: number;
				public static PLAYBACK_TYPE_REMOTE: number;
				public static PLAYBACK_VOLUME_FIXED: number;
				public static PLAYBACK_VOLUME_VARIABLE: number;
				public getCategory(): android.media.MediaRouter.RouteCategory;
				public getStatus(): string;
				public requestUpdateVolume(param0: number): void;
				public getIconDrawable(): android.graphics.drawable.Drawable;
				public getVolumeMax(): number;
				public getPresentationDisplay(): android.view.Display;
				public getPlaybackStream(): number;
				public getName(): string;
				public getDescription(): string;
				public getPlaybackType(): number;
				public toString(): string;
				public isConnecting(): boolean;
				public getVolume(): number;
				public getName(param0: android.content.Context): string;
				public requestSetVolume(param0: number): void;
				public getGroup(): android.media.MediaRouter.RouteGroup;
				public getTag(): any;
				public isEnabled(): boolean;
				public getSupportedTypes(): number;
				public setTag(param0: any): void;
				public getVolumeHandling(): number;
			}
			export class SimpleCallback extends android.media.MediaRouter.Callback {
				public static class: java.lang.Class<android.media.MediaRouter.SimpleCallback>;
				public onRouteVolumeChanged(param0: android.media.MediaRouter, param1: android.media.MediaRouter.RouteInfo): void;
				public onRouteGrouped(param0: android.media.MediaRouter, param1: android.media.MediaRouter.RouteInfo, param2: android.media.MediaRouter.RouteGroup, param3: number): void;
				public onRouteChanged(param0: android.media.MediaRouter, param1: android.media.MediaRouter.RouteInfo): void;
				public onRouteUngrouped(param0: android.media.MediaRouter, param1: android.media.MediaRouter.RouteInfo, param2: android.media.MediaRouter.RouteGroup): void;
				public onRouteAdded(param0: android.media.MediaRouter, param1: android.media.MediaRouter.RouteInfo): void;
				public onRouteUnselected(param0: android.media.MediaRouter, param1: number, param2: android.media.MediaRouter.RouteInfo): void;
				public onRouteRemoved(param0: android.media.MediaRouter, param1: android.media.MediaRouter.RouteInfo): void;
				public onRouteSelected(param0: android.media.MediaRouter, param1: number, param2: android.media.MediaRouter.RouteInfo): void;
				public constructor();
			}
			export class UserRouteInfo extends android.media.MediaRouter.RouteInfo {
				public static class: java.lang.Class<android.media.MediaRouter.UserRouteInfo>;
				public setName(param0: string): void;
				public setPlaybackStream(param0: number): void;
				public requestUpdateVolume(param0: number): void;
				public setVolumeHandling(param0: number): void;
				public setIconResource(param0: number): void;
				public setVolumeCallback(param0: android.media.MediaRouter.VolumeCallback): void;
				public setName(param0: number): void;
				public getRemoteControlClient(): android.media.RemoteControlClient;
				public setStatus(param0: string): void;
				public setIconDrawable(param0: android.graphics.drawable.Drawable): void;
				public setPlaybackType(param0: number): void;
				public setDescription(param0: string): void;
				public setVolume(param0: number): void;
				public requestSetVolume(param0: number): void;
				public setVolumeMax(param0: number): void;
				public setRemoteControlClient(param0: android.media.RemoteControlClient): void;
			}
			export abstract class VolumeCallback extends java.lang.Object {
				public static class: java.lang.Class<android.media.MediaRouter.VolumeCallback>;
				public onVolumeUpdateRequest(param0: android.media.MediaRouter.RouteInfo, param1: number): void;
				public onVolumeSetRequest(param0: android.media.MediaRouter.RouteInfo, param1: number): void;
				public constructor();
			}
		}
	}
}

declare module android {
	export module media {
		export class MediaScannerConnection extends java.lang.Object implements android.content.ServiceConnection {
			public static class: java.lang.Class<android.media.MediaScannerConnection>;
			public constructor(param0: android.content.Context, param1: android.media.MediaScannerConnection.MediaScannerConnectionClient);
			public scanFile(param0: string, param1: string): void;
			public isConnected(): boolean;
			public onServiceDisconnected(param0: android.content.ComponentName): void;
			public static scanFile(param0: android.content.Context, param1: native.Array<string>, param2: native.Array<string>, param3: android.media.MediaScannerConnection.OnScanCompletedListener): void;
			public connect(): void;
			public disconnect(): void;
			public onServiceConnected(param0: android.content.ComponentName, param1: android.os.IBinder): void;
		}
		export module MediaScannerConnection {
			export class MediaScannerConnectionClient extends java.lang.Object implements android.media.MediaScannerConnection.OnScanCompletedListener {
				public static class: java.lang.Class<android.media.MediaScannerConnection.MediaScannerConnectionClient>;
				/**
				 * Constructs a new instance of the android.media.MediaScannerConnection$MediaScannerConnectionClient interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onMediaScannerConnected(): void;
					onScanCompleted(param0: string, param1: android.net.Uri): void;
					onScanCompleted(param0: string, param1: android.net.Uri): void;
				});
				public constructor();
				public onScanCompleted(param0: string, param1: android.net.Uri): void;
				public onMediaScannerConnected(): void;
			}
			export class OnScanCompletedListener extends java.lang.Object {
				public static class: java.lang.Class<android.media.MediaScannerConnection.OnScanCompletedListener>;
				/**
				 * Constructs a new instance of the android.media.MediaScannerConnection$OnScanCompletedListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onScanCompleted(param0: string, param1: android.net.Uri): void;
				});
				public constructor();
				public onScanCompleted(param0: string, param1: android.net.Uri): void;
			}
		}
	}
}

declare module android {
	export module media {
		export class MediaSyncEvent extends java.lang.Object {
			public static class: java.lang.Class<android.media.MediaSyncEvent>;
			public static SYNC_EVENT_NONE: number;
			public static SYNC_EVENT_PRESENTATION_COMPLETE: number;
			public static createEvent(param0: number): android.media.MediaSyncEvent;
			public getAudioSessionId(): number;
			public getType(): number;
			public setAudioSessionId(param0: number): android.media.MediaSyncEvent;
		}
	}
}

declare module android {
	export module media {
		export class NotProvisionedException extends android.media.MediaDrmException {
			public static class: java.lang.Class<android.media.NotProvisionedException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module android {
	export module media {
		export class RemoteControlClient extends java.lang.Object {
			public static class: java.lang.Class<android.media.RemoteControlClient>;
			public static PLAYSTATE_STOPPED: number;
			public static PLAYSTATE_PAUSED: number;
			public static PLAYSTATE_PLAYING: number;
			public static PLAYSTATE_FAST_FORWARDING: number;
			public static PLAYSTATE_REWINDING: number;
			public static PLAYSTATE_SKIPPING_FORWARDS: number;
			public static PLAYSTATE_SKIPPING_BACKWARDS: number;
			public static PLAYSTATE_BUFFERING: number;
			public static PLAYSTATE_ERROR: number;
			public static FLAG_KEY_MEDIA_PREVIOUS: number;
			public static FLAG_KEY_MEDIA_REWIND: number;
			public static FLAG_KEY_MEDIA_PLAY: number;
			public static FLAG_KEY_MEDIA_PLAY_PAUSE: number;
			public static FLAG_KEY_MEDIA_PAUSE: number;
			public static FLAG_KEY_MEDIA_STOP: number;
			public static FLAG_KEY_MEDIA_FAST_FORWARD: number;
			public static FLAG_KEY_MEDIA_NEXT: number;
			public static FLAG_KEY_MEDIA_POSITION_UPDATE: number;
			public setTransportControlFlags(param0: number): void;
			public setPlaybackPositionUpdateListener(param0: android.media.RemoteControlClient.OnPlaybackPositionUpdateListener): void;
			public constructor(param0: android.app.PendingIntent);
			public constructor(param0: android.app.PendingIntent, param1: android.os.Looper);
			public setPlaybackState(param0: number, param1: number, param2: number): void;
			public editMetadata(param0: boolean): android.media.RemoteControlClient.MetadataEditor;
			public setPlaybackState(param0: number): void;
			public setOnGetPlaybackPositionListener(param0: android.media.RemoteControlClient.OnGetPlaybackPositionListener): void;
		}
		export module RemoteControlClient {
			export class MetadataEditor extends java.lang.Object {
				public static class: java.lang.Class<android.media.RemoteControlClient.MetadataEditor>;
				public static BITMAP_KEY_ARTWORK: number;
				public apply(): void;
				public putLong(param0: number, param1: number): android.media.RemoteControlClient.MetadataEditor;
				public putBitmap(param0: number, param1: android.graphics.Bitmap): android.media.RemoteControlClient.MetadataEditor;
				public clear(): void;
				public putString(param0: number, param1: string): android.media.RemoteControlClient.MetadataEditor;
			}
			export class OnGetPlaybackPositionListener extends java.lang.Object {
				public static class: java.lang.Class<android.media.RemoteControlClient.OnGetPlaybackPositionListener>;
				/**
				 * Constructs a new instance of the android.media.RemoteControlClient$OnGetPlaybackPositionListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onGetPlaybackPosition(): number;
				});
				public constructor();
				public onGetPlaybackPosition(): number;
			}
			export class OnPlaybackPositionUpdateListener extends java.lang.Object {
				public static class: java.lang.Class<android.media.RemoteControlClient.OnPlaybackPositionUpdateListener>;
				/**
				 * Constructs a new instance of the android.media.RemoteControlClient$OnPlaybackPositionUpdateListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onPlaybackPositionUpdate(param0: number): void;
				});
				public constructor();
				public onPlaybackPositionUpdate(param0: number): void;
			}
		}
	}
}

declare module android {
	export module media {
		export class Ringtone extends java.lang.Object {
			public static class: java.lang.Class<android.media.Ringtone>;
			public getTitle(param0: android.content.Context): string;
			public stop(): void;
			public setStreamType(param0: number): void;
			public getStreamType(): number;
			public play(): void;
			public isPlaying(): boolean;
		}
	}
}

declare module android {
	export module media {
		export class RingtoneManager extends java.lang.Object {
			public static class: java.lang.Class<android.media.RingtoneManager>;
			public static TYPE_RINGTONE: number;
			public static TYPE_NOTIFICATION: number;
			public static TYPE_ALARM: number;
			public static TYPE_ALL: number;
			public static ACTION_RINGTONE_PICKER: string;
			public static EXTRA_RINGTONE_SHOW_DEFAULT: string;
			public static EXTRA_RINGTONE_SHOW_SILENT: string;
			public static EXTRA_RINGTONE_INCLUDE_DRM: string;
			public static EXTRA_RINGTONE_EXISTING_URI: string;
			public static EXTRA_RINGTONE_DEFAULT_URI: string;
			public static EXTRA_RINGTONE_TYPE: string;
			public static EXTRA_RINGTONE_TITLE: string;
			public static EXTRA_RINGTONE_PICKED_URI: string;
			public static ID_COLUMN_INDEX: number;
			public static TITLE_COLUMN_INDEX: number;
			public static URI_COLUMN_INDEX: number;
			public getRingtonePosition(param0: android.net.Uri): number;
			public inferStreamType(): number;
			public static isDefault(param0: android.net.Uri): boolean;
			public getRingtoneUri(param0: number): android.net.Uri;
			public setIncludeDrm(param0: boolean): void;
			public setType(param0: number): void;
			public static getRingtone(param0: android.content.Context, param1: android.net.Uri): android.media.Ringtone;
			public constructor(param0: android.app.Activity);
			public getRingtone(param0: number): android.media.Ringtone;
			public stopPreviousRingtone(): void;
			public getCursor(): android.database.Cursor;
			public constructor(param0: android.content.Context);
			public setStopPreviousRingtone(param0: boolean): void;
			public getStopPreviousRingtone(): boolean;
			public static getDefaultType(param0: android.net.Uri): number;
			public static getDefaultUri(param0: number): android.net.Uri;
			public static setActualDefaultRingtoneUri(param0: android.content.Context, param1: number, param2: android.net.Uri): void;
			public getIncludeDrm(): boolean;
			public static getActualDefaultRingtoneUri(param0: android.content.Context, param1: number): android.net.Uri;
			public static getValidRingtoneUri(param0: android.content.Context): android.net.Uri;
		}
	}
}

declare module android {
	export module media {
		export class SoundPool extends java.lang.Object {
			public static class: java.lang.Class<android.media.SoundPool>;
			public constructor(param0: number, param1: number, param2: number);
			public play(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): number;
			public setVolume(param0: number, param1: number, param2: number): void;
			public setRate(param0: number, param1: number): void;
			public load(param0: android.content.res.AssetFileDescriptor, param1: number): number;
			public unload(param0: number): boolean;
			public stop(param0: number): void;
			public setPriority(param0: number, param1: number): void;
			public load(param0: string, param1: number): number;
			public autoPause(): void;
			public load(param0: java.io.FileDescriptor, param1: number, param2: number, param3: number): number;
			public resume(param0: number): void;
			public pause(param0: number): void;
			public setLoop(param0: number, param1: number): void;
			public autoResume(): void;
			public load(param0: android.content.Context, param1: number, param2: number): number;
			public setOnLoadCompleteListener(param0: android.media.SoundPool.OnLoadCompleteListener): void;
			public release(): void;
			public finalize(): void;
		}
		export module SoundPool {
			export class OnLoadCompleteListener extends java.lang.Object {
				public static class: java.lang.Class<android.media.SoundPool.OnLoadCompleteListener>;
				/**
				 * Constructs a new instance of the android.media.SoundPool$OnLoadCompleteListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onLoadComplete(param0: android.media.SoundPool, param1: number, param2: number): void;
				});
				public constructor();
				public onLoadComplete(param0: android.media.SoundPool, param1: number, param2: number): void;
			}
		}
	}
}

declare module android {
	export module media {
		export class ThumbnailUtils extends java.lang.Object {
			public static class: java.lang.Class<android.media.ThumbnailUtils>;
			public static OPTIONS_RECYCLE_INPUT: number;
			public static createVideoThumbnail(param0: string, param1: number): android.graphics.Bitmap;
			public static extractThumbnail(param0: android.graphics.Bitmap, param1: number, param2: number, param3: number): android.graphics.Bitmap;
			public static extractThumbnail(param0: android.graphics.Bitmap, param1: number, param2: number): android.graphics.Bitmap;
			public constructor();
		}
	}
}

declare module android {
	export module media {
		export class TimedText extends java.lang.Object {
			public static class: java.lang.Class<android.media.TimedText>;
			public getText(): string;
			public getBounds(): android.graphics.Rect;
		}
	}
}

declare module android {
	export module media {
		export class ToneGenerator extends java.lang.Object {
			public static class: java.lang.Class<android.media.ToneGenerator>;
			public static TONE_DTMF_0: number;
			public static TONE_DTMF_1: number;
			public static TONE_DTMF_2: number;
			public static TONE_DTMF_3: number;
			public static TONE_DTMF_4: number;
			public static TONE_DTMF_5: number;
			public static TONE_DTMF_6: number;
			public static TONE_DTMF_7: number;
			public static TONE_DTMF_8: number;
			public static TONE_DTMF_9: number;
			public static TONE_DTMF_S: number;
			public static TONE_DTMF_P: number;
			public static TONE_DTMF_A: number;
			public static TONE_DTMF_B: number;
			public static TONE_DTMF_C: number;
			public static TONE_DTMF_D: number;
			public static TONE_SUP_DIAL: number;
			public static TONE_SUP_BUSY: number;
			public static TONE_SUP_CONGESTION: number;
			public static TONE_SUP_RADIO_ACK: number;
			public static TONE_SUP_RADIO_NOTAVAIL: number;
			public static TONE_SUP_ERROR: number;
			public static TONE_SUP_CALL_WAITING: number;
			public static TONE_SUP_RINGTONE: number;
			public static TONE_PROP_BEEP: number;
			public static TONE_PROP_ACK: number;
			public static TONE_PROP_NACK: number;
			public static TONE_PROP_PROMPT: number;
			public static TONE_PROP_BEEP2: number;
			public static TONE_SUP_INTERCEPT: number;
			public static TONE_SUP_INTERCEPT_ABBREV: number;
			public static TONE_SUP_CONGESTION_ABBREV: number;
			public static TONE_SUP_CONFIRM: number;
			public static TONE_SUP_PIP: number;
			public static TONE_CDMA_DIAL_TONE_LITE: number;
			public static TONE_CDMA_NETWORK_USA_RINGBACK: number;
			public static TONE_CDMA_INTERCEPT: number;
			public static TONE_CDMA_ABBR_INTERCEPT: number;
			public static TONE_CDMA_REORDER: number;
			public static TONE_CDMA_ABBR_REORDER: number;
			public static TONE_CDMA_NETWORK_BUSY: number;
			public static TONE_CDMA_CONFIRM: number;
			public static TONE_CDMA_ANSWER: number;
			public static TONE_CDMA_NETWORK_CALLWAITING: number;
			public static TONE_CDMA_PIP: number;
			public static TONE_CDMA_CALL_SIGNAL_ISDN_NORMAL: number;
			public static TONE_CDMA_CALL_SIGNAL_ISDN_INTERGROUP: number;
			public static TONE_CDMA_CALL_SIGNAL_ISDN_SP_PRI: number;
			public static TONE_CDMA_CALL_SIGNAL_ISDN_PAT3: number;
			public static TONE_CDMA_CALL_SIGNAL_ISDN_PING_RING: number;
			public static TONE_CDMA_CALL_SIGNAL_ISDN_PAT5: number;
			public static TONE_CDMA_CALL_SIGNAL_ISDN_PAT6: number;
			public static TONE_CDMA_CALL_SIGNAL_ISDN_PAT7: number;
			public static TONE_CDMA_HIGH_L: number;
			public static TONE_CDMA_MED_L: number;
			public static TONE_CDMA_LOW_L: number;
			public static TONE_CDMA_HIGH_SS: number;
			public static TONE_CDMA_MED_SS: number;
			public static TONE_CDMA_LOW_SS: number;
			public static TONE_CDMA_HIGH_SSL: number;
			public static TONE_CDMA_MED_SSL: number;
			public static TONE_CDMA_LOW_SSL: number;
			public static TONE_CDMA_HIGH_SS_2: number;
			public static TONE_CDMA_MED_SS_2: number;
			public static TONE_CDMA_LOW_SS_2: number;
			public static TONE_CDMA_HIGH_SLS: number;
			public static TONE_CDMA_MED_SLS: number;
			public static TONE_CDMA_LOW_SLS: number;
			public static TONE_CDMA_HIGH_S_X4: number;
			public static TONE_CDMA_MED_S_X4: number;
			public static TONE_CDMA_LOW_S_X4: number;
			public static TONE_CDMA_HIGH_PBX_L: number;
			public static TONE_CDMA_MED_PBX_L: number;
			public static TONE_CDMA_LOW_PBX_L: number;
			public static TONE_CDMA_HIGH_PBX_SS: number;
			public static TONE_CDMA_MED_PBX_SS: number;
			public static TONE_CDMA_LOW_PBX_SS: number;
			public static TONE_CDMA_HIGH_PBX_SSL: number;
			public static TONE_CDMA_MED_PBX_SSL: number;
			public static TONE_CDMA_LOW_PBX_SSL: number;
			public static TONE_CDMA_HIGH_PBX_SLS: number;
			public static TONE_CDMA_MED_PBX_SLS: number;
			public static TONE_CDMA_LOW_PBX_SLS: number;
			public static TONE_CDMA_HIGH_PBX_S_X4: number;
			public static TONE_CDMA_MED_PBX_S_X4: number;
			public static TONE_CDMA_LOW_PBX_S_X4: number;
			public static TONE_CDMA_ALERT_NETWORK_LITE: number;
			public static TONE_CDMA_ALERT_AUTOREDIAL_LITE: number;
			public static TONE_CDMA_ONE_MIN_BEEP: number;
			public static TONE_CDMA_KEYPAD_VOLUME_KEY_LITE: number;
			public static TONE_CDMA_PRESSHOLDKEY_LITE: number;
			public static TONE_CDMA_ALERT_INCALL_LITE: number;
			public static TONE_CDMA_EMERGENCY_RINGBACK: number;
			public static TONE_CDMA_ALERT_CALL_GUARD: number;
			public static TONE_CDMA_SOFT_ERROR_LITE: number;
			public static TONE_CDMA_CALLDROP_LITE: number;
			public static TONE_CDMA_NETWORK_BUSY_ONE_SHOT: number;
			public static TONE_CDMA_ABBR_ALERT: number;
			public static TONE_CDMA_SIGNAL_OFF: number;
			public static MAX_VOLUME: number;
			public static MIN_VOLUME: number;
			public getAudioSessionId(): number;
			public startTone(param0: number): boolean;
			public startTone(param0: number, param1: number): boolean;
			public stopTone(): void;
			public constructor(param0: number, param1: number);
			public release(): void;
			public finalize(): void;
		}
	}
}

declare module android {
	export module media {
		export class UnsupportedSchemeException extends android.media.MediaDrmException {
			public static class: java.lang.Class<android.media.UnsupportedSchemeException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module android {
	export module media {
		export module audiofx {
			export class AcousticEchoCanceler extends android.media.audiofx.AudioEffect {
				public static class: java.lang.Class<android.media.audiofx.AcousticEchoCanceler>;
				public static create(param0: number): android.media.audiofx.AcousticEchoCanceler;
				public static isAvailable(): boolean;
			}
		}
	}
}

declare module android {
	export module media {
		export module audiofx {
			export class AudioEffect extends java.lang.Object {
				public static class: java.lang.Class<android.media.audiofx.AudioEffect>;
				public static EFFECT_TYPE_ENV_REVERB: java.util.UUID;
				public static EFFECT_TYPE_PRESET_REVERB: java.util.UUID;
				public static EFFECT_TYPE_EQUALIZER: java.util.UUID;
				public static EFFECT_TYPE_BASS_BOOST: java.util.UUID;
				public static EFFECT_TYPE_VIRTUALIZER: java.util.UUID;
				public static EFFECT_TYPE_AGC: java.util.UUID;
				public static EFFECT_TYPE_AEC: java.util.UUID;
				public static EFFECT_TYPE_NS: java.util.UUID;
				public static SUCCESS: number;
				public static ERROR: number;
				public static ALREADY_EXISTS: number;
				public static ERROR_NO_INIT: number;
				public static ERROR_BAD_VALUE: number;
				public static ERROR_INVALID_OPERATION: number;
				public static ERROR_NO_MEMORY: number;
				public static ERROR_DEAD_OBJECT: number;
				public static EFFECT_INSERT: string;
				public static EFFECT_AUXILIARY: string;
				public static ACTION_DISPLAY_AUDIO_EFFECT_CONTROL_PANEL: string;
				public static ACTION_OPEN_AUDIO_EFFECT_CONTROL_SESSION: string;
				public static ACTION_CLOSE_AUDIO_EFFECT_CONTROL_SESSION: string;
				public static EXTRA_AUDIO_SESSION: string;
				public static EXTRA_PACKAGE_NAME: string;
				public static EXTRA_CONTENT_TYPE: string;
				public static CONTENT_TYPE_MUSIC: number;
				public static CONTENT_TYPE_MOVIE: number;
				public static CONTENT_TYPE_GAME: number;
				public static CONTENT_TYPE_VOICE: number;
				public static queryEffects(): native.Array<android.media.audiofx.AudioEffect.Descriptor>;
				public release(): void;
				public hasControl(): boolean;
				public getId(): number;
				public getEnabled(): boolean;
				public setControlStatusListener(param0: android.media.audiofx.AudioEffect.OnControlStatusChangeListener): void;
				public finalize(): void;
				public setEnableStatusListener(param0: android.media.audiofx.AudioEffect.OnEnableStatusChangeListener): void;
				public getDescriptor(): android.media.audiofx.AudioEffect.Descriptor;
				public setEnabled(param0: boolean): number;
			}
			export module AudioEffect {
				export class Descriptor extends java.lang.Object {
					public static class: java.lang.Class<android.media.audiofx.AudioEffect.Descriptor>;
					public type: java.util.UUID;
					public uuid: java.util.UUID;
					public connectMode: string;
					public name: string;
					public implementor: string;
					public constructor(param0: string, param1: string, param2: string, param3: string, param4: string);
					public constructor();
				}
				export class OnControlStatusChangeListener extends java.lang.Object {
					public static class: java.lang.Class<android.media.audiofx.AudioEffect.OnControlStatusChangeListener>;
					/**
					 * Constructs a new instance of the android.media.audiofx.AudioEffect$OnControlStatusChangeListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						onControlStatusChange(param0: android.media.audiofx.AudioEffect, param1: boolean): void;
					});
					public constructor();
					public onControlStatusChange(param0: android.media.audiofx.AudioEffect, param1: boolean): void;
				}
				export class OnEnableStatusChangeListener extends java.lang.Object {
					public static class: java.lang.Class<android.media.audiofx.AudioEffect.OnEnableStatusChangeListener>;
					/**
					 * Constructs a new instance of the android.media.audiofx.AudioEffect$OnEnableStatusChangeListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						onEnableStatusChange(param0: android.media.audiofx.AudioEffect, param1: boolean): void;
					});
					public constructor();
					public onEnableStatusChange(param0: android.media.audiofx.AudioEffect, param1: boolean): void;
				}
			}
		}
	}
}

declare module android {
	export module media {
		export module audiofx {
			export class AutomaticGainControl extends android.media.audiofx.AudioEffect {
				public static class: java.lang.Class<android.media.audiofx.AutomaticGainControl>;
				public static isAvailable(): boolean;
				public static create(param0: number): android.media.audiofx.AutomaticGainControl;
			}
		}
	}
}

declare module android {
	export module media {
		export module audiofx {
			export class BassBoost extends android.media.audiofx.AudioEffect {
				public static class: java.lang.Class<android.media.audiofx.BassBoost>;
				public static PARAM_STRENGTH_SUPPORTED: number;
				public static PARAM_STRENGTH: number;
				public constructor(param0: number, param1: number);
				public setProperties(param0: android.media.audiofx.BassBoost.Settings): void;
				public getProperties(): android.media.audiofx.BassBoost.Settings;
				public getRoundedStrength(): number;
				public setStrength(param0: number): void;
				public setParameterListener(param0: android.media.audiofx.BassBoost.OnParameterChangeListener): void;
				public getStrengthSupported(): boolean;
			}
			export module BassBoost {
				export class OnParameterChangeListener extends java.lang.Object {
					public static class: java.lang.Class<android.media.audiofx.BassBoost.OnParameterChangeListener>;
					/**
					 * Constructs a new instance of the android.media.audiofx.BassBoost$OnParameterChangeListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						onParameterChange(param0: android.media.audiofx.BassBoost, param1: number, param2: number, param3: number): void;
					});
					public constructor();
					public onParameterChange(param0: android.media.audiofx.BassBoost, param1: number, param2: number, param3: number): void;
				}
				export class Settings extends java.lang.Object {
					public static class: java.lang.Class<android.media.audiofx.BassBoost.Settings>;
					public strength: number;
					public toString(): string;
					public constructor(param0: string);
					public constructor();
				}
			}
		}
	}
}

declare module android {
	export module media {
		export module audiofx {
			export class EnvironmentalReverb extends android.media.audiofx.AudioEffect {
				public static class: java.lang.Class<android.media.audiofx.EnvironmentalReverb>;
				public static PARAM_ROOM_LEVEL: number;
				public static PARAM_ROOM_HF_LEVEL: number;
				public static PARAM_DECAY_TIME: number;
				public static PARAM_DECAY_HF_RATIO: number;
				public static PARAM_REFLECTIONS_LEVEL: number;
				public static PARAM_REFLECTIONS_DELAY: number;
				public static PARAM_REVERB_LEVEL: number;
				public static PARAM_REVERB_DELAY: number;
				public static PARAM_DIFFUSION: number;
				public static PARAM_DENSITY: number;
				public constructor(param0: number, param1: number);
				public setDecayHFRatio(param0: number): void;
				public getRoomHFLevel(): number;
				public setDecayTime(param0: number): void;
				public setReflectionsLevel(param0: number): void;
				public setProperties(param0: android.media.audiofx.EnvironmentalReverb.Settings): void;
				public setRoomLevel(param0: number): void;
				public setReverbDelay(param0: number): void;
				public setParameterListener(param0: android.media.audiofx.EnvironmentalReverb.OnParameterChangeListener): void;
				public getReflectionsLevel(): number;
				public getReflectionsDelay(): number;
				public getDensity(): number;
				public setDiffusion(param0: number): void;
				public getDecayTime(): number;
				public getProperties(): android.media.audiofx.EnvironmentalReverb.Settings;
				public setReverbLevel(param0: number): void;
				public getRoomLevel(): number;
				public getDiffusion(): number;
				public setReflectionsDelay(param0: number): void;
				public getReverbLevel(): number;
				public setDensity(param0: number): void;
				public setRoomHFLevel(param0: number): void;
				public getReverbDelay(): number;
				public getDecayHFRatio(): number;
			}
			export module EnvironmentalReverb {
				export class OnParameterChangeListener extends java.lang.Object {
					public static class: java.lang.Class<android.media.audiofx.EnvironmentalReverb.OnParameterChangeListener>;
					/**
					 * Constructs a new instance of the android.media.audiofx.EnvironmentalReverb$OnParameterChangeListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						onParameterChange(param0: android.media.audiofx.EnvironmentalReverb, param1: number, param2: number, param3: number): void;
					});
					public constructor();
					public onParameterChange(param0: android.media.audiofx.EnvironmentalReverb, param1: number, param2: number, param3: number): void;
				}
				export class Settings extends java.lang.Object {
					public static class: java.lang.Class<android.media.audiofx.EnvironmentalReverb.Settings>;
					public roomLevel: number;
					public roomHFLevel: number;
					public decayTime: number;
					public decayHFRatio: number;
					public reflectionsLevel: number;
					public reflectionsDelay: number;
					public reverbLevel: number;
					public reverbDelay: number;
					public diffusion: number;
					public density: number;
					public toString(): string;
					public constructor(param0: string);
					public constructor();
				}
			}
		}
	}
}

declare module android {
	export module media {
		export module audiofx {
			export class Equalizer extends android.media.audiofx.AudioEffect {
				public static class: java.lang.Class<android.media.audiofx.Equalizer>;
				public static PARAM_NUM_BANDS: number;
				public static PARAM_LEVEL_RANGE: number;
				public static PARAM_BAND_LEVEL: number;
				public static PARAM_CENTER_FREQ: number;
				public static PARAM_BAND_FREQ_RANGE: number;
				public static PARAM_GET_BAND: number;
				public static PARAM_CURRENT_PRESET: number;
				public static PARAM_GET_NUM_OF_PRESETS: number;
				public static PARAM_GET_PRESET_NAME: number;
				public static PARAM_STRING_SIZE_MAX: number;
				public constructor(param0: number, param1: number);
				public getBandLevel(param0: number): number;
				public getProperties(): android.media.audiofx.Equalizer.Settings;
				public getBand(param0: number): number;
				public getPresetName(param0: number): string;
				public getNumberOfBands(): number;
				public getBandFreqRange(param0: number): native.Array<number>;
				public getNumberOfPresets(): number;
				public setBandLevel(param0: number, param1: number): void;
				public setParameterListener(param0: android.media.audiofx.Equalizer.OnParameterChangeListener): void;
				public usePreset(param0: number): void;
				public getCurrentPreset(): number;
				public getCenterFreq(param0: number): number;
				public setProperties(param0: android.media.audiofx.Equalizer.Settings): void;
				public getBandLevelRange(): native.Array<number>;
			}
			export module Equalizer {
				export class OnParameterChangeListener extends java.lang.Object {
					public static class: java.lang.Class<android.media.audiofx.Equalizer.OnParameterChangeListener>;
					/**
					 * Constructs a new instance of the android.media.audiofx.Equalizer$OnParameterChangeListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						onParameterChange(param0: android.media.audiofx.Equalizer, param1: number, param2: number, param3: number, param4: number): void;
					});
					public constructor();
					public onParameterChange(param0: android.media.audiofx.Equalizer, param1: number, param2: number, param3: number, param4: number): void;
				}
				export class Settings extends java.lang.Object {
					public static class: java.lang.Class<android.media.audiofx.Equalizer.Settings>;
					public curPreset: number;
					public numBands: number;
					public bandLevels: native.Array<number>;
					public toString(): string;
					public constructor(param0: string);
					public constructor();
				}
			}
		}
	}
}

declare module android {
	export module media {
		export module audiofx {
			export class NoiseSuppressor extends android.media.audiofx.AudioEffect {
				public static class: java.lang.Class<android.media.audiofx.NoiseSuppressor>;
				public static create(param0: number): android.media.audiofx.NoiseSuppressor;
				public static isAvailable(): boolean;
			}
		}
	}
}

declare module android {
	export module media {
		export module audiofx {
			export class PresetReverb extends android.media.audiofx.AudioEffect {
				public static class: java.lang.Class<android.media.audiofx.PresetReverb>;
				public static PARAM_PRESET: number;
				public static PRESET_NONE: number;
				public static PRESET_SMALLROOM: number;
				public static PRESET_MEDIUMROOM: number;
				public static PRESET_LARGEROOM: number;
				public static PRESET_MEDIUMHALL: number;
				public static PRESET_LARGEHALL: number;
				public static PRESET_PLATE: number;
				public constructor(param0: number, param1: number);
				public setPreset(param0: number): void;
				public getPreset(): number;
				public setParameterListener(param0: android.media.audiofx.PresetReverb.OnParameterChangeListener): void;
				public getProperties(): android.media.audiofx.PresetReverb.Settings;
				public setProperties(param0: android.media.audiofx.PresetReverb.Settings): void;
			}
			export module PresetReverb {
				export class OnParameterChangeListener extends java.lang.Object {
					public static class: java.lang.Class<android.media.audiofx.PresetReverb.OnParameterChangeListener>;
					/**
					 * Constructs a new instance of the android.media.audiofx.PresetReverb$OnParameterChangeListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						onParameterChange(param0: android.media.audiofx.PresetReverb, param1: number, param2: number, param3: number): void;
					});
					public constructor();
					public onParameterChange(param0: android.media.audiofx.PresetReverb, param1: number, param2: number, param3: number): void;
				}
				export class Settings extends java.lang.Object {
					public static class: java.lang.Class<android.media.audiofx.PresetReverb.Settings>;
					public preset: number;
					public toString(): string;
					public constructor(param0: string);
					public constructor();
				}
			}
		}
	}
}

declare module android {
	export module media {
		export module audiofx {
			export class Virtualizer extends android.media.audiofx.AudioEffect {
				public static class: java.lang.Class<android.media.audiofx.Virtualizer>;
				public static PARAM_STRENGTH_SUPPORTED: number;
				public static PARAM_STRENGTH: number;
				public constructor(param0: number, param1: number);
				public setParameterListener(param0: android.media.audiofx.Virtualizer.OnParameterChangeListener): void;
				public getProperties(): android.media.audiofx.Virtualizer.Settings;
				public setProperties(param0: android.media.audiofx.Virtualizer.Settings): void;
				public getRoundedStrength(): number;
				public setStrength(param0: number): void;
				public getStrengthSupported(): boolean;
			}
			export module Virtualizer {
				export class OnParameterChangeListener extends java.lang.Object {
					public static class: java.lang.Class<android.media.audiofx.Virtualizer.OnParameterChangeListener>;
					/**
					 * Constructs a new instance of the android.media.audiofx.Virtualizer$OnParameterChangeListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						onParameterChange(param0: android.media.audiofx.Virtualizer, param1: number, param2: number, param3: number): void;
					});
					public constructor();
					public onParameterChange(param0: android.media.audiofx.Virtualizer, param1: number, param2: number, param3: number): void;
				}
				export class Settings extends java.lang.Object {
					public static class: java.lang.Class<android.media.audiofx.Virtualizer.Settings>;
					public strength: number;
					public toString(): string;
					public constructor(param0: string);
					public constructor();
				}
			}
		}
	}
}

declare module android {
	export module media {
		export module audiofx {
			export class Visualizer extends java.lang.Object {
				public static class: java.lang.Class<android.media.audiofx.Visualizer>;
				public static STATE_UNINITIALIZED: number;
				public static STATE_INITIALIZED: number;
				public static STATE_ENABLED: number;
				public static SCALING_MODE_NORMALIZED: number;
				public static SCALING_MODE_AS_PLAYED: number;
				public static SUCCESS: number;
				public static ERROR: number;
				public static ALREADY_EXISTS: number;
				public static ERROR_NO_INIT: number;
				public static ERROR_BAD_VALUE: number;
				public static ERROR_INVALID_OPERATION: number;
				public static ERROR_NO_MEMORY: number;
				public static ERROR_DEAD_OBJECT: number;
				public static getCaptureSizeRange(): native.Array<number>;
				public release(): void;
				public static getMaxCaptureRate(): number;
				public finalize(): void;
				public getWaveForm(param0: native.Array<number>): number;
				public setDataCaptureListener(param0: android.media.audiofx.Visualizer.OnDataCaptureListener, param1: number, param2: boolean, param3: boolean): number;
				public setEnabled(param0: boolean): number;
				public getScalingMode(): number;
				public getFft(param0: native.Array<number>): number;
				public getSamplingRate(): number;
				public getEnabled(): boolean;
				public setScalingMode(param0: number): number;
				public constructor(param0: number);
				public setCaptureSize(param0: number): number;
				public getCaptureSize(): number;
			}
			export module Visualizer {
				export class OnDataCaptureListener extends java.lang.Object {
					public static class: java.lang.Class<android.media.audiofx.Visualizer.OnDataCaptureListener>;
					/**
					 * Constructs a new instance of the android.media.audiofx.Visualizer$OnDataCaptureListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						onWaveFormDataCapture(param0: android.media.audiofx.Visualizer, param1: native.Array<number>, param2: number): void;
						onFftDataCapture(param0: android.media.audiofx.Visualizer, param1: native.Array<number>, param2: number): void;
					});
					public constructor();
					public onWaveFormDataCapture(param0: android.media.audiofx.Visualizer, param1: native.Array<number>, param2: number): void;
					public onFftDataCapture(param0: android.media.audiofx.Visualizer, param1: native.Array<number>, param2: number): void;
				}
			}
		}
	}
}

declare module android {
	export module media {
		export module effect {
			export abstract class Effect extends java.lang.Object {
				public static class: java.lang.Class<android.media.effect.Effect>;
				public release(): void;
				public setUpdateListener(param0: android.media.effect.EffectUpdateListener): void;
				public apply(param0: number, param1: number, param2: number, param3: number): void;
				public getName(): string;
				public setParameter(param0: string, param1: any): void;
				public constructor();
			}
		}
	}
}

declare module android {
	export module media {
		export module effect {
			export class EffectContext extends java.lang.Object {
				public static class: java.lang.Class<android.media.effect.EffectContext>;
				public release(): void;
				public getFactory(): android.media.effect.EffectFactory;
				public static createWithCurrentGlContext(): android.media.effect.EffectContext;
			}
		}
	}
}

declare module android {
	export module media {
		export module effect {
			export class EffectFactory extends java.lang.Object {
				public static class: java.lang.Class<android.media.effect.EffectFactory>;
				public static EFFECT_BRIGHTNESS: string;
				public static EFFECT_CONTRAST: string;
				public static EFFECT_FISHEYE: string;
				public static EFFECT_BACKDROPPER: string;
				public static EFFECT_AUTOFIX: string;
				public static EFFECT_BLACKWHITE: string;
				public static EFFECT_CROP: string;
				public static EFFECT_CROSSPROCESS: string;
				public static EFFECT_DOCUMENTARY: string;
				public static EFFECT_BITMAPOVERLAY: string;
				public static EFFECT_DUOTONE: string;
				public static EFFECT_FILLLIGHT: string;
				public static EFFECT_FLIP: string;
				public static EFFECT_GRAIN: string;
				public static EFFECT_GRAYSCALE: string;
				public static EFFECT_LOMOISH: string;
				public static EFFECT_NEGATIVE: string;
				public static EFFECT_POSTERIZE: string;
				public static EFFECT_REDEYE: string;
				public static EFFECT_ROTATE: string;
				public static EFFECT_SATURATE: string;
				public static EFFECT_SEPIA: string;
				public static EFFECT_SHARPEN: string;
				public static EFFECT_STRAIGHTEN: string;
				public static EFFECT_TEMPERATURE: string;
				public static EFFECT_TINT: string;
				public static EFFECT_VIGNETTE: string;
				public static isEffectSupported(param0: string): boolean;
				public createEffect(param0: string): android.media.effect.Effect;
			}
		}
	}
}

declare module android {
	export module media {
		export module effect {
			export class EffectUpdateListener extends java.lang.Object {
				public static class: java.lang.Class<android.media.effect.EffectUpdateListener>;
				/**
				 * Constructs a new instance of the android.media.effect.EffectUpdateListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onEffectUpdated(param0: android.media.effect.Effect, param1: any): void;
				});
				public constructor();
				public onEffectUpdated(param0: android.media.effect.Effect, param1: any): void;
			}
		}
	}
}

declare module android {
	export module mtp {
		export class MtpConstants extends java.lang.Object {
			public static class: java.lang.Class<android.mtp.MtpConstants>;
			public static FORMAT_UNDEFINED: number;
			public static FORMAT_ASSOCIATION: number;
			public static FORMAT_SCRIPT: number;
			public static FORMAT_EXECUTABLE: number;
			public static FORMAT_TEXT: number;
			public static FORMAT_HTML: number;
			public static FORMAT_DPOF: number;
			public static FORMAT_AIFF: number;
			public static FORMAT_WAV: number;
			public static FORMAT_MP3: number;
			public static FORMAT_AVI: number;
			public static FORMAT_MPEG: number;
			public static FORMAT_ASF: number;
			public static FORMAT_EXIF_JPEG: number;
			public static FORMAT_TIFF_EP: number;
			public static FORMAT_BMP: number;
			public static FORMAT_GIF: number;
			public static FORMAT_JFIF: number;
			public static FORMAT_PICT: number;
			public static FORMAT_PNG: number;
			public static FORMAT_TIFF: number;
			public static FORMAT_JP2: number;
			public static FORMAT_JPX: number;
			public static FORMAT_UNDEFINED_FIRMWARE: number;
			public static FORMAT_WINDOWS_IMAGE_FORMAT: number;
			public static FORMAT_UNDEFINED_AUDIO: number;
			public static FORMAT_WMA: number;
			public static FORMAT_OGG: number;
			public static FORMAT_AAC: number;
			public static FORMAT_AUDIBLE: number;
			public static FORMAT_FLAC: number;
			public static FORMAT_UNDEFINED_VIDEO: number;
			public static FORMAT_WMV: number;
			public static FORMAT_MP4_CONTAINER: number;
			public static FORMAT_MP2: number;
			public static FORMAT_3GP_CONTAINER: number;
			public static FORMAT_UNDEFINED_COLLECTION: number;
			public static FORMAT_ABSTRACT_MULTIMEDIA_ALBUM: number;
			public static FORMAT_ABSTRACT_IMAGE_ALBUM: number;
			public static FORMAT_ABSTRACT_AUDIO_ALBUM: number;
			public static FORMAT_ABSTRACT_VIDEO_ALBUM: number;
			public static FORMAT_ABSTRACT_AV_PLAYLIST: number;
			public static FORMAT_ABSTRACT_AUDIO_PLAYLIST: number;
			public static FORMAT_ABSTRACT_VIDEO_PLAYLIST: number;
			public static FORMAT_ABSTRACT_MEDIACAST: number;
			public static FORMAT_WPL_PLAYLIST: number;
			public static FORMAT_M3U_PLAYLIST: number;
			public static FORMAT_MPL_PLAYLIST: number;
			public static FORMAT_ASX_PLAYLIST: number;
			public static FORMAT_PLS_PLAYLIST: number;
			public static FORMAT_UNDEFINED_DOCUMENT: number;
			public static FORMAT_ABSTRACT_DOCUMENT: number;
			public static FORMAT_XML_DOCUMENT: number;
			public static FORMAT_MS_WORD_DOCUMENT: number;
			public static FORMAT_MS_EXCEL_SPREADSHEET: number;
			public static FORMAT_MS_POWERPOINT_PRESENTATION: number;
			public static PROTECTION_STATUS_NONE: number;
			public static PROTECTION_STATUS_READ_ONLY: number;
			public static PROTECTION_STATUS_READ_ONLY_DATA: number;
			public static PROTECTION_STATUS_NON_TRANSFERABLE_DATA: number;
			public static ASSOCIATION_TYPE_GENERIC_FOLDER: number;
			public constructor();
			public static isAbstractObject(param0: number): boolean;
		}
	}
}

declare module android {
	export module mtp {
		export class MtpDevice extends java.lang.Object {
			public static class: java.lang.Class<android.mtp.MtpDevice>;
			public getObjectHandles(param0: number, param1: number, param2: number): native.Array<number>;
			public importFile(param0: number, param1: string): boolean;
			public open(param0: android.hardware.usb.UsbDeviceConnection): boolean;
			public getDeviceId(): number;
			public getStorageIds(): native.Array<number>;
			public getParent(param0: number): number;
			public constructor(param0: android.hardware.usb.UsbDevice);
			public getThumbnail(param0: number): native.Array<number>;
			public getObject(param0: number, param1: number): native.Array<number>;
			public getObjectInfo(param0: number): android.mtp.MtpObjectInfo;
			public getDeviceInfo(): android.mtp.MtpDeviceInfo;
			public getStorageInfo(param0: number): android.mtp.MtpStorageInfo;
			public deleteObject(param0: number): boolean;
			public toString(): string;
			public getDeviceName(): string;
			public getStorageId(param0: number): number;
			public close(): void;
			public finalize(): void;
		}
	}
}

declare module android {
	export module mtp {
		export class MtpDeviceInfo extends java.lang.Object {
			public static class: java.lang.Class<android.mtp.MtpDeviceInfo>;
			public getModel(): string;
			public getManufacturer(): string;
			public getVersion(): string;
			public getSerialNumber(): string;
		}
	}
}

declare module android {
	export module mtp {
		export class MtpObjectInfo extends java.lang.Object {
			public static class: java.lang.Class<android.mtp.MtpObjectInfo>;
			public getCompressedSize(): number;
			public getThumbPixWidth(): number;
			public getKeywords(): string;
			public getThumbCompressedSize(): number;
			public getFormat(): number;
			public getProtectionStatus(): number;
			public getImagePixWidth(): number;
			public getImagePixDepth(): number;
			public getStorageId(): number;
			public getObjectHandle(): number;
			public getThumbFormat(): number;
			public getAssociationType(): number;
			public getDateModified(): number;
			public getAssociationDesc(): number;
			public getName(): string;
			public getParent(): number;
			public getSequenceNumber(): number;
			public getDateCreated(): number;
			public getThumbPixHeight(): number;
			public getImagePixHeight(): number;
		}
	}
}

declare module android {
	export module mtp {
		export class MtpStorageInfo extends java.lang.Object {
			public static class: java.lang.Class<android.mtp.MtpStorageInfo>;
			public getVolumeIdentifier(): string;
			public getMaxCapacity(): number;
			public getDescription(): string;
			public getStorageId(): number;
			public getFreeSpace(): number;
		}
	}
}

declare module android {
	export module net {
		export class ConnectivityManager extends java.lang.Object {
			public static class: java.lang.Class<android.net.ConnectivityManager>;
			public static CONNECTIVITY_ACTION: string;
			public static EXTRA_NETWORK_INFO: string;
			public static EXTRA_NETWORK_TYPE: string;
			public static EXTRA_IS_FAILOVER: string;
			public static EXTRA_OTHER_NETWORK_INFO: string;
			public static EXTRA_NO_CONNECTIVITY: string;
			public static EXTRA_REASON: string;
			public static EXTRA_EXTRA_INFO: string;
			public static ACTION_BACKGROUND_DATA_SETTING_CHANGED: string;
			public static TYPE_MOBILE: number;
			public static TYPE_WIFI: number;
			public static TYPE_MOBILE_MMS: number;
			public static TYPE_MOBILE_SUPL: number;
			public static TYPE_MOBILE_DUN: number;
			public static TYPE_MOBILE_HIPRI: number;
			public static TYPE_WIMAX: number;
			public static TYPE_BLUETOOTH: number;
			public static TYPE_DUMMY: number;
			public static TYPE_ETHERNET: number;
			public static DEFAULT_NETWORK_PREFERENCE: number;
			public getActiveNetworkInfo(): android.net.NetworkInfo;
			public getNetworkInfo(param0: number): android.net.NetworkInfo;
			public static isNetworkTypeValid(param0: number): boolean;
			public isActiveNetworkMetered(): boolean;
			public setNetworkPreference(param0: number): void;
			/** @deprecated */
			public getBackgroundDataSetting(): boolean;
			public getNetworkPreference(): number;
			public stopUsingNetworkFeature(param0: number, param1: string): number;
			public getAllNetworkInfo(): native.Array<android.net.NetworkInfo>;
			public startUsingNetworkFeature(param0: number, param1: string): number;
			public requestRouteToHost(param0: number, param1: number): boolean;
		}
	}
}

declare module android {
	export module net {
		export class Credentials extends java.lang.Object {
			public static class: java.lang.Class<android.net.Credentials>;
			public constructor(param0: number, param1: number, param2: number);
			public getUid(): number;
			public getGid(): number;
			public getPid(): number;
		}
	}
}

declare module android {
	export module net {
		export class DhcpInfo extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.net.DhcpInfo>;
			public ipAddress: number;
			public gateway: number;
			public netmask: number;
			public dns1: number;
			public dns2: number;
			public serverAddress: number;
			public leaseDuration: number;
			public toString(): string;
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public constructor();
		}
	}
}

declare module android {
	export module net {
		export class LocalServerSocket extends java.lang.Object {
			public static class: java.lang.Class<android.net.LocalServerSocket>;
			public getLocalSocketAddress(): android.net.LocalSocketAddress;
			public constructor(param0: java.io.FileDescriptor);
			public accept(): android.net.LocalSocket;
			public getFileDescriptor(): java.io.FileDescriptor;
			public close(): void;
			public constructor(param0: string);
		}
	}
}

declare module android {
	export module net {
		export class LocalSocket extends java.lang.Object implements java.io.Closeable {
			public static class: java.lang.Class<android.net.LocalSocket>;
			public shutdownOutput(): void;
			public isClosed(): boolean;
			public connect(param0: android.net.LocalSocketAddress, param1: number): void;
			public setSendBufferSize(param0: number): void;
			public connect(param0: android.net.LocalSocketAddress): void;
			public setFileDescriptorsForSend(param0: native.Array<java.io.FileDescriptor>): void;
			public getLocalSocketAddress(): android.net.LocalSocketAddress;
			public isInputShutdown(): boolean;
			public setReceiveBufferSize(param0: number): void;
			public bind(param0: android.net.LocalSocketAddress): void;
			public setSoTimeout(param0: number): void;
			public isConnected(): boolean;
			public getOutputStream(): java.io.OutputStream;
			public getFileDescriptor(): java.io.FileDescriptor;
			public close(): void;
			public isOutputShutdown(): boolean;
			public getPeerCredentials(): android.net.Credentials;
			public getSoTimeout(): number;
			public getSendBufferSize(): number;
			public isBound(): boolean;
			public getReceiveBufferSize(): number;
			public constructor();
			public shutdownInput(): void;
			public toString(): string;
			public getAncillaryFileDescriptors(): native.Array<java.io.FileDescriptor>;
			public getInputStream(): java.io.InputStream;
			public getRemoteSocketAddress(): android.net.LocalSocketAddress;
		}
	}
}

declare module android {
	export module net {
		export class LocalSocketAddress extends java.lang.Object {
			public static class: java.lang.Class<android.net.LocalSocketAddress>;
			public getName(): string;
			public getNamespace(): android.net.LocalSocketAddress.Namespace;
			public constructor(param0: string, param1: android.net.LocalSocketAddress.Namespace);
			public constructor(param0: string);
		}
		export module LocalSocketAddress {
			export class Namespace {
				public static class: java.lang.Class<android.net.LocalSocketAddress.Namespace>;
				public static ABSTRACT: android.net.LocalSocketAddress.Namespace;
				public static FILESYSTEM: android.net.LocalSocketAddress.Namespace;
				public static RESERVED: android.net.LocalSocketAddress.Namespace;
				public static values(): native.Array<android.net.LocalSocketAddress.Namespace>;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
				public static valueOf(param0: string): android.net.LocalSocketAddress.Namespace;
			}
		}
	}
}

declare module android {
	export module net {
		export class MailTo extends java.lang.Object {
			public static class: java.lang.Class<android.net.MailTo>;
			public static MAILTO_SCHEME: string;
			public getHeaders(): java.util.Map<string,string>;
			public toString(): string;
			public getTo(): string;
			public getSubject(): string;
			public getCc(): string;
			public static isMailTo(param0: string): boolean;
			public static parse(param0: string): android.net.MailTo;
			public getBody(): string;
		}
	}
}

declare module android {
	export module net {
		export class NetworkInfo extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.net.NetworkInfo>;
			public isFailover(): boolean;
			public getType(): number;
			public getSubtype(): number;
			public getDetailedState(): android.net.NetworkInfo.DetailedState;
			public getSubtypeName(): string;
			public isRoaming(): boolean;
			public getTypeName(): string;
			public isConnectedOrConnecting(): boolean;
			public getState(): android.net.NetworkInfo.State;
			public getExtraInfo(): string;
			public getReason(): string;
			public toString(): string;
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public isConnected(): boolean;
			public isAvailable(): boolean;
		}
		export module NetworkInfo {
			export class DetailedState {
				public static class: java.lang.Class<android.net.NetworkInfo.DetailedState>;
				public static AUTHENTICATING: android.net.NetworkInfo.DetailedState;
				public static BLOCKED: android.net.NetworkInfo.DetailedState;
				public static CAPTIVE_PORTAL_CHECK: android.net.NetworkInfo.DetailedState;
				public static CONNECTED: android.net.NetworkInfo.DetailedState;
				public static CONNECTING: android.net.NetworkInfo.DetailedState;
				public static DISCONNECTED: android.net.NetworkInfo.DetailedState;
				public static DISCONNECTING: android.net.NetworkInfo.DetailedState;
				public static FAILED: android.net.NetworkInfo.DetailedState;
				public static IDLE: android.net.NetworkInfo.DetailedState;
				public static OBTAINING_IPADDR: android.net.NetworkInfo.DetailedState;
				public static SCANNING: android.net.NetworkInfo.DetailedState;
				public static SUSPENDED: android.net.NetworkInfo.DetailedState;
				public static VERIFYING_POOR_LINK: android.net.NetworkInfo.DetailedState;
				public static values(): native.Array<android.net.NetworkInfo.DetailedState>;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
				public static valueOf(param0: string): android.net.NetworkInfo.DetailedState;
			}
			export class State {
				public static class: java.lang.Class<android.net.NetworkInfo.State>;
				public static CONNECTED: android.net.NetworkInfo.State;
				public static CONNECTING: android.net.NetworkInfo.State;
				public static DISCONNECTED: android.net.NetworkInfo.State;
				public static DISCONNECTING: android.net.NetworkInfo.State;
				public static SUSPENDED: android.net.NetworkInfo.State;
				public static UNKNOWN: android.net.NetworkInfo.State;
				public static values(): native.Array<android.net.NetworkInfo.State>;
				public static valueOf(param0: string): android.net.NetworkInfo.State;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			}
		}
	}
}

declare module android {
	export module net {
		export class ParseException extends java.lang.RuntimeException {
			public static class: java.lang.Class<android.net.ParseException>;
			public response: string;
		}
	}
}

declare module android {
	export module net {
		export class Proxy extends java.lang.Object {
			public static class: java.lang.Class<android.net.Proxy>;
			public static PROXY_CHANGE_ACTION: string;
			/** @deprecated */
			public static getPort(param0: android.content.Context): number;
			/** @deprecated */
			public static getDefaultHost(): string;
			/** @deprecated */
			public static getDefaultPort(): number;
			public constructor();
			/** @deprecated */
			public static getHost(param0: android.content.Context): string;
		}
	}
}

declare module android {
	export module net {
		export class SSLCertificateSocketFactory extends javax.net.ssl.SSLSocketFactory {
			public static class: java.lang.Class<android.net.SSLCertificateSocketFactory>;
			public static getInsecure(param0: number, param1: android.net.SSLSessionCache): javax.net.ssl.SSLSocketFactory;
			public createSocket(param0: string, param1: number): java.net.Socket;
			public createSocket(param0: java.net.InetAddress, param1: number): java.net.Socket;
			public setNpnProtocols(param0: native.Array<native.Array<number>>): void;
			public setTrustManagers(param0: native.Array<javax.net.ssl.TrustManager>): void;
			public getSupportedCipherSuites(): native.Array<string>;
			public getNpnSelectedProtocol(param0: java.net.Socket): native.Array<number>;
			public getDefaultCipherSuites(): native.Array<string>;
			public static getDefault(param0: number, param1: android.net.SSLSessionCache): javax.net.ssl.SSLSocketFactory;
			public constructor();
			public setHostname(param0: java.net.Socket, param1: string): void;
			public static getHttpSocketFactory(param0: number, param1: android.net.SSLSessionCache): org.apache.http.conn.ssl.SSLSocketFactory;
			/** @deprecated */
			public constructor(param0: number);
			public createSocket(param0: java.net.Socket, param1: string, param2: number, param3: boolean): java.net.Socket;
			public static getDefault(): javax.net.SocketFactory;
			public static getDefault(param0: number): javax.net.SocketFactory;
			public setUseSessionTickets(param0: java.net.Socket, param1: boolean): void;
			public createSocket(): java.net.Socket;
			public createSocket(param0: java.net.InetAddress, param1: number, param2: java.net.InetAddress, param3: number): java.net.Socket;
			public setKeyManagers(param0: native.Array<javax.net.ssl.KeyManager>): void;
			public createSocket(param0: string, param1: number, param2: java.net.InetAddress, param3: number): java.net.Socket;
		}
	}
}

declare module android {
	export module net {
		export class SSLSessionCache extends java.lang.Object {
			public static class: java.lang.Class<android.net.SSLSessionCache>;
			public constructor(param0: android.content.Context);
			public constructor(param0: java.io.File);
		}
	}
}

declare module android {
	export module net {
		export class TrafficStats extends java.lang.Object {
			public static class: java.lang.Class<android.net.TrafficStats>;
			public static UNSUPPORTED: number;
			/** @deprecated */
			public static getUidUdpRxPackets(param0: number): number;
			public static incrementOperationCount(param0: number, param1: number): void;
			public static tagSocket(param0: java.net.Socket): void;
			/** @deprecated */
			public static getUidTcpRxSegments(param0: number): number;
			public static getUidTxBytes(param0: number): number;
			public static setThreadStatsTag(param0: number): void;
			/** @deprecated */
			public static getUidUdpTxPackets(param0: number): number;
			public static getThreadStatsTag(): number;
			public static getTotalRxBytes(): number;
			/** @deprecated */
			public static getUidTcpTxBytes(param0: number): number;
			public static clearThreadStatsTag(): void;
			public static untagSocket(param0: java.net.Socket): void;
			/** @deprecated */
			public static getUidUdpRxBytes(param0: number): number;
			/** @deprecated */
			public static getUidTcpTxSegments(param0: number): number;
			public static getMobileTxPackets(): number;
			public static getUidRxPackets(param0: number): number;
			public static getMobileRxBytes(): number;
			public static getTotalTxBytes(): number;
			public static getUidTxPackets(param0: number): number;
			public static getUidRxBytes(param0: number): number;
			public constructor();
			public static incrementOperationCount(param0: number): void;
			public static getMobileRxPackets(): number;
			/** @deprecated */
			public static getUidTcpRxBytes(param0: number): number;
			public static getMobileTxBytes(): number;
			public static getTotalRxPackets(): number;
			public static getTotalTxPackets(): number;
			/** @deprecated */
			public static getUidUdpTxBytes(param0: number): number;
		}
	}
}

declare module android {
	export module net {
		export abstract class Uri extends java.lang.Object {
			public static class: java.lang.Class<android.net.Uri>;
			public static EMPTY: android.net.Uri;
			public static CREATOR: android.os.Parcelable.Creator<android.net.Uri>;
			public static decode(param0: string): string;
			public equals(param0: any): boolean;
			public getFragment(): string;
			public static encode(param0: string, param1: string): string;
			public getEncodedPath(): string;
			public getUserInfo(): string;
			public getHost(): string;
			public getEncodedAuthority(): string;
			public isHierarchical(): boolean;
			public getQueryParameter(param0: string): string;
			public getSchemeSpecificPart(): string;
			public getAuthority(): string;
			public getScheme(): string;
			public getEncodedSchemeSpecificPart(): string;
			public buildUpon(): android.net.Uri.Builder;
			public getQueryParameterNames(): java.util.Set<string>;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public getQuery(): string;
			public getBooleanQueryParameter(param0: string, param1: boolean): boolean;
			public isOpaque(): boolean;
			public normalizeScheme(): android.net.Uri;
			public static writeToParcel(param0: android.os.Parcel, param1: android.net.Uri): void;
			public getEncodedUserInfo(): string;
			public getEncodedQuery(): string;
			public static encode(param0: string): string;
			public getPathSegments(): java.util.List<string>;
			public getLastPathSegment(): string;
			public static fromFile(param0: java.io.File): android.net.Uri;
			public isRelative(): boolean;
			public getEncodedFragment(): string;
			public static withAppendedPath(param0: android.net.Uri, param1: string): android.net.Uri;
			public getPath(): string;
			public toString(): string;
			public static parse(param0: string): android.net.Uri;
			public isAbsolute(): boolean;
			public compareTo(param0: android.net.Uri): number;
			public static fromParts(param0: string, param1: string, param2: string): android.net.Uri;
			public describeContents(): number;
			public getPort(): number;
			public getQueryParameters(param0: string): java.util.List<string>;
			public hashCode(): number;
		}
		export module Uri {
			export class Builder extends java.lang.Object {
				public static class: java.lang.Class<android.net.Uri.Builder>;
				public build(): android.net.Uri;
				public scheme(param0: string): android.net.Uri.Builder;
				public appendEncodedPath(param0: string): android.net.Uri.Builder;
				public appendQueryParameter(param0: string, param1: string): android.net.Uri.Builder;
				public encodedOpaquePart(param0: string): android.net.Uri.Builder;
				public encodedFragment(param0: string): android.net.Uri.Builder;
				public encodedQuery(param0: string): android.net.Uri.Builder;
				public appendPath(param0: string): android.net.Uri.Builder;
				public toString(): string;
				public fragment(param0: string): android.net.Uri.Builder;
				public constructor();
				public encodedPath(param0: string): android.net.Uri.Builder;
				public clearQuery(): android.net.Uri.Builder;
				public authority(param0: string): android.net.Uri.Builder;
				public path(param0: string): android.net.Uri.Builder;
				public query(param0: string): android.net.Uri.Builder;
				public opaquePart(param0: string): android.net.Uri.Builder;
				public encodedAuthority(param0: string): android.net.Uri.Builder;
			}
		}
	}
}

declare module android {
	export module net {
		export class UrlQuerySanitizer extends java.lang.Object {
			public static class: java.lang.Class<android.net.UrlQuerySanitizer>;
			public static getAllButNulAndAngleBracketsLegal(): android.net.UrlQuerySanitizer.ValueSanitizer;
			public parseQuery(param0: string): void;
			public static getAmpLegal(): android.net.UrlQuerySanitizer.ValueSanitizer;
			public getEffectiveValueSanitizer(param0: string): android.net.UrlQuerySanitizer.ValueSanitizer;
			public parseEntry(param0: string, param1: string): void;
			public static getAmpAndSpaceLegal(): android.net.UrlQuerySanitizer.ValueSanitizer;
			public static getSpaceLegal(): android.net.UrlQuerySanitizer.ValueSanitizer;
			public getAllowUnregisteredParamaters(): boolean;
			public setPreferFirstRepeatedParameter(param0: boolean): void;
			public constructor(param0: string);
			public parseUrl(param0: string): void;
			public getValueSanitizer(param0: string): android.net.UrlQuerySanitizer.ValueSanitizer;
			public getPreferFirstRepeatedParameter(): boolean;
			public clear(): void;
			public static getAllButWhitespaceLegal(): android.net.UrlQuerySanitizer.ValueSanitizer;
			public static getAllButNulLegal(): android.net.UrlQuerySanitizer.ValueSanitizer;
			public static getUrlAndSpaceLegal(): android.net.UrlQuerySanitizer.ValueSanitizer;
			public isHexDigit(param0: string): boolean;
			public unescape(param0: string): string;
			public getParameterList(): java.util.List<android.net.UrlQuerySanitizer.ParameterValuePair>;
			public static getUrlLegal(): android.net.UrlQuerySanitizer.ValueSanitizer;
			public addSanitizedEntry(param0: string, param1: string): void;
			public decodeHexDigit(param0: string): number;
			public constructor();
			public setUnregisteredParameterValueSanitizer(param0: android.net.UrlQuerySanitizer.ValueSanitizer): void;
			public getValue(param0: string): string;
			public hasParameter(param0: string): boolean;
			public getUnregisteredParameterValueSanitizer(): android.net.UrlQuerySanitizer.ValueSanitizer;
			public registerParameter(param0: string, param1: android.net.UrlQuerySanitizer.ValueSanitizer): void;
			public static getAllIllegal(): android.net.UrlQuerySanitizer.ValueSanitizer;
			public registerParameters(param0: native.Array<string>, param1: android.net.UrlQuerySanitizer.ValueSanitizer): void;
			public setAllowUnregisteredParamaters(param0: boolean): void;
			public getParameterSet(): java.util.Set<string>;
		}
		export module UrlQuerySanitizer {
			export class IllegalCharacterValueSanitizer extends java.lang.Object implements android.net.UrlQuerySanitizer.ValueSanitizer {
				public static class: java.lang.Class<android.net.UrlQuerySanitizer.IllegalCharacterValueSanitizer>;
				public static SPACE_OK: number;
				public static OTHER_WHITESPACE_OK: number;
				public static NON_7_BIT_ASCII_OK: number;
				public static DQUOTE_OK: number;
				public static SQUOTE_OK: number;
				public static LT_OK: number;
				public static GT_OK: number;
				public static AMP_OK: number;
				public static PCT_OK: number;
				public static NUL_OK: number;
				public static SCRIPT_URL_OK: number;
				public static ALL_OK: number;
				public static ALL_WHITESPACE_OK: number;
				public static ALL_ILLEGAL: number;
				public static ALL_BUT_NUL_LEGAL: number;
				public static ALL_BUT_WHITESPACE_LEGAL: number;
				public static URL_LEGAL: number;
				public static URL_AND_SPACE_LEGAL: number;
				public static AMP_LEGAL: number;
				public static AMP_AND_SPACE_LEGAL: number;
				public static SPACE_LEGAL: number;
				public static ALL_BUT_NUL_AND_ANGLE_BRACKETS_LEGAL: number;
				public sanitize(param0: string): string;
				public constructor(param0: number);
			}
			export class ParameterValuePair extends java.lang.Object {
				public static class: java.lang.Class<android.net.UrlQuerySanitizer.ParameterValuePair>;
				public mParameter: string;
				public mValue: string;
				public constructor(param0: android.net.UrlQuerySanitizer, param1: string, param2: string);
			}
			export class ValueSanitizer extends java.lang.Object {
				public static class: java.lang.Class<android.net.UrlQuerySanitizer.ValueSanitizer>;
				/**
				 * Constructs a new instance of the android.net.UrlQuerySanitizer$ValueSanitizer interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					sanitize(param0: string): string;
				});
				public constructor();
				public sanitize(param0: string): string;
			}
		}
	}
}

declare module android {
	export module net {
		export class VpnService extends android.app.Service {
			public static class: java.lang.Class<android.net.VpnService>;
			public static SERVICE_INTERFACE: string;
			public static prepare(param0: android.content.Context): android.content.Intent;
			public protect(param0: number): boolean;
			public onTrimMemory(param0: number): void;
			public onBind(param0: android.content.Intent): android.os.IBinder;
			public protect(param0: java.net.Socket): boolean;
			public constructor(param0: android.content.Context);
			public onRevoke(): void;
			public constructor();
			public protect(param0: java.net.DatagramSocket): boolean;
		}
		export module VpnService {
			export class Builder extends java.lang.Object {
				public static class: java.lang.Class<android.net.VpnService.Builder>;
				public setSession(param0: string): android.net.VpnService.Builder;
				public addAddress(param0: java.net.InetAddress, param1: number): android.net.VpnService.Builder;
				public addRoute(param0: java.net.InetAddress, param1: number): android.net.VpnService.Builder;
				public setConfigureIntent(param0: android.app.PendingIntent): android.net.VpnService.Builder;
				public addSearchDomain(param0: string): android.net.VpnService.Builder;
				public setMtu(param0: number): android.net.VpnService.Builder;
				public addDnsServer(param0: string): android.net.VpnService.Builder;
				public addDnsServer(param0: java.net.InetAddress): android.net.VpnService.Builder;
				public addRoute(param0: string, param1: number): android.net.VpnService.Builder;
				public constructor(param0: android.net.VpnService);
				public establish(): android.os.ParcelFileDescriptor;
				public addAddress(param0: string, param1: number): android.net.VpnService.Builder;
			}
		}
	}
}

declare module android {
	export module net {
		export module http {
			export class AndroidHttpClient extends java.lang.Object implements org.apache.http.client.HttpClient {
				public static class: java.lang.Class<android.net.http.AndroidHttpClient>;
				public static DEFAULT_SYNC_MIN_GZIP_BYTES: number;
				public static getUngzippedContent(param0: org.apache.http.HttpEntity): java.io.InputStream;
				public getParams(): org.apache.http.params.HttpParams;
				public close(): void;
				public static getCompressedEntity(param0: native.Array<number>, param1: android.content.ContentResolver): org.apache.http.entity.AbstractHttpEntity;
				public static newInstance(param0: string): android.net.http.AndroidHttpClient;
				public static parseDate(param0: string): number;
				public finalize(): void;
				public execute(param0: org.apache.http.HttpHost, param1: org.apache.http.HttpRequest, param2: org.apache.http.protocol.HttpContext): org.apache.http.HttpResponse;
				public getConnectionManager(): org.apache.http.conn.ClientConnectionManager;
				public execute(param0: org.apache.http.HttpHost, param1: org.apache.http.HttpRequest, param2: org.apache.http.client.ResponseHandler<any>): any;
				public execute(param0: org.apache.http.client.methods.HttpUriRequest): org.apache.http.HttpResponse;
				public static getMinGzipSize(param0: android.content.ContentResolver): number;
				public execute(param0: org.apache.http.client.methods.HttpUriRequest, param1: org.apache.http.client.ResponseHandler<any>, param2: org.apache.http.protocol.HttpContext): any;
				public execute(param0: org.apache.http.client.methods.HttpUriRequest, param1: org.apache.http.protocol.HttpContext): org.apache.http.HttpResponse;
				public static newInstance(param0: string, param1: android.content.Context): android.net.http.AndroidHttpClient;
				public execute(param0: org.apache.http.client.methods.HttpUriRequest, param1: org.apache.http.client.ResponseHandler<any>): any;
				public execute(param0: org.apache.http.HttpHost, param1: org.apache.http.HttpRequest): org.apache.http.HttpResponse;
				public enableCurlLogging(param0: string, param1: number): void;
				public disableCurlLogging(): void;
				public static modifyRequestToAcceptGzipResponse(param0: org.apache.http.HttpRequest): void;
				public execute(param0: org.apache.http.HttpHost, param1: org.apache.http.HttpRequest, param2: org.apache.http.client.ResponseHandler<any>, param3: org.apache.http.protocol.HttpContext): any;
			}
		}
	}
}

declare module android {
	export module net {
		export module http {
			export class HttpResponseCache extends java.net.ResponseCache implements java.io.Closeable {
				public static class: java.lang.Class<android.net.http.HttpResponseCache>;
				public getRequestCount(): number;
				public put(param0: java.net.URI, param1: java.net.URLConnection): java.net.CacheRequest;
				public getHitCount(): number;
				public close(): void;
				public static getInstalled(): android.net.http.HttpResponseCache;
				public maxSize(): number;
				public delete(): void;
				public static install(param0: java.io.File, param1: number): android.net.http.HttpResponseCache;
				public getNetworkCount(): number;
				public get(param0: java.net.URI, param1: string, param2: java.util.Map<string,java.util.List<string>>): java.net.CacheResponse;
				public size(): number;
				public flush(): void;
			}
		}
	}
}

declare module android {
	export module net {
		export module http {
			export class SslCertificate extends java.lang.Object {
				public static class: java.lang.Class<android.net.http.SslCertificate>;
				public getValidNotBeforeDate(): java.util.Date;
				/** @deprecated */
				public constructor(param0: string, param1: string, param2: string, param3: string);
				public constructor(param0: java.security.cert.X509Certificate);
				public getIssuedTo(): android.net.http.SslCertificate.DName;
				/** @deprecated */
				public getValidNotAfter(): string;
				public getIssuedBy(): android.net.http.SslCertificate.DName;
				public getValidNotAfterDate(): java.util.Date;
				public static restoreState(param0: android.os.Bundle): android.net.http.SslCertificate;
				/** @deprecated */
				public constructor(param0: string, param1: string, param2: java.util.Date, param3: java.util.Date);
				public toString(): string;
				public static saveState(param0: android.net.http.SslCertificate): android.os.Bundle;
				/** @deprecated */
				public getValidNotBefore(): string;
			}
			export module SslCertificate {
				export class DName extends java.lang.Object {
					public static class: java.lang.Class<android.net.http.SslCertificate.DName>;
					public getCName(): string;
					public getDName(): string;
					public getOName(): string;
					public getUName(): string;
					public constructor(param0: android.net.http.SslCertificate, param1: string);
				}
			}
		}
	}
}

declare module android {
	export module net {
		export module http {
			export class SslError extends java.lang.Object {
				public static class: java.lang.Class<android.net.http.SslError>;
				public static SSL_NOTYETVALID: number;
				public static SSL_EXPIRED: number;
				public static SSL_IDMISMATCH: number;
				public static SSL_UNTRUSTED: number;
				public static SSL_DATE_INVALID: number;
				public static SSL_INVALID: number;
				public static SSL_MAX_ERROR: number;
				public hasError(param0: number): boolean;
				public addError(param0: number): boolean;
				public getCertificate(): android.net.http.SslCertificate;
				public getPrimaryError(): number;
				public constructor(param0: number, param1: android.net.http.SslCertificate, param2: string);
				public getUrl(): string;
				/** @deprecated */
				public constructor(param0: number, param1: java.security.cert.X509Certificate);
				public constructor(param0: number, param1: java.security.cert.X509Certificate, param2: string);
				public toString(): string;
				/** @deprecated */
				public constructor(param0: number, param1: android.net.http.SslCertificate);
			}
		}
	}
}

declare module android {
	export module net {
		export module http {
			export class X509TrustManagerExtensions extends java.lang.Object {
				public static class: java.lang.Class<android.net.http.X509TrustManagerExtensions>;
				public constructor(param0: javax.net.ssl.X509TrustManager);
				public checkServerTrusted(param0: native.Array<java.security.cert.X509Certificate>, param1: string, param2: string): java.util.List<java.security.cert.X509Certificate>;
			}
		}
	}
}

declare module android {
	export module net {
		export module nsd {
			export class NsdManager extends java.lang.Object {
				public static class: java.lang.Class<android.net.nsd.NsdManager>;
				public static ACTION_NSD_STATE_CHANGED: string;
				public static EXTRA_NSD_STATE: string;
				public static NSD_STATE_DISABLED: number;
				public static NSD_STATE_ENABLED: number;
				public static PROTOCOL_DNS_SD: number;
				public static FAILURE_INTERNAL_ERROR: number;
				public static FAILURE_ALREADY_ACTIVE: number;
				public static FAILURE_MAX_LIMIT: number;
				public discoverServices(param0: string, param1: number, param2: android.net.nsd.NsdManager.DiscoveryListener): void;
				public stopServiceDiscovery(param0: android.net.nsd.NsdManager.DiscoveryListener): void;
				public resolveService(param0: android.net.nsd.NsdServiceInfo, param1: android.net.nsd.NsdManager.ResolveListener): void;
				public unregisterService(param0: android.net.nsd.NsdManager.RegistrationListener): void;
				public registerService(param0: android.net.nsd.NsdServiceInfo, param1: number, param2: android.net.nsd.NsdManager.RegistrationListener): void;
			}
			export module NsdManager {
				export class DiscoveryListener extends java.lang.Object {
					public static class: java.lang.Class<android.net.nsd.NsdManager.DiscoveryListener>;
					/**
					 * Constructs a new instance of the android.net.nsd.NsdManager$DiscoveryListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						onStartDiscoveryFailed(param0: string, param1: number): void;
						onStopDiscoveryFailed(param0: string, param1: number): void;
						onDiscoveryStarted(param0: string): void;
						onDiscoveryStopped(param0: string): void;
						onServiceFound(param0: android.net.nsd.NsdServiceInfo): void;
						onServiceLost(param0: android.net.nsd.NsdServiceInfo): void;
					});
					public constructor();
					public onServiceLost(param0: android.net.nsd.NsdServiceInfo): void;
					public onServiceFound(param0: android.net.nsd.NsdServiceInfo): void;
					public onStartDiscoveryFailed(param0: string, param1: number): void;
					public onDiscoveryStarted(param0: string): void;
					public onDiscoveryStopped(param0: string): void;
					public onStopDiscoveryFailed(param0: string, param1: number): void;
				}
				export class RegistrationListener extends java.lang.Object {
					public static class: java.lang.Class<android.net.nsd.NsdManager.RegistrationListener>;
					/**
					 * Constructs a new instance of the android.net.nsd.NsdManager$RegistrationListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						onRegistrationFailed(param0: android.net.nsd.NsdServiceInfo, param1: number): void;
						onUnregistrationFailed(param0: android.net.nsd.NsdServiceInfo, param1: number): void;
						onServiceRegistered(param0: android.net.nsd.NsdServiceInfo): void;
						onServiceUnregistered(param0: android.net.nsd.NsdServiceInfo): void;
					});
					public constructor();
					public onRegistrationFailed(param0: android.net.nsd.NsdServiceInfo, param1: number): void;
					public onUnregistrationFailed(param0: android.net.nsd.NsdServiceInfo, param1: number): void;
					public onServiceRegistered(param0: android.net.nsd.NsdServiceInfo): void;
					public onServiceUnregistered(param0: android.net.nsd.NsdServiceInfo): void;
				}
				export class ResolveListener extends java.lang.Object {
					public static class: java.lang.Class<android.net.nsd.NsdManager.ResolveListener>;
					/**
					 * Constructs a new instance of the android.net.nsd.NsdManager$ResolveListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						onResolveFailed(param0: android.net.nsd.NsdServiceInfo, param1: number): void;
						onServiceResolved(param0: android.net.nsd.NsdServiceInfo): void;
					});
					public constructor();
					public onResolveFailed(param0: android.net.nsd.NsdServiceInfo, param1: number): void;
					public onServiceResolved(param0: android.net.nsd.NsdServiceInfo): void;
				}
			}
		}
	}
}

declare module android {
	export module net {
		export module nsd {
			export class NsdServiceInfo extends java.lang.Object implements android.os.Parcelable {
				public static class: java.lang.Class<android.net.nsd.NsdServiceInfo>;
				public static CREATOR: android.os.Parcelable.Creator<android.net.nsd.NsdServiceInfo>;
				public setServiceType(param0: string): void;
				public getServiceName(): string;
				public setPort(param0: number): void;
				public getPort(): number;
				public getHost(): java.net.InetAddress;
				public setHost(param0: java.net.InetAddress): void;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public describeContents(): number;
				public getServiceType(): string;
				public setServiceName(param0: string): void;
				public toString(): string;
				public constructor();
			}
		}
	}
}

declare module android {
	export module net {
		export module rtp {
			export class AudioCodec extends java.lang.Object {
				public static class: java.lang.Class<android.net.rtp.AudioCodec>;
				public type: number;
				public rtpmap: string;
				public fmtp: string;
				public static PCMU: android.net.rtp.AudioCodec;
				public static PCMA: android.net.rtp.AudioCodec;
				public static GSM: android.net.rtp.AudioCodec;
				public static GSM_EFR: android.net.rtp.AudioCodec;
				public static AMR: android.net.rtp.AudioCodec;
				public static getCodec(param0: number, param1: string, param2: string): android.net.rtp.AudioCodec;
				public static getCodecs(): native.Array<android.net.rtp.AudioCodec>;
			}
		}
	}
}

declare module android {
	export module net {
		export module rtp {
			export class AudioGroup extends java.lang.Object {
				public static class: java.lang.Class<android.net.rtp.AudioGroup>;
				public static MODE_ON_HOLD: number;
				public static MODE_MUTED: number;
				public static MODE_NORMAL: number;
				public static MODE_ECHO_SUPPRESSION: number;
				public getMode(): number;
				public setMode(param0: number): void;
				public sendDtmf(param0: number): void;
				public clear(): void;
				public finalize(): void;
				public getStreams(): native.Array<android.net.rtp.AudioStream>;
				public constructor();
			}
		}
	}
}

declare module android {
	export module net {
		export module rtp {
			export class AudioStream extends android.net.rtp.RtpStream {
				public static class: java.lang.Class<android.net.rtp.AudioStream>;
				public setCodec(param0: android.net.rtp.AudioCodec): void;
				public getGroup(): android.net.rtp.AudioGroup;
				public getDtmfType(): number;
				public isBusy(): boolean;
				public join(param0: android.net.rtp.AudioGroup): void;
				public getCodec(): android.net.rtp.AudioCodec;
				public setDtmfType(param0: number): void;
				public constructor(param0: java.net.InetAddress);
			}
		}
	}
}

declare module android {
	export module net {
		export module rtp {
			export class RtpStream extends java.lang.Object {
				public static class: java.lang.Class<android.net.rtp.RtpStream>;
				public static MODE_NORMAL: number;
				public static MODE_SEND_ONLY: number;
				public static MODE_RECEIVE_ONLY: number;
				public getMode(): number;
				public setMode(param0: number): void;
				public getLocalPort(): number;
				public release(): void;
				public isBusy(): boolean;
				public getRemotePort(): number;
				public finalize(): void;
				public getLocalAddress(): java.net.InetAddress;
				public associate(param0: java.net.InetAddress, param1: number): void;
				public getRemoteAddress(): java.net.InetAddress;
			}
		}
	}
}

declare module android {
	export module net {
		export module sip {
			export class SipAudioCall extends java.lang.Object {
				public static class: java.lang.Class<android.net.sip.SipAudioCall>;
				public close(): void;
				public toggleMute(): void;
				public constructor(param0: android.content.Context, param1: android.net.sip.SipProfile);
				public setListener(param0: android.net.sip.SipAudioCall.Listener): void;
				public startAudio(): void;
				public setSpeakerMode(param0: boolean): void;
				public isInCall(): boolean;
				public isMuted(): boolean;
				public endCall(): void;
				public getLocalProfile(): android.net.sip.SipProfile;
				public sendDtmf(param0: number, param1: android.os.Message): void;
				public sendDtmf(param0: number): void;
				public getState(): number;
				public getPeerProfile(): android.net.sip.SipProfile;
				public attachCall(param0: android.net.sip.SipSession, param1: string): void;
				public makeCall(param0: android.net.sip.SipProfile, param1: android.net.sip.SipSession, param2: number): void;
				public setListener(param0: android.net.sip.SipAudioCall.Listener, param1: boolean): void;
				public isOnHold(): boolean;
				public holdCall(param0: number): void;
				public answerCall(param0: number): void;
				public continueCall(param0: number): void;
			}
			export module SipAudioCall {
				export class Listener extends java.lang.Object {
					public static class: java.lang.Class<android.net.sip.SipAudioCall.Listener>;
					public onReadyToCall(param0: android.net.sip.SipAudioCall): void;
					public onRingingBack(param0: android.net.sip.SipAudioCall): void;
					public onCallEnded(param0: android.net.sip.SipAudioCall): void;
					public constructor();
					public onCalling(param0: android.net.sip.SipAudioCall): void;
					public onCallEstablished(param0: android.net.sip.SipAudioCall): void;
					public onChanged(param0: android.net.sip.SipAudioCall): void;
					public onError(param0: android.net.sip.SipAudioCall, param1: number, param2: string): void;
					public onRinging(param0: android.net.sip.SipAudioCall, param1: android.net.sip.SipProfile): void;
					public onCallBusy(param0: android.net.sip.SipAudioCall): void;
					public onCallHeld(param0: android.net.sip.SipAudioCall): void;
				}
			}
		}
	}
}

declare module android {
	export module net {
		export module sip {
			export class SipErrorCode extends java.lang.Object {
				public static class: java.lang.Class<android.net.sip.SipErrorCode>;
				public static NO_ERROR: number;
				public static SOCKET_ERROR: number;
				public static SERVER_ERROR: number;
				public static TRANSACTION_TERMINTED: number;
				public static CLIENT_ERROR: number;
				public static TIME_OUT: number;
				public static INVALID_REMOTE_URI: number;
				public static PEER_NOT_REACHABLE: number;
				public static INVALID_CREDENTIALS: number;
				public static IN_PROGRESS: number;
				public static DATA_CONNECTION_LOST: number;
				public static CROSS_DOMAIN_AUTHENTICATION: number;
				public static SERVER_UNREACHABLE: number;
				public static toString(param0: number): string;
				public toString(): string;
			}
		}
	}
}

declare module android {
	export module net {
		export module sip {
			export class SipException extends java.lang.Exception {
				public static class: java.lang.Class<android.net.sip.SipException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module android {
	export module net {
		export module sip {
			export class SipManager extends java.lang.Object {
				public static class: java.lang.Class<android.net.sip.SipManager>;
				public static INCOMING_CALL_RESULT_CODE: number;
				public static EXTRA_CALL_ID: string;
				public static EXTRA_OFFER_SD: string;
				public close(param0: string): void;
				public isRegistered(param0: string): boolean;
				public getSessionFor(param0: android.content.Intent): android.net.sip.SipSession;
				public static isVoipSupported(param0: android.content.Context): boolean;
				public createSipSession(param0: android.net.sip.SipProfile, param1: android.net.sip.SipSession.Listener): android.net.sip.SipSession;
				public static isSipWifiOnly(param0: android.content.Context): boolean;
				public isOpened(param0: string): boolean;
				public makeAudioCall(param0: android.net.sip.SipProfile, param1: android.net.sip.SipProfile, param2: android.net.sip.SipAudioCall.Listener, param3: number): android.net.sip.SipAudioCall;
				public static isApiSupported(param0: android.content.Context): boolean;
				public static newInstance(param0: android.content.Context): android.net.sip.SipManager;
				public static isIncomingCallIntent(param0: android.content.Intent): boolean;
				public static getOfferSessionDescription(param0: android.content.Intent): string;
				public makeAudioCall(param0: string, param1: string, param2: android.net.sip.SipAudioCall.Listener, param3: number): android.net.sip.SipAudioCall;
				public takeAudioCall(param0: android.content.Intent, param1: android.net.sip.SipAudioCall.Listener): android.net.sip.SipAudioCall;
				public open(param0: android.net.sip.SipProfile, param1: android.app.PendingIntent, param2: android.net.sip.SipRegistrationListener): void;
				public static getCallId(param0: android.content.Intent): string;
				public setRegistrationListener(param0: string, param1: android.net.sip.SipRegistrationListener): void;
				public open(param0: android.net.sip.SipProfile): void;
				public unregister(param0: android.net.sip.SipProfile, param1: android.net.sip.SipRegistrationListener): void;
				public register(param0: android.net.sip.SipProfile, param1: number, param2: android.net.sip.SipRegistrationListener): void;
			}
		}
	}
}

declare module android {
	export module net {
		export module sip {
			export class SipProfile extends java.lang.Object implements android.os.Parcelable, java.io.Serializable, java.lang.Cloneable {
				public static class: java.lang.Class<android.net.sip.SipProfile>;
				public static CREATOR: android.os.Parcelable.Creator<android.net.sip.SipProfile>;
				public getUserName(): string;
				public getPort(): number;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public getDisplayName(): string;
				public getProxyAddress(): string;
				public getAuthUserName(): string;
				public getProfileName(): string;
				public getSipDomain(): string;
				public getSendKeepAlive(): boolean;
				public getAutoRegistration(): boolean;
				public getUriString(): string;
				public describeContents(): number;
				public getPassword(): string;
				public getProtocol(): string;
			}
			export module SipProfile {
				export class Builder extends java.lang.Object {
					public static class: java.lang.Class<android.net.sip.SipProfile.Builder>;
					public setPort(param0: number): android.net.sip.SipProfile.Builder;
					public constructor(param0: string);
					public build(): android.net.sip.SipProfile;
					public setPassword(param0: string): android.net.sip.SipProfile.Builder;
					public setOutboundProxy(param0: string): android.net.sip.SipProfile.Builder;
					public setAuthUserName(param0: string): android.net.sip.SipProfile.Builder;
					public setProfileName(param0: string): android.net.sip.SipProfile.Builder;
					public setDisplayName(param0: string): android.net.sip.SipProfile.Builder;
					public constructor(param0: string, param1: string);
					public setAutoRegistration(param0: boolean): android.net.sip.SipProfile.Builder;
					public setSendKeepAlive(param0: boolean): android.net.sip.SipProfile.Builder;
					public constructor(param0: android.net.sip.SipProfile);
					public setProtocol(param0: string): android.net.sip.SipProfile.Builder;
				}
			}
		}
	}
}

declare module android {
	export module net {
		export module sip {
			export class SipRegistrationListener extends java.lang.Object {
				public static class: java.lang.Class<android.net.sip.SipRegistrationListener>;
				/**
				 * Constructs a new instance of the android.net.sip.SipRegistrationListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onRegistering(param0: string): void;
					onRegistrationDone(param0: string, param1: number): void;
					onRegistrationFailed(param0: string, param1: number, param2: string): void;
				});
				public constructor();
				public onRegistering(param0: string): void;
				public onRegistrationFailed(param0: string, param1: number, param2: string): void;
				public onRegistrationDone(param0: string, param1: number): void;
			}
		}
	}
}

declare module android {
	export module net {
		export module sip {
			export class SipSession extends java.lang.Object {
				public static class: java.lang.Class<android.net.sip.SipSession>;
				public isInCall(): boolean;
				public getLocalIp(): string;
				public makeCall(param0: android.net.sip.SipProfile, param1: string, param2: number): void;
				public answerCall(param0: string, param1: number): void;
				public unregister(): void;
				public endCall(): void;
				public getLocalProfile(): android.net.sip.SipProfile;
				public changeCall(param0: string, param1: number): void;
				public getState(): number;
				public register(param0: number): void;
				public getPeerProfile(): android.net.sip.SipProfile;
				public setListener(param0: android.net.sip.SipSession.Listener): void;
				public getCallId(): string;
			}
			export module SipSession {
				export class Listener extends java.lang.Object {
					public static class: java.lang.Class<android.net.sip.SipSession.Listener>;
					public onCalling(param0: android.net.sip.SipSession): void;
					public onCallBusy(param0: android.net.sip.SipSession): void;
					public onRinging(param0: android.net.sip.SipSession, param1: android.net.sip.SipProfile, param2: string): void;
					public onError(param0: android.net.sip.SipSession, param1: number, param2: string): void;
					public onCallChangeFailed(param0: android.net.sip.SipSession, param1: number, param2: string): void;
					public onRegistrationDone(param0: android.net.sip.SipSession, param1: number): void;
					public onRegistrationFailed(param0: android.net.sip.SipSession, param1: number, param2: string): void;
					public onCallEstablished(param0: android.net.sip.SipSession, param1: string): void;
					public onRegistrationTimeout(param0: android.net.sip.SipSession): void;
					public constructor();
					public onRingingBack(param0: android.net.sip.SipSession): void;
					public onCallEnded(param0: android.net.sip.SipSession): void;
					public onRegistering(param0: android.net.sip.SipSession): void;
				}
				export class State extends java.lang.Object {
					public static class: java.lang.Class<android.net.sip.SipSession.State>;
					public static READY_TO_CALL: number;
					public static REGISTERING: number;
					public static DEREGISTERING: number;
					public static INCOMING_CALL: number;
					public static INCOMING_CALL_ANSWERING: number;
					public static OUTGOING_CALL: number;
					public static OUTGOING_CALL_RING_BACK: number;
					public static OUTGOING_CALL_CANCELING: number;
					public static IN_CALL: number;
					public static PINGING: number;
					public static NOT_DEFINED: number;
					public toString(): string;
					public static toString(param0: number): string;
				}
			}
		}
	}
}

declare module android {
	export module net {
		export module wifi {
			export class ScanResult extends java.lang.Object implements android.os.Parcelable {
				public static class: java.lang.Class<android.net.wifi.ScanResult>;
				public SSID: string;
				public BSSID: string;
				public capabilities: string;
				public level: number;
				public frequency: number;
				public timestamp: number;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public describeContents(): number;
				public toString(): string;
			}
		}
	}
}

declare module android {
	export module net {
		export module wifi {
			export class SupplicantState extends android.os.Parcelable {
				public static class: java.lang.Class<android.net.wifi.SupplicantState>;
				public static ASSOCIATED: android.net.wifi.SupplicantState;
				public static ASSOCIATING: android.net.wifi.SupplicantState;
				public static AUTHENTICATING: android.net.wifi.SupplicantState;
				public static COMPLETED: android.net.wifi.SupplicantState;
				public static DISCONNECTED: android.net.wifi.SupplicantState;
				public static DORMANT: android.net.wifi.SupplicantState;
				public static FOUR_WAY_HANDSHAKE: android.net.wifi.SupplicantState;
				public static GROUP_HANDSHAKE: android.net.wifi.SupplicantState;
				public static INACTIVE: android.net.wifi.SupplicantState;
				public static INTERFACE_DISABLED: android.net.wifi.SupplicantState;
				public static INVALID: android.net.wifi.SupplicantState;
				public static SCANNING: android.net.wifi.SupplicantState;
				public static UNINITIALIZED: android.net.wifi.SupplicantState;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public describeContents(): number;
				public static isValidState(param0: android.net.wifi.SupplicantState): boolean;
				public static values(): native.Array<android.net.wifi.SupplicantState>;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
				public static valueOf(param0: string): android.net.wifi.SupplicantState;
			}
		}
	}
}

declare module android {
	export module net {
		export module wifi {
			export class WifiConfiguration extends java.lang.Object implements android.os.Parcelable {
				public static class: java.lang.Class<android.net.wifi.WifiConfiguration>;
				public networkId: number;
				public status: number;
				public SSID: string;
				public BSSID: string;
				public preSharedKey: string;
				public wepKeys: native.Array<string>;
				public wepTxKeyIndex: number;
				public priority: number;
				public hiddenSSID: boolean;
				public allowedKeyManagement: java.util.BitSet;
				public allowedProtocols: java.util.BitSet;
				public allowedAuthAlgorithms: java.util.BitSet;
				public allowedPairwiseCiphers: java.util.BitSet;
				public allowedGroupCiphers: java.util.BitSet;
				public enterpriseConfig: android.net.wifi.WifiEnterpriseConfig;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public describeContents(): number;
				public toString(): string;
				public constructor();
			}
			export module WifiConfiguration {
				export class AuthAlgorithm extends java.lang.Object {
					public static class: java.lang.Class<android.net.wifi.WifiConfiguration.AuthAlgorithm>;
					public static OPEN: number;
					public static SHARED: number;
					public static LEAP: number;
					public static varName: string;
					public static strings: native.Array<string>;
				}
				export class GroupCipher extends java.lang.Object {
					public static class: java.lang.Class<android.net.wifi.WifiConfiguration.GroupCipher>;
					public static WEP40: number;
					public static WEP104: number;
					public static TKIP: number;
					public static CCMP: number;
					public static varName: string;
					public static strings: native.Array<string>;
				}
				export class KeyMgmt extends java.lang.Object {
					public static class: java.lang.Class<android.net.wifi.WifiConfiguration.KeyMgmt>;
					public static NONE: number;
					public static WPA_PSK: number;
					public static WPA_EAP: number;
					public static IEEE8021X: number;
					public static varName: string;
					public static strings: native.Array<string>;
				}
				export class PairwiseCipher extends java.lang.Object {
					public static class: java.lang.Class<android.net.wifi.WifiConfiguration.PairwiseCipher>;
					public static NONE: number;
					public static TKIP: number;
					public static CCMP: number;
					public static varName: string;
					public static strings: native.Array<string>;
				}
				export class Protocol extends java.lang.Object {
					public static class: java.lang.Class<android.net.wifi.WifiConfiguration.Protocol>;
					public static WPA: number;
					public static RSN: number;
					public static varName: string;
					public static strings: native.Array<string>;
				}
				export class Status extends java.lang.Object {
					public static class: java.lang.Class<android.net.wifi.WifiConfiguration.Status>;
					public static CURRENT: number;
					public static DISABLED: number;
					public static ENABLED: number;
					public static strings: native.Array<string>;
				}
			}
		}
	}
}

declare module android {
	export module net {
		export module wifi {
			export class WifiEnterpriseConfig extends java.lang.Object implements android.os.Parcelable {
				public static class: java.lang.Class<android.net.wifi.WifiEnterpriseConfig>;
				public static CREATOR: android.os.Parcelable.Creator<android.net.wifi.WifiEnterpriseConfig>;
				public getClientCertificate(): java.security.cert.X509Certificate;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public setClientKeyEntry(param0: java.security.PrivateKey, param1: java.security.cert.X509Certificate): void;
				public setPhase2Method(param0: number): void;
				public constructor(param0: android.net.wifi.WifiEnterpriseConfig);
				public toString(): string;
				public setPassword(param0: string): void;
				public getSubjectMatch(): string;
				public constructor();
				public setCaCertificate(param0: java.security.cert.X509Certificate): void;
				public setEapMethod(param0: number): void;
				public setAnonymousIdentity(param0: string): void;
				public setIdentity(param0: string): void;
				public getIdentity(): string;
				public describeContents(): number;
				public setSubjectMatch(param0: string): void;
				public getEapMethod(): number;
				public getAnonymousIdentity(): string;
				public getPassword(): string;
				public getCaCertificate(): java.security.cert.X509Certificate;
				public getPhase2Method(): number;
			}
			export module WifiEnterpriseConfig {
				export class Eap extends java.lang.Object {
					public static class: java.lang.Class<android.net.wifi.WifiEnterpriseConfig.Eap>;
					public static NONE: number;
					public static PEAP: number;
					public static TLS: number;
					public static TTLS: number;
					public static PWD: number;
				}
				export class Phase2 extends java.lang.Object {
					public static class: java.lang.Class<android.net.wifi.WifiEnterpriseConfig.Phase2>;
					public static NONE: number;
					public static PAP: number;
					public static MSCHAP: number;
					public static MSCHAPV2: number;
					public static GTC: number;
				}
			}
		}
	}
}

declare module android {
	export module net {
		export module wifi {
			export class WifiInfo extends java.lang.Object implements android.os.Parcelable {
				public static class: java.lang.Class<android.net.wifi.WifiInfo>;
				public static LINK_SPEED_UNITS: string;
				public getSSID(): string;
				public getIpAddress(): number;
				public getMacAddress(): string;
				public getSupplicantState(): android.net.wifi.SupplicantState;
				public getBSSID(): string;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public getRssi(): number;
				public toString(): string;
				public getNetworkId(): number;
				public getLinkSpeed(): number;
				public getHiddenSSID(): boolean;
				public describeContents(): number;
				public static getDetailedStateOf(param0: android.net.wifi.SupplicantState): android.net.NetworkInfo.DetailedState;
			}
		}
	}
}

declare module android {
	export module net {
		export module wifi {
			export class WifiManager extends java.lang.Object {
				public static class: java.lang.Class<android.net.wifi.WifiManager>;
				public static ERROR_AUTHENTICATING: number;
				public static WIFI_STATE_CHANGED_ACTION: string;
				public static EXTRA_WIFI_STATE: string;
				public static EXTRA_PREVIOUS_WIFI_STATE: string;
				public static WIFI_STATE_DISABLING: number;
				public static WIFI_STATE_DISABLED: number;
				public static WIFI_STATE_ENABLING: number;
				public static WIFI_STATE_ENABLED: number;
				public static WIFI_STATE_UNKNOWN: number;
				public static SUPPLICANT_CONNECTION_CHANGE_ACTION: string;
				public static EXTRA_SUPPLICANT_CONNECTED: string;
				public static NETWORK_STATE_CHANGED_ACTION: string;
				public static EXTRA_NETWORK_INFO: string;
				public static EXTRA_BSSID: string;
				public static EXTRA_WIFI_INFO: string;
				public static SUPPLICANT_STATE_CHANGED_ACTION: string;
				public static EXTRA_NEW_STATE: string;
				public static EXTRA_SUPPLICANT_ERROR: string;
				public static SCAN_RESULTS_AVAILABLE_ACTION: string;
				public static RSSI_CHANGED_ACTION: string;
				public static EXTRA_NEW_RSSI: string;
				public static NETWORK_IDS_CHANGED_ACTION: string;
				public static ACTION_REQUEST_SCAN_ALWAYS_AVAILABLE: string;
				public static ACTION_PICK_WIFI_NETWORK: string;
				public static WIFI_MODE_FULL: number;
				public static WIFI_MODE_SCAN_ONLY: number;
				public static WIFI_MODE_FULL_HIGH_PERF: number;
				public finalize(): void;
				public addNetwork(param0: android.net.wifi.WifiConfiguration): number;
				public startScan(): boolean;
				public static calculateSignalLevel(param0: number, param1: number): number;
				public updateNetwork(param0: android.net.wifi.WifiConfiguration): number;
				public isScanAlwaysAvailable(): boolean;
				public pingSupplicant(): boolean;
				public getScanResults(): java.util.List<android.net.wifi.ScanResult>;
				public createMulticastLock(param0: string): android.net.wifi.WifiManager.MulticastLock;
				public disconnect(): boolean;
				public setWifiEnabled(param0: boolean): boolean;
				public reconnect(): boolean;
				public createWifiLock(param0: string): android.net.wifi.WifiManager.WifiLock;
				public reassociate(): boolean;
				public disableNetwork(param0: number): boolean;
				public createWifiLock(param0: number, param1: string): android.net.wifi.WifiManager.WifiLock;
				public enableNetwork(param0: number, param1: boolean): boolean;
				public removeNetwork(param0: number): boolean;
				public getConfiguredNetworks(): java.util.List<android.net.wifi.WifiConfiguration>;
				public getConnectionInfo(): android.net.wifi.WifiInfo;
				public static compareSignalLevel(param0: number, param1: number): number;
				public saveConfiguration(): boolean;
				public getDhcpInfo(): android.net.DhcpInfo;
				public isWifiEnabled(): boolean;
				public getWifiState(): number;
			}
			export module WifiManager {
				export class MulticastLock extends java.lang.Object {
					public static class: java.lang.Class<android.net.wifi.WifiManager.MulticastLock>;
					public isHeld(): boolean;
					public toString(): string;
					public finalize(): void;
					public acquire(): void;
					public release(): void;
					public setReferenceCounted(param0: boolean): void;
				}
				export class WifiLock extends java.lang.Object {
					public static class: java.lang.Class<android.net.wifi.WifiManager.WifiLock>;
					public isHeld(): boolean;
					public toString(): string;
					public setWorkSource(param0: android.os.WorkSource): void;
					public finalize(): void;
					public acquire(): void;
					public release(): void;
					public setReferenceCounted(param0: boolean): void;
				}
			}
		}
	}
}

declare module android {
	export module net {
		export module wifi {
			export class WpsInfo extends java.lang.Object implements android.os.Parcelable {
				public static class: java.lang.Class<android.net.wifi.WpsInfo>;
				public static PBC: number;
				public static DISPLAY: number;
				public static KEYPAD: number;
				public static LABEL: number;
				public static INVALID: number;
				public setup: number;
				public pin: string;
				public static CREATOR: android.os.Parcelable.Creator<android.net.wifi.WpsInfo>;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public describeContents(): number;
				public toString(): string;
				public constructor(param0: android.net.wifi.WpsInfo);
				public constructor();
			}
		}
	}
}

declare module android {
	export module net {
		export module wifi {
			export module p2p {
				export class WifiP2pConfig extends java.lang.Object implements android.os.Parcelable {
					public static class: java.lang.Class<android.net.wifi.p2p.WifiP2pConfig>;
					public deviceAddress: string;
					public wps: android.net.wifi.WpsInfo;
					public groupOwnerIntent: number;
					public static CREATOR: android.os.Parcelable.Creator<android.net.wifi.p2p.WifiP2pConfig>;
					public toString(): string;
					public constructor();
					public constructor(param0: android.net.wifi.p2p.WifiP2pConfig);
					public describeContents(): number;
					public writeToParcel(param0: android.os.Parcel, param1: number): void;
				}
			}
		}
	}
}

declare module android {
	export module net {
		export module wifi {
			export module p2p {
				export class WifiP2pDevice extends java.lang.Object implements android.os.Parcelable {
					public static class: java.lang.Class<android.net.wifi.p2p.WifiP2pDevice>;
					public deviceName: string;
					public deviceAddress: string;
					public primaryDeviceType: string;
					public secondaryDeviceType: string;
					public static CONNECTED: number;
					public static INVITED: number;
					public static FAILED: number;
					public static AVAILABLE: number;
					public static UNAVAILABLE: number;
					public status: number;
					public static CREATOR: android.os.Parcelable.Creator<android.net.wifi.p2p.WifiP2pDevice>;
					public isGroupOwner(): boolean;
					public equals(param0: any): boolean;
					public wpsPbcSupported(): boolean;
					public constructor(param0: android.net.wifi.p2p.WifiP2pDevice);
					public toString(): string;
					public constructor();
					public wpsKeypadSupported(): boolean;
					public isServiceDiscoveryCapable(): boolean;
					public describeContents(): number;
					public wpsDisplaySupported(): boolean;
					public writeToParcel(param0: android.os.Parcel, param1: number): void;
				}
			}
		}
	}
}

declare module android {
	export module net {
		export module wifi {
			export module p2p {
				export class WifiP2pDeviceList extends java.lang.Object implements android.os.Parcelable {
					public static class: java.lang.Class<android.net.wifi.p2p.WifiP2pDeviceList>;
					public static CREATOR: android.os.Parcelable.Creator<android.net.wifi.p2p.WifiP2pDeviceList>;
					public getDeviceList(): java.util.Collection<android.net.wifi.p2p.WifiP2pDevice>;
					public toString(): string;
					public constructor();
					public describeContents(): number;
					public get(param0: string): android.net.wifi.p2p.WifiP2pDevice;
					public constructor(param0: android.net.wifi.p2p.WifiP2pDeviceList);
					public writeToParcel(param0: android.os.Parcel, param1: number): void;
				}
			}
		}
	}
}

declare module android {
	export module net {
		export module wifi {
			export module p2p {
				export class WifiP2pGroup extends java.lang.Object implements android.os.Parcelable {
					public static class: java.lang.Class<android.net.wifi.p2p.WifiP2pGroup>;
					public static CREATOR: android.os.Parcelable.Creator<android.net.wifi.p2p.WifiP2pGroup>;
					public isGroupOwner(): boolean;
					public constructor(param0: android.net.wifi.p2p.WifiP2pGroup);
					public getNetworkName(): string;
					public toString(): string;
					public getPassphrase(): string;
					public constructor();
					public getInterface(): string;
					public describeContents(): number;
					public getClientList(): java.util.Collection<android.net.wifi.p2p.WifiP2pDevice>;
					public getOwner(): android.net.wifi.p2p.WifiP2pDevice;
					public writeToParcel(param0: android.os.Parcel, param1: number): void;
				}
			}
		}
	}
}

declare module android {
	export module net {
		export module wifi {
			export module p2p {
				export class WifiP2pInfo extends java.lang.Object implements android.os.Parcelable {
					public static class: java.lang.Class<android.net.wifi.p2p.WifiP2pInfo>;
					public groupFormed: boolean;
					public isGroupOwner: boolean;
					public groupOwnerAddress: java.net.InetAddress;
					public static CREATOR: android.os.Parcelable.Creator<android.net.wifi.p2p.WifiP2pInfo>;
					public constructor(param0: android.net.wifi.p2p.WifiP2pInfo);
					public toString(): string;
					public constructor();
					public describeContents(): number;
					public writeToParcel(param0: android.os.Parcel, param1: number): void;
				}
			}
		}
	}
}

declare module android {
	export module net {
		export module wifi {
			export module p2p {
				export class WifiP2pManager extends java.lang.Object {
					public static class: java.lang.Class<android.net.wifi.p2p.WifiP2pManager>;
					public static WIFI_P2P_STATE_CHANGED_ACTION: string;
					public static EXTRA_WIFI_STATE: string;
					public static WIFI_P2P_STATE_DISABLED: number;
					public static WIFI_P2P_STATE_ENABLED: number;
					public static WIFI_P2P_CONNECTION_CHANGED_ACTION: string;
					public static EXTRA_WIFI_P2P_INFO: string;
					public static EXTRA_NETWORK_INFO: string;
					public static EXTRA_WIFI_P2P_GROUP: string;
					public static WIFI_P2P_PEERS_CHANGED_ACTION: string;
					public static EXTRA_P2P_DEVICE_LIST: string;
					public static WIFI_P2P_DISCOVERY_CHANGED_ACTION: string;
					public static EXTRA_DISCOVERY_STATE: string;
					public static WIFI_P2P_DISCOVERY_STOPPED: number;
					public static WIFI_P2P_DISCOVERY_STARTED: number;
					public static WIFI_P2P_THIS_DEVICE_CHANGED_ACTION: string;
					public static EXTRA_WIFI_P2P_DEVICE: string;
					public static ERROR: number;
					public static P2P_UNSUPPORTED: number;
					public static BUSY: number;
					public static NO_SERVICE_REQUESTS: number;
					public cancelConnect(param0: android.net.wifi.p2p.WifiP2pManager.Channel, param1: android.net.wifi.p2p.WifiP2pManager.ActionListener): void;
					public addServiceRequest(param0: android.net.wifi.p2p.WifiP2pManager.Channel, param1: android.net.wifi.p2p.nsd.WifiP2pServiceRequest, param2: android.net.wifi.p2p.WifiP2pManager.ActionListener): void;
					public connect(param0: android.net.wifi.p2p.WifiP2pManager.Channel, param1: android.net.wifi.p2p.WifiP2pConfig, param2: android.net.wifi.p2p.WifiP2pManager.ActionListener): void;
					public setServiceResponseListener(param0: android.net.wifi.p2p.WifiP2pManager.Channel, param1: android.net.wifi.p2p.WifiP2pManager.ServiceResponseListener): void;
					public initialize(param0: android.content.Context, param1: android.os.Looper, param2: android.net.wifi.p2p.WifiP2pManager.ChannelListener): android.net.wifi.p2p.WifiP2pManager.Channel;
					public removeLocalService(param0: android.net.wifi.p2p.WifiP2pManager.Channel, param1: android.net.wifi.p2p.nsd.WifiP2pServiceInfo, param2: android.net.wifi.p2p.WifiP2pManager.ActionListener): void;
					public stopPeerDiscovery(param0: android.net.wifi.p2p.WifiP2pManager.Channel, param1: android.net.wifi.p2p.WifiP2pManager.ActionListener): void;
					public clearLocalServices(param0: android.net.wifi.p2p.WifiP2pManager.Channel, param1: android.net.wifi.p2p.WifiP2pManager.ActionListener): void;
					public discoverPeers(param0: android.net.wifi.p2p.WifiP2pManager.Channel, param1: android.net.wifi.p2p.WifiP2pManager.ActionListener): void;
					public addLocalService(param0: android.net.wifi.p2p.WifiP2pManager.Channel, param1: android.net.wifi.p2p.nsd.WifiP2pServiceInfo, param2: android.net.wifi.p2p.WifiP2pManager.ActionListener): void;
					public requestConnectionInfo(param0: android.net.wifi.p2p.WifiP2pManager.Channel, param1: android.net.wifi.p2p.WifiP2pManager.ConnectionInfoListener): void;
					public requestGroupInfo(param0: android.net.wifi.p2p.WifiP2pManager.Channel, param1: android.net.wifi.p2p.WifiP2pManager.GroupInfoListener): void;
					public createGroup(param0: android.net.wifi.p2p.WifiP2pManager.Channel, param1: android.net.wifi.p2p.WifiP2pManager.ActionListener): void;
					public discoverServices(param0: android.net.wifi.p2p.WifiP2pManager.Channel, param1: android.net.wifi.p2p.WifiP2pManager.ActionListener): void;
					public setDnsSdResponseListeners(param0: android.net.wifi.p2p.WifiP2pManager.Channel, param1: android.net.wifi.p2p.WifiP2pManager.DnsSdServiceResponseListener, param2: android.net.wifi.p2p.WifiP2pManager.DnsSdTxtRecordListener): void;
					public clearServiceRequests(param0: android.net.wifi.p2p.WifiP2pManager.Channel, param1: android.net.wifi.p2p.WifiP2pManager.ActionListener): void;
					public removeServiceRequest(param0: android.net.wifi.p2p.WifiP2pManager.Channel, param1: android.net.wifi.p2p.nsd.WifiP2pServiceRequest, param2: android.net.wifi.p2p.WifiP2pManager.ActionListener): void;
					public setUpnpServiceResponseListener(param0: android.net.wifi.p2p.WifiP2pManager.Channel, param1: android.net.wifi.p2p.WifiP2pManager.UpnpServiceResponseListener): void;
					public removeGroup(param0: android.net.wifi.p2p.WifiP2pManager.Channel, param1: android.net.wifi.p2p.WifiP2pManager.ActionListener): void;
					public requestPeers(param0: android.net.wifi.p2p.WifiP2pManager.Channel, param1: android.net.wifi.p2p.WifiP2pManager.PeerListListener): void;
				}
				export module WifiP2pManager {
					export class ActionListener extends java.lang.Object {
						public static class: java.lang.Class<android.net.wifi.p2p.WifiP2pManager.ActionListener>;
						/**
						 * Constructs a new instance of the android.net.wifi.p2p.WifiP2pManager$ActionListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
						 */
						public constructor(implementation: {
							onSuccess(): void;
							onFailure(param0: number): void;
						});
						public constructor();
						public onSuccess(): void;
						public onFailure(param0: number): void;
					}
					export class Channel extends java.lang.Object {
						public static class: java.lang.Class<android.net.wifi.p2p.WifiP2pManager.Channel>;
					}
					export class ChannelListener extends java.lang.Object {
						public static class: java.lang.Class<android.net.wifi.p2p.WifiP2pManager.ChannelListener>;
						/**
						 * Constructs a new instance of the android.net.wifi.p2p.WifiP2pManager$ChannelListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
						 */
						public constructor(implementation: {
							onChannelDisconnected(): void;
						});
						public constructor();
						public onChannelDisconnected(): void;
					}
					export class ConnectionInfoListener extends java.lang.Object {
						public static class: java.lang.Class<android.net.wifi.p2p.WifiP2pManager.ConnectionInfoListener>;
						/**
						 * Constructs a new instance of the android.net.wifi.p2p.WifiP2pManager$ConnectionInfoListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
						 */
						public constructor(implementation: {
							onConnectionInfoAvailable(param0: android.net.wifi.p2p.WifiP2pInfo): void;
						});
						public constructor();
						public onConnectionInfoAvailable(param0: android.net.wifi.p2p.WifiP2pInfo): void;
					}
					export class DnsSdServiceResponseListener extends java.lang.Object {
						public static class: java.lang.Class<android.net.wifi.p2p.WifiP2pManager.DnsSdServiceResponseListener>;
						/**
						 * Constructs a new instance of the android.net.wifi.p2p.WifiP2pManager$DnsSdServiceResponseListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
						 */
						public constructor(implementation: {
							onDnsSdServiceAvailable(param0: string, param1: string, param2: android.net.wifi.p2p.WifiP2pDevice): void;
						});
						public constructor();
						public onDnsSdServiceAvailable(param0: string, param1: string, param2: android.net.wifi.p2p.WifiP2pDevice): void;
					}
					export class DnsSdTxtRecordListener extends java.lang.Object {
						public static class: java.lang.Class<android.net.wifi.p2p.WifiP2pManager.DnsSdTxtRecordListener>;
						/**
						 * Constructs a new instance of the android.net.wifi.p2p.WifiP2pManager$DnsSdTxtRecordListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
						 */
						public constructor(implementation: {
							onDnsSdTxtRecordAvailable(param0: string, param1: java.util.Map<string,string>, param2: android.net.wifi.p2p.WifiP2pDevice): void;
						});
						public constructor();
						public onDnsSdTxtRecordAvailable(param0: string, param1: java.util.Map<string,string>, param2: android.net.wifi.p2p.WifiP2pDevice): void;
					}
					export class GroupInfoListener extends java.lang.Object {
						public static class: java.lang.Class<android.net.wifi.p2p.WifiP2pManager.GroupInfoListener>;
						/**
						 * Constructs a new instance of the android.net.wifi.p2p.WifiP2pManager$GroupInfoListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
						 */
						public constructor(implementation: {
							onGroupInfoAvailable(param0: android.net.wifi.p2p.WifiP2pGroup): void;
						});
						public constructor();
						public onGroupInfoAvailable(param0: android.net.wifi.p2p.WifiP2pGroup): void;
					}
					export class PeerListListener extends java.lang.Object {
						public static class: java.lang.Class<android.net.wifi.p2p.WifiP2pManager.PeerListListener>;
						/**
						 * Constructs a new instance of the android.net.wifi.p2p.WifiP2pManager$PeerListListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
						 */
						public constructor(implementation: {
							onPeersAvailable(param0: android.net.wifi.p2p.WifiP2pDeviceList): void;
						});
						public constructor();
						public onPeersAvailable(param0: android.net.wifi.p2p.WifiP2pDeviceList): void;
					}
					export class ServiceResponseListener extends java.lang.Object {
						public static class: java.lang.Class<android.net.wifi.p2p.WifiP2pManager.ServiceResponseListener>;
						/**
						 * Constructs a new instance of the android.net.wifi.p2p.WifiP2pManager$ServiceResponseListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
						 */
						public constructor(implementation: {
							onServiceAvailable(param0: number, param1: native.Array<number>, param2: android.net.wifi.p2p.WifiP2pDevice): void;
						});
						public constructor();
						public onServiceAvailable(param0: number, param1: native.Array<number>, param2: android.net.wifi.p2p.WifiP2pDevice): void;
					}
					export class UpnpServiceResponseListener extends java.lang.Object {
						public static class: java.lang.Class<android.net.wifi.p2p.WifiP2pManager.UpnpServiceResponseListener>;
						/**
						 * Constructs a new instance of the android.net.wifi.p2p.WifiP2pManager$UpnpServiceResponseListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
						 */
						public constructor(implementation: {
							onUpnpServiceAvailable(param0: java.util.List<string>, param1: android.net.wifi.p2p.WifiP2pDevice): void;
						});
						public constructor();
						public onUpnpServiceAvailable(param0: java.util.List<string>, param1: android.net.wifi.p2p.WifiP2pDevice): void;
					}
				}
			}
		}
	}
}

declare module android {
	export module net {
		export module wifi {
			export module p2p {
				export module nsd {
					export class WifiP2pDnsSdServiceInfo extends android.net.wifi.p2p.nsd.WifiP2pServiceInfo {
						public static class: java.lang.Class<android.net.wifi.p2p.nsd.WifiP2pDnsSdServiceInfo>;
						public describeContents(): number;
						public static newInstance(param0: string, param1: string, param2: java.util.Map<string,string>): android.net.wifi.p2p.nsd.WifiP2pDnsSdServiceInfo;
						public writeToParcel(param0: android.os.Parcel, param1: number): void;
					}
				}
			}
		}
	}
}

declare module android {
	export module net {
		export module wifi {
			export module p2p {
				export module nsd {
					export class WifiP2pDnsSdServiceRequest extends android.net.wifi.p2p.nsd.WifiP2pServiceRequest {
						public static class: java.lang.Class<android.net.wifi.p2p.nsd.WifiP2pDnsSdServiceRequest>;
						public describeContents(): number;
						public static newInstance(param0: string): android.net.wifi.p2p.nsd.WifiP2pDnsSdServiceRequest;
						public writeToParcel(param0: android.os.Parcel, param1: number): void;
						public static newInstance(param0: string, param1: string): android.net.wifi.p2p.nsd.WifiP2pDnsSdServiceRequest;
						public static newInstance(param0: number, param1: string): android.net.wifi.p2p.nsd.WifiP2pServiceRequest;
						public static newInstance(param0: number): android.net.wifi.p2p.nsd.WifiP2pServiceRequest;
						public static newInstance(): android.net.wifi.p2p.nsd.WifiP2pDnsSdServiceRequest;
					}
				}
			}
		}
	}
}

declare module android {
	export module net {
		export module wifi {
			export module p2p {
				export module nsd {
					export class WifiP2pServiceInfo extends java.lang.Object implements android.os.Parcelable {
						public static class: java.lang.Class<android.net.wifi.p2p.nsd.WifiP2pServiceInfo>;
						public static SERVICE_TYPE_ALL: number;
						public static SERVICE_TYPE_BONJOUR: number;
						public static SERVICE_TYPE_UPNP: number;
						public static SERVICE_TYPE_VENDOR_SPECIFIC: number;
						public describeContents(): number;
						public writeToParcel(param0: android.os.Parcel, param1: number): void;
						public equals(param0: any): boolean;
						public hashCode(): number;
					}
				}
			}
		}
	}
}

declare module android {
	export module net {
		export module wifi {
			export module p2p {
				export module nsd {
					export class WifiP2pServiceRequest extends java.lang.Object implements android.os.Parcelable {
						public static class: java.lang.Class<android.net.wifi.p2p.nsd.WifiP2pServiceRequest>;
						public describeContents(): number;
						public writeToParcel(param0: android.os.Parcel, param1: number): void;
						public static newInstance(param0: number, param1: string): android.net.wifi.p2p.nsd.WifiP2pServiceRequest;
						public equals(param0: any): boolean;
						public hashCode(): number;
						public static newInstance(param0: number): android.net.wifi.p2p.nsd.WifiP2pServiceRequest;
					}
				}
			}
		}
	}
}

declare module android {
	export module net {
		export module wifi {
			export module p2p {
				export module nsd {
					export class WifiP2pUpnpServiceInfo extends android.net.wifi.p2p.nsd.WifiP2pServiceInfo {
						public static class: java.lang.Class<android.net.wifi.p2p.nsd.WifiP2pUpnpServiceInfo>;
						public static newInstance(param0: string, param1: string, param2: java.util.List<string>): android.net.wifi.p2p.nsd.WifiP2pUpnpServiceInfo;
						public describeContents(): number;
						public writeToParcel(param0: android.os.Parcel, param1: number): void;
					}
				}
			}
		}
	}
}

declare module android {
	export module net {
		export module wifi {
			export module p2p {
				export module nsd {
					export class WifiP2pUpnpServiceRequest extends android.net.wifi.p2p.nsd.WifiP2pServiceRequest {
						public static class: java.lang.Class<android.net.wifi.p2p.nsd.WifiP2pUpnpServiceRequest>;
						public describeContents(): number;
						public static newInstance(): android.net.wifi.p2p.nsd.WifiP2pUpnpServiceRequest;
						public writeToParcel(param0: android.os.Parcel, param1: number): void;
						public static newInstance(param0: number, param1: string): android.net.wifi.p2p.nsd.WifiP2pServiceRequest;
						public static newInstance(param0: string): android.net.wifi.p2p.nsd.WifiP2pUpnpServiceRequest;
						public static newInstance(param0: number): android.net.wifi.p2p.nsd.WifiP2pServiceRequest;
					}
				}
			}
		}
	}
}

declare module android {
	export module nfc {
		export class FormatException extends java.lang.Exception {
			public static class: java.lang.Class<android.nfc.FormatException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module android {
	export module nfc {
		export class NdefMessage extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.nfc.NdefMessage>;
			public static CREATOR: android.os.Parcelable.Creator<android.nfc.NdefMessage>;
			public constructor(param0: android.nfc.NdefRecord, param1: native.Array<android.nfc.NdefRecord>);
			public equals(param0: any): boolean;
			public getRecords(): native.Array<android.nfc.NdefRecord>;
			public toString(): string;
			public toByteArray(): native.Array<number>;
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public constructor(param0: native.Array<number>);
			public getByteArrayLength(): number;
			public constructor(param0: native.Array<android.nfc.NdefRecord>);
			public hashCode(): number;
		}
	}
}

declare module android {
	export module nfc {
		export class NdefRecord extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.nfc.NdefRecord>;
			public static TNF_EMPTY: number;
			public static TNF_WELL_KNOWN: number;
			public static TNF_MIME_MEDIA: number;
			public static TNF_ABSOLUTE_URI: number;
			public static TNF_EXTERNAL_TYPE: number;
			public static TNF_UNKNOWN: number;
			public static TNF_UNCHANGED: number;
			public static RTD_TEXT: native.Array<number>;
			public static RTD_URI: native.Array<number>;
			public static RTD_SMART_POSTER: native.Array<number>;
			public static RTD_ALTERNATIVE_CARRIER: native.Array<number>;
			public static RTD_HANDOVER_CARRIER: native.Array<number>;
			public static RTD_HANDOVER_REQUEST: native.Array<number>;
			public static RTD_HANDOVER_SELECT: native.Array<number>;
			public static CREATOR: android.os.Parcelable.Creator<android.nfc.NdefRecord>;
			public equals(param0: any): boolean;
			public static createMime(param0: string, param1: native.Array<number>): android.nfc.NdefRecord;
			public static createExternal(param0: string, param1: string, param2: native.Array<number>): android.nfc.NdefRecord;
			public getPayload(): native.Array<number>;
			public constructor(param0: number, param1: native.Array<number>, param2: native.Array<number>, param3: native.Array<number>);
			public getId(): native.Array<number>;
			public static createApplicationRecord(param0: string): android.nfc.NdefRecord;
			public static createUri(param0: string): android.nfc.NdefRecord;
			public getTnf(): number;
			public toString(): string;
			public static createUri(param0: android.net.Uri): android.nfc.NdefRecord;
			public toUri(): android.net.Uri;
			/** @deprecated */
			public toByteArray(): native.Array<number>;
			public describeContents(): number;
			public toMimeType(): string;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public getType(): native.Array<number>;
			/** @deprecated */
			public constructor(param0: native.Array<number>);
			public hashCode(): number;
		}
	}
}

declare module android {
	export module nfc {
		export class NfcAdapter extends java.lang.Object {
			public static class: java.lang.Class<android.nfc.NfcAdapter>;
			public static ACTION_NDEF_DISCOVERED: string;
			public static ACTION_TECH_DISCOVERED: string;
			public static ACTION_TAG_DISCOVERED: string;
			public static EXTRA_TAG: string;
			public static EXTRA_NDEF_MESSAGES: string;
			public static EXTRA_ID: string;
			public static ACTION_ADAPTER_STATE_CHANGED: string;
			public static EXTRA_ADAPTER_STATE: string;
			public static STATE_OFF: number;
			public static STATE_TURNING_ON: number;
			public static STATE_ON: number;
			public static STATE_TURNING_OFF: number;
			public enableForegroundDispatch(param0: android.app.Activity, param1: android.app.PendingIntent, param2: native.Array<android.content.IntentFilter>, param3: native.Array<native.Array<string>>): void;
			public disableForegroundDispatch(param0: android.app.Activity): void;
			public static getDefaultAdapter(param0: android.content.Context): android.nfc.NfcAdapter;
			public isEnabled(): boolean;
			public setNdefPushMessageCallback(param0: android.nfc.NfcAdapter.CreateNdefMessageCallback, param1: android.app.Activity, param2: native.Array<android.app.Activity>): void;
			public setBeamPushUris(param0: native.Array<android.net.Uri>, param1: android.app.Activity): void;
			public setNdefPushMessage(param0: android.nfc.NdefMessage, param1: android.app.Activity, param2: native.Array<android.app.Activity>): void;
			/** @deprecated */
			public enableForegroundNdefPush(param0: android.app.Activity, param1: android.nfc.NdefMessage): void;
			public isNdefPushEnabled(): boolean;
			public setOnNdefPushCompleteCallback(param0: android.nfc.NfcAdapter.OnNdefPushCompleteCallback, param1: android.app.Activity, param2: native.Array<android.app.Activity>): void;
			/** @deprecated */
			public disableForegroundNdefPush(param0: android.app.Activity): void;
			public setBeamPushUrisCallback(param0: android.nfc.NfcAdapter.CreateBeamUrisCallback, param1: android.app.Activity): void;
		}
		export module NfcAdapter {
			export class CreateBeamUrisCallback extends java.lang.Object {
				public static class: java.lang.Class<android.nfc.NfcAdapter.CreateBeamUrisCallback>;
				/**
				 * Constructs a new instance of the android.nfc.NfcAdapter$CreateBeamUrisCallback interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					createBeamUris(param0: android.nfc.NfcEvent): native.Array<android.net.Uri>;
				});
				public constructor();
				public createBeamUris(param0: android.nfc.NfcEvent): native.Array<android.net.Uri>;
			}
			export class CreateNdefMessageCallback extends java.lang.Object {
				public static class: java.lang.Class<android.nfc.NfcAdapter.CreateNdefMessageCallback>;
				/**
				 * Constructs a new instance of the android.nfc.NfcAdapter$CreateNdefMessageCallback interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					createNdefMessage(param0: android.nfc.NfcEvent): android.nfc.NdefMessage;
				});
				public constructor();
				public createNdefMessage(param0: android.nfc.NfcEvent): android.nfc.NdefMessage;
			}
			export class OnNdefPushCompleteCallback extends java.lang.Object {
				public static class: java.lang.Class<android.nfc.NfcAdapter.OnNdefPushCompleteCallback>;
				/**
				 * Constructs a new instance of the android.nfc.NfcAdapter$OnNdefPushCompleteCallback interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onNdefPushComplete(param0: android.nfc.NfcEvent): void;
				});
				public constructor();
				public onNdefPushComplete(param0: android.nfc.NfcEvent): void;
			}
		}
	}
}

declare module android {
	export module nfc {
		export class NfcEvent extends java.lang.Object {
			public static class: java.lang.Class<android.nfc.NfcEvent>;
			public nfcAdapter: android.nfc.NfcAdapter;
		}
	}
}

declare module android {
	export module nfc {
		export class NfcManager extends java.lang.Object {
			public static class: java.lang.Class<android.nfc.NfcManager>;
			public getDefaultAdapter(): android.nfc.NfcAdapter;
		}
	}
}

declare module android {
	export module nfc {
		export class Tag extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.nfc.Tag>;
			public static CREATOR: android.os.Parcelable.Creator<android.nfc.Tag>;
			public getTechList(): native.Array<string>;
			public toString(): string;
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public getId(): native.Array<number>;
		}
	}
}

declare module android {
	export module nfc {
		export class TagLostException extends java.io.IOException {
			public static class: java.lang.Class<android.nfc.TagLostException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module android {
	export module nfc {
		export module tech {
			export abstract class BasicTagTechnology extends java.lang.Object implements android.nfc.tech.TagTechnology {
				public static class: java.lang.Class<android.nfc.tech.BasicTagTechnology>;
				public isConnected(): boolean;
				public close(): void;
				public connect(): void;
				public getTag(): android.nfc.Tag;
			}
		}
	}
}

declare module android {
	export module nfc {
		export module tech {
			export class IsoDep extends android.nfc.tech.BasicTagTechnology {
				public static class: java.lang.Class<android.nfc.tech.IsoDep>;
				public transceive(param0: native.Array<number>): native.Array<number>;
				public getHiLayerResponse(): native.Array<number>;
				public close(): void;
				public isConnected(): boolean;
				public static get(param0: android.nfc.Tag): android.nfc.tech.IsoDep;
				public connect(): void;
				public getHistoricalBytes(): native.Array<number>;
				public getTimeout(): number;
				public getMaxTransceiveLength(): number;
				public isExtendedLengthApduSupported(): boolean;
				public setTimeout(param0: number): void;
				public getTag(): android.nfc.Tag;
			}
		}
	}
}

declare module android {
	export module nfc {
		export module tech {
			export class MifareClassic extends android.nfc.tech.BasicTagTechnology {
				public static class: java.lang.Class<android.nfc.tech.MifareClassic>;
				public static KEY_DEFAULT: native.Array<number>;
				public static KEY_MIFARE_APPLICATION_DIRECTORY: native.Array<number>;
				public static KEY_NFC_FORUM: native.Array<number>;
				public static TYPE_UNKNOWN: number;
				public static TYPE_CLASSIC: number;
				public static TYPE_PLUS: number;
				public static TYPE_PRO: number;
				public static SIZE_1K: number;
				public static SIZE_2K: number;
				public static SIZE_4K: number;
				public static SIZE_MINI: number;
				public static BLOCK_SIZE: number;
				public close(): void;
				public getType(): number;
				public getSectorCount(): number;
				public getBlockCount(): number;
				public sectorToBlock(param0: number): number;
				public readBlock(param0: number): native.Array<number>;
				public transfer(param0: number): void;
				public getTimeout(): number;
				public getMaxTransceiveLength(): number;
				public setTimeout(param0: number): void;
				public authenticateSectorWithKeyA(param0: number, param1: native.Array<number>): boolean;
				public restore(param0: number): void;
				public increment(param0: number, param1: number): void;
				public decrement(param0: number, param1: number): void;
				public authenticateSectorWithKeyB(param0: number, param1: native.Array<number>): boolean;
				public transceive(param0: native.Array<number>): native.Array<number>;
				public isConnected(): boolean;
				public connect(): void;
				public blockToSector(param0: number): number;
				public getSize(): number;
				public getBlockCountInSector(param0: number): number;
				public writeBlock(param0: number, param1: native.Array<number>): void;
				public getTag(): android.nfc.Tag;
				public static get(param0: android.nfc.Tag): android.nfc.tech.MifareClassic;
			}
		}
	}
}

declare module android {
	export module nfc {
		export module tech {
			export class MifareUltralight extends android.nfc.tech.BasicTagTechnology {
				public static class: java.lang.Class<android.nfc.tech.MifareUltralight>;
				public static TYPE_UNKNOWN: number;
				public static TYPE_ULTRALIGHT: number;
				public static TYPE_ULTRALIGHT_C: number;
				public static PAGE_SIZE: number;
				public transceive(param0: native.Array<number>): native.Array<number>;
				public close(): void;
				public isConnected(): boolean;
				public readPages(param0: number): native.Array<number>;
				public connect(): void;
				public static get(param0: android.nfc.Tag): android.nfc.tech.MifareUltralight;
				public getType(): number;
				public getTimeout(): number;
				public writePage(param0: number, param1: native.Array<number>): void;
				public getMaxTransceiveLength(): number;
				public setTimeout(param0: number): void;
				public getTag(): android.nfc.Tag;
			}
		}
	}
}

declare module android {
	export module nfc {
		export module tech {
			export class Ndef extends android.nfc.tech.BasicTagTechnology {
				public static class: java.lang.Class<android.nfc.tech.Ndef>;
				public static NFC_FORUM_TYPE_1: string;
				public static NFC_FORUM_TYPE_2: string;
				public static NFC_FORUM_TYPE_3: string;
				public static NFC_FORUM_TYPE_4: string;
				public static MIFARE_CLASSIC: string;
				public getType(): string;
				public getCachedNdefMessage(): android.nfc.NdefMessage;
				public close(): void;
				public static get(param0: android.nfc.Tag): android.nfc.tech.Ndef;
				public makeReadOnly(): boolean;
				public isConnected(): boolean;
				public connect(): void;
				public writeNdefMessage(param0: android.nfc.NdefMessage): void;
				public getNdefMessage(): android.nfc.NdefMessage;
				public isWritable(): boolean;
				public getMaxSize(): number;
				public getTag(): android.nfc.Tag;
				public canMakeReadOnly(): boolean;
			}
		}
	}
}

declare module android {
	export module nfc {
		export module tech {
			export class NdefFormatable extends android.nfc.tech.BasicTagTechnology {
				public static class: java.lang.Class<android.nfc.tech.NdefFormatable>;
				public format(param0: android.nfc.NdefMessage): void;
				public static get(param0: android.nfc.Tag): android.nfc.tech.NdefFormatable;
				public close(): void;
				public isConnected(): boolean;
				public connect(): void;
				public getTag(): android.nfc.Tag;
				public formatReadOnly(param0: android.nfc.NdefMessage): void;
			}
		}
	}
}

declare module android {
	export module nfc {
		export module tech {
			export class NfcA extends android.nfc.tech.BasicTagTechnology {
				public static class: java.lang.Class<android.nfc.tech.NfcA>;
				public transceive(param0: native.Array<number>): native.Array<number>;
				public close(): void;
				public isConnected(): boolean;
				public static get(param0: android.nfc.Tag): android.nfc.tech.NfcA;
				public connect(): void;
				public getAtqa(): native.Array<number>;
				public getSak(): number;
				public getTimeout(): number;
				public getMaxTransceiveLength(): number;
				public setTimeout(param0: number): void;
				public getTag(): android.nfc.Tag;
			}
		}
	}
}

declare module android {
	export module nfc {
		export module tech {
			export class NfcB extends android.nfc.tech.BasicTagTechnology {
				public static class: java.lang.Class<android.nfc.tech.NfcB>;
				public getProtocolInfo(): native.Array<number>;
				public transceive(param0: native.Array<number>): native.Array<number>;
				public close(): void;
				public isConnected(): boolean;
				public static get(param0: android.nfc.Tag): android.nfc.tech.NfcB;
				public connect(): void;
				public getApplicationData(): native.Array<number>;
				public getMaxTransceiveLength(): number;
				public getTag(): android.nfc.Tag;
			}
		}
	}
}

declare module android {
	export module nfc {
		export module tech {
			export class NfcBarcode extends android.nfc.tech.BasicTagTechnology {
				public static class: java.lang.Class<android.nfc.tech.NfcBarcode>;
				public static TYPE_KOVIO: number;
				public static TYPE_UNKNOWN: number;
				public close(): void;
				public isConnected(): boolean;
				public connect(): void;
				public getType(): number;
				public getBarcode(): native.Array<number>;
				public static get(param0: android.nfc.Tag): android.nfc.tech.NfcBarcode;
				public getTag(): android.nfc.Tag;
			}
		}
	}
}

declare module android {
	export module nfc {
		export module tech {
			export class NfcF extends android.nfc.tech.BasicTagTechnology {
				public static class: java.lang.Class<android.nfc.tech.NfcF>;
				public transceive(param0: native.Array<number>): native.Array<number>;
				public close(): void;
				public isConnected(): boolean;
				public getSystemCode(): native.Array<number>;
				public connect(): void;
				public getManufacturer(): native.Array<number>;
				public getTimeout(): number;
				public getMaxTransceiveLength(): number;
				public setTimeout(param0: number): void;
				public getTag(): android.nfc.Tag;
				public static get(param0: android.nfc.Tag): android.nfc.tech.NfcF;
			}
		}
	}
}

declare module android {
	export module nfc {
		export module tech {
			export class NfcV extends android.nfc.tech.BasicTagTechnology {
				public static class: java.lang.Class<android.nfc.tech.NfcV>;
				public getDsfId(): number;
				public transceive(param0: native.Array<number>): native.Array<number>;
				public close(): void;
				public isConnected(): boolean;
				public connect(): void;
				public getResponseFlags(): number;
				public getMaxTransceiveLength(): number;
				public getTag(): android.nfc.Tag;
				public static get(param0: android.nfc.Tag): android.nfc.tech.NfcV;
			}
		}
	}
}

declare module android {
	export module nfc {
		export module tech {
			export class TagTechnology extends java.lang.Object implements java.io.Closeable {
				public static class: java.lang.Class<android.nfc.tech.TagTechnology>;
				/**
				 * Constructs a new instance of the android.nfc.tech.TagTechnology interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getTag(): android.nfc.Tag;
					connect(): void;
					close(): void;
					isConnected(): boolean;
					close(): void;
				});
				public constructor();
				public close(): void;
				public isConnected(): boolean;
				public connect(): void;
				public getTag(): android.nfc.Tag;
			}
		}
	}
}

declare module android {
	export module opengl {
		export class EGL14 extends java.lang.Object {
			public static class: java.lang.Class<android.opengl.EGL14>;
			public static EGL_DEFAULT_DISPLAY: number;
			public static EGL_NO_CONTEXT: android.opengl.EGLContext;
			public static EGL_NO_DISPLAY: android.opengl.EGLDisplay;
			public static EGL_NO_SURFACE: android.opengl.EGLSurface;
			public static EGL_FALSE: number;
			public static EGL_TRUE: number;
			public static EGL_SUCCESS: number;
			public static EGL_NOT_INITIALIZED: number;
			public static EGL_BAD_ACCESS: number;
			public static EGL_BAD_ALLOC: number;
			public static EGL_BAD_ATTRIBUTE: number;
			public static EGL_BAD_CONFIG: number;
			public static EGL_BAD_CONTEXT: number;
			public static EGL_BAD_CURRENT_SURFACE: number;
			public static EGL_BAD_DISPLAY: number;
			public static EGL_BAD_MATCH: number;
			public static EGL_BAD_NATIVE_PIXMAP: number;
			public static EGL_BAD_NATIVE_WINDOW: number;
			public static EGL_BAD_PARAMETER: number;
			public static EGL_BAD_SURFACE: number;
			public static EGL_CONTEXT_LOST: number;
			public static EGL_BUFFER_SIZE: number;
			public static EGL_ALPHA_SIZE: number;
			public static EGL_BLUE_SIZE: number;
			public static EGL_GREEN_SIZE: number;
			public static EGL_RED_SIZE: number;
			public static EGL_DEPTH_SIZE: number;
			public static EGL_STENCIL_SIZE: number;
			public static EGL_CONFIG_CAVEAT: number;
			public static EGL_CONFIG_ID: number;
			public static EGL_LEVEL: number;
			public static EGL_MAX_PBUFFER_HEIGHT: number;
			public static EGL_MAX_PBUFFER_PIXELS: number;
			public static EGL_MAX_PBUFFER_WIDTH: number;
			public static EGL_NATIVE_RENDERABLE: number;
			public static EGL_NATIVE_VISUAL_ID: number;
			public static EGL_NATIVE_VISUAL_TYPE: number;
			public static EGL_SAMPLES: number;
			public static EGL_SAMPLE_BUFFERS: number;
			public static EGL_SURFACE_TYPE: number;
			public static EGL_TRANSPARENT_TYPE: number;
			public static EGL_TRANSPARENT_BLUE_VALUE: number;
			public static EGL_TRANSPARENT_GREEN_VALUE: number;
			public static EGL_TRANSPARENT_RED_VALUE: number;
			public static EGL_NONE: number;
			public static EGL_BIND_TO_TEXTURE_RGB: number;
			public static EGL_BIND_TO_TEXTURE_RGBA: number;
			public static EGL_MIN_SWAP_INTERVAL: number;
			public static EGL_MAX_SWAP_INTERVAL: number;
			public static EGL_LUMINANCE_SIZE: number;
			public static EGL_ALPHA_MASK_SIZE: number;
			public static EGL_COLOR_BUFFER_TYPE: number;
			public static EGL_RENDERABLE_TYPE: number;
			public static EGL_MATCH_NATIVE_PIXMAP: number;
			public static EGL_CONFORMANT: number;
			public static EGL_SLOW_CONFIG: number;
			public static EGL_NON_CONFORMANT_CONFIG: number;
			public static EGL_TRANSPARENT_RGB: number;
			public static EGL_RGB_BUFFER: number;
			public static EGL_LUMINANCE_BUFFER: number;
			public static EGL_NO_TEXTURE: number;
			public static EGL_TEXTURE_RGB: number;
			public static EGL_TEXTURE_RGBA: number;
			public static EGL_TEXTURE_2D: number;
			public static EGL_PBUFFER_BIT: number;
			public static EGL_PIXMAP_BIT: number;
			public static EGL_WINDOW_BIT: number;
			public static EGL_VG_COLORSPACE_LINEAR_BIT: number;
			public static EGL_VG_ALPHA_FORMAT_PRE_BIT: number;
			public static EGL_MULTISAMPLE_RESOLVE_BOX_BIT: number;
			public static EGL_SWAP_BEHAVIOR_PRESERVED_BIT: number;
			public static EGL_OPENGL_ES_BIT: number;
			public static EGL_OPENVG_BIT: number;
			public static EGL_OPENGL_ES2_BIT: number;
			public static EGL_OPENGL_BIT: number;
			public static EGL_VENDOR: number;
			public static EGL_VERSION: number;
			public static EGL_EXTENSIONS: number;
			public static EGL_CLIENT_APIS: number;
			public static EGL_HEIGHT: number;
			public static EGL_WIDTH: number;
			public static EGL_LARGEST_PBUFFER: number;
			public static EGL_TEXTURE_FORMAT: number;
			public static EGL_TEXTURE_TARGET: number;
			public static EGL_MIPMAP_TEXTURE: number;
			public static EGL_MIPMAP_LEVEL: number;
			public static EGL_RENDER_BUFFER: number;
			public static EGL_VG_COLORSPACE: number;
			public static EGL_VG_ALPHA_FORMAT: number;
			public static EGL_HORIZONTAL_RESOLUTION: number;
			public static EGL_VERTICAL_RESOLUTION: number;
			public static EGL_PIXEL_ASPECT_RATIO: number;
			public static EGL_SWAP_BEHAVIOR: number;
			public static EGL_MULTISAMPLE_RESOLVE: number;
			public static EGL_BACK_BUFFER: number;
			public static EGL_SINGLE_BUFFER: number;
			public static EGL_VG_COLORSPACE_sRGB: number;
			public static EGL_VG_COLORSPACE_LINEAR: number;
			public static EGL_VG_ALPHA_FORMAT_NONPRE: number;
			public static EGL_VG_ALPHA_FORMAT_PRE: number;
			public static EGL_DISPLAY_SCALING: number;
			public static EGL_BUFFER_PRESERVED: number;
			public static EGL_BUFFER_DESTROYED: number;
			public static EGL_OPENVG_IMAGE: number;
			public static EGL_CONTEXT_CLIENT_TYPE: number;
			public static EGL_CONTEXT_CLIENT_VERSION: number;
			public static EGL_MULTISAMPLE_RESOLVE_DEFAULT: number;
			public static EGL_MULTISAMPLE_RESOLVE_BOX: number;
			public static EGL_OPENGL_ES_API: number;
			public static EGL_OPENVG_API: number;
			public static EGL_OPENGL_API: number;
			public static EGL_DRAW: number;
			public static EGL_READ: number;
			public static EGL_CORE_NATIVE_ENGINE: number;
			public static eglReleaseTexImage(param0: android.opengl.EGLDisplay, param1: android.opengl.EGLSurface, param2: number): boolean;
			public static eglTerminate(param0: android.opengl.EGLDisplay): boolean;
			public static eglCreatePixmapSurface(param0: android.opengl.EGLDisplay, param1: android.opengl.EGLConfig, param2: number, param3: native.Array<number>, param4: number): android.opengl.EGLSurface;
			public static eglCreateContext(param0: android.opengl.EGLDisplay, param1: android.opengl.EGLConfig, param2: android.opengl.EGLContext, param3: native.Array<number>, param4: number): android.opengl.EGLContext;
			public static eglWaitClient(): boolean;
			public static eglGetCurrentContext(): android.opengl.EGLContext;
			public static eglGetDisplay(param0: number): android.opengl.EGLDisplay;
			public static eglWaitGL(): boolean;
			public static eglGetCurrentSurface(param0: number): android.opengl.EGLSurface;
			public static eglCreateWindowSurface(param0: android.opengl.EGLDisplay, param1: android.opengl.EGLConfig, param2: any, param3: native.Array<number>, param4: number): android.opengl.EGLSurface;
			public static eglSwapInterval(param0: android.opengl.EGLDisplay, param1: number): boolean;
			public static eglSurfaceAttrib(param0: android.opengl.EGLDisplay, param1: android.opengl.EGLSurface, param2: number, param3: number): boolean;
			public static eglSwapBuffers(param0: android.opengl.EGLDisplay, param1: android.opengl.EGLSurface): boolean;
			public static eglDestroySurface(param0: android.opengl.EGLDisplay, param1: android.opengl.EGLSurface): boolean;
			public static eglMakeCurrent(param0: android.opengl.EGLDisplay, param1: android.opengl.EGLSurface, param2: android.opengl.EGLSurface, param3: android.opengl.EGLContext): boolean;
			public static eglQueryAPI(): number;
			public static eglCreatePbufferFromClientBuffer(param0: android.opengl.EGLDisplay, param1: number, param2: number, param3: android.opengl.EGLConfig, param4: native.Array<number>, param5: number): android.opengl.EGLSurface;
			public static eglQueryString(param0: android.opengl.EGLDisplay, param1: number): string;
			public static eglWaitNative(param0: number): boolean;
			public static eglCreatePbufferSurface(param0: android.opengl.EGLDisplay, param1: android.opengl.EGLConfig, param2: native.Array<number>, param3: number): android.opengl.EGLSurface;
			public constructor();
			public static eglBindAPI(param0: number): boolean;
			public static eglInitialize(param0: android.opengl.EGLDisplay, param1: native.Array<number>, param2: number, param3: native.Array<number>, param4: number): boolean;
			public static eglGetError(): number;
			public static eglReleaseThread(): boolean;
			public static eglChooseConfig(param0: android.opengl.EGLDisplay, param1: native.Array<number>, param2: number, param3: native.Array<android.opengl.EGLConfig>, param4: number, param5: number, param6: native.Array<number>, param7: number): boolean;
			public static eglBindTexImage(param0: android.opengl.EGLDisplay, param1: android.opengl.EGLSurface, param2: number): boolean;
			public static eglQueryContext(param0: android.opengl.EGLDisplay, param1: android.opengl.EGLContext, param2: number, param3: native.Array<number>, param4: number): boolean;
			public static eglCopyBuffers(param0: android.opengl.EGLDisplay, param1: android.opengl.EGLSurface, param2: number): boolean;
			public static eglGetConfigs(param0: android.opengl.EGLDisplay, param1: native.Array<android.opengl.EGLConfig>, param2: number, param3: number, param4: native.Array<number>, param5: number): boolean;
			public static eglDestroyContext(param0: android.opengl.EGLDisplay, param1: android.opengl.EGLContext): boolean;
			public static eglGetConfigAttrib(param0: android.opengl.EGLDisplay, param1: android.opengl.EGLConfig, param2: number, param3: native.Array<number>, param4: number): boolean;
			public static eglQuerySurface(param0: android.opengl.EGLDisplay, param1: android.opengl.EGLSurface, param2: number, param3: native.Array<number>, param4: number): boolean;
			public static eglGetCurrentDisplay(): android.opengl.EGLDisplay;
		}
	}
}

declare module android {
	export module opengl {
		export class EGLConfig extends android.opengl.EGLObjectHandle {
			public static class: java.lang.Class<android.opengl.EGLConfig>;
			public equals(param0: any): boolean;
		}
	}
}

declare module android {
	export module opengl {
		export class EGLContext extends android.opengl.EGLObjectHandle {
			public static class: java.lang.Class<android.opengl.EGLContext>;
			public equals(param0: any): boolean;
		}
	}
}

declare module android {
	export module opengl {
		export class EGLDisplay extends android.opengl.EGLObjectHandle {
			public static class: java.lang.Class<android.opengl.EGLDisplay>;
			public equals(param0: any): boolean;
		}
	}
}

declare module android {
	export module opengl {
		export class EGLExt extends java.lang.Object {
			public static class: java.lang.Class<android.opengl.EGLExt>;
			public static EGL_CONTEXT_MAJOR_VERSION_KHR: number;
			public static EGL_CONTEXT_MINOR_VERSION_KHR: number;
			public static EGL_CONTEXT_FLAGS_KHR: number;
			public static EGL_OPENGL_ES3_BIT_KHR: number;
			public static eglPresentationTimeANDROID(param0: android.opengl.EGLDisplay, param1: android.opengl.EGLSurface, param2: number): boolean;
			public constructor();
		}
	}
}

declare module android {
	export module opengl {
		export abstract class EGLObjectHandle extends java.lang.Object {
			public static class: java.lang.Class<android.opengl.EGLObjectHandle>;
			public constructor(param0: number);
			public getHandle(): number;
			public hashCode(): number;
		}
	}
}

declare module android {
	export module opengl {
		export class EGLSurface extends android.opengl.EGLObjectHandle {
			public static class: java.lang.Class<android.opengl.EGLSurface>;
			public equals(param0: any): boolean;
		}
	}
}

declare module android {
	export module opengl {
		export class ETC1 extends java.lang.Object {
			public static class: java.lang.Class<android.opengl.ETC1>;
			public static ENCODED_BLOCK_SIZE: number;
			public static DECODED_BLOCK_SIZE: number;
			public static ETC_PKM_HEADER_SIZE: number;
			public static ETC1_RGB8_OES: number;
			public static encodeBlock(param0: java.nio.Buffer, param1: number, param2: java.nio.Buffer): void;
			public static formatHeader(param0: java.nio.Buffer, param1: number, param2: number): void;
			public static getEncodedDataSize(param0: number, param1: number): number;
			public static isValid(param0: java.nio.Buffer): boolean;
			public static getHeight(param0: java.nio.Buffer): number;
			public static decodeBlock(param0: java.nio.Buffer, param1: java.nio.Buffer): void;
			public static decodeImage(param0: java.nio.Buffer, param1: java.nio.Buffer, param2: number, param3: number, param4: number, param5: number): void;
			public static getWidth(param0: java.nio.Buffer): number;
			public constructor();
			public static encodeImage(param0: java.nio.Buffer, param1: number, param2: number, param3: number, param4: number, param5: java.nio.Buffer): void;
		}
	}
}

declare module android {
	export module opengl {
		export class ETC1Util extends java.lang.Object {
			public static class: java.lang.Class<android.opengl.ETC1Util>;
			public static isETC1Supported(): boolean;
			public static compressTexture(param0: java.nio.Buffer, param1: number, param2: number, param3: number, param4: number): android.opengl.ETC1Util.ETC1Texture;
			public static loadTexture(param0: number, param1: number, param2: number, param3: number, param4: number, param5: android.opengl.ETC1Util.ETC1Texture): void;
			public static createTexture(param0: java.io.InputStream): android.opengl.ETC1Util.ETC1Texture;
			public static writeTexture(param0: android.opengl.ETC1Util.ETC1Texture, param1: java.io.OutputStream): void;
			public constructor();
			public static loadTexture(param0: number, param1: number, param2: number, param3: number, param4: number, param5: java.io.InputStream): void;
		}
		export module ETC1Util {
			export class ETC1Texture extends java.lang.Object {
				public static class: java.lang.Class<android.opengl.ETC1Util.ETC1Texture>;
				public getWidth(): number;
				public getHeight(): number;
				public getData(): java.nio.ByteBuffer;
				public constructor(param0: number, param1: number, param2: java.nio.ByteBuffer);
			}
		}
	}
}

declare module android {
	export module opengl {
		export class GLDebugHelper extends java.lang.Object {
			public static class: java.lang.Class<android.opengl.GLDebugHelper>;
			public static CONFIG_CHECK_GL_ERROR: number;
			public static CONFIG_CHECK_THREAD: number;
			public static CONFIG_LOG_ARGUMENT_NAMES: number;
			public static ERROR_WRONG_THREAD: number;
			public static wrap(param0: javax.microedition.khronos.opengles.GL, param1: number, param2: java.io.Writer): javax.microedition.khronos.opengles.GL;
			public constructor();
			public static wrap(param0: javax.microedition.khronos.egl.EGL, param1: number, param2: java.io.Writer): javax.microedition.khronos.egl.EGL;
		}
	}
}

declare module android {
	export module opengl {
		export class GLES10 extends java.lang.Object {
			public static class: java.lang.Class<android.opengl.GLES10>;
			public static GL_ADD: number;
			public static GL_ALIASED_LINE_WIDTH_RANGE: number;
			public static GL_ALIASED_POINT_SIZE_RANGE: number;
			public static GL_ALPHA: number;
			public static GL_ALPHA_BITS: number;
			public static GL_ALPHA_TEST: number;
			public static GL_ALWAYS: number;
			public static GL_AMBIENT: number;
			public static GL_AMBIENT_AND_DIFFUSE: number;
			public static GL_AND: number;
			public static GL_AND_INVERTED: number;
			public static GL_AND_REVERSE: number;
			public static GL_BACK: number;
			public static GL_BLEND: number;
			public static GL_BLUE_BITS: number;
			public static GL_BYTE: number;
			public static GL_CCW: number;
			public static GL_CLAMP_TO_EDGE: number;
			public static GL_CLEAR: number;
			public static GL_COLOR_ARRAY: number;
			public static GL_COLOR_BUFFER_BIT: number;
			public static GL_COLOR_LOGIC_OP: number;
			public static GL_COLOR_MATERIAL: number;
			public static GL_COMPRESSED_TEXTURE_FORMATS: number;
			public static GL_CONSTANT_ATTENUATION: number;
			public static GL_COPY: number;
			public static GL_COPY_INVERTED: number;
			public static GL_CULL_FACE: number;
			public static GL_CW: number;
			public static GL_DECAL: number;
			public static GL_DECR: number;
			public static GL_DEPTH_BITS: number;
			public static GL_DEPTH_BUFFER_BIT: number;
			public static GL_DEPTH_TEST: number;
			public static GL_DIFFUSE: number;
			public static GL_DITHER: number;
			public static GL_DONT_CARE: number;
			public static GL_DST_ALPHA: number;
			public static GL_DST_COLOR: number;
			public static GL_EMISSION: number;
			public static GL_EQUAL: number;
			public static GL_EQUIV: number;
			public static GL_EXP: number;
			public static GL_EXP2: number;
			public static GL_EXTENSIONS: number;
			public static GL_FALSE: number;
			public static GL_FASTEST: number;
			public static GL_FIXED: number;
			public static GL_FLAT: number;
			public static GL_FLOAT: number;
			public static GL_FOG: number;
			public static GL_FOG_COLOR: number;
			public static GL_FOG_DENSITY: number;
			public static GL_FOG_END: number;
			public static GL_FOG_HINT: number;
			public static GL_FOG_MODE: number;
			public static GL_FOG_START: number;
			public static GL_FRONT: number;
			public static GL_FRONT_AND_BACK: number;
			public static GL_GEQUAL: number;
			public static GL_GREATER: number;
			public static GL_GREEN_BITS: number;
			public static GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES: number;
			public static GL_IMPLEMENTATION_COLOR_READ_TYPE_OES: number;
			public static GL_INCR: number;
			public static GL_INVALID_ENUM: number;
			public static GL_INVALID_OPERATION: number;
			public static GL_INVALID_VALUE: number;
			public static GL_INVERT: number;
			public static GL_KEEP: number;
			public static GL_LEQUAL: number;
			public static GL_LESS: number;
			public static GL_LIGHT_MODEL_AMBIENT: number;
			public static GL_LIGHT_MODEL_TWO_SIDE: number;
			public static GL_LIGHT0: number;
			public static GL_LIGHT1: number;
			public static GL_LIGHT2: number;
			public static GL_LIGHT3: number;
			public static GL_LIGHT4: number;
			public static GL_LIGHT5: number;
			public static GL_LIGHT6: number;
			public static GL_LIGHT7: number;
			public static GL_LIGHTING: number;
			public static GL_LINE_LOOP: number;
			public static GL_LINE_SMOOTH: number;
			public static GL_LINE_SMOOTH_HINT: number;
			public static GL_LINE_STRIP: number;
			public static GL_LINEAR: number;
			public static GL_LINEAR_ATTENUATION: number;
			public static GL_LINEAR_MIPMAP_LINEAR: number;
			public static GL_LINEAR_MIPMAP_NEAREST: number;
			public static GL_LINES: number;
			public static GL_LUMINANCE: number;
			public static GL_LUMINANCE_ALPHA: number;
			public static GL_MAX_ELEMENTS_INDICES: number;
			public static GL_MAX_ELEMENTS_VERTICES: number;
			public static GL_MAX_LIGHTS: number;
			public static GL_MAX_MODELVIEW_STACK_DEPTH: number;
			public static GL_MAX_PROJECTION_STACK_DEPTH: number;
			public static GL_MAX_TEXTURE_SIZE: number;
			public static GL_MAX_TEXTURE_STACK_DEPTH: number;
			public static GL_MAX_TEXTURE_UNITS: number;
			public static GL_MAX_VIEWPORT_DIMS: number;
			public static GL_MODELVIEW: number;
			public static GL_MODULATE: number;
			public static GL_MULTISAMPLE: number;
			public static GL_NAND: number;
			public static GL_NEAREST: number;
			public static GL_NEAREST_MIPMAP_LINEAR: number;
			public static GL_NEAREST_MIPMAP_NEAREST: number;
			public static GL_NEVER: number;
			public static GL_NICEST: number;
			public static GL_NO_ERROR: number;
			public static GL_NOOP: number;
			public static GL_NOR: number;
			public static GL_NORMAL_ARRAY: number;
			public static GL_NORMALIZE: number;
			public static GL_NOTEQUAL: number;
			public static GL_NUM_COMPRESSED_TEXTURE_FORMATS: number;
			public static GL_ONE: number;
			public static GL_ONE_MINUS_DST_ALPHA: number;
			public static GL_ONE_MINUS_DST_COLOR: number;
			public static GL_ONE_MINUS_SRC_ALPHA: number;
			public static GL_ONE_MINUS_SRC_COLOR: number;
			public static GL_OR: number;
			public static GL_OR_INVERTED: number;
			public static GL_OR_REVERSE: number;
			public static GL_OUT_OF_MEMORY: number;
			public static GL_PACK_ALIGNMENT: number;
			public static GL_PALETTE4_R5_G6_B5_OES: number;
			public static GL_PALETTE4_RGB5_A1_OES: number;
			public static GL_PALETTE4_RGB8_OES: number;
			public static GL_PALETTE4_RGBA4_OES: number;
			public static GL_PALETTE4_RGBA8_OES: number;
			public static GL_PALETTE8_R5_G6_B5_OES: number;
			public static GL_PALETTE8_RGB5_A1_OES: number;
			public static GL_PALETTE8_RGB8_OES: number;
			public static GL_PALETTE8_RGBA4_OES: number;
			public static GL_PALETTE8_RGBA8_OES: number;
			public static GL_PERSPECTIVE_CORRECTION_HINT: number;
			public static GL_POINT_SMOOTH: number;
			public static GL_POINT_SMOOTH_HINT: number;
			public static GL_POINTS: number;
			public static GL_POINT_FADE_THRESHOLD_SIZE: number;
			public static GL_POINT_SIZE: number;
			public static GL_POLYGON_OFFSET_FILL: number;
			public static GL_POLYGON_SMOOTH_HINT: number;
			public static GL_POSITION: number;
			public static GL_PROJECTION: number;
			public static GL_QUADRATIC_ATTENUATION: number;
			public static GL_RED_BITS: number;
			public static GL_RENDERER: number;
			public static GL_REPEAT: number;
			public static GL_REPLACE: number;
			public static GL_RESCALE_NORMAL: number;
			public static GL_RGB: number;
			public static GL_RGBA: number;
			public static GL_SAMPLE_ALPHA_TO_COVERAGE: number;
			public static GL_SAMPLE_ALPHA_TO_ONE: number;
			public static GL_SAMPLE_COVERAGE: number;
			public static GL_SCISSOR_TEST: number;
			public static GL_SET: number;
			public static GL_SHININESS: number;
			public static GL_SHORT: number;
			public static GL_SMOOTH: number;
			public static GL_SMOOTH_LINE_WIDTH_RANGE: number;
			public static GL_SMOOTH_POINT_SIZE_RANGE: number;
			public static GL_SPECULAR: number;
			public static GL_SPOT_CUTOFF: number;
			public static GL_SPOT_DIRECTION: number;
			public static GL_SPOT_EXPONENT: number;
			public static GL_SRC_ALPHA: number;
			public static GL_SRC_ALPHA_SATURATE: number;
			public static GL_SRC_COLOR: number;
			public static GL_STACK_OVERFLOW: number;
			public static GL_STACK_UNDERFLOW: number;
			public static GL_STENCIL_BITS: number;
			public static GL_STENCIL_BUFFER_BIT: number;
			public static GL_STENCIL_TEST: number;
			public static GL_SUBPIXEL_BITS: number;
			public static GL_TEXTURE: number;
			public static GL_TEXTURE_2D: number;
			public static GL_TEXTURE_COORD_ARRAY: number;
			public static GL_TEXTURE_ENV: number;
			public static GL_TEXTURE_ENV_COLOR: number;
			public static GL_TEXTURE_ENV_MODE: number;
			public static GL_TEXTURE_MAG_FILTER: number;
			public static GL_TEXTURE_MIN_FILTER: number;
			public static GL_TEXTURE_WRAP_S: number;
			public static GL_TEXTURE_WRAP_T: number;
			public static GL_TEXTURE0: number;
			public static GL_TEXTURE1: number;
			public static GL_TEXTURE2: number;
			public static GL_TEXTURE3: number;
			public static GL_TEXTURE4: number;
			public static GL_TEXTURE5: number;
			public static GL_TEXTURE6: number;
			public static GL_TEXTURE7: number;
			public static GL_TEXTURE8: number;
			public static GL_TEXTURE9: number;
			public static GL_TEXTURE10: number;
			public static GL_TEXTURE11: number;
			public static GL_TEXTURE12: number;
			public static GL_TEXTURE13: number;
			public static GL_TEXTURE14: number;
			public static GL_TEXTURE15: number;
			public static GL_TEXTURE16: number;
			public static GL_TEXTURE17: number;
			public static GL_TEXTURE18: number;
			public static GL_TEXTURE19: number;
			public static GL_TEXTURE20: number;
			public static GL_TEXTURE21: number;
			public static GL_TEXTURE22: number;
			public static GL_TEXTURE23: number;
			public static GL_TEXTURE24: number;
			public static GL_TEXTURE25: number;
			public static GL_TEXTURE26: number;
			public static GL_TEXTURE27: number;
			public static GL_TEXTURE28: number;
			public static GL_TEXTURE29: number;
			public static GL_TEXTURE30: number;
			public static GL_TEXTURE31: number;
			public static GL_TRIANGLE_FAN: number;
			public static GL_TRIANGLE_STRIP: number;
			public static GL_TRIANGLES: number;
			public static GL_TRUE: number;
			public static GL_UNPACK_ALIGNMENT: number;
			public static GL_UNSIGNED_BYTE: number;
			public static GL_UNSIGNED_SHORT: number;
			public static GL_UNSIGNED_SHORT_4_4_4_4: number;
			public static GL_UNSIGNED_SHORT_5_5_5_1: number;
			public static GL_UNSIGNED_SHORT_5_6_5: number;
			public static GL_VENDOR: number;
			public static GL_VERSION: number;
			public static GL_VERTEX_ARRAY: number;
			public static GL_XOR: number;
			public static GL_ZERO: number;
			public static glMultMatrixf(param0: java.nio.FloatBuffer): void;
			public static glOrthox(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): void;
			public static glSampleCoveragex(param0: number, param1: boolean): void;
			public static glFogf(param0: number, param1: number): void;
			public static glPolygonOffsetx(param0: number, param1: number): void;
			public static glTexParameterf(param0: number, param1: number, param2: number): void;
			public static glGetString(param0: number): string;
			public static glTexEnvxv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glClientActiveTexture(param0: number): void;
			public static glCopyTexSubImage2D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number): void;
			public static glGetError(): number;
			public static glStencilOp(param0: number, param1: number, param2: number): void;
			public static glColor4f(param0: number, param1: number, param2: number, param3: number): void;
			public static glPointSizex(param0: number): void;
			public static glStencilFunc(param0: number, param1: number, param2: number): void;
			public static glFrustumf(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): void;
			public static glHint(param0: number, param1: number): void;
			public static glLoadIdentity(): void;
			public static glPixelStorei(param0: number, param1: number): void;
			public static glClearDepthx(param0: number): void;
			public constructor();
			public static glLoadMatrixf(param0: native.Array<number>, param1: number): void;
			public static glCompressedTexImage2D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: java.nio.Buffer): void;
			public static glColorPointer(param0: number, param1: number, param2: number, param3: java.nio.Buffer): void;
			public static glMultMatrixx(param0: java.nio.IntBuffer): void;
			public static glClearColor(param0: number, param1: number, param2: number, param3: number): void;
			public static glLightx(param0: number, param1: number, param2: number): void;
			public static glTexEnvfv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glRotatex(param0: number, param1: number, param2: number, param3: number): void;
			public static glDepthFunc(param0: number): void;
			public static glGetIntegerv(param0: number, param1: native.Array<number>, param2: number): void;
			public static glTexEnvxv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glClear(param0: number): void;
			public static glLineWidth(param0: number): void;
			public static glPolygonOffset(param0: number, param1: number): void;
			public static glPointSize(param0: number): void;
			public static glTexEnvfv(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
			public static glDisable(param0: number): void;
			public static glDepthRangef(param0: number, param1: number): void;
			public static glDepthRangex(param0: number, param1: number): void;
			public static glDrawArrays(param0: number, param1: number, param2: number): void;
			public static glMultMatrixx(param0: native.Array<number>, param1: number): void;
			public static glLightModelfv(param0: number, param1: java.nio.FloatBuffer): void;
			public static glBlendFunc(param0: number, param1: number): void;
			public static glSampleCoverage(param0: number, param1: boolean): void;
			public static glTranslatex(param0: number, param1: number, param2: number): void;
			public static glLightModelxv(param0: number, param1: native.Array<number>, param2: number): void;
			public static glFogfv(param0: number, param1: native.Array<number>, param2: number): void;
			public static glMaterialx(param0: number, param1: number, param2: number): void;
			public static glDeleteTextures(param0: number, param1: native.Array<number>, param2: number): void;
			public static glGenTextures(param0: number, param1: java.nio.IntBuffer): void;
			public static glLoadMatrixx(param0: native.Array<number>, param1: number): void;
			public static glLightModelxv(param0: number, param1: java.nio.IntBuffer): void;
			public static glLoadMatrixf(param0: java.nio.FloatBuffer): void;
			public static glNormal3f(param0: number, param1: number, param2: number): void;
			public static glCullFace(param0: number): void;
			public static glStencilMask(param0: number): void;
			public static glRotatef(param0: number, param1: number, param2: number, param3: number): void;
			public static glLightxv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glViewport(param0: number, param1: number, param2: number, param3: number): void;
			public static glNormalPointer(param0: number, param1: number, param2: java.nio.Buffer): void;
			public static glClearColorx(param0: number, param1: number, param2: number, param3: number): void;
			public static glFrontFace(param0: number): void;
			public static glColor4x(param0: number, param1: number, param2: number, param3: number): void;
			public static glLogicOp(param0: number): void;
			public static glEnableClientState(param0: number): void;
			public static glTexCoordPointer(param0: number, param1: number, param2: number, param3: java.nio.Buffer): void;
			public static glDisableClientState(param0: number): void;
			public static glShadeModel(param0: number): void;
			public static glTexEnvf(param0: number, param1: number, param2: number): void;
			public static glColorMask(param0: boolean, param1: boolean, param2: boolean, param3: boolean): void;
			public static glFogxv(param0: number, param1: native.Array<number>, param2: number): void;
			public static glFogxv(param0: number, param1: java.nio.IntBuffer): void;
			public static glScalex(param0: number, param1: number, param2: number): void;
			public static glMultiTexCoord4f(param0: number, param1: number, param2: number, param3: number, param4: number): void;
			public static glMultMatrixf(param0: native.Array<number>, param1: number): void;
			public static glMatrixMode(param0: number): void;
			public static glScalef(param0: number, param1: number, param2: number): void;
			public static glOrthof(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): void;
			public static glReadPixels(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: java.nio.Buffer): void;
			public static glGenTextures(param0: number, param1: native.Array<number>, param2: number): void;
			public static glFogx(param0: number, param1: number): void;
			public static glLightf(param0: number, param1: number, param2: number): void;
			public static glMaterialxv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glBindTexture(param0: number, param1: number): void;
			public static glCompressedTexSubImage2D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number, param8: java.nio.Buffer): void;
			public static glFrustumx(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): void;
			public static glActiveTexture(param0: number): void;
			public static glDrawElements(param0: number, param1: number, param2: number, param3: java.nio.Buffer): void;
			public static glGetIntegerv(param0: number, param1: java.nio.IntBuffer): void;
			public static glDepthMask(param0: boolean): void;
			public static glPushMatrix(): void;
			public static glPopMatrix(): void;
			public static glAlphaFuncx(param0: number, param1: number): void;
			public static glCopyTexImage2D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number): void;
			public static glLightModelx(param0: number, param1: number): void;
			public static glFinish(): void;
			public static glTexEnvx(param0: number, param1: number, param2: number): void;
			public static glTexParameterx(param0: number, param1: number, param2: number): void;
			public static glAlphaFunc(param0: number, param1: number): void;
			public static glMaterialfv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glLightxv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glVertexPointer(param0: number, param1: number, param2: number, param3: java.nio.Buffer): void;
			public static glFogfv(param0: number, param1: java.nio.FloatBuffer): void;
			public static glClearStencil(param0: number): void;
			public static glFlush(): void;
			public static glLightModelf(param0: number, param1: number): void;
			public static glDeleteTextures(param0: number, param1: java.nio.IntBuffer): void;
			public static glLineWidthx(param0: number): void;
			public static glTexImage2D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number, param8: java.nio.Buffer): void;
			public static glMaterialxv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glTexSubImage2D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number, param8: java.nio.Buffer): void;
			public static glLightfv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glLightModelfv(param0: number, param1: native.Array<number>, param2: number): void;
			public static glEnable(param0: number): void;
			public static glNormal3x(param0: number, param1: number, param2: number): void;
			public static glMultiTexCoord4x(param0: number, param1: number, param2: number, param3: number, param4: number): void;
			public static glMaterialf(param0: number, param1: number, param2: number): void;
			public static glTranslatef(param0: number, param1: number, param2: number): void;
			public static glScissor(param0: number, param1: number, param2: number, param3: number): void;
			public static glLoadMatrixx(param0: java.nio.IntBuffer): void;
			public static glMaterialfv(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
			public static glClearDepthf(param0: number): void;
			public static glLightfv(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
		}
	}
}

declare module android {
	export module opengl {
		export class GLES10Ext extends java.lang.Object {
			public static class: java.lang.Class<android.opengl.GLES10Ext>;
			public static glQueryMatrixxOES(param0: java.nio.IntBuffer, param1: java.nio.IntBuffer): number;
			public constructor();
			public static glQueryMatrixxOES(param0: native.Array<number>, param1: number, param2: native.Array<number>, param3: number): number;
		}
	}
}

declare module android {
	export module opengl {
		export class GLES11 extends android.opengl.GLES10 {
			public static class: java.lang.Class<android.opengl.GLES11>;
			public static GL_ACTIVE_TEXTURE: number;
			public static GL_ADD_SIGNED: number;
			public static GL_ALPHA_SCALE: number;
			public static GL_ALPHA_TEST_FUNC: number;
			public static GL_ALPHA_TEST_REF: number;
			public static GL_ARRAY_BUFFER: number;
			public static GL_ARRAY_BUFFER_BINDING: number;
			public static GL_BLEND_DST: number;
			public static GL_BLEND_SRC: number;
			public static GL_BUFFER_ACCESS: number;
			public static GL_BUFFER_SIZE: number;
			public static GL_BUFFER_USAGE: number;
			public static GL_CLIENT_ACTIVE_TEXTURE: number;
			public static GL_CLIP_PLANE0: number;
			public static GL_CLIP_PLANE1: number;
			public static GL_CLIP_PLANE2: number;
			public static GL_CLIP_PLANE3: number;
			public static GL_CLIP_PLANE4: number;
			public static GL_CLIP_PLANE5: number;
			public static GL_COLOR_ARRAY_BUFFER_BINDING: number;
			public static GL_COLOR_ARRAY_POINTER: number;
			public static GL_COLOR_ARRAY_SIZE: number;
			public static GL_COLOR_ARRAY_STRIDE: number;
			public static GL_COLOR_ARRAY_TYPE: number;
			public static GL_COLOR_CLEAR_VALUE: number;
			public static GL_COLOR_WRITEMASK: number;
			public static GL_COMBINE: number;
			public static GL_COMBINE_ALPHA: number;
			public static GL_COMBINE_RGB: number;
			public static GL_CONSTANT: number;
			public static GL_COORD_REPLACE_OES: number;
			public static GL_CULL_FACE_MODE: number;
			public static GL_CURRENT_COLOR: number;
			public static GL_CURRENT_NORMAL: number;
			public static GL_CURRENT_TEXTURE_COORDS: number;
			public static GL_DEPTH_CLEAR_VALUE: number;
			public static GL_DEPTH_FUNC: number;
			public static GL_DEPTH_RANGE: number;
			public static GL_DEPTH_WRITEMASK: number;
			public static GL_DOT3_RGB: number;
			public static GL_DOT3_RGBA: number;
			public static GL_DYNAMIC_DRAW: number;
			public static GL_ELEMENT_ARRAY_BUFFER: number;
			public static GL_ELEMENT_ARRAY_BUFFER_BINDING: number;
			public static GL_FRONT_FACE: number;
			public static GL_GENERATE_MIPMAP: number;
			public static GL_GENERATE_MIPMAP_HINT: number;
			public static GL_INTERPOLATE: number;
			public static GL_LINE_WIDTH: number;
			public static GL_LOGIC_OP_MODE: number;
			public static GL_MATRIX_MODE: number;
			public static GL_MAX_CLIP_PLANES: number;
			public static GL_MODELVIEW_MATRIX: number;
			public static GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES: number;
			public static GL_MODELVIEW_STACK_DEPTH: number;
			public static GL_NORMAL_ARRAY_BUFFER_BINDING: number;
			public static GL_NORMAL_ARRAY_POINTER: number;
			public static GL_NORMAL_ARRAY_STRIDE: number;
			public static GL_NORMAL_ARRAY_TYPE: number;
			public static GL_OPERAND0_ALPHA: number;
			public static GL_OPERAND0_RGB: number;
			public static GL_OPERAND1_ALPHA: number;
			public static GL_OPERAND1_RGB: number;
			public static GL_OPERAND2_ALPHA: number;
			public static GL_OPERAND2_RGB: number;
			public static GL_POINT_DISTANCE_ATTENUATION: number;
			public static GL_POINT_FADE_THRESHOLD_SIZE: number;
			public static GL_POINT_SIZE: number;
			public static GL_POINT_SIZE_ARRAY_BUFFER_BINDING_OES: number;
			public static GL_POINT_SIZE_ARRAY_OES: number;
			public static GL_POINT_SIZE_ARRAY_POINTER_OES: number;
			public static GL_POINT_SIZE_ARRAY_STRIDE_OES: number;
			public static GL_POINT_SIZE_ARRAY_TYPE_OES: number;
			public static GL_POINT_SIZE_MAX: number;
			public static GL_POINT_SIZE_MIN: number;
			public static GL_POINT_SPRITE_OES: number;
			public static GL_POLYGON_OFFSET_FACTOR: number;
			public static GL_POLYGON_OFFSET_UNITS: number;
			public static GL_PREVIOUS: number;
			public static GL_PRIMARY_COLOR: number;
			public static GL_PROJECTION_MATRIX: number;
			public static GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES: number;
			public static GL_PROJECTION_STACK_DEPTH: number;
			public static GL_RGB_SCALE: number;
			public static GL_SAMPLE_BUFFERS: number;
			public static GL_SAMPLE_COVERAGE_INVERT: number;
			public static GL_SAMPLE_COVERAGE_VALUE: number;
			public static GL_SAMPLES: number;
			public static GL_SCISSOR_BOX: number;
			public static GL_SHADE_MODEL: number;
			public static GL_SRC0_ALPHA: number;
			public static GL_SRC0_RGB: number;
			public static GL_SRC1_ALPHA: number;
			public static GL_SRC1_RGB: number;
			public static GL_SRC2_ALPHA: number;
			public static GL_SRC2_RGB: number;
			public static GL_STATIC_DRAW: number;
			public static GL_STENCIL_CLEAR_VALUE: number;
			public static GL_STENCIL_FAIL: number;
			public static GL_STENCIL_FUNC: number;
			public static GL_STENCIL_PASS_DEPTH_FAIL: number;
			public static GL_STENCIL_PASS_DEPTH_PASS: number;
			public static GL_STENCIL_REF: number;
			public static GL_STENCIL_VALUE_MASK: number;
			public static GL_STENCIL_WRITEMASK: number;
			public static GL_SUBTRACT: number;
			public static GL_TEXTURE_BINDING_2D: number;
			public static GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING: number;
			public static GL_TEXTURE_COORD_ARRAY_POINTER: number;
			public static GL_TEXTURE_COORD_ARRAY_SIZE: number;
			public static GL_TEXTURE_COORD_ARRAY_STRIDE: number;
			public static GL_TEXTURE_COORD_ARRAY_TYPE: number;
			public static GL_TEXTURE_MATRIX: number;
			public static GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES: number;
			public static GL_TEXTURE_STACK_DEPTH: number;
			public static GL_VERTEX_ARRAY_BUFFER_BINDING: number;
			public static GL_VERTEX_ARRAY_POINTER: number;
			public static GL_VERTEX_ARRAY_SIZE: number;
			public static GL_VERTEX_ARRAY_STRIDE: number;
			public static GL_VERTEX_ARRAY_TYPE: number;
			public static GL_VIEWPORT: number;
			public static GL_WRITE_ONLY: number;
			public static glGetBooleanv(param0: number, param1: native.Array<boolean>, param2: number): void;
			public static glGetMaterialfv(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
			public static glIsTexture(param0: number): boolean;
			public static glNormalPointer(param0: number, param1: number, param2: java.nio.Buffer): void;
			public static glGetTexEnvfv(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
			public static glTexEnviv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glBufferSubData(param0: number, param1: number, param2: number, param3: java.nio.Buffer): void;
			public static glTexParameterxv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glPointParameterxv(param0: number, param1: native.Array<number>, param2: number): void;
			public static glPointParameterfv(param0: number, param1: native.Array<number>, param2: number): void;
			public static glTexCoordPointer(param0: number, param1: number, param2: number, param3: java.nio.Buffer): void;
			public static glGetLightfv(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
			public static glTexCoordPointer(param0: number, param1: number, param2: number, param3: number): void;
			public static glTexParameteri(param0: number, param1: number, param2: number): void;
			public static glIsBuffer(param0: number): boolean;
			public static glPointParameterf(param0: number, param1: number): void;
			public static glGetTexParameterfv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glTexParameterfv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glTexEnvi(param0: number, param1: number, param2: number): void;
			public static glGenBuffers(param0: number, param1: native.Array<number>, param2: number): void;
			public static glGenBuffers(param0: number, param1: java.nio.IntBuffer): void;
			public static glBufferData(param0: number, param1: number, param2: java.nio.Buffer, param3: number): void;
			public static glGetTexParameterxv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glColorPointer(param0: number, param1: number, param2: number, param3: number): void;
			public static glGetLightxv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glTexParameterxv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glTexParameteriv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public constructor();
			public static glNormalPointer(param0: number, param1: number, param2: number): void;
			public static glGetClipPlanef(param0: number, param1: native.Array<number>, param2: number): void;
			public static glClipPlanex(param0: number, param1: native.Array<number>, param2: number): void;
			public static glColorPointer(param0: number, param1: number, param2: number, param3: java.nio.Buffer): void;
			public static glGetFloatv(param0: number, param1: native.Array<number>, param2: number): void;
			public static glGetTexEnviv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glGetTexParameteriv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glGetTexEnviv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glDeleteBuffers(param0: number, param1: native.Array<number>, param2: number): void;
			public static glClipPlanef(param0: number, param1: java.nio.FloatBuffer): void;
			public static glGetClipPlanef(param0: number, param1: java.nio.FloatBuffer): void;
			public static glGetTexParameteriv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glDrawElements(param0: number, param1: number, param2: number, param3: java.nio.Buffer): void;
			public static glGetBufferParameteriv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glGetClipPlanex(param0: number, param1: java.nio.IntBuffer): void;
			public static glGetLightxv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glGetMaterialxv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glGetMaterialxv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glGetTexParameterfv(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
			public static glPointParameterfv(param0: number, param1: java.nio.FloatBuffer): void;
			public static glBindBuffer(param0: number, param1: number): void;
			public static glGetTexEnvfv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glGetFixedv(param0: number, param1: java.nio.IntBuffer): void;
			public static glGetLightfv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glClipPlanef(param0: number, param1: native.Array<number>, param2: number): void;
			public static glTexEnviv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glVertexPointer(param0: number, param1: number, param2: number, param3: java.nio.Buffer): void;
			public static glGetClipPlanex(param0: number, param1: native.Array<number>, param2: number): void;
			public static glPointParameterx(param0: number, param1: number): void;
			public static glPointSizePointerOES(param0: number, param1: number, param2: java.nio.Buffer): void;
			public static glGetBooleanv(param0: number, param1: java.nio.IntBuffer): void;
			public static glGetFloatv(param0: number, param1: java.nio.FloatBuffer): void;
			public static glPointParameterxv(param0: number, param1: java.nio.IntBuffer): void;
			public static glGetFixedv(param0: number, param1: native.Array<number>, param2: number): void;
			public static glTexParameteriv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glGetBufferParameteriv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glGetTexEnvxv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glGetTexParameterxv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glTexParameterfv(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
			public static glIsEnabled(param0: number): boolean;
			public static glClipPlanex(param0: number, param1: java.nio.IntBuffer): void;
			public static glDeleteBuffers(param0: number, param1: java.nio.IntBuffer): void;
			public static glGetMaterialfv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glGetTexEnvxv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glVertexPointer(param0: number, param1: number, param2: number, param3: number): void;
			public static glDrawElements(param0: number, param1: number, param2: number, param3: number): void;
			public static glColor4ub(param0: number, param1: number, param2: number, param3: number): void;
		}
	}
}

declare module android {
	export module opengl {
		export class GLES11Ext extends java.lang.Object {
			public static class: java.lang.Class<android.opengl.GLES11Ext>;
			public static GL_BLEND_EQUATION_RGB_OES: number;
			public static GL_BLEND_EQUATION_ALPHA_OES: number;
			public static GL_BLEND_DST_RGB_OES: number;
			public static GL_BLEND_SRC_RGB_OES: number;
			public static GL_BLEND_DST_ALPHA_OES: number;
			public static GL_BLEND_SRC_ALPHA_OES: number;
			public static GL_BLEND_EQUATION_OES: number;
			public static GL_FUNC_ADD_OES: number;
			public static GL_FUNC_SUBTRACT_OES: number;
			public static GL_FUNC_REVERSE_SUBTRACT_OES: number;
			public static GL_ETC1_RGB8_OES: number;
			public static GL_DEPTH_COMPONENT24_OES: number;
			public static GL_DEPTH_COMPONENT32_OES: number;
			public static GL_TEXTURE_CROP_RECT_OES: number;
			public static GL_FIXED_OES: number;
			public static GL_NONE_OES: number;
			public static GL_FRAMEBUFFER_OES: number;
			public static GL_RENDERBUFFER_OES: number;
			public static GL_RGBA4_OES: number;
			public static GL_RGB5_A1_OES: number;
			public static GL_RGB565_OES: number;
			public static GL_DEPTH_COMPONENT16_OES: number;
			public static GL_RENDERBUFFER_WIDTH_OES: number;
			public static GL_RENDERBUFFER_HEIGHT_OES: number;
			public static GL_RENDERBUFFER_INTERNAL_FORMAT_OES: number;
			public static GL_RENDERBUFFER_RED_SIZE_OES: number;
			public static GL_RENDERBUFFER_GREEN_SIZE_OES: number;
			public static GL_RENDERBUFFER_BLUE_SIZE_OES: number;
			public static GL_RENDERBUFFER_ALPHA_SIZE_OES: number;
			public static GL_RENDERBUFFER_DEPTH_SIZE_OES: number;
			public static GL_RENDERBUFFER_STENCIL_SIZE_OES: number;
			public static GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_OES: number;
			public static GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_OES: number;
			public static GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_OES: number;
			public static GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_OES: number;
			public static GL_COLOR_ATTACHMENT0_OES: number;
			public static GL_DEPTH_ATTACHMENT_OES: number;
			public static GL_STENCIL_ATTACHMENT_OES: number;
			public static GL_FRAMEBUFFER_COMPLETE_OES: number;
			public static GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_OES: number;
			public static GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_OES: number;
			public static GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_OES: number;
			public static GL_FRAMEBUFFER_INCOMPLETE_FORMATS_OES: number;
			public static GL_FRAMEBUFFER_UNSUPPORTED_OES: number;
			public static GL_FRAMEBUFFER_BINDING_OES: number;
			public static GL_RENDERBUFFER_BINDING_OES: number;
			public static GL_MAX_RENDERBUFFER_SIZE_OES: number;
			public static GL_INVALID_FRAMEBUFFER_OPERATION_OES: number;
			public static GL_WRITE_ONLY_OES: number;
			public static GL_BUFFER_ACCESS_OES: number;
			public static GL_BUFFER_MAPPED_OES: number;
			public static GL_BUFFER_MAP_POINTER_OES: number;
			public static GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES: number;
			public static GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES: number;
			public static GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES: number;
			public static GL_MAX_VERTEX_UNITS_OES: number;
			public static GL_MAX_PALETTE_MATRICES_OES: number;
			public static GL_MATRIX_PALETTE_OES: number;
			public static GL_MATRIX_INDEX_ARRAY_OES: number;
			public static GL_WEIGHT_ARRAY_OES: number;
			public static GL_CURRENT_PALETTE_MATRIX_OES: number;
			public static GL_MATRIX_INDEX_ARRAY_SIZE_OES: number;
			public static GL_MATRIX_INDEX_ARRAY_TYPE_OES: number;
			public static GL_MATRIX_INDEX_ARRAY_STRIDE_OES: number;
			public static GL_MATRIX_INDEX_ARRAY_POINTER_OES: number;
			public static GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES: number;
			public static GL_WEIGHT_ARRAY_SIZE_OES: number;
			public static GL_WEIGHT_ARRAY_TYPE_OES: number;
			public static GL_WEIGHT_ARRAY_STRIDE_OES: number;
			public static GL_WEIGHT_ARRAY_POINTER_OES: number;
			public static GL_WEIGHT_ARRAY_BUFFER_BINDING_OES: number;
			public static GL_DEPTH_STENCIL_OES: number;
			public static GL_UNSIGNED_INT_24_8_OES: number;
			public static GL_DEPTH24_STENCIL8_OES: number;
			public static GL_RGB8_OES: number;
			public static GL_RGBA8_OES: number;
			public static GL_STENCIL_INDEX1_OES: number;
			public static GL_STENCIL_INDEX4_OES: number;
			public static GL_STENCIL_INDEX8_OES: number;
			public static GL_INCR_WRAP_OES: number;
			public static GL_DECR_WRAP_OES: number;
			public static GL_NORMAL_MAP_OES: number;
			public static GL_REFLECTION_MAP_OES: number;
			public static GL_TEXTURE_CUBE_MAP_OES: number;
			public static GL_TEXTURE_BINDING_CUBE_MAP_OES: number;
			public static GL_TEXTURE_CUBE_MAP_POSITIVE_X_OES: number;
			public static GL_TEXTURE_CUBE_MAP_NEGATIVE_X_OES: number;
			public static GL_TEXTURE_CUBE_MAP_POSITIVE_Y_OES: number;
			public static GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_OES: number;
			public static GL_TEXTURE_CUBE_MAP_POSITIVE_Z_OES: number;
			public static GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_OES: number;
			public static GL_MAX_CUBE_MAP_TEXTURE_SIZE_OES: number;
			public static GL_TEXTURE_GEN_MODE_OES: number;
			public static GL_TEXTURE_GEN_STR_OES: number;
			public static GL_MIRRORED_REPEAT_OES: number;
			public static GL_3DC_X_AMD: number;
			public static GL_3DC_XY_AMD: number;
			public static GL_ATC_RGB_AMD: number;
			public static GL_ATC_RGBA_EXPLICIT_ALPHA_AMD: number;
			public static GL_ATC_RGBA_INTERPOLATED_ALPHA_AMD: number;
			public static GL_TEXTURE_MAX_ANISOTROPY_EXT: number;
			public static GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT: number;
			public static GL_BGRA: number;
			public static GL_TEXTURE_EXTERNAL_OES: number;
			public static GL_SAMPLER_EXTERNAL_OES: number;
			public static GL_TEXTURE_BINDING_EXTERNAL_OES: number;
			public static GL_REQUIRED_TEXTURE_IMAGE_UNITS_OES: number;
			public static glDrawTexsOES(param0: number, param1: number, param2: number, param3: number, param4: number): void;
			public static glClipPlanexOES(param0: number, param1: java.nio.IntBuffer): void;
			public static glIsFramebufferOES(param0: number): boolean;
			public static glAlphaFuncxOES(param0: number, param1: number): void;
			public static glOrthofOES(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): void;
			public static glFogxvOES(param0: number, param1: java.nio.IntBuffer): void;
			public static glGenerateMipmapOES(param0: number): void;
			public static glPointParameterxOES(param0: number, param1: number): void;
			public static glDeleteRenderbuffersOES(param0: number, param1: java.nio.IntBuffer): void;
			public static glRotatexOES(param0: number, param1: number, param2: number, param3: number): void;
			public static glDrawTexxvOES(param0: java.nio.IntBuffer): void;
			public static glGetMaterialxvOES(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glGetFramebufferAttachmentParameterivOES(param0: number, param1: number, param2: number, param3: java.nio.IntBuffer): void;
			public static glGetTexParameterxvOES(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glDepthRangefOES(param0: number, param1: number): void;
			public static glBlendFuncSeparateOES(param0: number, param1: number, param2: number, param3: number): void;
			public static glLightModelxvOES(param0: number, param1: native.Array<number>, param2: number): void;
			public static glPointParameterxvOES(param0: number, param1: java.nio.IntBuffer): void;
			public static glMatrixIndexPointerOES(param0: number, param1: number, param2: number, param3: java.nio.Buffer): void;
			public static glTexEnvxOES(param0: number, param1: number, param2: number): void;
			public static glGetRenderbufferParameterivOES(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glBindFramebufferOES(param0: number, param1: number): void;
			public static glTexEnvxvOES(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public constructor();
			public static glTexGenfvOES(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
			public static glGetClipPlanexOES(param0: number, param1: native.Array<number>, param2: number): void;
			public static glDrawTexxOES(param0: number, param1: number, param2: number, param3: number, param4: number): void;
			public static glDrawTexfvOES(param0: java.nio.FloatBuffer): void;
			public static glGetTexGenfvOES(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
			public static glScalexOES(param0: number, param1: number, param2: number): void;
			public static glGetClipPlanefOES(param0: number, param1: native.Array<number>, param2: number): void;
			public static glDrawTexxvOES(param0: native.Array<number>, param1: number): void;
			public static glDeleteFramebuffersOES(param0: number, param1: java.nio.IntBuffer): void;
			public static glSampleCoveragexOES(param0: number, param1: boolean): void;
			public static glTexGenivOES(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glFrustumxOES(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): void;
			public static glMultMatrixxOES(param0: native.Array<number>, param1: number): void;
			public static glGetRenderbufferParameterivOES(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glTexGeniOES(param0: number, param1: number, param2: number): void;
			public static glLineWidthxOES(param0: number): void;
			public static glGetFixedvOES(param0: number, param1: java.nio.IntBuffer): void;
			public static glIsRenderbufferOES(param0: number): boolean;
			public static glEGLImageTargetTexture2DOES(param0: number, param1: java.nio.Buffer): void;
			public static glDrawTexfvOES(param0: native.Array<number>, param1: number): void;
			public static glGetTexEnvxvOES(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glGetLightxvOES(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glCheckFramebufferStatusOES(param0: number): number;
			public static glTexGenfOES(param0: number, param1: number, param2: number): void;
			public static glPointParameterxvOES(param0: number, param1: native.Array<number>, param2: number): void;
			public static glEGLImageTargetRenderbufferStorageOES(param0: number, param1: java.nio.Buffer): void;
			public static glDrawTexiOES(param0: number, param1: number, param2: number, param3: number, param4: number): void;
			public static glGenRenderbuffersOES(param0: number, param1: java.nio.IntBuffer): void;
			public static glDeleteFramebuffersOES(param0: number, param1: native.Array<number>, param2: number): void;
			public static glGenFramebuffersOES(param0: number, param1: native.Array<number>, param2: number): void;
			public static glMaterialxvOES(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glMultMatrixxOES(param0: java.nio.IntBuffer): void;
			public static glLightModelxOES(param0: number, param1: number): void;
			public static glLoadMatrixxOES(param0: java.nio.IntBuffer): void;
			public static glMaterialxvOES(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glDrawTexivOES(param0: java.nio.IntBuffer): void;
			public static glDepthRangexOES(param0: number, param1: number): void;
			public static glFogxvOES(param0: number, param1: native.Array<number>, param2: number): void;
			public static glBlendEquationOES(param0: number): void;
			public static glDrawTexivOES(param0: native.Array<number>, param1: number): void;
			public static glFogxOES(param0: number, param1: number): void;
			public static glLightxOES(param0: number, param1: number, param2: number): void;
			public static glFramebufferTexture2DOES(param0: number, param1: number, param2: number, param3: number, param4: number): void;
			public static glBindRenderbufferOES(param0: number, param1: number): void;
			public static glGetMaterialxvOES(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glClearColorxOES(param0: number, param1: number, param2: number, param3: number): void;
			public static glMultiTexCoord4xOES(param0: number, param1: number, param2: number, param3: number, param4: number): void;
			public static glTexEnvxvOES(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glTexGenxvOES(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glGetFramebufferAttachmentParameterivOES(param0: number, param1: number, param2: number, param3: native.Array<number>, param4: number): void;
			public static glTexParameterxvOES(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glDrawTexsvOES(param0: java.nio.ShortBuffer): void;
			public static glNormal3xOES(param0: number, param1: number, param2: number): void;
			public static glWeightPointerOES(param0: number, param1: number, param2: number, param3: java.nio.Buffer): void;
			public static glGetTexGenivOES(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glTexGenxvOES(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glLoadMatrixxOES(param0: native.Array<number>, param1: number): void;
			public static glTexGenxOES(param0: number, param1: number, param2: number): void;
			public static glDrawTexfOES(param0: number, param1: number, param2: number, param3: number, param4: number): void;
			public static glGetFixedvOES(param0: number, param1: native.Array<number>, param2: number): void;
			public static glMaterialxOES(param0: number, param1: number, param2: number): void;
			public static glTexParameterxvOES(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glLightxvOES(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glClearDepthxOES(param0: number): void;
			public static glGetTexEnvxvOES(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glLightModelxvOES(param0: number, param1: java.nio.IntBuffer): void;
			public static glFramebufferRenderbufferOES(param0: number, param1: number, param2: number, param3: number): void;
			public static glLoadPaletteFromModelViewMatrixOES(): void;
			public static glOrthoxOES(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): void;
			public static glGetLightxvOES(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glTexGenfvOES(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glGenFramebuffersOES(param0: number, param1: java.nio.IntBuffer): void;
			public static glTexGenivOES(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glGetTexGenivOES(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glColor4xOES(param0: number, param1: number, param2: number, param3: number): void;
			public static glTranslatexOES(param0: number, param1: number, param2: number): void;
			public static glTexParameterxOES(param0: number, param1: number, param2: number): void;
			public static glFrustumfOES(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): void;
			public static glGetClipPlanefOES(param0: number, param1: java.nio.FloatBuffer): void;
			public static glGetTexGenfvOES(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glClipPlanexOES(param0: number, param1: native.Array<number>, param2: number): void;
			public static glClipPlanefOES(param0: number, param1: java.nio.FloatBuffer): void;
			public static glGetTexGenxvOES(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glCurrentPaletteMatrixOES(param0: number): void;
			public static glGetTexParameterxvOES(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glPolygonOffsetxOES(param0: number, param1: number): void;
			public static glPointSizexOES(param0: number): void;
			public static glClipPlanefOES(param0: number, param1: native.Array<number>, param2: number): void;
			public static glRenderbufferStorageOES(param0: number, param1: number, param2: number, param3: number): void;
			public static glGenRenderbuffersOES(param0: number, param1: native.Array<number>, param2: number): void;
			public static glDrawTexsvOES(param0: native.Array<number>, param1: number): void;
			public static glClearDepthfOES(param0: number): void;
			public static glDeleteRenderbuffersOES(param0: number, param1: native.Array<number>, param2: number): void;
			public static glGetTexGenxvOES(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glBlendEquationSeparateOES(param0: number, param1: number): void;
			public static glGetClipPlanexOES(param0: number, param1: java.nio.IntBuffer): void;
			public static glLightxvOES(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
		}
	}
}

declare module android {
	export module opengl {
		export class GLES20 extends java.lang.Object {
			public static class: java.lang.Class<android.opengl.GLES20>;
			public static GL_ACTIVE_TEXTURE: number;
			public static GL_DEPTH_BUFFER_BIT: number;
			public static GL_STENCIL_BUFFER_BIT: number;
			public static GL_COLOR_BUFFER_BIT: number;
			public static GL_FALSE: number;
			public static GL_TRUE: number;
			public static GL_POINTS: number;
			public static GL_LINES: number;
			public static GL_LINE_LOOP: number;
			public static GL_LINE_STRIP: number;
			public static GL_TRIANGLES: number;
			public static GL_TRIANGLE_STRIP: number;
			public static GL_TRIANGLE_FAN: number;
			public static GL_ZERO: number;
			public static GL_ONE: number;
			public static GL_SRC_COLOR: number;
			public static GL_ONE_MINUS_SRC_COLOR: number;
			public static GL_SRC_ALPHA: number;
			public static GL_ONE_MINUS_SRC_ALPHA: number;
			public static GL_DST_ALPHA: number;
			public static GL_ONE_MINUS_DST_ALPHA: number;
			public static GL_DST_COLOR: number;
			public static GL_ONE_MINUS_DST_COLOR: number;
			public static GL_SRC_ALPHA_SATURATE: number;
			public static GL_FUNC_ADD: number;
			public static GL_BLEND_EQUATION: number;
			public static GL_BLEND_EQUATION_RGB: number;
			public static GL_BLEND_EQUATION_ALPHA: number;
			public static GL_FUNC_SUBTRACT: number;
			public static GL_FUNC_REVERSE_SUBTRACT: number;
			public static GL_BLEND_DST_RGB: number;
			public static GL_BLEND_SRC_RGB: number;
			public static GL_BLEND_DST_ALPHA: number;
			public static GL_BLEND_SRC_ALPHA: number;
			public static GL_CONSTANT_COLOR: number;
			public static GL_ONE_MINUS_CONSTANT_COLOR: number;
			public static GL_CONSTANT_ALPHA: number;
			public static GL_ONE_MINUS_CONSTANT_ALPHA: number;
			public static GL_BLEND_COLOR: number;
			public static GL_ARRAY_BUFFER: number;
			public static GL_ELEMENT_ARRAY_BUFFER: number;
			public static GL_ARRAY_BUFFER_BINDING: number;
			public static GL_ELEMENT_ARRAY_BUFFER_BINDING: number;
			public static GL_STREAM_DRAW: number;
			public static GL_STATIC_DRAW: number;
			public static GL_DYNAMIC_DRAW: number;
			public static GL_BUFFER_SIZE: number;
			public static GL_BUFFER_USAGE: number;
			public static GL_CURRENT_VERTEX_ATTRIB: number;
			public static GL_FRONT: number;
			public static GL_BACK: number;
			public static GL_FRONT_AND_BACK: number;
			public static GL_TEXTURE_2D: number;
			public static GL_CULL_FACE: number;
			public static GL_BLEND: number;
			public static GL_DITHER: number;
			public static GL_STENCIL_TEST: number;
			public static GL_DEPTH_TEST: number;
			public static GL_SCISSOR_TEST: number;
			public static GL_POLYGON_OFFSET_FILL: number;
			public static GL_SAMPLE_ALPHA_TO_COVERAGE: number;
			public static GL_SAMPLE_COVERAGE: number;
			public static GL_NO_ERROR: number;
			public static GL_INVALID_ENUM: number;
			public static GL_INVALID_VALUE: number;
			public static GL_INVALID_OPERATION: number;
			public static GL_OUT_OF_MEMORY: number;
			public static GL_CW: number;
			public static GL_CCW: number;
			public static GL_LINE_WIDTH: number;
			public static GL_ALIASED_POINT_SIZE_RANGE: number;
			public static GL_ALIASED_LINE_WIDTH_RANGE: number;
			public static GL_CULL_FACE_MODE: number;
			public static GL_FRONT_FACE: number;
			public static GL_DEPTH_RANGE: number;
			public static GL_DEPTH_WRITEMASK: number;
			public static GL_DEPTH_CLEAR_VALUE: number;
			public static GL_DEPTH_FUNC: number;
			public static GL_STENCIL_CLEAR_VALUE: number;
			public static GL_STENCIL_FUNC: number;
			public static GL_STENCIL_FAIL: number;
			public static GL_STENCIL_PASS_DEPTH_FAIL: number;
			public static GL_STENCIL_PASS_DEPTH_PASS: number;
			public static GL_STENCIL_REF: number;
			public static GL_STENCIL_VALUE_MASK: number;
			public static GL_STENCIL_WRITEMASK: number;
			public static GL_STENCIL_BACK_FUNC: number;
			public static GL_STENCIL_BACK_FAIL: number;
			public static GL_STENCIL_BACK_PASS_DEPTH_FAIL: number;
			public static GL_STENCIL_BACK_PASS_DEPTH_PASS: number;
			public static GL_STENCIL_BACK_REF: number;
			public static GL_STENCIL_BACK_VALUE_MASK: number;
			public static GL_STENCIL_BACK_WRITEMASK: number;
			public static GL_VIEWPORT: number;
			public static GL_SCISSOR_BOX: number;
			public static GL_COLOR_CLEAR_VALUE: number;
			public static GL_COLOR_WRITEMASK: number;
			public static GL_UNPACK_ALIGNMENT: number;
			public static GL_PACK_ALIGNMENT: number;
			public static GL_MAX_TEXTURE_SIZE: number;
			public static GL_MAX_VIEWPORT_DIMS: number;
			public static GL_SUBPIXEL_BITS: number;
			public static GL_RED_BITS: number;
			public static GL_GREEN_BITS: number;
			public static GL_BLUE_BITS: number;
			public static GL_ALPHA_BITS: number;
			public static GL_DEPTH_BITS: number;
			public static GL_STENCIL_BITS: number;
			public static GL_POLYGON_OFFSET_UNITS: number;
			public static GL_POLYGON_OFFSET_FACTOR: number;
			public static GL_TEXTURE_BINDING_2D: number;
			public static GL_SAMPLE_BUFFERS: number;
			public static GL_SAMPLES: number;
			public static GL_SAMPLE_COVERAGE_VALUE: number;
			public static GL_SAMPLE_COVERAGE_INVERT: number;
			public static GL_NUM_COMPRESSED_TEXTURE_FORMATS: number;
			public static GL_COMPRESSED_TEXTURE_FORMATS: number;
			public static GL_DONT_CARE: number;
			public static GL_FASTEST: number;
			public static GL_NICEST: number;
			public static GL_GENERATE_MIPMAP_HINT: number;
			public static GL_BYTE: number;
			public static GL_UNSIGNED_BYTE: number;
			public static GL_SHORT: number;
			public static GL_UNSIGNED_SHORT: number;
			public static GL_INT: number;
			public static GL_UNSIGNED_INT: number;
			public static GL_FLOAT: number;
			public static GL_FIXED: number;
			public static GL_DEPTH_COMPONENT: number;
			public static GL_ALPHA: number;
			public static GL_RGB: number;
			public static GL_RGBA: number;
			public static GL_LUMINANCE: number;
			public static GL_LUMINANCE_ALPHA: number;
			public static GL_UNSIGNED_SHORT_4_4_4_4: number;
			public static GL_UNSIGNED_SHORT_5_5_5_1: number;
			public static GL_UNSIGNED_SHORT_5_6_5: number;
			public static GL_FRAGMENT_SHADER: number;
			public static GL_VERTEX_SHADER: number;
			public static GL_MAX_VERTEX_ATTRIBS: number;
			public static GL_MAX_VERTEX_UNIFORM_VECTORS: number;
			public static GL_MAX_VARYING_VECTORS: number;
			public static GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS: number;
			public static GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS: number;
			public static GL_MAX_TEXTURE_IMAGE_UNITS: number;
			public static GL_MAX_FRAGMENT_UNIFORM_VECTORS: number;
			public static GL_SHADER_TYPE: number;
			public static GL_DELETE_STATUS: number;
			public static GL_LINK_STATUS: number;
			public static GL_VALIDATE_STATUS: number;
			public static GL_ATTACHED_SHADERS: number;
			public static GL_ACTIVE_UNIFORMS: number;
			public static GL_ACTIVE_UNIFORM_MAX_LENGTH: number;
			public static GL_ACTIVE_ATTRIBUTES: number;
			public static GL_ACTIVE_ATTRIBUTE_MAX_LENGTH: number;
			public static GL_SHADING_LANGUAGE_VERSION: number;
			public static GL_CURRENT_PROGRAM: number;
			public static GL_NEVER: number;
			public static GL_LESS: number;
			public static GL_EQUAL: number;
			public static GL_LEQUAL: number;
			public static GL_GREATER: number;
			public static GL_NOTEQUAL: number;
			public static GL_GEQUAL: number;
			public static GL_ALWAYS: number;
			public static GL_KEEP: number;
			public static GL_REPLACE: number;
			public static GL_INCR: number;
			public static GL_DECR: number;
			public static GL_INVERT: number;
			public static GL_INCR_WRAP: number;
			public static GL_DECR_WRAP: number;
			public static GL_VENDOR: number;
			public static GL_RENDERER: number;
			public static GL_VERSION: number;
			public static GL_EXTENSIONS: number;
			public static GL_NEAREST: number;
			public static GL_LINEAR: number;
			public static GL_NEAREST_MIPMAP_NEAREST: number;
			public static GL_LINEAR_MIPMAP_NEAREST: number;
			public static GL_NEAREST_MIPMAP_LINEAR: number;
			public static GL_LINEAR_MIPMAP_LINEAR: number;
			public static GL_TEXTURE_MAG_FILTER: number;
			public static GL_TEXTURE_MIN_FILTER: number;
			public static GL_TEXTURE_WRAP_S: number;
			public static GL_TEXTURE_WRAP_T: number;
			public static GL_TEXTURE: number;
			public static GL_TEXTURE_CUBE_MAP: number;
			public static GL_TEXTURE_BINDING_CUBE_MAP: number;
			public static GL_TEXTURE_CUBE_MAP_POSITIVE_X: number;
			public static GL_TEXTURE_CUBE_MAP_NEGATIVE_X: number;
			public static GL_TEXTURE_CUBE_MAP_POSITIVE_Y: number;
			public static GL_TEXTURE_CUBE_MAP_NEGATIVE_Y: number;
			public static GL_TEXTURE_CUBE_MAP_POSITIVE_Z: number;
			public static GL_TEXTURE_CUBE_MAP_NEGATIVE_Z: number;
			public static GL_MAX_CUBE_MAP_TEXTURE_SIZE: number;
			public static GL_TEXTURE0: number;
			public static GL_TEXTURE1: number;
			public static GL_TEXTURE2: number;
			public static GL_TEXTURE3: number;
			public static GL_TEXTURE4: number;
			public static GL_TEXTURE5: number;
			public static GL_TEXTURE6: number;
			public static GL_TEXTURE7: number;
			public static GL_TEXTURE8: number;
			public static GL_TEXTURE9: number;
			public static GL_TEXTURE10: number;
			public static GL_TEXTURE11: number;
			public static GL_TEXTURE12: number;
			public static GL_TEXTURE13: number;
			public static GL_TEXTURE14: number;
			public static GL_TEXTURE15: number;
			public static GL_TEXTURE16: number;
			public static GL_TEXTURE17: number;
			public static GL_TEXTURE18: number;
			public static GL_TEXTURE19: number;
			public static GL_TEXTURE20: number;
			public static GL_TEXTURE21: number;
			public static GL_TEXTURE22: number;
			public static GL_TEXTURE23: number;
			public static GL_TEXTURE24: number;
			public static GL_TEXTURE25: number;
			public static GL_TEXTURE26: number;
			public static GL_TEXTURE27: number;
			public static GL_TEXTURE28: number;
			public static GL_TEXTURE29: number;
			public static GL_TEXTURE30: number;
			public static GL_TEXTURE31: number;
			public static GL_REPEAT: number;
			public static GL_CLAMP_TO_EDGE: number;
			public static GL_MIRRORED_REPEAT: number;
			public static GL_FLOAT_VEC2: number;
			public static GL_FLOAT_VEC3: number;
			public static GL_FLOAT_VEC4: number;
			public static GL_INT_VEC2: number;
			public static GL_INT_VEC3: number;
			public static GL_INT_VEC4: number;
			public static GL_BOOL: number;
			public static GL_BOOL_VEC2: number;
			public static GL_BOOL_VEC3: number;
			public static GL_BOOL_VEC4: number;
			public static GL_FLOAT_MAT2: number;
			public static GL_FLOAT_MAT3: number;
			public static GL_FLOAT_MAT4: number;
			public static GL_SAMPLER_2D: number;
			public static GL_SAMPLER_CUBE: number;
			public static GL_VERTEX_ATTRIB_ARRAY_ENABLED: number;
			public static GL_VERTEX_ATTRIB_ARRAY_SIZE: number;
			public static GL_VERTEX_ATTRIB_ARRAY_STRIDE: number;
			public static GL_VERTEX_ATTRIB_ARRAY_TYPE: number;
			public static GL_VERTEX_ATTRIB_ARRAY_NORMALIZED: number;
			public static GL_VERTEX_ATTRIB_ARRAY_POINTER: number;
			public static GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING: number;
			public static GL_IMPLEMENTATION_COLOR_READ_TYPE: number;
			public static GL_IMPLEMENTATION_COLOR_READ_FORMAT: number;
			public static GL_COMPILE_STATUS: number;
			public static GL_INFO_LOG_LENGTH: number;
			public static GL_SHADER_SOURCE_LENGTH: number;
			public static GL_SHADER_COMPILER: number;
			public static GL_SHADER_BINARY_FORMATS: number;
			public static GL_NUM_SHADER_BINARY_FORMATS: number;
			public static GL_LOW_FLOAT: number;
			public static GL_MEDIUM_FLOAT: number;
			public static GL_HIGH_FLOAT: number;
			public static GL_LOW_INT: number;
			public static GL_MEDIUM_INT: number;
			public static GL_HIGH_INT: number;
			public static GL_FRAMEBUFFER: number;
			public static GL_RENDERBUFFER: number;
			public static GL_RGBA4: number;
			public static GL_RGB5_A1: number;
			public static GL_RGB565: number;
			public static GL_DEPTH_COMPONENT16: number;
			public static GL_STENCIL_INDEX: number;
			public static GL_STENCIL_INDEX8: number;
			public static GL_RENDERBUFFER_WIDTH: number;
			public static GL_RENDERBUFFER_HEIGHT: number;
			public static GL_RENDERBUFFER_INTERNAL_FORMAT: number;
			public static GL_RENDERBUFFER_RED_SIZE: number;
			public static GL_RENDERBUFFER_GREEN_SIZE: number;
			public static GL_RENDERBUFFER_BLUE_SIZE: number;
			public static GL_RENDERBUFFER_ALPHA_SIZE: number;
			public static GL_RENDERBUFFER_DEPTH_SIZE: number;
			public static GL_RENDERBUFFER_STENCIL_SIZE: number;
			public static GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE: number;
			public static GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME: number;
			public static GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL: number;
			public static GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE: number;
			public static GL_COLOR_ATTACHMENT0: number;
			public static GL_DEPTH_ATTACHMENT: number;
			public static GL_STENCIL_ATTACHMENT: number;
			public static GL_NONE: number;
			public static GL_FRAMEBUFFER_COMPLETE: number;
			public static GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT: number;
			public static GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT: number;
			public static GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS: number;
			public static GL_FRAMEBUFFER_UNSUPPORTED: number;
			public static GL_FRAMEBUFFER_BINDING: number;
			public static GL_RENDERBUFFER_BINDING: number;
			public static GL_MAX_RENDERBUFFER_SIZE: number;
			public static GL_INVALID_FRAMEBUFFER_OPERATION: number;
			public static glGenFramebuffers(param0: number, param1: native.Array<number>, param2: number): void;
			public static glVertexAttrib4f(param0: number, param1: number, param2: number, param3: number, param4: number): void;
			public static glIsTexture(param0: number): boolean;
			public static glTexParameterf(param0: number, param1: number, param2: number): void;
			public static glBufferSubData(param0: number, param1: number, param2: number, param3: java.nio.Buffer): void;
			public static glUniformMatrix2fv(param0: number, param1: number, param2: boolean, param3: native.Array<number>, param4: number): void;
			public static glCopyTexSubImage2D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number): void;
			public static glGenRenderbuffers(param0: number, param1: java.nio.IntBuffer): void;
			public static glGenBuffers(param0: number, param1: native.Array<number>, param2: number): void;
			public static glGetError(): number;
			public static glStencilFunc(param0: number, param1: number, param2: number): void;
			public static glBlendFuncSeparate(param0: number, param1: number, param2: number, param3: number): void;
			public static glHint(param0: number, param1: number): void;
			public static glCreateProgram(): number;
			public static glGetProgramiv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glGetUniformiv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glFramebufferTexture2D(param0: number, param1: number, param2: number, param3: number, param4: number): void;
			public static glBindAttribLocation(param0: number, param1: number, param2: string): void;
			public static glUniform3iv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glCompressedTexImage2D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: java.nio.Buffer): void;
			public static glUniform4fv(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
			public static glDisableVertexAttribArray(param0: number): void;
			public static glGetActiveUniform(param0: number, param1: number, param2: number, param3: native.Array<number>, param4: number, param5: native.Array<number>, param6: number, param7: native.Array<number>, param8: number, param9: native.Array<number>, param10: number): void;
			public static glClearColor(param0: number, param1: number, param2: number, param3: number): void;
			public static glReleaseShaderCompiler(): void;
			public static glUniform4i(param0: number, param1: number, param2: number, param3: number, param4: number): void;
			public static glGetIntegerv(param0: number, param1: native.Array<number>, param2: number): void;
			public static glIsRenderbuffer(param0: number): boolean;
			public static glLineWidth(param0: number): void;
			public static glGetTexParameterfv(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
			public static glLinkProgram(param0: number): void;
			public static glPolygonOffset(param0: number, param1: number): void;
			public static glGetShaderSource(param0: number, param1: number, param2: java.nio.IntBuffer, param3: number): void;
			public static glGetAttachedShaders(param0: number, param1: number, param2: java.nio.IntBuffer, param3: java.nio.IntBuffer): void;
			public static glGetActiveUniform(param0: number, param1: number, param2: number, param3: java.nio.IntBuffer, param4: java.nio.IntBuffer, param5: java.nio.IntBuffer, param6: number): void;
			public static glGetShaderInfoLog(param0: number): string;
			public static glGetActiveAttrib(param0: number, param1: number, param2: number, param3: java.nio.IntBuffer, param4: java.nio.IntBuffer, param5: java.nio.IntBuffer, param6: number): void;
			public static glGetShaderPrecisionFormat(param0: number, param1: number, param2: native.Array<number>, param3: number, param4: native.Array<number>, param5: number): void;
			public static glDepthRangef(param0: number, param1: number): void;
			public static glUniform4iv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glGetBooleanv(param0: number, param1: java.nio.IntBuffer): void;
			public static glVertexAttrib3f(param0: number, param1: number, param2: number, param3: number): void;
			public static glGetBufferParameteriv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glVertexAttrib4fv(param0: number, param1: native.Array<number>, param2: number): void;
			public static glBlendFunc(param0: number, param1: number): void;
			public static glDeleteTextures(param0: number, param1: native.Array<number>, param2: number): void;
			public static glGenTextures(param0: number, param1: java.nio.IntBuffer): void;
			public static glGetVertexAttribfv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glUniform3fv(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
			public static glIsFramebuffer(param0: number): boolean;
			public static glDeleteBuffers(param0: number, param1: java.nio.IntBuffer): void;
			public static glGetProgramiv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glRenderbufferStorage(param0: number, param1: number, param2: number, param3: number): void;
			public static glCullFace(param0: number): void;
			public static glDeleteProgram(param0: number): void;
			public static glDrawElements(param0: number, param1: number, param2: number, param3: number): void;
			public static glStencilOpSeparate(param0: number, param1: number, param2: number, param3: number): void;
			public static glGetShaderPrecisionFormat(param0: number, param1: number, param2: java.nio.IntBuffer, param3: java.nio.IntBuffer): void;
			public static glVertexAttrib4fv(param0: number, param1: java.nio.FloatBuffer): void;
			public static glUniformMatrix3fv(param0: number, param1: number, param2: boolean, param3: native.Array<number>, param4: number): void;
			public static glColorMask(param0: boolean, param1: boolean, param2: boolean, param3: boolean): void;
			public static glUniform1f(param0: number, param1: number): void;
			public static glStencilFuncSeparate(param0: number, param1: number, param2: number, param3: number): void;
			public static glBindRenderbuffer(param0: number, param1: number): void;
			public static glFramebufferRenderbuffer(param0: number, param1: number, param2: number, param3: number): void;
			public static glBlendEquationSeparate(param0: number, param1: number): void;
			public static glGenTextures(param0: number, param1: native.Array<number>, param2: number): void;
			public static glIsShader(param0: number): boolean;
			public static glVertexAttrib3fv(param0: number, param1: native.Array<number>, param2: number): void;
			public static glValidateProgram(param0: number): void;
			public static glBindTexture(param0: number, param1: number): void;
			public static glCompressedTexSubImage2D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number, param8: java.nio.Buffer): void;
			public static glBindFramebuffer(param0: number, param1: number): void;
			public static glGenFramebuffers(param0: number, param1: java.nio.IntBuffer): void;
			public static glGetTexParameteriv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glGetBufferParameteriv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glGetIntegerv(param0: number, param1: java.nio.IntBuffer): void;
			public static glDepthMask(param0: boolean): void;
			public static glUniform1i(param0: number, param1: number): void;
			public static glUniform4fv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glGetFramebufferAttachmentParameteriv(param0: number, param1: number, param2: number, param3: native.Array<number>, param4: number): void;
			public static glStencilMaskSeparate(param0: number, param1: number): void;
			public static glDetachShader(param0: number, param1: number): void;
			public static glCheckFramebufferStatus(param0: number): number;
			public static glClearStencil(param0: number): void;
			public static glFlush(): void;
			public static glTexParameteriv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glVertexAttrib2f(param0: number, param1: number, param2: number): void;
			public static glTexSubImage2D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number, param8: java.nio.Buffer): void;
			public static glVertexAttrib1fv(param0: number, param1: native.Array<number>, param2: number): void;
			public static glGenRenderbuffers(param0: number, param1: native.Array<number>, param2: number): void;
			public static glGetUniformiv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glScissor(param0: number, param1: number, param2: number, param3: number): void;
			public static glDeleteShader(param0: number): void;
			public static glDeleteFramebuffers(param0: number, param1: native.Array<number>, param2: number): void;
			public static glGetBooleanv(param0: number, param1: native.Array<boolean>, param2: number): void;
			public static glUniform3i(param0: number, param1: number, param2: number, param3: number): void;
			public static glVertexAttrib2fv(param0: number, param1: native.Array<number>, param2: number): void;
			public static glGetVertexAttribiv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glUniform2fv(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
			public static glGetShaderiv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glShaderBinary(param0: number, param1: java.nio.IntBuffer, param2: number, param3: java.nio.Buffer, param4: number): void;
			public static glUniformMatrix4fv(param0: number, param1: number, param2: boolean, param3: native.Array<number>, param4: number): void;
			public static glGetShaderSource(param0: number, param1: number, param2: native.Array<number>, param3: number, param4: native.Array<number>, param5: number): void;
			public static glGetString(param0: number): string;
			public static glShaderBinary(param0: number, param1: native.Array<number>, param2: number, param3: number, param4: java.nio.Buffer, param5: number): void;
			public static glTexParameteri(param0: number, param1: number, param2: number): void;
			public static glUniformMatrix2fv(param0: number, param1: number, param2: boolean, param3: java.nio.FloatBuffer): void;
			public static glGetAttribLocation(param0: number, param1: string): number;
			public static glTexParameterfv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glGetShaderSource(param0: number): string;
			public static glStencilOp(param0: number, param1: number, param2: number): void;
			public static glUseProgram(param0: number): void;
			public static glBufferData(param0: number, param1: number, param2: java.nio.Buffer, param3: number): void;
			public static glPixelStorei(param0: number, param1: number): void;
			public static glUniformMatrix4fv(param0: number, param1: number, param2: boolean, param3: java.nio.FloatBuffer): void;
			public static glCompileShader(param0: number): void;
			public static glTexParameteriv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public constructor();
			public static glGetRenderbufferParameteriv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glUniform1iv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glDeleteRenderbuffers(param0: number, param1: java.nio.IntBuffer): void;
			public static glUniform2iv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glUniformMatrix3fv(param0: number, param1: number, param2: boolean, param3: java.nio.FloatBuffer): void;
			public static glGetTexParameteriv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glDeleteBuffers(param0: number, param1: native.Array<number>, param2: number): void;
			public static glDeleteRenderbuffers(param0: number, param1: native.Array<number>, param2: number): void;
			public static glUniform1iv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glDepthFunc(param0: number): void;
			public static glGetActiveAttrib(param0: number, param1: number, param2: java.nio.IntBuffer, param3: java.nio.IntBuffer): string;
			public static glVertexAttrib2fv(param0: number, param1: java.nio.FloatBuffer): void;
			public static glClear(param0: number): void;
			public static glBlendColor(param0: number, param1: number, param2: number, param3: number): void;
			public static glBindBuffer(param0: number, param1: number): void;
			public static glVertexAttribPointer(param0: number, param1: number, param2: number, param3: boolean, param4: number, param5: number): void;
			public static glDisable(param0: number): void;
			public static glIsProgram(param0: number): boolean;
			public static glUniform2fv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glGetAttachedShaders(param0: number, param1: number, param2: native.Array<number>, param3: number, param4: native.Array<number>, param5: number): void;
			public static glDrawArrays(param0: number, param1: number, param2: number): void;
			public static glGetUniformLocation(param0: number, param1: string): number;
			public static glGetFloatv(param0: number, param1: java.nio.FloatBuffer): void;
			public static glGetFramebufferAttachmentParameteriv(param0: number, param1: number, param2: number, param3: java.nio.IntBuffer): void;
			public static glSampleCoverage(param0: number, param1: boolean): void;
			public static glUniform1fv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glIsEnabled(param0: number): boolean;
			public static glVertexAttrib3fv(param0: number, param1: java.nio.FloatBuffer): void;
			public static glGetVertexAttribfv(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
			public static glBlendEquation(param0: number): void;
			public static glStencilMask(param0: number): void;
			public static glCreateShader(param0: number): number;
			public static glGetShaderiv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glViewport(param0: number, param1: number, param2: number, param3: number): void;
			public static glFrontFace(param0: number): void;
			public static glEnableVertexAttribArray(param0: number): void;
			public static glIsBuffer(param0: number): boolean;
			public static glVertexAttrib1f(param0: number, param1: number): void;
			public static glVertexAttrib1fv(param0: number, param1: java.nio.FloatBuffer): void;
			public static glGenerateMipmap(param0: number): void;
			public static glGetTexParameterfv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glGetUniformfv(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
			public static glGenBuffers(param0: number, param1: java.nio.IntBuffer): void;
			public static glReadPixels(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: java.nio.Buffer): void;
			public static glUniform3iv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glGetActiveUniform(param0: number, param1: number, param2: native.Array<number>, param3: number, param4: native.Array<number>, param5: number): string;
			public static glVertexAttribPointer(param0: number, param1: number, param2: number, param3: boolean, param4: number, param5: java.nio.Buffer): void;
			public static glGetUniformfv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glUniform4iv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glGetFloatv(param0: number, param1: native.Array<number>, param2: number): void;
			public static glGetActiveAttrib(param0: number, param1: number, param2: native.Array<number>, param3: number, param4: native.Array<number>, param5: number): string;
			public static glAttachShader(param0: number, param1: number): void;
			public static glActiveTexture(param0: number): void;
			public static glUniform1fv(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
			public static glDrawElements(param0: number, param1: number, param2: number, param3: java.nio.Buffer): void;
			public static glGetActiveUniform(param0: number, param1: number, param2: java.nio.IntBuffer, param3: java.nio.IntBuffer): string;
			public static glUniform3f(param0: number, param1: number, param2: number, param3: number): void;
			public static glCopyTexImage2D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number): void;
			public static glFinish(): void;
			public static glUniform3fv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glUniform2i(param0: number, param1: number, param2: number): void;
			public static glGetVertexAttribiv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glUniform2f(param0: number, param1: number, param2: number): void;
			public static glDeleteTextures(param0: number, param1: java.nio.IntBuffer): void;
			public static glTexImage2D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number, param8: java.nio.Buffer): void;
			public static glGetProgramInfoLog(param0: number): string;
			public static glTexParameterfv(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
			public static glShaderSource(param0: number, param1: string): void;
			public static glUniform4f(param0: number, param1: number, param2: number, param3: number, param4: number): void;
			public static glEnable(param0: number): void;
			public static glDeleteFramebuffers(param0: number, param1: java.nio.IntBuffer): void;
			public static glGetRenderbufferParameteriv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glUniform2iv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glGetActiveAttrib(param0: number, param1: number, param2: number, param3: native.Array<number>, param4: number, param5: native.Array<number>, param6: number, param7: native.Array<number>, param8: number, param9: native.Array<number>, param10: number): void;
			public static glClearDepthf(param0: number): void;
		}
	}
}

declare module android {
	export module opengl {
		export class GLES30 extends android.opengl.GLES20 {
			public static class: java.lang.Class<android.opengl.GLES30>;
			public static GL_READ_BUFFER: number;
			public static GL_UNPACK_ROW_LENGTH: number;
			public static GL_UNPACK_SKIP_ROWS: number;
			public static GL_UNPACK_SKIP_PIXELS: number;
			public static GL_PACK_ROW_LENGTH: number;
			public static GL_PACK_SKIP_ROWS: number;
			public static GL_PACK_SKIP_PIXELS: number;
			public static GL_COLOR: number;
			public static GL_DEPTH: number;
			public static GL_STENCIL: number;
			public static GL_RED: number;
			public static GL_RGB8: number;
			public static GL_RGBA8: number;
			public static GL_RGB10_A2: number;
			public static GL_TEXTURE_BINDING_3D: number;
			public static GL_UNPACK_SKIP_IMAGES: number;
			public static GL_UNPACK_IMAGE_HEIGHT: number;
			public static GL_TEXTURE_3D: number;
			public static GL_TEXTURE_WRAP_R: number;
			public static GL_MAX_3D_TEXTURE_SIZE: number;
			public static GL_UNSIGNED_INT_2_10_10_10_REV: number;
			public static GL_MAX_ELEMENTS_VERTICES: number;
			public static GL_MAX_ELEMENTS_INDICES: number;
			public static GL_TEXTURE_MIN_LOD: number;
			public static GL_TEXTURE_MAX_LOD: number;
			public static GL_TEXTURE_BASE_LEVEL: number;
			public static GL_TEXTURE_MAX_LEVEL: number;
			public static GL_MIN: number;
			public static GL_MAX: number;
			public static GL_DEPTH_COMPONENT24: number;
			public static GL_MAX_TEXTURE_LOD_BIAS: number;
			public static GL_TEXTURE_COMPARE_MODE: number;
			public static GL_TEXTURE_COMPARE_FUNC: number;
			public static GL_CURRENT_QUERY: number;
			public static GL_QUERY_RESULT: number;
			public static GL_QUERY_RESULT_AVAILABLE: number;
			public static GL_BUFFER_MAPPED: number;
			public static GL_BUFFER_MAP_POINTER: number;
			public static GL_STREAM_READ: number;
			public static GL_STREAM_COPY: number;
			public static GL_STATIC_READ: number;
			public static GL_STATIC_COPY: number;
			public static GL_DYNAMIC_READ: number;
			public static GL_DYNAMIC_COPY: number;
			public static GL_MAX_DRAW_BUFFERS: number;
			public static GL_DRAW_BUFFER0: number;
			public static GL_DRAW_BUFFER1: number;
			public static GL_DRAW_BUFFER2: number;
			public static GL_DRAW_BUFFER3: number;
			public static GL_DRAW_BUFFER4: number;
			public static GL_DRAW_BUFFER5: number;
			public static GL_DRAW_BUFFER6: number;
			public static GL_DRAW_BUFFER7: number;
			public static GL_DRAW_BUFFER8: number;
			public static GL_DRAW_BUFFER9: number;
			public static GL_DRAW_BUFFER10: number;
			public static GL_DRAW_BUFFER11: number;
			public static GL_DRAW_BUFFER12: number;
			public static GL_DRAW_BUFFER13: number;
			public static GL_DRAW_BUFFER14: number;
			public static GL_DRAW_BUFFER15: number;
			public static GL_MAX_FRAGMENT_UNIFORM_COMPONENTS: number;
			public static GL_MAX_VERTEX_UNIFORM_COMPONENTS: number;
			public static GL_SAMPLER_3D: number;
			public static GL_SAMPLER_2D_SHADOW: number;
			public static GL_FRAGMENT_SHADER_DERIVATIVE_HINT: number;
			public static GL_PIXEL_PACK_BUFFER: number;
			public static GL_PIXEL_UNPACK_BUFFER: number;
			public static GL_PIXEL_PACK_BUFFER_BINDING: number;
			public static GL_PIXEL_UNPACK_BUFFER_BINDING: number;
			public static GL_FLOAT_MAT2x3: number;
			public static GL_FLOAT_MAT2x4: number;
			public static GL_FLOAT_MAT3x2: number;
			public static GL_FLOAT_MAT3x4: number;
			public static GL_FLOAT_MAT4x2: number;
			public static GL_FLOAT_MAT4x3: number;
			public static GL_SRGB: number;
			public static GL_SRGB8: number;
			public static GL_SRGB8_ALPHA8: number;
			public static GL_COMPARE_REF_TO_TEXTURE: number;
			public static GL_MAJOR_VERSION: number;
			public static GL_MINOR_VERSION: number;
			public static GL_NUM_EXTENSIONS: number;
			public static GL_RGBA32F: number;
			public static GL_RGB32F: number;
			public static GL_RGBA16F: number;
			public static GL_RGB16F: number;
			public static GL_VERTEX_ATTRIB_ARRAY_INTEGER: number;
			public static GL_MAX_ARRAY_TEXTURE_LAYERS: number;
			public static GL_MIN_PROGRAM_TEXEL_OFFSET: number;
			public static GL_MAX_PROGRAM_TEXEL_OFFSET: number;
			public static GL_MAX_VARYING_COMPONENTS: number;
			public static GL_TEXTURE_2D_ARRAY: number;
			public static GL_TEXTURE_BINDING_2D_ARRAY: number;
			public static GL_R11F_G11F_B10F: number;
			public static GL_UNSIGNED_INT_10F_11F_11F_REV: number;
			public static GL_RGB9_E5: number;
			public static GL_UNSIGNED_INT_5_9_9_9_REV: number;
			public static GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH: number;
			public static GL_TRANSFORM_FEEDBACK_BUFFER_MODE: number;
			public static GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS: number;
			public static GL_TRANSFORM_FEEDBACK_VARYINGS: number;
			public static GL_TRANSFORM_FEEDBACK_BUFFER_START: number;
			public static GL_TRANSFORM_FEEDBACK_BUFFER_SIZE: number;
			public static GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN: number;
			public static GL_RASTERIZER_DISCARD: number;
			public static GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS: number;
			public static GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS: number;
			public static GL_INTERLEAVED_ATTRIBS: number;
			public static GL_SEPARATE_ATTRIBS: number;
			public static GL_TRANSFORM_FEEDBACK_BUFFER: number;
			public static GL_TRANSFORM_FEEDBACK_BUFFER_BINDING: number;
			public static GL_RGBA32UI: number;
			public static GL_RGB32UI: number;
			public static GL_RGBA16UI: number;
			public static GL_RGB16UI: number;
			public static GL_RGBA8UI: number;
			public static GL_RGB8UI: number;
			public static GL_RGBA32I: number;
			public static GL_RGB32I: number;
			public static GL_RGBA16I: number;
			public static GL_RGB16I: number;
			public static GL_RGBA8I: number;
			public static GL_RGB8I: number;
			public static GL_RED_INTEGER: number;
			public static GL_RGB_INTEGER: number;
			public static GL_RGBA_INTEGER: number;
			public static GL_SAMPLER_2D_ARRAY: number;
			public static GL_SAMPLER_2D_ARRAY_SHADOW: number;
			public static GL_SAMPLER_CUBE_SHADOW: number;
			public static GL_UNSIGNED_INT_VEC2: number;
			public static GL_UNSIGNED_INT_VEC3: number;
			public static GL_UNSIGNED_INT_VEC4: number;
			public static GL_INT_SAMPLER_2D: number;
			public static GL_INT_SAMPLER_3D: number;
			public static GL_INT_SAMPLER_CUBE: number;
			public static GL_INT_SAMPLER_2D_ARRAY: number;
			public static GL_UNSIGNED_INT_SAMPLER_2D: number;
			public static GL_UNSIGNED_INT_SAMPLER_3D: number;
			public static GL_UNSIGNED_INT_SAMPLER_CUBE: number;
			public static GL_UNSIGNED_INT_SAMPLER_2D_ARRAY: number;
			public static GL_BUFFER_ACCESS_FLAGS: number;
			public static GL_BUFFER_MAP_LENGTH: number;
			public static GL_BUFFER_MAP_OFFSET: number;
			public static GL_DEPTH_COMPONENT32F: number;
			public static GL_DEPTH32F_STENCIL8: number;
			public static GL_FLOAT_32_UNSIGNED_INT_24_8_REV: number;
			public static GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING: number;
			public static GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE: number;
			public static GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE: number;
			public static GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE: number;
			public static GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE: number;
			public static GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE: number;
			public static GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE: number;
			public static GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE: number;
			public static GL_FRAMEBUFFER_DEFAULT: number;
			public static GL_FRAMEBUFFER_UNDEFINED: number;
			public static GL_DEPTH_STENCIL_ATTACHMENT: number;
			public static GL_DEPTH_STENCIL: number;
			public static GL_UNSIGNED_INT_24_8: number;
			public static GL_DEPTH24_STENCIL8: number;
			public static GL_UNSIGNED_NORMALIZED: number;
			public static GL_DRAW_FRAMEBUFFER_BINDING: number;
			public static GL_READ_FRAMEBUFFER: number;
			public static GL_DRAW_FRAMEBUFFER: number;
			public static GL_READ_FRAMEBUFFER_BINDING: number;
			public static GL_RENDERBUFFER_SAMPLES: number;
			public static GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER: number;
			public static GL_MAX_COLOR_ATTACHMENTS: number;
			public static GL_COLOR_ATTACHMENT1: number;
			public static GL_COLOR_ATTACHMENT2: number;
			public static GL_COLOR_ATTACHMENT3: number;
			public static GL_COLOR_ATTACHMENT4: number;
			public static GL_COLOR_ATTACHMENT5: number;
			public static GL_COLOR_ATTACHMENT6: number;
			public static GL_COLOR_ATTACHMENT7: number;
			public static GL_COLOR_ATTACHMENT8: number;
			public static GL_COLOR_ATTACHMENT9: number;
			public static GL_COLOR_ATTACHMENT10: number;
			public static GL_COLOR_ATTACHMENT11: number;
			public static GL_COLOR_ATTACHMENT12: number;
			public static GL_COLOR_ATTACHMENT13: number;
			public static GL_COLOR_ATTACHMENT14: number;
			public static GL_COLOR_ATTACHMENT15: number;
			public static GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE: number;
			public static GL_MAX_SAMPLES: number;
			public static GL_HALF_FLOAT: number;
			public static GL_MAP_READ_BIT: number;
			public static GL_MAP_WRITE_BIT: number;
			public static GL_MAP_INVALIDATE_RANGE_BIT: number;
			public static GL_MAP_INVALIDATE_BUFFER_BIT: number;
			public static GL_MAP_FLUSH_EXPLICIT_BIT: number;
			public static GL_MAP_UNSYNCHRONIZED_BIT: number;
			public static GL_RG: number;
			public static GL_RG_INTEGER: number;
			public static GL_R8: number;
			public static GL_RG8: number;
			public static GL_R16F: number;
			public static GL_R32F: number;
			public static GL_RG16F: number;
			public static GL_RG32F: number;
			public static GL_R8I: number;
			public static GL_R8UI: number;
			public static GL_R16I: number;
			public static GL_R16UI: number;
			public static GL_R32I: number;
			public static GL_R32UI: number;
			public static GL_RG8I: number;
			public static GL_RG8UI: number;
			public static GL_RG16I: number;
			public static GL_RG16UI: number;
			public static GL_RG32I: number;
			public static GL_RG32UI: number;
			public static GL_VERTEX_ARRAY_BINDING: number;
			public static GL_R8_SNORM: number;
			public static GL_RG8_SNORM: number;
			public static GL_RGB8_SNORM: number;
			public static GL_RGBA8_SNORM: number;
			public static GL_SIGNED_NORMALIZED: number;
			public static GL_PRIMITIVE_RESTART_FIXED_INDEX: number;
			public static GL_COPY_READ_BUFFER: number;
			public static GL_COPY_WRITE_BUFFER: number;
			public static GL_COPY_READ_BUFFER_BINDING: number;
			public static GL_COPY_WRITE_BUFFER_BINDING: number;
			public static GL_UNIFORM_BUFFER: number;
			public static GL_UNIFORM_BUFFER_BINDING: number;
			public static GL_UNIFORM_BUFFER_START: number;
			public static GL_UNIFORM_BUFFER_SIZE: number;
			public static GL_MAX_VERTEX_UNIFORM_BLOCKS: number;
			public static GL_MAX_FRAGMENT_UNIFORM_BLOCKS: number;
			public static GL_MAX_COMBINED_UNIFORM_BLOCKS: number;
			public static GL_MAX_UNIFORM_BUFFER_BINDINGS: number;
			public static GL_MAX_UNIFORM_BLOCK_SIZE: number;
			public static GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS: number;
			public static GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS: number;
			public static GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT: number;
			public static GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH: number;
			public static GL_ACTIVE_UNIFORM_BLOCKS: number;
			public static GL_UNIFORM_TYPE: number;
			public static GL_UNIFORM_SIZE: number;
			public static GL_UNIFORM_NAME_LENGTH: number;
			public static GL_UNIFORM_BLOCK_INDEX: number;
			public static GL_UNIFORM_OFFSET: number;
			public static GL_UNIFORM_ARRAY_STRIDE: number;
			public static GL_UNIFORM_MATRIX_STRIDE: number;
			public static GL_UNIFORM_IS_ROW_MAJOR: number;
			public static GL_UNIFORM_BLOCK_BINDING: number;
			public static GL_UNIFORM_BLOCK_DATA_SIZE: number;
			public static GL_UNIFORM_BLOCK_NAME_LENGTH: number;
			public static GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS: number;
			public static GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES: number;
			public static GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER: number;
			public static GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER: number;
			public static GL_INVALID_INDEX: number;
			public static GL_MAX_VERTEX_OUTPUT_COMPONENTS: number;
			public static GL_MAX_FRAGMENT_INPUT_COMPONENTS: number;
			public static GL_MAX_SERVER_WAIT_TIMEOUT: number;
			public static GL_OBJECT_TYPE: number;
			public static GL_SYNC_CONDITION: number;
			public static GL_SYNC_STATUS: number;
			public static GL_SYNC_FLAGS: number;
			public static GL_SYNC_FENCE: number;
			public static GL_SYNC_GPU_COMMANDS_COMPLETE: number;
			public static GL_UNSIGNALED: number;
			public static GL_SIGNALED: number;
			public static GL_ALREADY_SIGNALED: number;
			public static GL_TIMEOUT_EXPIRED: number;
			public static GL_CONDITION_SATISFIED: number;
			public static GL_WAIT_FAILED: number;
			public static GL_SYNC_FLUSH_COMMANDS_BIT: number;
			public static GL_TIMEOUT_IGNORED: number;
			public static GL_VERTEX_ATTRIB_ARRAY_DIVISOR: number;
			public static GL_ANY_SAMPLES_PASSED: number;
			public static GL_ANY_SAMPLES_PASSED_CONSERVATIVE: number;
			public static GL_SAMPLER_BINDING: number;
			public static GL_RGB10_A2UI: number;
			public static GL_TEXTURE_SWIZZLE_R: number;
			public static GL_TEXTURE_SWIZZLE_G: number;
			public static GL_TEXTURE_SWIZZLE_B: number;
			public static GL_TEXTURE_SWIZZLE_A: number;
			public static GL_GREEN: number;
			public static GL_BLUE: number;
			public static GL_INT_2_10_10_10_REV: number;
			public static GL_TRANSFORM_FEEDBACK: number;
			public static GL_TRANSFORM_FEEDBACK_PAUSED: number;
			public static GL_TRANSFORM_FEEDBACK_ACTIVE: number;
			public static GL_TRANSFORM_FEEDBACK_BINDING: number;
			public static GL_PROGRAM_BINARY_RETRIEVABLE_HINT: number;
			public static GL_PROGRAM_BINARY_LENGTH: number;
			public static GL_NUM_PROGRAM_BINARY_FORMATS: number;
			public static GL_PROGRAM_BINARY_FORMATS: number;
			public static GL_COMPRESSED_R11_EAC: number;
			public static GL_COMPRESSED_SIGNED_R11_EAC: number;
			public static GL_COMPRESSED_RG11_EAC: number;
			public static GL_COMPRESSED_SIGNED_RG11_EAC: number;
			public static GL_COMPRESSED_RGB8_ETC2: number;
			public static GL_COMPRESSED_SRGB8_ETC2: number;
			public static GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2: number;
			public static GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2: number;
			public static GL_COMPRESSED_RGBA8_ETC2_EAC: number;
			public static GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC: number;
			public static GL_TEXTURE_IMMUTABLE_FORMAT: number;
			public static GL_MAX_ELEMENT_INDEX: number;
			public static GL_NUM_SAMPLE_COUNTS: number;
			public static GL_TEXTURE_IMMUTABLE_LEVELS: number;
			public static glTexSubImage3D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number, param8: number, param9: number, param10: number): void;
			public static glUniform3uiv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glClearBufferuiv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glClientWaitSync(param0: number, param1: number, param2: number): number;
			public static glInvalidateFramebuffer(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glVertexAttribI4ui(param0: number, param1: number, param2: number, param3: number, param4: number): void;
			public static glCopyBufferSubData(param0: number, param1: number, param2: number, param3: number, param4: number): void;
			public static glGetQueryiv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glFramebufferTextureLayer(param0: number, param1: number, param2: number, param3: number, param4: number): void;
			public static glGetSamplerParameteriv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glInvalidateSubFramebuffer(param0: number, param1: number, param2: java.nio.IntBuffer, param3: number, param4: number, param5: number, param6: number): void;
			public static glUniform2uiv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glDrawArraysInstanced(param0: number, param1: number, param2: number, param3: number): void;
			public static glRenderbufferStorageMultisample(param0: number, param1: number, param2: number, param3: number, param4: number): void;
			public static glGetProgramBinary(param0: number, param1: number, param2: java.nio.IntBuffer, param3: java.nio.IntBuffer, param4: java.nio.Buffer): void;
			public static glDeleteSamplers(param0: number, param1: java.nio.IntBuffer): void;
			public static glSamplerParameterf(param0: number, param1: number, param2: number): void;
			public static glDeleteSync(param0: number): void;
			public static glGetActiveUniformBlockName(param0: number, param1: number, param2: number, param3: native.Array<number>, param4: number, param5: native.Array<number>, param6: number): void;
			public static glSamplerParameteri(param0: number, param1: number, param2: number): void;
			public static glGenSamplers(param0: number, param1: native.Array<number>, param2: number): void;
			public static glUniformMatrix2x3fv(param0: number, param1: number, param2: boolean, param3: native.Array<number>, param4: number): void;
			public static glUniformMatrix3x4fv(param0: number, param1: number, param2: boolean, param3: native.Array<number>, param4: number): void;
			public static glVertexAttribI4i(param0: number, param1: number, param2: number, param3: number, param4: number): void;
			public static glGetSynciv(param0: number, param1: number, param2: number, param3: native.Array<number>, param4: number, param5: native.Array<number>, param6: number): void;
			public static glClearBufferuiv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glGetTransformFeedbackVarying(param0: number, param1: number, param2: java.nio.IntBuffer, param3: java.nio.IntBuffer): string;
			public static glUniform4uiv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glUniformMatrix3x2fv(param0: number, param1: number, param2: boolean, param3: native.Array<number>, param4: number): void;
			public static glUniformMatrix4x2fv(param0: number, param1: number, param2: boolean, param3: java.nio.FloatBuffer): void;
			public static glBeginQuery(param0: number, param1: number): void;
			public static glVertexAttribI4uiv(param0: number, param1: native.Array<number>, param2: number): void;
			public static glEndQuery(param0: number): void;
			public static glGetVertexAttribIiv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public constructor();
			public static glGenTransformFeedbacks(param0: number, param1: native.Array<number>, param2: number): void;
			public static glGetActiveUniformBlockiv(param0: number, param1: number, param2: number, param3: java.nio.IntBuffer): void;
			public static glBindSampler(param0: number, param1: number): void;
			public static glCompressedTexImage3D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number, param8: java.nio.Buffer): void;
			public static glTexStorage3D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): void;
			public static glGenTransformFeedbacks(param0: number, param1: java.nio.IntBuffer): void;
			public static glCompressedTexImage3D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number, param8: number): void;
			public static glDrawBuffers(param0: number, param1: native.Array<number>, param2: number): void;
			public static glUniformBlockBinding(param0: number, param1: number, param2: number): void;
			public static glUniformMatrix4x3fv(param0: number, param1: number, param2: boolean, param3: native.Array<number>, param4: number): void;
			public static glTexSubImage3D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number, param8: number, param9: number, param10: java.nio.Buffer): void;
			public static glUniformMatrix4x3fv(param0: number, param1: number, param2: boolean, param3: java.nio.FloatBuffer): void;
			public static glIsQuery(param0: number): boolean;
			public static glUniform1ui(param0: number, param1: number): void;
			public static glIsSampler(param0: number): boolean;
			public static glUniformMatrix3x2fv(param0: number, param1: number, param2: boolean, param3: java.nio.FloatBuffer): void;
			public static glIsSync(param0: number): boolean;
			public static glUniform3uiv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glGetUniformIndices(param0: number, param1: native.Array<string>, param2: native.Array<number>, param3: number): void;
			public static glVertexAttribI4iv(param0: number, param1: java.nio.IntBuffer): void;
			public static glUniform4uiv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glUniformMatrix4x2fv(param0: number, param1: number, param2: boolean, param3: native.Array<number>, param4: number): void;
			public static glTexStorage2D(param0: number, param1: number, param2: number, param3: number, param4: number): void;
			public static glGetIntegeri_v(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glSamplerParameteriv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glGenVertexArrays(param0: number, param1: native.Array<number>, param2: number): void;
			public static glGenQueries(param0: number, param1: java.nio.IntBuffer): void;
			public static glGetFragDataLocation(param0: number, param1: string): number;
			public static glGetUniformBlockIndex(param0: number, param1: string): number;
			public static glGetVertexAttribIuiv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glGetSynciv(param0: number, param1: number, param2: number, param3: java.nio.IntBuffer, param4: java.nio.IntBuffer): void;
			public static glUniformMatrix3x4fv(param0: number, param1: number, param2: boolean, param3: java.nio.FloatBuffer): void;
			public static glDeleteVertexArrays(param0: number, param1: native.Array<number>, param2: number): void;
			public static glClearBufferfi(param0: number, param1: number, param2: number, param3: number): void;
			public static glUniformMatrix2x4fv(param0: number, param1: number, param2: boolean, param3: java.nio.FloatBuffer): void;
			public static glUniformMatrix2x3fv(param0: number, param1: number, param2: boolean, param3: java.nio.FloatBuffer): void;
			public static glGetActiveUniformBlockName(param0: number, param1: number): string;
			public static glFenceSync(param0: number, param1: number): number;
			public static glGetSamplerParameteriv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glIsTransformFeedback(param0: number): boolean;
			public static glGetQueryObjectuiv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glClearBufferfv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glGetInternalformativ(param0: number, param1: number, param2: number, param3: number, param4: native.Array<number>, param5: number): void;
			public static glBindVertexArray(param0: number): void;
			public static glDeleteQueries(param0: number, param1: java.nio.IntBuffer): void;
			public static glGetVertexAttribIuiv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glGetInteger64i_v(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glCompressedTexSubImage3D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number, param8: number, param9: number, param10: number): void;
			public static glGetInteger64i_v(param0: number, param1: number, param2: java.nio.LongBuffer): void;
			public static glFlushMappedBufferRange(param0: number, param1: number, param2: number): void;
			public static glReadBuffer(param0: number): void;
			public static glUniformMatrix2x4fv(param0: number, param1: number, param2: boolean, param3: native.Array<number>, param4: number): void;
			public static glGetBufferPointerv(param0: number, param1: number): java.nio.Buffer;
			public static glGetTransformFeedbackVarying(param0: number, param1: number, param2: native.Array<number>, param3: number, param4: native.Array<number>, param5: number): string;
			public static glGetActiveUniformBlockiv(param0: number, param1: number, param2: number, param3: native.Array<number>, param4: number): void;
			public static glVertexAttribI4uiv(param0: number, param1: java.nio.IntBuffer): void;
			public static glDrawBuffers(param0: number, param1: java.nio.IntBuffer): void;
			public static glSamplerParameterfv(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
			public static glDeleteQueries(param0: number, param1: native.Array<number>, param2: number): void;
			public static glGetInternalformativ(param0: number, param1: number, param2: number, param3: number, param4: java.nio.IntBuffer): void;
			public static glTexImage3D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number, param8: number, param9: java.nio.Buffer): void;
			public static glSamplerParameterfv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glInvalidateFramebuffer(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glGetActiveUniformsiv(param0: number, param1: number, param2: java.nio.IntBuffer, param3: number, param4: java.nio.IntBuffer): void;
			public static glGetTransformFeedbackVarying(param0: number, param1: number, param2: number, param3: native.Array<number>, param4: number, param5: native.Array<number>, param6: number, param7: native.Array<number>, param8: number, param9: native.Array<number>, param10: number): void;
			public static glClearBufferfv(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
			public static glProgramParameteri(param0: number, param1: number, param2: number): void;
			public static glGetStringi(param0: number, param1: number): string;
			public static glInvalidateSubFramebuffer(param0: number, param1: number, param2: native.Array<number>, param3: number, param4: number, param5: number, param6: number, param7: number): void;
			public static glMapBufferRange(param0: number, param1: number, param2: number, param3: number): java.nio.Buffer;
			public static glGetUniformuiv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glDrawElementsInstanced(param0: number, param1: number, param2: number, param3: java.nio.Buffer, param4: number): void;
			public static glGetProgramBinary(param0: number, param1: number, param2: native.Array<number>, param3: number, param4: native.Array<number>, param5: number, param6: java.nio.Buffer): void;
			public static glGetVertexAttribIiv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glGetQueryiv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glVertexAttribIPointer(param0: number, param1: number, param2: number, param3: number, param4: number): void;
			public static glGetInteger64v(param0: number, param1: native.Array<number>, param2: number): void;
			public static glDeleteSamplers(param0: number, param1: native.Array<number>, param2: number): void;
			public static glUniform1uiv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glBindBufferRange(param0: number, param1: number, param2: number, param3: number, param4: number): void;
			public static glGetActiveUniformBlockName(param0: number, param1: number, param2: java.nio.Buffer, param3: java.nio.Buffer): void;
			public static glTransformFeedbackVaryings(param0: number, param1: native.Array<string>, param2: number): void;
			public static glUniform2uiv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glDrawElementsInstanced(param0: number, param1: number, param2: number, param3: number, param4: number): void;
			public static glGetBufferParameteri64v(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glClearBufferiv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glUniform2ui(param0: number, param1: number, param2: number): void;
			public static glEndTransformFeedback(): void;
			public static glClearBufferiv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glGetSamplerParameterfv(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
			public static glIsVertexArray(param0: number): boolean;
			public static glGetUniformuiv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glCopyTexSubImage3D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number, param8: number): void;
			public static glDeleteTransformFeedbacks(param0: number, param1: native.Array<number>, param2: number): void;
			public static glBindTransformFeedback(param0: number, param1: number): void;
			public static glDrawRangeElements(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): void;
			public static glResumeTransformFeedback(): void;
			public static glProgramBinary(param0: number, param1: number, param2: java.nio.Buffer, param3: number): void;
			public static glGenVertexArrays(param0: number, param1: java.nio.IntBuffer): void;
			public static glBeginTransformFeedback(param0: number): void;
			public static glDeleteVertexArrays(param0: number, param1: java.nio.IntBuffer): void;
			public static glPauseTransformFeedback(): void;
			public static glDeleteTransformFeedbacks(param0: number, param1: java.nio.IntBuffer): void;
			public static glGetQueryObjectuiv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glBindBufferBase(param0: number, param1: number, param2: number): void;
			public static glUniform3ui(param0: number, param1: number, param2: number, param3: number): void;
			public static glGetUniformIndices(param0: number, param1: native.Array<string>, param2: java.nio.IntBuffer): void;
			public static glGenSamplers(param0: number, param1: java.nio.IntBuffer): void;
			public static glBlitFramebuffer(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number, param8: number, param9: number): void;
			public static glGetTransformFeedbackVarying(param0: number, param1: number, param2: number, param3: java.nio.IntBuffer, param4: java.nio.IntBuffer, param5: java.nio.IntBuffer, param6: number): void;
			public static glGetInteger64v(param0: number, param1: java.nio.LongBuffer): void;
			public static glGetBufferParameteri64v(param0: number, param1: number, param2: java.nio.LongBuffer): void;
			public static glUnmapBuffer(param0: number): boolean;
			public static glVertexAttribDivisor(param0: number, param1: number): void;
			public static glGetIntegeri_v(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glGetSamplerParameterfv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glSamplerParameteriv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public static glDrawRangeElements(param0: number, param1: number, param2: number, param3: number, param4: number, param5: java.nio.Buffer): void;
			public static glUniform1uiv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
			public static glGetActiveUniformsiv(param0: number, param1: number, param2: native.Array<number>, param3: number, param4: number, param5: native.Array<number>, param6: number): void;
			public static glCompressedTexSubImage3D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number, param8: number, param9: number, param10: java.nio.Buffer): void;
			public static glWaitSync(param0: number, param1: number, param2: number): void;
			public static glTexImage3D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number, param8: number, param9: number): void;
			public static glUniform4ui(param0: number, param1: number, param2: number, param3: number, param4: number): void;
			public static glVertexAttribI4iv(param0: number, param1: native.Array<number>, param2: number): void;
			public static glGenQueries(param0: number, param1: native.Array<number>, param2: number): void;
			public static glVertexAttribIPointer(param0: number, param1: number, param2: number, param3: number, param4: java.nio.Buffer): void;
		}
	}
}

declare module android {
	export module opengl {
		export class GLException extends java.lang.RuntimeException {
			public static class: java.lang.Class<android.opengl.GLException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor(param0: number);
			public constructor(param0: number, param1: string);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module android {
	export module opengl {
		export class GLSurfaceView extends android.view.SurfaceView implements android.view.SurfaceHolder.Callback {
			public static class: java.lang.Class<android.opengl.GLSurfaceView>;
			public static RENDERMODE_WHEN_DIRTY: number;
			public static RENDERMODE_CONTINUOUSLY: number;
			public static DEBUG_CHECK_GL_ERROR: number;
			public static DEBUG_LOG_GL_CALLS: number;
			public getDebugFlags(): number;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public setRenderer(param0: android.opengl.GLSurfaceView.Renderer): void;
			public getPreserveEGLContextOnPause(): boolean;
			public requestRender(): void;
			public surfaceDestroyed(param0: android.view.SurfaceHolder): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public queueEvent(param0: java.lang.Runnable): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public getRenderMode(): number;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public setEGLConfigChooser(param0: android.opengl.GLSurfaceView.EGLConfigChooser): void;
			public setEGLConfigChooser(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): void;
			public onPause(): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public finalize(): void;
			public onDetachedFromWindow(): void;
			public sendAccessibilityEvent(param0: number): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public surfaceCreated(param0: android.view.SurfaceHolder): void;
			public onResume(): void;
			public setEGLWindowSurfaceFactory(param0: android.opengl.GLSurfaceView.EGLWindowSurfaceFactory): void;
			public setPreserveEGLContextOnPause(param0: boolean): void;
			public setEGLContextFactory(param0: android.opengl.GLSurfaceView.EGLContextFactory): void;
			public setRenderMode(param0: number): void;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public setDebugFlags(param0: number): void;
			public surfaceChanged(param0: android.view.SurfaceHolder, param1: number, param2: number, param3: number): void;
			public setGLWrapper(param0: android.opengl.GLSurfaceView.GLWrapper): void;
			public constructor(param0: android.content.Context);
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public setEGLConfigChooser(param0: boolean): void;
			public setEGLContextClientVersion(param0: number): void;
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public onAttachedToWindow(): void;
		}
		export module GLSurfaceView {
			export class EGLConfigChooser extends java.lang.Object {
				public static class: java.lang.Class<android.opengl.GLSurfaceView.EGLConfigChooser>;
				/**
				 * Constructs a new instance of the android.opengl.GLSurfaceView$EGLConfigChooser interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					chooseConfig(param0: javax.microedition.khronos.egl.EGL10, param1: javax.microedition.khronos.egl.EGLDisplay): javax.microedition.khronos.egl.EGLConfig;
				});
				public constructor();
				public chooseConfig(param0: javax.microedition.khronos.egl.EGL10, param1: javax.microedition.khronos.egl.EGLDisplay): javax.microedition.khronos.egl.EGLConfig;
			}
			export class EGLContextFactory extends java.lang.Object {
				public static class: java.lang.Class<android.opengl.GLSurfaceView.EGLContextFactory>;
				/**
				 * Constructs a new instance of the android.opengl.GLSurfaceView$EGLContextFactory interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					createContext(param0: javax.microedition.khronos.egl.EGL10, param1: javax.microedition.khronos.egl.EGLDisplay, param2: javax.microedition.khronos.egl.EGLConfig): javax.microedition.khronos.egl.EGLContext;
					destroyContext(param0: javax.microedition.khronos.egl.EGL10, param1: javax.microedition.khronos.egl.EGLDisplay, param2: javax.microedition.khronos.egl.EGLContext): void;
				});
				public constructor();
				public destroyContext(param0: javax.microedition.khronos.egl.EGL10, param1: javax.microedition.khronos.egl.EGLDisplay, param2: javax.microedition.khronos.egl.EGLContext): void;
				public createContext(param0: javax.microedition.khronos.egl.EGL10, param1: javax.microedition.khronos.egl.EGLDisplay, param2: javax.microedition.khronos.egl.EGLConfig): javax.microedition.khronos.egl.EGLContext;
			}
			export class EGLWindowSurfaceFactory extends java.lang.Object {
				public static class: java.lang.Class<android.opengl.GLSurfaceView.EGLWindowSurfaceFactory>;
				/**
				 * Constructs a new instance of the android.opengl.GLSurfaceView$EGLWindowSurfaceFactory interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					createWindowSurface(param0: javax.microedition.khronos.egl.EGL10, param1: javax.microedition.khronos.egl.EGLDisplay, param2: javax.microedition.khronos.egl.EGLConfig, param3: any): javax.microedition.khronos.egl.EGLSurface;
					destroySurface(param0: javax.microedition.khronos.egl.EGL10, param1: javax.microedition.khronos.egl.EGLDisplay, param2: javax.microedition.khronos.egl.EGLSurface): void;
				});
				public constructor();
				public destroySurface(param0: javax.microedition.khronos.egl.EGL10, param1: javax.microedition.khronos.egl.EGLDisplay, param2: javax.microedition.khronos.egl.EGLSurface): void;
				public createWindowSurface(param0: javax.microedition.khronos.egl.EGL10, param1: javax.microedition.khronos.egl.EGLDisplay, param2: javax.microedition.khronos.egl.EGLConfig, param3: any): javax.microedition.khronos.egl.EGLSurface;
			}
			export class GLWrapper extends java.lang.Object {
				public static class: java.lang.Class<android.opengl.GLSurfaceView.GLWrapper>;
				/**
				 * Constructs a new instance of the android.opengl.GLSurfaceView$GLWrapper interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					wrap(param0: javax.microedition.khronos.opengles.GL): javax.microedition.khronos.opengles.GL;
				});
				public constructor();
				public wrap(param0: javax.microedition.khronos.opengles.GL): javax.microedition.khronos.opengles.GL;
			}
			export class Renderer extends java.lang.Object {
				public static class: java.lang.Class<android.opengl.GLSurfaceView.Renderer>;
				/**
				 * Constructs a new instance of the android.opengl.GLSurfaceView$Renderer interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onSurfaceCreated(param0: javax.microedition.khronos.opengles.GL10, param1: javax.microedition.khronos.egl.EGLConfig): void;
					onSurfaceChanged(param0: javax.microedition.khronos.opengles.GL10, param1: number, param2: number): void;
					onDrawFrame(param0: javax.microedition.khronos.opengles.GL10): void;
				});
				public constructor();
				public onSurfaceChanged(param0: javax.microedition.khronos.opengles.GL10, param1: number, param2: number): void;
				public onSurfaceCreated(param0: javax.microedition.khronos.opengles.GL10, param1: javax.microedition.khronos.egl.EGLConfig): void;
				public onDrawFrame(param0: javax.microedition.khronos.opengles.GL10): void;
			}
		}
	}
}

declare module android {
	export module opengl {
		export class GLU extends java.lang.Object {
			public static class: java.lang.Class<android.opengl.GLU>;
			public static gluOrtho2D(param0: javax.microedition.khronos.opengles.GL10, param1: number, param2: number, param3: number, param4: number): void;
			public static gluErrorString(param0: number): string;
			public constructor();
			public static gluProject(param0: number, param1: number, param2: number, param3: native.Array<number>, param4: number, param5: native.Array<number>, param6: number, param7: native.Array<number>, param8: number, param9: native.Array<number>, param10: number): number;
			public static gluLookAt(param0: javax.microedition.khronos.opengles.GL10, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number, param8: number, param9: number): void;
			public static gluPerspective(param0: javax.microedition.khronos.opengles.GL10, param1: number, param2: number, param3: number, param4: number): void;
			public static gluUnProject(param0: number, param1: number, param2: number, param3: native.Array<number>, param4: number, param5: native.Array<number>, param6: number, param7: native.Array<number>, param8: number, param9: native.Array<number>, param10: number): number;
		}
	}
}

declare module android {
	export module opengl {
		export class GLUtils extends java.lang.Object {
			public static class: java.lang.Class<android.opengl.GLUtils>;
			public static getEGLErrorString(param0: number): string;
			public static getInternalFormat(param0: android.graphics.Bitmap): number;
			public static texSubImage2D(param0: number, param1: number, param2: number, param3: number, param4: android.graphics.Bitmap): void;
			public static texImage2D(param0: number, param1: number, param2: android.graphics.Bitmap, param3: number): void;
			public static texSubImage2D(param0: number, param1: number, param2: number, param3: number, param4: android.graphics.Bitmap, param5: number, param6: number): void;
			public static texImage2D(param0: number, param1: number, param2: number, param3: android.graphics.Bitmap, param4: number): void;
			public static texImage2D(param0: number, param1: number, param2: number, param3: android.graphics.Bitmap, param4: number, param5: number): void;
			public static getType(param0: android.graphics.Bitmap): number;
		}
	}
}

declare module android {
	export module opengl {
		export class Matrix extends java.lang.Object {
			public static class: java.lang.Class<android.opengl.Matrix>;
			public static scaleM(param0: native.Array<number>, param1: number, param2: number, param3: number, param4: number): void;
			public static multiplyMM(param0: native.Array<number>, param1: number, param2: native.Array<number>, param3: number, param4: native.Array<number>, param5: number): void;
			public static invertM(param0: native.Array<number>, param1: number, param2: native.Array<number>, param3: number): boolean;
			public static setIdentityM(param0: native.Array<number>, param1: number): void;
			public static perspectiveM(param0: native.Array<number>, param1: number, param2: number, param3: number, param4: number, param5: number): void;
			public static rotateM(param0: native.Array<number>, param1: number, param2: number, param3: number, param4: number, param5: number): void;
			public static length(param0: number, param1: number, param2: number): number;
			public constructor();
			public static multiplyMV(param0: native.Array<number>, param1: number, param2: native.Array<number>, param3: number, param4: native.Array<number>, param5: number): void;
			public static rotateM(param0: native.Array<number>, param1: number, param2: native.Array<number>, param3: number, param4: number, param5: number, param6: number, param7: number): void;
			public static scaleM(param0: native.Array<number>, param1: number, param2: native.Array<number>, param3: number, param4: number, param5: number, param6: number): void;
			public static setRotateM(param0: native.Array<number>, param1: number, param2: number, param3: number, param4: number, param5: number): void;
			public static frustumM(param0: native.Array<number>, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number): void;
			public static setLookAtM(param0: native.Array<number>, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number, param8: number, param9: number, param10: number): void;
			public static orthoM(param0: native.Array<number>, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number): void;
			public static translateM(param0: native.Array<number>, param1: number, param2: native.Array<number>, param3: number, param4: number, param5: number, param6: number): void;
			public static transposeM(param0: native.Array<number>, param1: number, param2: native.Array<number>, param3: number): void;
			public static translateM(param0: native.Array<number>, param1: number, param2: number, param3: number, param4: number): void;
			public static setRotateEulerM(param0: native.Array<number>, param1: number, param2: number, param3: number, param4: number): void;
		}
	}
}

declare module android {
	export module opengl {
		export class Visibility extends java.lang.Object {
			public static class: java.lang.Class<android.opengl.Visibility>;
			public static visibilityTest(param0: native.Array<number>, param1: number, param2: native.Array<number>, param3: number, param4: native.Array<string>, param5: number, param6: number): number;
			public constructor();
			public static frustumCullSpheres(param0: native.Array<number>, param1: number, param2: native.Array<number>, param3: number, param4: number, param5: native.Array<number>, param6: number, param7: number): number;
			public static computeBoundingSphere(param0: native.Array<number>, param1: number, param2: number, param3: native.Array<number>, param4: number): void;
		}
	}
}

declare module android {
	export module os {
		export abstract class AsyncTask<Params, Progress, Result>  extends java.lang.Object {
			public static class: java.lang.Class<android.os.AsyncTask<any,any,any>>;
			public static THREAD_POOL_EXECUTOR: java.util.concurrent.Executor;
			public static SERIAL_EXECUTOR: java.util.concurrent.Executor;
			public publishProgress(param0: native.Array<Progress>): void;
			public onPostExecute(param0: Result): void;
			public onCancelled(param0: Result): void;
			public isCancelled(): boolean;
			public constructor();
			public onProgressUpdate(param0: native.Array<Progress>): void;
			public execute(param0: native.Array<Params>): android.os.AsyncTask<Params,Progress,Result>;
			public get(): Result;
			public cancel(param0: boolean): boolean;
			public get(param0: number, param1: java.util.concurrent.TimeUnit): Result;
			public onCancelled(): void;
			public executeOnExecutor(param0: java.util.concurrent.Executor, param1: native.Array<Params>): android.os.AsyncTask<Params,Progress,Result>;
			public getStatus(): android.os.AsyncTask.Status;
			public static execute(param0: java.lang.Runnable): void;
			public doInBackground(param0: native.Array<Params>): Result;
			public onPreExecute(): void;
		}
		export module AsyncTask {
			export class Status {
				public static class: java.lang.Class<android.os.AsyncTask.Status>;
				public static FINISHED: android.os.AsyncTask.Status;
				public static PENDING: android.os.AsyncTask.Status;
				public static RUNNING: android.os.AsyncTask.Status;
				public static values(): native.Array<android.os.AsyncTask.Status>;
				public static valueOf(param0: string): android.os.AsyncTask.Status;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			}
		}
	}
}

declare module android {
	export module os {
		export class BadParcelableException extends android.util.AndroidRuntimeException {
			public static class: java.lang.Class<android.os.BadParcelableException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
			public constructor(param0: java.lang.Exception);
		}
	}
}

declare module android {
	export module os {
		export class BatteryManager extends java.lang.Object {
			public static class: java.lang.Class<android.os.BatteryManager>;
			public static EXTRA_STATUS: string;
			public static EXTRA_HEALTH: string;
			public static EXTRA_PRESENT: string;
			public static EXTRA_LEVEL: string;
			public static EXTRA_SCALE: string;
			public static EXTRA_ICON_SMALL: string;
			public static EXTRA_PLUGGED: string;
			public static EXTRA_VOLTAGE: string;
			public static EXTRA_TEMPERATURE: string;
			public static EXTRA_TECHNOLOGY: string;
			public static BATTERY_STATUS_UNKNOWN: number;
			public static BATTERY_STATUS_CHARGING: number;
			public static BATTERY_STATUS_DISCHARGING: number;
			public static BATTERY_STATUS_NOT_CHARGING: number;
			public static BATTERY_STATUS_FULL: number;
			public static BATTERY_HEALTH_UNKNOWN: number;
			public static BATTERY_HEALTH_GOOD: number;
			public static BATTERY_HEALTH_OVERHEAT: number;
			public static BATTERY_HEALTH_DEAD: number;
			public static BATTERY_HEALTH_OVER_VOLTAGE: number;
			public static BATTERY_HEALTH_UNSPECIFIED_FAILURE: number;
			public static BATTERY_HEALTH_COLD: number;
			public static BATTERY_PLUGGED_AC: number;
			public static BATTERY_PLUGGED_USB: number;
			public static BATTERY_PLUGGED_WIRELESS: number;
			public constructor();
		}
	}
}

declare module android {
	export module os {
		export class Binder extends java.lang.Object implements android.os.IBinder {
			public static class: java.lang.Class<android.os.Binder>;
			public pingBinder(): boolean;
			public static joinThreadPool(): void;
			public isBinderAlive(): boolean;
			public queryLocalInterface(param0: string): android.os.IInterface;
			public dump(param0: java.io.FileDescriptor, param1: java.io.PrintWriter, param2: native.Array<string>): void;
			public constructor();
			public static clearCallingIdentity(): number;
			public static getCallingPid(): number;
			public static flushPendingCommands(): void;
			public static restoreCallingIdentity(param0: number): void;
			public transact(param0: number, param1: android.os.Parcel, param2: android.os.Parcel, param3: number): boolean;
			public static getCallingUserHandle(): android.os.UserHandle;
			public attachInterface(param0: android.os.IInterface, param1: string): void;
			public onTransact(param0: number, param1: android.os.Parcel, param2: android.os.Parcel, param3: number): boolean;
			public dumpAsync(param0: java.io.FileDescriptor, param1: native.Array<string>): void;
			public static getCallingUid(): number;
			public linkToDeath(param0: android.os.IBinder.DeathRecipient, param1: number): void;
			public dump(param0: java.io.FileDescriptor, param1: native.Array<string>): void;
			public getInterfaceDescriptor(): string;
			public finalize(): void;
			public unlinkToDeath(param0: android.os.IBinder.DeathRecipient, param1: number): boolean;
		}
	}
}

declare module android {
	export module os {
		export class Build extends java.lang.Object {
			public static class: java.lang.Class<android.os.Build>;
			public static UNKNOWN: string;
			public static ID: string;
			public static DISPLAY: string;
			public static PRODUCT: string;
			public static DEVICE: string;
			public static BOARD: string;
			public static CPU_ABI: string;
			public static CPU_ABI2: string;
			public static MANUFACTURER: string;
			public static BRAND: string;
			public static MODEL: string;
			public static BOOTLOADER: string;
			public static RADIO: string;
			public static HARDWARE: string;
			public static SERIAL: string;
			public static TYPE: string;
			public static TAGS: string;
			public static FINGERPRINT: string;
			public static TIME: number;
			public static USER: string;
			public static HOST: string;
			public constructor();
			public static getRadioVersion(): string;
		}
		export module Build {
			export class VERSION extends java.lang.Object {
				public static class: java.lang.Class<android.os.Build.VERSION>;
				public static INCREMENTAL: string;
				public static RELEASE: string;
				public static SDK: string;
				public static SDK_INT: number;
				public static CODENAME: string;
				public constructor();
			}
			export class VERSION_CODES extends java.lang.Object {
				public static class: java.lang.Class<android.os.Build.VERSION_CODES>;
				public static CUR_DEVELOPMENT: number;
				public static BASE: number;
				public static BASE_1_1: number;
				public static CUPCAKE: number;
				public static DONUT: number;
				public static ECLAIR: number;
				public static ECLAIR_0_1: number;
				public static ECLAIR_MR1: number;
				public static FROYO: number;
				public static GINGERBREAD: number;
				public static GINGERBREAD_MR1: number;
				public static HONEYCOMB: number;
				public static HONEYCOMB_MR1: number;
				public static HONEYCOMB_MR2: number;
				public static ICE_CREAM_SANDWICH: number;
				public static ICE_CREAM_SANDWICH_MR1: number;
				public static JELLY_BEAN: number;
				public static JELLY_BEAN_MR1: number;
				public static JELLY_BEAN_MR2: number;
				public constructor();
			}
		}
	}
}

declare module android {
	export module os {
		export class Bundle extends java.lang.Object implements android.os.Parcelable, java.lang.Cloneable {
			public static class: java.lang.Class<android.os.Bundle>;
			public static EMPTY: android.os.Bundle;
			public static CREATOR: android.os.Parcelable.Creator<android.os.Bundle>;
			public keySet(): java.util.Set<string>;
			public getClassLoader(): java.lang.ClassLoader;
			public putShortArray(param0: string, param1: native.Array<number>): void;
			public constructor(param0: android.os.Bundle);
			public putBinder(param0: string, param1: android.os.IBinder): void;
			public putString(param0: string, param1: string): void;
			public getBoolean(param0: string): boolean;
			public putByte(param0: string, param1: number): void;
			public constructor(param0: java.lang.ClassLoader);
			public getLong(param0: string, param1: number): number;
			public getStringArrayList(param0: string): java.util.ArrayList<string>;
			public getIntegerArrayList(param0: string): java.util.ArrayList<java.lang.Integer>;
			public putParcelableArrayList(param0: string, param1: java.util.ArrayList<any>): void;
			public readFromParcel(param0: android.os.Parcel): void;
			public putLong(param0: string, param1: number): void;
			public remove(param0: string): void;
			public putFloat(param0: string, param1: number): void;
			public getByte(param0: string, param1: number): java.lang.Byte;
			public getShortArray(param0: string): native.Array<number>;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public putCharSequenceArray(param0: string, param1: native.Array<string>): void;
			public getParcelableArrayList(param0: string): java.util.ArrayList<any>;
			public getStringArray(param0: string): native.Array<string>;
			public putStringArray(param0: string, param1: native.Array<string>): void;
			public getParcelableArray(param0: string): native.Array<android.os.Parcelable>;
			public containsKey(param0: string): boolean;
			public clear(): void;
			public getLong(param0: string): number;
			public get(param0: string): any;
			public getInt(param0: string): number;
			public constructor(param0: number);
			public getByte(param0: string): number;
			public constructor();
			public putInt(param0: string, param1: number): void;
			public getIntArray(param0: string): native.Array<number>;
			public putSparseParcelableArray(param0: string, param1: android.util.SparseArray<any>): void;
			public getFloat(param0: string): number;
			public clone(): any;
			public setClassLoader(param0: java.lang.ClassLoader): void;
			public getDouble(param0: string): number;
			public describeContents(): number;
			public getFloatArray(param0: string): native.Array<number>;
			public putCharSequence(param0: string, param1: string): void;
			public getParcelable(param0: string): android.os.Parcelable;
			public putSerializable(param0: string, param1: java.io.Serializable): void;
			public getChar(param0: string, param1: string): string;
			public getDoubleArray(param0: string): native.Array<number>;
			public getLongArray(param0: string): native.Array<number>;
			public getCharSequence(param0: string, param1: string): string;
			public putBoolean(param0: string, param1: boolean): void;
			public putDouble(param0: string, param1: number): void;
			public putParcelableArray(param0: string, param1: native.Array<android.os.Parcelable>): void;
			public getBooleanArray(param0: string): native.Array<boolean>;
			public putShort(param0: string, param1: number): void;
			public putCharSequenceArrayList(param0: string, param1: java.util.ArrayList<string>): void;
			public hasFileDescriptors(): boolean;
			public putStringArrayList(param0: string, param1: java.util.ArrayList<string>): void;
			public getShort(param0: string, param1: number): number;
			public getBinder(param0: string): android.os.IBinder;
			public getSerializable(param0: string): java.io.Serializable;
			public putParcelable(param0: string, param1: android.os.Parcelable): void;
			public getSparseParcelableArray(param0: string): android.util.SparseArray<any>;
			public getCharSequenceArray(param0: string): native.Array<string>;
			public getBundle(param0: string): android.os.Bundle;
			public size(): number;
			public isEmpty(): boolean;
			public getInt(param0: string, param1: number): number;
			public putLongArray(param0: string, param1: native.Array<number>): void;
			public putByteArray(param0: string, param1: native.Array<number>): void;
			public getFloat(param0: string, param1: number): number;
			public putBundle(param0: string, param1: android.os.Bundle): void;
			public getCharArray(param0: string): native.Array<string>;
			public putIntArray(param0: string, param1: native.Array<number>): void;
			public getString(param0: string): string;
			public putBooleanArray(param0: string, param1: native.Array<boolean>): void;
			public getByteArray(param0: string): native.Array<number>;
			public putChar(param0: string, param1: string): void;
			public getCharSequence(param0: string): string;
			public getDouble(param0: string, param1: number): number;
			public putAll(param0: android.os.Bundle): void;
			public putIntegerArrayList(param0: string, param1: java.util.ArrayList<java.lang.Integer>): void;
			public toString(): string;
			public putFloatArray(param0: string, param1: native.Array<number>): void;
			public putCharArray(param0: string, param1: native.Array<string>): void;
			public getBoolean(param0: string, param1: boolean): boolean;
			public putDoubleArray(param0: string, param1: native.Array<number>): void;
			public getChar(param0: string): string;
			public getShort(param0: string): number;
			public getString(param0: string, param1: string): string;
			public getCharSequenceArrayList(param0: string): java.util.ArrayList<string>;
		}
	}
}

declare module android {
	export module os {
		export class CancellationSignal extends java.lang.Object {
			public static class: java.lang.Class<android.os.CancellationSignal>;
			public cancel(): void;
			public constructor();
			public isCanceled(): boolean;
			public throwIfCanceled(): void;
			public setOnCancelListener(param0: android.os.CancellationSignal.OnCancelListener): void;
		}
		export module CancellationSignal {
			export class OnCancelListener extends java.lang.Object {
				public static class: java.lang.Class<android.os.CancellationSignal.OnCancelListener>;
				/**
				 * Constructs a new instance of the android.os.CancellationSignal$OnCancelListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onCancel(): void;
				});
				public constructor();
				public onCancel(): void;
			}
		}
	}
}

declare module android {
	export module os {
		export class ConditionVariable extends java.lang.Object {
			public static class: java.lang.Class<android.os.ConditionVariable>;
			public constructor(param0: boolean);
			public block(param0: number): boolean;
			public open(): void;
			public constructor();
			public block(): void;
			public close(): void;
		}
	}
}

declare module android {
	export module os {
		export abstract class CountDownTimer extends java.lang.Object {
			public static class: java.lang.Class<android.os.CountDownTimer>;
			public onFinish(): void;
			public start(): android.os.CountDownTimer;
			public cancel(): void;
			public constructor(param0: number, param1: number);
			public onTick(param0: number): void;
		}
	}
}

declare module android {
	export module os {
		export class DeadObjectException extends android.os.RemoteException {
			public static class: java.lang.Class<android.os.DeadObjectException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
			public constructor(param0: java.lang.Exception);
		}
	}
}

declare module android {
	export module os {
		export class Debug extends java.lang.Object {
			public static class: java.lang.Class<android.os.Debug>;
			public static TRACE_COUNT_ALLOCS: number;
			public static SHOW_FULL_DETAIL: number;
			public static SHOW_CLASSLOADER: number;
			public static SHOW_INITIALIZED: number;
			public static getBinderDeathObjectCount(): number;
			public static getBinderSentTransactions(): number;
			/** @deprecated */
			public static resetGlobalExternalFreedCount(): void;
			public static resetThreadGcInvocationCount(): void;
			/** @deprecated */
			public static getGlobalExternalFreedSize(): number;
			public static getGlobalGcInvocationCount(): number;
			/** @deprecated */
			public static getThreadExternalAllocCount(): number;
			public static resetGlobalAllocCount(): void;
			/** @deprecated */
			public static resetGlobalExternalAllocSize(): void;
			/** @deprecated */
			public static getThreadExternalAllocSize(): number;
			public static getGlobalAllocSize(): number;
			public static startNativeTracing(): void;
			public static getNativeHeapSize(): number;
			public static getPss(): number;
			public static dumpService(param0: string, param1: java.io.FileDescriptor, param2: native.Array<string>): boolean;
			public static startMethodTracing(param0: string, param1: number): void;
			/** @deprecated */
			public static changeDebugPort(param0: number): void;
			public static resetGlobalClassInitCount(): void;
			public static resetGlobalClassInitTime(): void;
			public static getGlobalFreedCount(): number;
			public static getThreadGcInvocationCount(): number;
			public static startMethodTracing(param0: string): void;
			public static resetGlobalFreedSize(): void;
			public static getNativeHeapFreeSize(): number;
			public static getBinderLocalObjectCount(): number;
			/** @deprecated */
			public static resetGlobalExternalFreedSize(): void;
			public static waitingForDebugger(): boolean;
			public static getNativeHeapAllocatedSize(): number;
			/** @deprecated */
			public static getGlobalExternalAllocSize(): number;
			/** @deprecated */
			public static startAllocCounting(): void;
			public static resetGlobalGcInvocationCount(): void;
			public static enableEmulatorTraceOutput(): void;
			/** @deprecated */
			public static resetThreadExternalAllocCount(): void;
			public static waitForDebugger(): void;
			public static startMethodTracing(param0: string, param1: number, param2: number): void;
			public static stopNativeTracing(): void;
			/** @deprecated */
			public static setAllocationLimit(param0: number): number;
			public static resetGlobalFreedCount(): void;
			/** @deprecated */
			public static getGlobalExternalAllocCount(): number;
			public static getThreadAllocSize(): number;
			public static dumpHprofData(param0: string): void;
			public static stopMethodTracing(): void;
			/** @deprecated */
			public static stopAllocCounting(): void;
			public static resetThreadAllocCount(): void;
			public static printLoadedClasses(param0: number): void;
			public static startMethodTracing(): void;
			public static getGlobalClassInitTime(): number;
			public static getThreadAllocCount(): number;
			/** @deprecated */
			public static setGlobalAllocationLimit(param0: number): number;
			public static getBinderProxyObjectCount(): number;
			public static getGlobalFreedSize(): number;
			/** @deprecated */
			public static resetGlobalExternalAllocCount(): void;
			public static getMemoryInfo(param0: android.os.Debug.MemoryInfo): void;
			public static resetGlobalAllocSize(): void;
			public static resetAllCounts(): void;
			/** @deprecated */
			public static resetThreadExternalAllocSize(): void;
			public static getGlobalClassInitCount(): number;
			public static resetThreadAllocSize(): void;
			public static getBinderReceivedTransactions(): number;
			public static isDebuggerConnected(): boolean;
			public static threadCpuTimeNanos(): number;
			public static getGlobalAllocCount(): number;
			/** @deprecated */
			public static getGlobalExternalFreedCount(): number;
			public static getLoadedClassCount(): number;
		}
		export module Debug {
			export class InstructionCount extends java.lang.Object {
				public static class: java.lang.Class<android.os.Debug.InstructionCount>;
				public globalMethodInvocations(): number;
				public collect(): boolean;
				public globalTotal(): number;
				public resetAndStart(): boolean;
				public constructor();
			}
			export class MemoryInfo extends java.lang.Object implements android.os.Parcelable {
				public static class: java.lang.Class<android.os.Debug.MemoryInfo>;
				public dalvikPss: number;
				public dalvikPrivateDirty: number;
				public dalvikSharedDirty: number;
				public nativePss: number;
				public nativePrivateDirty: number;
				public nativeSharedDirty: number;
				public otherPss: number;
				public otherPrivateDirty: number;
				public otherSharedDirty: number;
				public static CREATOR: android.os.Parcelable.Creator<android.os.Debug.MemoryInfo>;
				public getOtherPss(param0: number): number;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public getOtherPrivateDirty(param0: number): number;
				public static getOtherLabel(param0: number): string;
				public describeContents(): number;
				public getOtherSharedDirty(param0: number): number;
				public readFromParcel(param0: android.os.Parcel): void;
				public getTotalSharedDirty(): number;
				public getTotalPss(): number;
				public constructor();
				public getTotalPrivateDirty(): number;
			}
		}
	}
}

declare module android {
	export module os {
		export class DropBoxManager extends java.lang.Object {
			public static class: java.lang.Class<android.os.DropBoxManager>;
			public static IS_EMPTY: number;
			public static IS_TEXT: number;
			public static IS_GZIPPED: number;
			public static ACTION_DROPBOX_ENTRY_ADDED: string;
			public static EXTRA_TAG: string;
			public static EXTRA_TIME: string;
			public addText(param0: string, param1: string): void;
			public getNextEntry(param0: string, param1: number): android.os.DropBoxManager.Entry;
			public constructor();
			public isTagEnabled(param0: string): boolean;
			public addFile(param0: string, param1: java.io.File, param2: number): void;
			public addData(param0: string, param1: native.Array<number>, param2: number): void;
		}
		export module DropBoxManager {
			export class Entry extends java.lang.Object implements android.os.Parcelable, java.io.Closeable {
				public static class: java.lang.Class<android.os.DropBoxManager.Entry>;
				public static CREATOR: android.os.Parcelable.Creator<android.os.DropBoxManager.Entry>;
				public constructor(param0: string, param1: number, param2: android.os.ParcelFileDescriptor, param3: number);
				public constructor(param0: string, param1: number, param2: native.Array<number>, param3: number);
				public close(): void;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public getTag(): string;
				public getInputStream(): java.io.InputStream;
				public constructor(param0: string, param1: number, param2: java.io.File, param3: number);
				public getTimeMillis(): number;
				public constructor(param0: string, param1: number, param2: string);
				public constructor(param0: string, param1: number);
				public describeContents(): number;
				public getFlags(): number;
				public getText(param0: number): string;
			}
		}
	}
}

declare module android {
	export module os {
		export class Environment extends java.lang.Object {
			public static class: java.lang.Class<android.os.Environment>;
			public static DIRECTORY_MUSIC: string;
			public static DIRECTORY_PODCASTS: string;
			public static DIRECTORY_RINGTONES: string;
			public static DIRECTORY_ALARMS: string;
			public static DIRECTORY_NOTIFICATIONS: string;
			public static DIRECTORY_PICTURES: string;
			public static DIRECTORY_MOVIES: string;
			public static DIRECTORY_DOWNLOADS: string;
			public static DIRECTORY_DCIM: string;
			public static MEDIA_REMOVED: string;
			public static MEDIA_UNMOUNTED: string;
			public static MEDIA_CHECKING: string;
			public static MEDIA_NOFS: string;
			public static MEDIA_MOUNTED: string;
			public static MEDIA_MOUNTED_READ_ONLY: string;
			public static MEDIA_SHARED: string;
			public static MEDIA_BAD_REMOVAL: string;
			public static MEDIA_UNMOUNTABLE: string;
			public static getExternalStorageState(): string;
			public static getDataDirectory(): java.io.File;
			public static getRootDirectory(): java.io.File;
			public static getExternalStorageDirectory(): java.io.File;
			public static getExternalStoragePublicDirectory(param0: string): java.io.File;
			public constructor();
			public static getDownloadCacheDirectory(): java.io.File;
			public static isExternalStorageEmulated(): boolean;
			public static isExternalStorageRemovable(): boolean;
		}
	}
}

declare module android {
	export module os {
		export abstract class FileObserver extends java.lang.Object {
			public static class: java.lang.Class<android.os.FileObserver>;
			public static ACCESS: number;
			public static MODIFY: number;
			public static ATTRIB: number;
			public static CLOSE_WRITE: number;
			public static CLOSE_NOWRITE: number;
			public static OPEN: number;
			public static MOVED_FROM: number;
			public static MOVED_TO: number;
			public static CREATE: number;
			public static DELETE: number;
			public static DELETE_SELF: number;
			public static MOVE_SELF: number;
			public static ALL_EVENTS: number;
			public stopWatching(): void;
			public onEvent(param0: number, param1: string): void;
			public constructor(param0: string, param1: number);
			public startWatching(): void;
			public constructor(param0: string);
			public finalize(): void;
		}
	}
}

declare module android {
	export module os {
		export class Handler extends java.lang.Object {
			public static class: java.lang.Class<android.os.Handler>;
			public obtainMessage(): android.os.Message;
			public postAtTime(param0: java.lang.Runnable, param1: any, param2: number): boolean;
			public constructor(param0: android.os.Looper, param1: android.os.Handler.Callback);
			public constructor(param0: android.os.Looper);
			public postDelayed(param0: java.lang.Runnable, param1: number): boolean;
			public sendMessageAtFrontOfQueue(param0: android.os.Message): boolean;
			public removeCallbacksAndMessages(param0: any): void;
			public post(param0: java.lang.Runnable): boolean;
			public sendEmptyMessageDelayed(param0: number, param1: number): boolean;
			public postAtTime(param0: java.lang.Runnable, param1: number): boolean;
			public hasMessages(param0: number): boolean;
			public hasMessages(param0: number, param1: any): boolean;
			public obtainMessage(param0: number, param1: number, param2: number, param3: any): android.os.Message;
			public postAtFrontOfQueue(param0: java.lang.Runnable): boolean;
			public obtainMessage(param0: number, param1: any): android.os.Message;
			public sendMessageDelayed(param0: android.os.Message, param1: number): boolean;
			public dispatchMessage(param0: android.os.Message): void;
			public getLooper(): android.os.Looper;
			public handleMessage(param0: android.os.Message): void;
			public sendMessage(param0: android.os.Message): boolean;
			public getMessageName(param0: android.os.Message): string;
			public obtainMessage(param0: number): android.os.Message;
			public removeMessages(param0: number): void;
			public obtainMessage(param0: number, param1: number, param2: number): android.os.Message;
			public sendEmptyMessage(param0: number): boolean;
			public constructor(param0: android.os.Handler.Callback);
			public constructor();
			public removeCallbacks(param0: java.lang.Runnable): void;
			public removeCallbacks(param0: java.lang.Runnable, param1: any): void;
			public toString(): string;
			public sendMessageAtTime(param0: android.os.Message, param1: number): boolean;
			public dump(param0: android.util.Printer, param1: string): void;
			public sendEmptyMessageAtTime(param0: number, param1: number): boolean;
			public removeMessages(param0: number, param1: any): void;
		}
		export module Handler {
			export class Callback extends java.lang.Object {
				public static class: java.lang.Class<android.os.Handler.Callback>;
				/**
				 * Constructs a new instance of the android.os.Handler$Callback interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					handleMessage(param0: android.os.Message): boolean;
				});
				public constructor();
				public handleMessage(param0: android.os.Message): boolean;
			}
		}
	}
}

declare module android {
	export module os {
		export class HandlerThread extends java.lang.Thread {
			public static class: java.lang.Class<android.os.HandlerThread>;
			public constructor(param0: java.lang.Runnable);
			public constructor();
			public onLooperPrepared(): void;
			public quit(): boolean;
			public constructor(param0: java.lang.ThreadGroup, param1: java.lang.Runnable, param2: string);
			public getThreadId(): number;
			public constructor(param0: java.lang.Runnable, param1: string);
			public constructor(param0: java.lang.ThreadGroup, param1: java.lang.Runnable, param2: string, param3: number);
			public constructor(param0: string, param1: number);
			public quitSafely(): boolean;
			public getLooper(): android.os.Looper;
			public run(): void;
			public constructor(param0: java.lang.ThreadGroup, param1: java.lang.Runnable);
			public constructor(param0: java.lang.ThreadGroup, param1: string);
			public constructor(param0: string);
		}
	}
}

declare module android {
	export module os {
		export class IBinder extends java.lang.Object {
			public static class: java.lang.Class<android.os.IBinder>;
			/**
			 * Constructs a new instance of the android.os.IBinder interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				getInterfaceDescriptor(): string;
				pingBinder(): boolean;
				isBinderAlive(): boolean;
				queryLocalInterface(param0: string): android.os.IInterface;
				dump(param0: java.io.FileDescriptor, param1: native.Array<string>): void;
				dumpAsync(param0: java.io.FileDescriptor, param1: native.Array<string>): void;
				transact(param0: number, param1: android.os.Parcel, param2: android.os.Parcel, param3: number): boolean;
				linkToDeath(param0: android.os.IBinder.DeathRecipient, param1: number): void;
				unlinkToDeath(param0: android.os.IBinder.DeathRecipient, param1: number): boolean;
			});
			public constructor();
			public static TWEET_TRANSACTION: number;
			public static FLAG_ONEWAY: number;
			public static LIKE_TRANSACTION: number;
			public static INTERFACE_TRANSACTION: number;
			public static LAST_CALL_TRANSACTION: number;
			public static FIRST_CALL_TRANSACTION: number;
			public static PING_TRANSACTION: number;
			public static DUMP_TRANSACTION: number;
			public pingBinder(): boolean;
			public transact(param0: number, param1: android.os.Parcel, param2: android.os.Parcel, param3: number): boolean;
			public dumpAsync(param0: java.io.FileDescriptor, param1: native.Array<string>): void;
			public isBinderAlive(): boolean;
			public queryLocalInterface(param0: string): android.os.IInterface;
			public linkToDeath(param0: android.os.IBinder.DeathRecipient, param1: number): void;
			public dump(param0: java.io.FileDescriptor, param1: native.Array<string>): void;
			public getInterfaceDescriptor(): string;
			public unlinkToDeath(param0: android.os.IBinder.DeathRecipient, param1: number): boolean;
		}
		export module IBinder {
			export class DeathRecipient extends java.lang.Object {
				public static class: java.lang.Class<android.os.IBinder.DeathRecipient>;
				/**
				 * Constructs a new instance of the android.os.IBinder$DeathRecipient interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					binderDied(): void;
				});
				public constructor();
				public binderDied(): void;
			}
		}
	}
}

declare module android {
	export module os {
		export class IInterface extends java.lang.Object {
			public static class: java.lang.Class<android.os.IInterface>;
			/**
			 * Constructs a new instance of the android.os.IInterface interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				asBinder(): android.os.IBinder;
			});
			public constructor();
			public asBinder(): android.os.IBinder;
		}
	}
}

declare module android {
	export module os {
		export class Looper extends java.lang.Object {
			public static class: java.lang.Class<android.os.Looper>;
			public setMessageLogging(param0: android.util.Printer): void;
			public static myLooper(): android.os.Looper;
			public toString(): string;
			public static prepareMainLooper(): void;
			public static prepare(): void;
			public quitSafely(): void;
			public getThread(): java.lang.Thread;
			public dump(param0: android.util.Printer, param1: string): void;
			public static getMainLooper(): android.os.Looper;
			public static myQueue(): android.os.MessageQueue;
			public static loop(): void;
			public quit(): void;
		}
	}
}

declare module android {
	export module os {
		export class MemoryFile extends java.lang.Object {
			public static class: java.lang.Class<android.os.MemoryFile>;
			public isPurgingAllowed(): boolean;
			public allowPurging(param0: boolean): boolean;
			public readBytes(param0: native.Array<number>, param1: number, param2: number, param3: number): number;
			public getInputStream(): java.io.InputStream;
			public constructor(param0: string, param1: number);
			public length(): number;
			public getOutputStream(): java.io.OutputStream;
			public close(): void;
			public finalize(): void;
			public writeBytes(param0: native.Array<number>, param1: number, param2: number, param3: number): void;
		}
	}
}

declare module android {
	export module os {
		export class Message extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.os.Message>;
			public what: number;
			public arg1: number;
			public arg2: number;
			public obj: any;
			public replyTo: android.os.Messenger;
			public static CREATOR: android.os.Parcelable.Creator<android.os.Message>;
			public static obtain(param0: android.os.Handler, param1: number, param2: any): android.os.Message;
			public sendToTarget(): void;
			public setTarget(param0: android.os.Handler): void;
			public static obtain(): android.os.Message;
			public static obtain(param0: android.os.Message): android.os.Message;
			public setData(param0: android.os.Bundle): void;
			public constructor();
			public getTarget(): android.os.Handler;
			public static obtain(param0: android.os.Handler, param1: number): android.os.Message;
			public getCallback(): java.lang.Runnable;
			public static obtain(param0: android.os.Handler, param1: number, param2: number, param3: number): android.os.Message;
			public toString(): string;
			public peekData(): android.os.Bundle;
			public recycle(): void;
			public getWhen(): number;
			public describeContents(): number;
			public getData(): android.os.Bundle;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public static obtain(param0: android.os.Handler): android.os.Message;
			public copyFrom(param0: android.os.Message): void;
			public static obtain(param0: android.os.Handler, param1: java.lang.Runnable): android.os.Message;
			public static obtain(param0: android.os.Handler, param1: number, param2: number, param3: number, param4: any): android.os.Message;
		}
	}
}

declare module android {
	export module os {
		export class MessageQueue extends java.lang.Object {
			public static class: java.lang.Class<android.os.MessageQueue>;
			public addIdleHandler(param0: android.os.MessageQueue.IdleHandler): void;
			public removeIdleHandler(param0: android.os.MessageQueue.IdleHandler): void;
			public finalize(): void;
		}
		export module MessageQueue {
			export class IdleHandler extends java.lang.Object {
				public static class: java.lang.Class<android.os.MessageQueue.IdleHandler>;
				/**
				 * Constructs a new instance of the android.os.MessageQueue$IdleHandler interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					queueIdle(): boolean;
				});
				public constructor();
				public queueIdle(): boolean;
			}
		}
	}
}

declare module android {
	export module os {
		export class Messenger extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.os.Messenger>;
			public static CREATOR: android.os.Parcelable.Creator<android.os.Messenger>;
			public static writeMessengerOrNullToParcel(param0: android.os.Messenger, param1: android.os.Parcel): void;
			public send(param0: android.os.Message): void;
			public equals(param0: any): boolean;
			public getBinder(): android.os.IBinder;
			public constructor(param0: android.os.Handler);
			public static readMessengerOrNullFromParcel(param0: android.os.Parcel): android.os.Messenger;
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public constructor(param0: android.os.IBinder);
			public hashCode(): number;
		}
	}
}

declare module android {
	export module os {
		export class NetworkOnMainThreadException extends java.lang.RuntimeException {
			public static class: java.lang.Class<android.os.NetworkOnMainThreadException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module android {
	export module os {
		export class OperationCanceledException extends java.lang.RuntimeException {
			public static class: java.lang.Class<android.os.OperationCanceledException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module android {
	export module os {
		export class Parcel extends java.lang.Object {
			public static class: java.lang.Class<android.os.Parcel>;
			public static STRING_CREATOR: android.os.Parcelable.Creator<string>;
			public readFloatArray(param0: native.Array<number>): void;
			public readTypedArray(param0: native.Array<any>, param1: android.os.Parcelable.Creator<any>): void;
			public readBinderList(param0: java.util.List<android.os.IBinder>): void;
			public readString(): string;
			public readByteArray(param0: native.Array<number>): void;
			public writeTypedList(param0: java.util.List<any>): void;
			public readList(param0: java.util.List<any>, param1: java.lang.ClassLoader): void;
			public static obtain(): android.os.Parcel;
			public readTypedList(param0: java.util.List<any>, param1: android.os.Parcelable.Creator<any>): void;
			public createTypedArray(param0: android.os.Parcelable.Creator<any>): native.Array<any>;
			public writeFloat(param0: number): void;
			public setDataPosition(param0: number): void;
			public writeTypedArray(param0: native.Array<android.os.Parcelable>, param1: number): void;
			public recycle(): void;
			public createBinderArrayList(): java.util.ArrayList<android.os.IBinder>;
			public readInt(): number;
			public readFloat(): number;
			public readException(): void;
			public writeValue(param0: any): void;
			public writeBinderArray(param0: native.Array<android.os.IBinder>): void;
			public writeLong(param0: number): void;
			public setDataSize(param0: number): void;
			public writeCharArray(param0: native.Array<string>): void;
			public writeStrongInterface(param0: android.os.IInterface): void;
			public readLongArray(param0: native.Array<number>): void;
			public readBundle(param0: java.lang.ClassLoader): android.os.Bundle;
			public createCharArray(): native.Array<string>;
			public writeBooleanArray(param0: native.Array<boolean>): void;
			public readFileDescriptor(): android.os.ParcelFileDescriptor;
			public readException(param0: number, param1: string): void;
			public writeSerializable(param0: java.io.Serializable): void;
			public writeBinderList(param0: java.util.List<android.os.IBinder>): void;
			public unmarshall(param0: native.Array<number>, param1: number, param2: number): void;
			public writeParcelableArray(param0: native.Array<android.os.Parcelable>, param1: number): void;
			public dataCapacity(): number;
			public readSerializable(): java.io.Serializable;
			public readByte(): number;
			public createDoubleArray(): native.Array<number>;
			public readParcelable(param0: java.lang.ClassLoader): android.os.Parcelable;
			public writeInterfaceToken(param0: string): void;
			public readBooleanArray(param0: native.Array<boolean>): void;
			public writeFileDescriptor(param0: java.io.FileDescriptor): void;
			public appendFrom(param0: android.os.Parcel, param1: number, param2: number): void;
			public readStrongBinder(): android.os.IBinder;
			public createStringArrayList(): java.util.ArrayList<string>;
			public dataPosition(): number;
			public static obtain(param0: number): android.os.Parcel;
			public readStringArray(param0: native.Array<string>): void;
			public createIntArray(): native.Array<number>;
			public writeBundle(param0: android.os.Bundle): void;
			public enforceInterface(param0: string): void;
			public readBundle(): android.os.Bundle;
			public writeIntArray(param0: native.Array<number>): void;
			public writeLongArray(param0: native.Array<number>): void;
			public writeFloatArray(param0: native.Array<number>): void;
			public writeStrongBinder(param0: android.os.IBinder): void;
			public dataSize(): number;
			public readIntArray(param0: native.Array<number>): void;
			public writeList(param0: java.util.List<any>): void;
			public writeByteArray(param0: native.Array<number>): void;
			public writeSparseArray(param0: android.util.SparseArray<any>): void;
			public createLongArray(): native.Array<number>;
			public writeParcelable(param0: android.os.Parcelable, param1: number): void;
			public writeStringList(param0: java.util.List<string>): void;
			public setDataCapacity(param0: number): void;
			public readSparseBooleanArray(): android.util.SparseBooleanArray;
			public writeStringArray(param0: native.Array<string>): void;
			public readMap(param0: java.util.Map<any,any>, param1: java.lang.ClassLoader): void;
			public createByteArray(): native.Array<number>;
			public readCharArray(param0: native.Array<string>): void;
			public readParcelableArray(param0: java.lang.ClassLoader): native.Array<android.os.Parcelable>;
			public readDoubleArray(param0: native.Array<number>): void;
			public readSparseArray(param0: java.lang.ClassLoader): android.util.SparseArray<any>;
			public writeMap(param0: java.util.Map<any,any>): void;
			public writeException(param0: java.lang.Exception): void;
			public createStringArray(): native.Array<string>;
			public writeByteArray(param0: native.Array<number>, param1: number, param2: number): void;
			public readArray(param0: java.lang.ClassLoader): native.Array<any>;
			public marshall(): native.Array<number>;
			public createFloatArray(): native.Array<number>;
			public writeString(param0: string): void;
			public readDouble(): number;
			public hasFileDescriptors(): boolean;
			public readValue(param0: java.lang.ClassLoader): any;
			public writeNoException(): void;
			public finalize(): void;
			public readStringList(param0: java.util.List<string>): void;
			public writeInt(param0: number): void;
			public readLong(): number;
			public writeByte(param0: number): void;
			public readHashMap(param0: java.lang.ClassLoader): java.util.HashMap<any,any>;
			public writeDouble(param0: number): void;
			public createBooleanArray(): native.Array<boolean>;
			public readArrayList(param0: java.lang.ClassLoader): java.util.ArrayList<any>;
			public writeDoubleArray(param0: native.Array<number>): void;
			public createTypedArrayList(param0: android.os.Parcelable.Creator<any>): java.util.ArrayList<any>;
			public writeArray(param0: native.Array<any>): void;
			public createBinderArray(): native.Array<android.os.IBinder>;
			public dataAvail(): number;
			public readBinderArray(param0: native.Array<android.os.IBinder>): void;
			public writeSparseBooleanArray(param0: android.util.SparseBooleanArray): void;
		}
	}
}

declare module android {
	export module os {
		export class ParcelFileDescriptor extends java.lang.Object implements android.os.Parcelable, java.io.Closeable {
			public static class: java.lang.Class<android.os.ParcelFileDescriptor>;
			public static MODE_WORLD_READABLE: number;
			public static MODE_WORLD_WRITEABLE: number;
			public static MODE_READ_ONLY: number;
			public static MODE_WRITE_ONLY: number;
			public static MODE_READ_WRITE: number;
			public static MODE_CREATE: number;
			public static MODE_TRUNCATE: number;
			public static MODE_APPEND: number;
			public static CREATOR: android.os.Parcelable.Creator<android.os.ParcelFileDescriptor>;
			public dup(): android.os.ParcelFileDescriptor;
			public constructor(param0: android.os.ParcelFileDescriptor);
			public static open(param0: java.io.File, param1: number): android.os.ParcelFileDescriptor;
			public static createPipe(): native.Array<android.os.ParcelFileDescriptor>;
			public static fromSocket(param0: java.net.Socket): android.os.ParcelFileDescriptor;
			public static dup(param0: java.io.FileDescriptor): android.os.ParcelFileDescriptor;
			public static fromFd(param0: number): android.os.ParcelFileDescriptor;
			public toString(): string;
			public detachFd(): number;
			public static fromDatagramSocket(param0: java.net.DatagramSocket): android.os.ParcelFileDescriptor;
			public getStatSize(): number;
			public getFd(): number;
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public getFileDescriptor(): java.io.FileDescriptor;
			public close(): void;
			public static adoptFd(param0: number): android.os.ParcelFileDescriptor;
			public finalize(): void;
		}
		export module ParcelFileDescriptor {
			export class AutoCloseInputStream extends java.io.FileInputStream {
				public static class: java.lang.Class<android.os.ParcelFileDescriptor.AutoCloseInputStream>;
				public close(): void;
				public constructor(param0: java.io.File);
				public constructor(param0: android.os.ParcelFileDescriptor);
				public constructor(param0: java.io.FileDescriptor);
				public constructor(param0: string);
				public constructor();
			}
			export class AutoCloseOutputStream extends java.io.FileOutputStream {
				public static class: java.lang.Class<android.os.ParcelFileDescriptor.AutoCloseOutputStream>;
				public close(): void;
				public constructor(param0: java.io.File, param1: boolean);
				public constructor(param0: java.io.File);
				public constructor(param0: string, param1: boolean);
				public constructor(param0: android.os.ParcelFileDescriptor);
				public constructor(param0: java.io.FileDescriptor);
				public constructor(param0: string);
				public constructor();
				public flush(): void;
			}
		}
	}
}

declare module android {
	export module os {
		export class ParcelFormatException extends java.lang.RuntimeException {
			public static class: java.lang.Class<android.os.ParcelFormatException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module android {
	export module os {
		export class ParcelUuid extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.os.ParcelUuid>;
			public static CREATOR: android.os.Parcelable.Creator<android.os.ParcelUuid>;
			public static fromString(param0: string): android.os.ParcelUuid;
			public equals(param0: any): boolean;
			public constructor(param0: java.util.UUID);
			public toString(): string;
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public getUuid(): java.util.UUID;
			public hashCode(): number;
		}
	}
}

declare module android {
	export module os {
		export class Parcelable extends java.lang.Object {
			public static class: java.lang.Class<android.os.Parcelable>;
			/**
			 * Constructs a new instance of the android.os.Parcelable interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				describeContents(): number;
				writeToParcel(param0: android.os.Parcel, param1: number): void;
			});
			public constructor();
			public static PARCELABLE_WRITE_RETURN_VALUE: number;
			public static CONTENTS_FILE_DESCRIPTOR: number;
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
		}
		export module Parcelable {
			export class ClassLoaderCreator<T>  extends android.os.Parcelable.Creator<any> {
				public static class: java.lang.Class<android.os.Parcelable.ClassLoaderCreator<any>>;
				/**
				 * Constructs a new instance of the android.os.Parcelable$ClassLoaderCreator interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					createFromParcel(param0: android.os.Parcel, param1: java.lang.ClassLoader): any;
					createFromParcel(param0: android.os.Parcel): any;
					newArray(param0: number): native.Array<any>;
				});
				public constructor();
				public newArray(param0: number): native.Array<any>;
				public createFromParcel(param0: android.os.Parcel, param1: java.lang.ClassLoader): any;
				public createFromParcel(param0: android.os.Parcel): any;
			}
			export class Creator<T>  extends java.lang.Object {
				public static class: java.lang.Class<android.os.Parcelable.Creator<any>>;
				/**
				 * Constructs a new instance of the android.os.Parcelable$Creator interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					createFromParcel(param0: android.os.Parcel): T;
					newArray(param0: number): native.Array<T>;
				});
				public constructor();
				public createFromParcel(param0: android.os.Parcel): T;
				public newArray(param0: number): native.Array<T>;
			}
		}
	}
}

declare module android {
	export module os {
		export class PatternMatcher extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.os.PatternMatcher>;
			public static PATTERN_LITERAL: number;
			public static PATTERN_PREFIX: number;
			public static PATTERN_SIMPLE_GLOB: number;
			public static CREATOR: android.os.Parcelable.Creator<android.os.PatternMatcher>;
			public getType(): number;
			public getPath(): string;
			public toString(): string;
			public match(param0: string): boolean;
			public constructor(param0: string, param1: number);
			public constructor(param0: android.os.Parcel);
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
		}
	}
}

declare module android {
	export module os {
		export class PowerManager extends java.lang.Object {
			public static class: java.lang.Class<android.os.PowerManager>;
			public static PARTIAL_WAKE_LOCK: number;
			public static SCREEN_DIM_WAKE_LOCK: number;
			public static SCREEN_BRIGHT_WAKE_LOCK: number;
			public static FULL_WAKE_LOCK: number;
			public static ACQUIRE_CAUSES_WAKEUP: number;
			public static ON_AFTER_RELEASE: number;
			public reboot(param0: string): void;
			public newWakeLock(param0: number, param1: string): android.os.PowerManager.WakeLock;
			public goToSleep(param0: number): void;
			public wakeUp(param0: number): void;
			public isScreenOn(): boolean;
			public userActivity(param0: number, param1: boolean): void;
		}
		export module PowerManager {
			export class WakeLock extends java.lang.Object {
				public static class: java.lang.Class<android.os.PowerManager.WakeLock>;
				public release(): void;
				public isHeld(): boolean;
				public acquire(param0: number): void;
				public finalize(): void;
				public setWorkSource(param0: android.os.WorkSource): void;
				public acquire(): void;
				public toString(): string;
				public setReferenceCounted(param0: boolean): void;
			}
		}
	}
}

declare module android {
	export module os {
		export class Process extends java.lang.Object {
			public static class: java.lang.Class<android.os.Process>;
			public static SYSTEM_UID: number;
			public static PHONE_UID: number;
			public static FIRST_APPLICATION_UID: number;
			public static LAST_APPLICATION_UID: number;
			public static THREAD_PRIORITY_DEFAULT: number;
			public static THREAD_PRIORITY_LOWEST: number;
			public static THREAD_PRIORITY_BACKGROUND: number;
			public static THREAD_PRIORITY_FOREGROUND: number;
			public static THREAD_PRIORITY_DISPLAY: number;
			public static THREAD_PRIORITY_URGENT_DISPLAY: number;
			public static THREAD_PRIORITY_AUDIO: number;
			public static THREAD_PRIORITY_URGENT_AUDIO: number;
			public static THREAD_PRIORITY_MORE_FAVORABLE: number;
			public static THREAD_PRIORITY_LESS_FAVORABLE: number;
			public static SIGNAL_QUIT: number;
			public static SIGNAL_KILL: number;
			public static SIGNAL_USR1: number;
			/** @deprecated */
			public static supportsProcesses(): boolean;
			public constructor();
			public static setThreadPriority(param0: number): void;
			public static myPid(): number;
			public static myUserHandle(): android.os.UserHandle;
			public static sendSignal(param0: number, param1: number): void;
			public static getElapsedCpuTime(): number;
			public static myTid(): number;
			public static getUidForName(param0: string): number;
			public static myUid(): number;
			public static getThreadPriority(param0: number): number;
			public static getGidForName(param0: string): number;
			public static setThreadPriority(param0: number, param1: number): void;
			public static killProcess(param0: number): void;
		}
	}
}

declare module android {
	export module os {
		export class RecoverySystem extends java.lang.Object {
			public static class: java.lang.Class<android.os.RecoverySystem>;
			public static rebootWipeUserData(param0: android.content.Context): void;
			public static installPackage(param0: android.content.Context, param1: java.io.File): void;
			public static verifyPackage(param0: java.io.File, param1: android.os.RecoverySystem.ProgressListener, param2: java.io.File): void;
			public constructor();
			public static rebootWipeCache(param0: android.content.Context): void;
		}
		export module RecoverySystem {
			export class ProgressListener extends java.lang.Object {
				public static class: java.lang.Class<android.os.RecoverySystem.ProgressListener>;
				/**
				 * Constructs a new instance of the android.os.RecoverySystem$ProgressListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onProgress(param0: number): void;
				});
				public constructor();
				public onProgress(param0: number): void;
			}
		}
	}
}

declare module android {
	export module os {
		export class RemoteCallbackList<E>  extends java.lang.Object {
			public static class: java.lang.Class<android.os.RemoteCallbackList<any>>;
			public unregister(param0: E): boolean;
			public onCallbackDied(param0: E, param1: any): void;
			public register(param0: E): boolean;
			public register(param0: E, param1: any): boolean;
			public getBroadcastItem(param0: number): E;
			public getRegisteredCallbackCount(): number;
			public finishBroadcast(): void;
			public getBroadcastCookie(param0: number): any;
			public onCallbackDied(param0: E): void;
			public constructor();
			public kill(): void;
			public beginBroadcast(): number;
		}
	}
}

declare module android {
	export module os {
		export class RemoteException extends android.util.AndroidException {
			public static class: java.lang.Class<android.os.RemoteException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
			public constructor(param0: java.lang.Exception);
		}
	}
}

declare module android {
	export module os {
		export class ResultReceiver extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.os.ResultReceiver>;
			public static CREATOR: android.os.Parcelable.Creator<android.os.ResultReceiver>;
			public onReceiveResult(param0: number, param1: android.os.Bundle): void;
			public constructor(param0: android.os.Handler);
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public send(param0: number, param1: android.os.Bundle): void;
		}
	}
}

declare module android {
	export module os {
		export class StatFs extends java.lang.Object {
			public static class: java.lang.Class<android.os.StatFs>;
			/** @deprecated */
			public getBlockCount(): number;
			public getFreeBytes(): number;
			public getBlockSizeLong(): number;
			public restat(param0: string): void;
			public getAvailableBlocksLong(): number;
			public getFreeBlocksLong(): number;
			/** @deprecated */
			public getAvailableBlocks(): number;
			/** @deprecated */
			public getFreeBlocks(): number;
			public getAvailableBytes(): number;
			public constructor(param0: string);
			/** @deprecated */
			public getBlockSize(): number;
			public getBlockCountLong(): number;
			public getTotalBytes(): number;
		}
	}
}

declare module android {
	export module os {
		export class StrictMode extends java.lang.Object {
			public static class: java.lang.Class<android.os.StrictMode>;
			public static getThreadPolicy(): android.os.StrictMode.ThreadPolicy;
			public static allowThreadDiskWrites(): android.os.StrictMode.ThreadPolicy;
			public static enableDefaults(): void;
			public static noteSlowCall(param0: string): void;
			public static setThreadPolicy(param0: android.os.StrictMode.ThreadPolicy): void;
			public static getVmPolicy(): android.os.StrictMode.VmPolicy;
			public static allowThreadDiskReads(): android.os.StrictMode.ThreadPolicy;
			public static setVmPolicy(param0: android.os.StrictMode.VmPolicy): void;
		}
		export module StrictMode {
			export class ThreadPolicy extends java.lang.Object {
				public static class: java.lang.Class<android.os.StrictMode.ThreadPolicy>;
				public static LAX: android.os.StrictMode.ThreadPolicy;
				public toString(): string;
			}
			export module ThreadPolicy {
				export class Builder extends java.lang.Object {
					public static class: java.lang.Class<android.os.StrictMode.ThreadPolicy.Builder>;
					public penaltyLog(): android.os.StrictMode.ThreadPolicy.Builder;
					public detectNetwork(): android.os.StrictMode.ThreadPolicy.Builder;
					public permitDiskReads(): android.os.StrictMode.ThreadPolicy.Builder;
					public detectDiskWrites(): android.os.StrictMode.ThreadPolicy.Builder;
					public penaltyDialog(): android.os.StrictMode.ThreadPolicy.Builder;
					public penaltyDeathOnNetwork(): android.os.StrictMode.ThreadPolicy.Builder;
					public detectCustomSlowCalls(): android.os.StrictMode.ThreadPolicy.Builder;
					public constructor(param0: android.os.StrictMode.ThreadPolicy);
					public penaltyDropBox(): android.os.StrictMode.ThreadPolicy.Builder;
					public penaltyFlashScreen(): android.os.StrictMode.ThreadPolicy.Builder;
					public detectDiskReads(): android.os.StrictMode.ThreadPolicy.Builder;
					public permitAll(): android.os.StrictMode.ThreadPolicy.Builder;
					public permitDiskWrites(): android.os.StrictMode.ThreadPolicy.Builder;
					public penaltyDeath(): android.os.StrictMode.ThreadPolicy.Builder;
					public detectAll(): android.os.StrictMode.ThreadPolicy.Builder;
					public permitCustomSlowCalls(): android.os.StrictMode.ThreadPolicy.Builder;
					public constructor();
					public build(): android.os.StrictMode.ThreadPolicy;
					public permitNetwork(): android.os.StrictMode.ThreadPolicy.Builder;
				}
			}
			export class VmPolicy extends java.lang.Object {
				public static class: java.lang.Class<android.os.StrictMode.VmPolicy>;
				public static LAX: android.os.StrictMode.VmPolicy;
				public toString(): string;
			}
			export module VmPolicy {
				export class Builder extends java.lang.Object {
					public static class: java.lang.Class<android.os.StrictMode.VmPolicy.Builder>;
					public build(): android.os.StrictMode.VmPolicy;
					public setClassInstanceLimit(param0: java.lang.Class<any>, param1: number): android.os.StrictMode.VmPolicy.Builder;
					public detectActivityLeaks(): android.os.StrictMode.VmPolicy.Builder;
					public penaltyDeath(): android.os.StrictMode.VmPolicy.Builder;
					public detectLeakedSqlLiteObjects(): android.os.StrictMode.VmPolicy.Builder;
					public penaltyLog(): android.os.StrictMode.VmPolicy.Builder;
					public detectFileUriExposure(): android.os.StrictMode.VmPolicy.Builder;
					public penaltyDropBox(): android.os.StrictMode.VmPolicy.Builder;
					public detectAll(): android.os.StrictMode.VmPolicy.Builder;
					public constructor();
					public detectLeakedClosableObjects(): android.os.StrictMode.VmPolicy.Builder;
					public detectLeakedRegistrationObjects(): android.os.StrictMode.VmPolicy.Builder;
					public constructor(param0: android.os.StrictMode.VmPolicy);
				}
			}
		}
	}
}

declare module android {
	export module os {
		export class SystemClock extends java.lang.Object {
			public static class: java.lang.Class<android.os.SystemClock>;
			public static currentThreadTimeMillis(): number;
			public static uptimeMillis(): number;
			public static sleep(param0: number): void;
			public static setCurrentTimeMillis(param0: number): boolean;
			public static elapsedRealtimeNanos(): number;
			public static elapsedRealtime(): number;
		}
	}
}

declare module android {
	export module os {
		export abstract class TokenWatcher extends java.lang.Object {
			public static class: java.lang.Class<android.os.TokenWatcher>;
			public dump(param0: java.io.PrintWriter): void;
			public cleanup(param0: android.os.IBinder, param1: boolean): void;
			public isAcquired(): boolean;
			public release(param0: android.os.IBinder): void;
			public constructor(param0: android.os.Handler, param1: string);
			public acquired(): void;
			public released(): void;
			public acquire(param0: android.os.IBinder, param1: string): void;
			public dump(): void;
		}
	}
}

declare module android {
	export module os {
		export class Trace extends java.lang.Object {
			public static class: java.lang.Class<android.os.Trace>;
			public static endSection(): void;
			public static beginSection(param0: string): void;
		}
	}
}

declare module android {
	export module os {
		export class TransactionTooLargeException extends android.os.RemoteException {
			public static class: java.lang.Class<android.os.TransactionTooLargeException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
			public constructor(param0: java.lang.Exception);
		}
	}
}

declare module android {
	export module os {
		export class UserHandle extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.os.UserHandle>;
			public static CREATOR: android.os.Parcelable.Creator<android.os.UserHandle>;
			public equals(param0: any): boolean;
			public toString(): string;
			public static writeToParcel(param0: android.os.UserHandle, param1: android.os.Parcel): void;
			public constructor(param0: android.os.Parcel);
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public static readFromParcel(param0: android.os.Parcel): android.os.UserHandle;
			public hashCode(): number;
		}
	}
}

declare module android {
	export module os {
		export class UserManager extends java.lang.Object {
			public static class: java.lang.Class<android.os.UserManager>;
			public static DISALLOW_MODIFY_ACCOUNTS: string;
			public static DISALLOW_CONFIG_WIFI: string;
			public static DISALLOW_INSTALL_APPS: string;
			public static DISALLOW_UNINSTALL_APPS: string;
			public static DISALLOW_SHARE_LOCATION: string;
			public static DISALLOW_INSTALL_UNKNOWN_SOURCES: string;
			public static DISALLOW_CONFIG_BLUETOOTH: string;
			public static DISALLOW_USB_FILE_TRANSFER: string;
			public static DISALLOW_CONFIG_CREDENTIALS: string;
			public static DISALLOW_REMOVE_USER: string;
			public getApplicationRestrictions(param0: string): android.os.Bundle;
			public isUserRunning(param0: android.os.UserHandle): boolean;
			public isUserRunningOrStopping(param0: android.os.UserHandle): boolean;
			public setUserRestrictions(param0: android.os.Bundle, param1: android.os.UserHandle): void;
			public setUserRestrictions(param0: android.os.Bundle): void;
			public isUserAGoat(): boolean;
			public getUserCount(): number;
			public getUserName(): string;
			public getUserForSerialNumber(param0: number): android.os.UserHandle;
			public getUserRestrictions(): android.os.Bundle;
			public getSerialNumberForUser(param0: android.os.UserHandle): number;
			public setUserRestriction(param0: string, param1: boolean): void;
			public getUserRestrictions(param0: android.os.UserHandle): android.os.Bundle;
		}
	}
}

declare module android {
	export module os {
		export abstract class Vibrator extends java.lang.Object {
			public static class: java.lang.Class<android.os.Vibrator>;
			public vibrate(param0: number): void;
			public vibrate(param0: native.Array<number>, param1: number): void;
			public cancel(): void;
			public hasVibrator(): boolean;
		}
	}
}

declare module android {
	export module os {
		export class WorkSource extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.os.WorkSource>;
			public static CREATOR: android.os.Parcelable.Creator<android.os.WorkSource>;
			public clear(): void;
			public equals(param0: any): boolean;
			public diff(param0: android.os.WorkSource): boolean;
			public toString(): string;
			public add(param0: android.os.WorkSource): boolean;
			public describeContents(): number;
			public constructor(param0: android.os.WorkSource);
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public constructor();
			public set(param0: android.os.WorkSource): void;
			public remove(param0: android.os.WorkSource): boolean;
			public hashCode(): number;
		}
	}
}

declare module android {
	export module os {
		export module storage {
			export abstract class OnObbStateChangeListener extends java.lang.Object {
				public static class: java.lang.Class<android.os.storage.OnObbStateChangeListener>;
				public static MOUNTED: number;
				public static UNMOUNTED: number;
				public static ERROR_INTERNAL: number;
				public static ERROR_COULD_NOT_MOUNT: number;
				public static ERROR_COULD_NOT_UNMOUNT: number;
				public static ERROR_NOT_MOUNTED: number;
				public static ERROR_ALREADY_MOUNTED: number;
				public static ERROR_PERMISSION_DENIED: number;
				public onObbStateChange(param0: string, param1: number): void;
				public constructor();
			}
		}
	}
}

declare module android {
	export module os {
		export module storage {
			export class StorageManager extends java.lang.Object {
				public static class: java.lang.Class<android.os.storage.StorageManager>;
				public mountObb(param0: string, param1: string, param2: android.os.storage.OnObbStateChangeListener): boolean;
				public getMountedObbPath(param0: string): string;
				public isObbMounted(param0: string): boolean;
				public unmountObb(param0: string, param1: boolean, param2: android.os.storage.OnObbStateChangeListener): boolean;
			}
		}
	}
}

declare module android {
	export module preference {
		export class CheckBoxPreference extends android.preference.TwoStatePreference {
			public static class: java.lang.Class<android.preference.CheckBoxPreference>;
			public onBindView(param0: android.view.View): void;
			public constructor(param0: android.content.Context);
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
		}
	}
}

declare module android {
	export module preference {
		export abstract class DialogPreference extends android.preference.Preference implements android.content.DialogInterface.OnClickListener, android.content.DialogInterface.OnDismissListener, android.preference.PreferenceManager.OnActivityDestroyListener {
			public static class: java.lang.Class<android.preference.DialogPreference>;
			public onClick(): void;
			public onClick(param0: android.content.DialogInterface, param1: number): void;
			public setDialogMessage(param0: number): void;
			public setDialogTitle(param0: string): void;
			public setNegativeButtonText(param0: string): void;
			public onBindDialogView(param0: android.view.View): void;
			public onDismiss(param0: android.content.DialogInterface): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public getNegativeButtonText(): string;
			public onPrepareDialogBuilder(param0: android.app.AlertDialog.Builder): void;
			public getDialogTitle(): string;
			public getDialogMessage(): string;
			public onDialogClosed(param0: boolean): void;
			public getDialog(): android.app.Dialog;
			public showDialog(param0: android.os.Bundle): void;
			public setDialogIcon(param0: android.graphics.drawable.Drawable): void;
			public getDialogLayoutResource(): number;
			public onRestoreInstanceState(param0: android.os.Parcelable): void;
			public onCreateDialogView(): android.view.View;
			public getDialogIcon(): android.graphics.drawable.Drawable;
			public setDialogLayoutResource(param0: number): void;
			public setPositiveButtonText(param0: string): void;
			public setNegativeButtonText(param0: number): void;
			public setDialogIcon(param0: number): void;
			public constructor(param0: android.content.Context);
			public setPositiveButtonText(param0: number): void;
			public setDialogTitle(param0: number): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public setDialogMessage(param0: string): void;
			public getPositiveButtonText(): string;
			public onActivityDestroy(): void;
			public onSaveInstanceState(): android.os.Parcelable;
		}
	}
}

declare module android {
	export module preference {
		export class EditTextPreference extends android.preference.DialogPreference {
			public static class: java.lang.Class<android.preference.EditTextPreference>;
			public onRestoreInstanceState(param0: android.os.Parcelable): void;
			public onClick(): void;
			public onClick(param0: android.content.DialogInterface, param1: number): void;
			public setText(param0: string): void;
			public getText(): string;
			public onBindDialogView(param0: android.view.View): void;
			public onDismiss(param0: android.content.DialogInterface): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public shouldDisableDependents(): boolean;
			public onGetDefaultValue(param0: android.content.res.TypedArray, param1: number): any;
			public getEditText(): android.widget.EditText;
			public onAddEditTextToDialogView(param0: android.view.View, param1: android.widget.EditText): void;
			public onDialogClosed(param0: boolean): void;
			public onSetInitialValue(param0: boolean, param1: any): void;
			public constructor(param0: android.content.Context);
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public onSaveInstanceState(): android.os.Parcelable;
			public onActivityDestroy(): void;
		}
	}
}

declare module android {
	export module preference {
		export class ListPreference extends android.preference.DialogPreference {
			public static class: java.lang.Class<android.preference.ListPreference>;
			public onClick(): void;
			public onClick(param0: android.content.DialogInterface, param1: number): void;
			public setEntries(param0: native.Array<string>): void;
			public setEntryValues(param0: native.Array<string>): void;
			public onDismiss(param0: android.content.DialogInterface): void;
			public setValue(param0: string): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public findIndexOfValue(param0: string): number;
			public onPrepareDialogBuilder(param0: android.app.AlertDialog.Builder): void;
			public onGetDefaultValue(param0: android.content.res.TypedArray, param1: number): any;
			public getSummary(): string;
			public onDialogClosed(param0: boolean): void;
			public onSetInitialValue(param0: boolean, param1: any): void;
			public getEntryValues(): native.Array<string>;
			public getEntry(): string;
			public setValueIndex(param0: number): void;
			public onRestoreInstanceState(param0: android.os.Parcelable): void;
			public setSummary(param0: string): void;
			public setSummary(param0: number): void;
			public constructor(param0: android.content.Context);
			public setEntries(param0: number): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public getEntries(): native.Array<string>;
			public getValue(): string;
			public onSaveInstanceState(): android.os.Parcelable;
			public onActivityDestroy(): void;
			public setEntryValues(param0: number): void;
		}
	}
}

declare module android {
	export module preference {
		export class MultiSelectListPreference extends android.preference.DialogPreference {
			public static class: java.lang.Class<android.preference.MultiSelectListPreference>;
			public onClick(): void;
			public setValues(param0: java.util.Set<string>): void;
			public onClick(param0: android.content.DialogInterface, param1: number): void;
			public setEntries(param0: native.Array<string>): void;
			public getValues(): java.util.Set<string>;
			public setEntryValues(param0: native.Array<string>): void;
			public onDismiss(param0: android.content.DialogInterface): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public findIndexOfValue(param0: string): number;
			public onPrepareDialogBuilder(param0: android.app.AlertDialog.Builder): void;
			public onGetDefaultValue(param0: android.content.res.TypedArray, param1: number): any;
			public onDialogClosed(param0: boolean): void;
			public onSetInitialValue(param0: boolean, param1: any): void;
			public constructor(param0: android.content.Context);
			public setEntries(param0: number): void;
			public getEntryValues(): native.Array<string>;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public getEntries(): native.Array<string>;
			public onSaveInstanceState(): android.os.Parcelable;
			public onActivityDestroy(): void;
			public setEntryValues(param0: number): void;
		}
	}
}

declare module android {
	export module preference {
		export class Preference extends java.lang.Comparable<android.preference.Preference> {
			public static class: java.lang.Class<android.preference.Preference>;
			public static DEFAULT_ORDER: number;
			public onBindView(param0: android.view.View): void;
			public onClick(): void;
			public findPreferenceInHierarchy(param0: string): android.preference.Preference;
			public setTitle(param0: string): void;
			public isSelectable(): boolean;
			public onPrepareForRemoval(): void;
			public setSelectable(param0: boolean): void;
			public onAttachedToHierarchy(param0: android.preference.PreferenceManager): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public setDefaultValue(param0: any): void;
			public onGetDefaultValue(param0: android.content.res.TypedArray, param1: number): any;
			public getLayoutResource(): number;
			public hasKey(): boolean;
			public getSummary(): string;
			public setPersistent(param0: boolean): void;
			public getKey(): string;
			public getContext(): android.content.Context;
			public setEnabled(param0: boolean): void;
			public onAttachedToActivity(): void;
			public getPersistedInt(param0: number): number;
			public onRestoreInstanceState(param0: android.os.Parcelable): void;
			public getTitle(): string;
			public isPersistent(): boolean;
			public saveHierarchyState(param0: android.os.Bundle): void;
			public getShouldDisableView(): boolean;
			public persistBoolean(param0: boolean): boolean;
			public setOnPreferenceChangeListener(param0: android.preference.Preference.OnPreferenceChangeListener): void;
			public getOnPreferenceClickListener(): android.preference.Preference.OnPreferenceClickListener;
			public getOrder(): number;
			public restoreHierarchyState(param0: android.os.Bundle): void;
			public setSummary(param0: string): void;
			public setKey(param0: string): void;
			public setSummary(param0: number): void;
			public getTitleRes(): number;
			public getSharedPreferences(): android.content.SharedPreferences;
			public shouldPersist(): boolean;
			public onSaveInstanceState(): android.os.Parcelable;
			public getExtras(): android.os.Bundle;
			public persistLong(param0: number): boolean;
			public shouldCommit(): boolean;
			public getPersistedLong(param0: number): number;
			public getIntent(): android.content.Intent;
			public getFragment(): string;
			public getPreferenceManager(): android.preference.PreferenceManager;
			public setOrder(param0: number): void;
			public shouldDisableDependents(): boolean;
			public notifyChanged(): void;
			public onSetInitialValue(param0: boolean, param1: any): void;
			public getWidgetLayoutResource(): number;
			public onCreateView(param0: android.view.ViewGroup): android.view.View;
			public getOnPreferenceChangeListener(): android.preference.Preference.OnPreferenceChangeListener;
			public setWidgetLayoutResource(param0: number): void;
			public peekExtras(): android.os.Bundle;
			public getDependency(): string;
			public setIcon(param0: number): void;
			public getEditor(): android.content.SharedPreferences.Editor;
			public callChangeListener(param0: any): boolean;
			public getView(param0: android.view.View, param1: android.view.ViewGroup): android.view.View;
			public persistString(param0: string): boolean;
			public setTitle(param0: number): void;
			public notifyDependencyChange(param0: boolean): void;
			public onDependencyChanged(param0: android.preference.Preference, param1: boolean): void;
			public setFragment(param0: string): void;
			public persistFloat(param0: number): boolean;
			public setLayoutResource(param0: number): void;
			public getPersistedBoolean(param0: boolean): boolean;
			public setIntent(param0: android.content.Intent): void;
			public getIcon(): android.graphics.drawable.Drawable;
			public isEnabled(): boolean;
			public setOnPreferenceClickListener(param0: android.preference.Preference.OnPreferenceClickListener): void;
			public toString(): string;
			public getPersistedString(param0: string): string;
			public constructor(param0: android.content.Context);
			public notifyHierarchyChanged(): void;
			public persistInt(param0: number): boolean;
			public getPersistedFloat(param0: number): number;
			public compareTo(param0: android.preference.Preference): number;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public setDependency(param0: string): void;
			public setShouldDisableView(param0: boolean): void;
			public setIcon(param0: android.graphics.drawable.Drawable): void;
		}
		export module Preference {
			export class BaseSavedState extends android.view.AbsSavedState {
				public static class: java.lang.Class<android.preference.Preference.BaseSavedState>;
				public static CREATOR: android.os.Parcelable.Creator<android.preference.Preference.BaseSavedState>;
				public constructor(param0: android.os.Parcel);
				public constructor(param0: android.os.Parcelable);
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public describeContents(): number;
			}
			export class OnPreferenceChangeListener extends java.lang.Object {
				public static class: java.lang.Class<android.preference.Preference.OnPreferenceChangeListener>;
				/**
				 * Constructs a new instance of the android.preference.Preference$OnPreferenceChangeListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onPreferenceChange(param0: android.preference.Preference, param1: any): boolean;
				});
				public constructor();
				public onPreferenceChange(param0: android.preference.Preference, param1: any): boolean;
			}
			export class OnPreferenceClickListener extends java.lang.Object {
				public static class: java.lang.Class<android.preference.Preference.OnPreferenceClickListener>;
				/**
				 * Constructs a new instance of the android.preference.Preference$OnPreferenceClickListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onPreferenceClick(param0: android.preference.Preference): boolean;
				});
				public constructor();
				public onPreferenceClick(param0: android.preference.Preference): boolean;
			}
		}
	}
}

declare module android {
	export module preference {
		export abstract class PreferenceActivity extends android.app.ListActivity implements android.preference.PreferenceFragment.OnPreferenceStartFragmentCallback {
			public static class: java.lang.Class<android.preference.PreferenceActivity>;
			public static EXTRA_SHOW_FRAGMENT: string;
			public static EXTRA_SHOW_FRAGMENT_ARGUMENTS: string;
			public static EXTRA_SHOW_FRAGMENT_TITLE: string;
			public static EXTRA_SHOW_FRAGMENT_SHORT_TITLE: string;
			public static EXTRA_NO_HEADERS: string;
			public static HEADER_ID_UNDEFINED: number;
			public onCreatePanelMenu(param0: number, param1: android.view.Menu): boolean;
			public loadHeadersFromResource(param0: number, param1: java.util.List<android.preference.PreferenceActivity.Header>): void;
			public isMultiPane(): boolean;
			public startPreferenceFragment(param0: android.app.Fragment, param1: boolean): void;
			public onSearchRequested(): boolean;
			public onActivityResult(param0: number, param1: number, param2: android.content.Intent): void;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			/** @deprecated */
			public getPreferenceManager(): android.preference.PreferenceManager;
			public onCreatePanelView(param0: number): android.view.View;
			public switchToHeader(param0: android.preference.PreferenceActivity.Header): void;
			public showBreadCrumbs(param0: string, param1: string): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public dispatchGenericMotionEvent(param0: android.view.MotionEvent): boolean;
			public onDetachedFromWindow(): void;
			public onBuildStartFragmentIntent(param0: string, param1: android.os.Bundle, param2: number, param3: number): android.content.Intent;
			public onCreateView(param0: android.view.View, param1: string, param2: android.content.Context, param3: android.util.AttributeSet): android.view.View;
			public onGetInitialHeader(): android.preference.PreferenceActivity.Header;
			/** @deprecated */
			public addPreferencesFromResource(param0: number): void;
			public constructor();
			public onRestoreInstanceState(param0: android.os.Bundle): void;
			public onCreateView(param0: string, param1: android.content.Context, param2: android.util.AttributeSet): android.view.View;
			public constructor(param0: android.content.Context, param1: number);
			/** @deprecated */
			public findPreference(param0: string): android.preference.Preference;
			public onNewIntent(param0: android.content.Intent): void;
			public onCreateContextMenu(param0: android.view.ContextMenu, param1: android.view.View, param2: android.view.ContextMenu.ContextMenuInfo): void;
			public dispatchTouchEvent(param0: android.view.MotionEvent): boolean;
			public onPreparePanel(param0: number, param1: android.view.View, param2: android.view.Menu): boolean;
			public onWindowFocusChanged(param0: boolean): void;
			public onCreate(param0: android.os.Bundle): void;
			public hasHeaders(): boolean;
			public startWithFragment(param0: string, param1: android.os.Bundle, param2: android.app.Fragment, param3: number): void;
			public onContentChanged(): void;
			public onWindowStartingActionMode(param0: android.view.ActionMode.Callback): android.view.ActionMode;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public setParentTitle(param0: string, param1: string, param2: android.view.View.OnClickListener): void;
			public onDestroy(): void;
			/** @deprecated */
			public setPreferenceScreen(param0: android.preference.PreferenceScreen): void;
			public onPanelClosed(param0: number, param1: android.view.Menu): void;
			public onIsHidingHeaders(): boolean;
			public onTrimMemory(param0: number): void;
			public onActionModeFinished(param0: android.view.ActionMode): void;
			public startPreferencePanel(param0: string, param1: android.os.Bundle, param2: number, param3: string, param4: android.app.Fragment, param5: number): void;
			/** @deprecated */
			public onPreferenceTreeClick(param0: android.preference.PreferenceScreen, param1: android.preference.Preference): boolean;
			public onStop(): void;
			public onActionModeStarted(param0: android.view.ActionMode): void;
			public startWithFragment(param0: string, param1: android.os.Bundle, param2: android.app.Fragment, param3: number, param4: number, param5: number): void;
			public dispatchKeyShortcutEvent(param0: android.view.KeyEvent): boolean;
			public onMenuItemSelected(param0: number, param1: android.view.MenuItem): boolean;
			public onMenuOpened(param0: number, param1: android.view.Menu): boolean;
			public onListItemClick(param0: android.widget.ListView, param1: android.view.View, param2: number, param3: number): void;
			public onPreferenceStartFragment(param0: android.preference.PreferenceFragment, param1: android.preference.Preference): boolean;
			/** @deprecated */
			public getPreferenceScreen(): android.preference.PreferenceScreen;
			public finishPreferencePanel(param0: android.app.Fragment, param1: number, param2: android.content.Intent): void;
			public onGetNewHeader(): android.preference.PreferenceActivity.Header;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public dispatchTrackballEvent(param0: android.view.MotionEvent): boolean;
			public onIsMultiPane(): boolean;
			public onHeaderClick(param0: android.preference.PreferenceActivity.Header, param1: number): void;
			public onSaveInstanceState(param0: android.os.Bundle): void;
			public switchToHeader(param0: string, param1: android.os.Bundle): void;
			/** @deprecated */
			public addPreferencesFromIntent(param0: android.content.Intent): void;
			public constructor(param0: android.content.Context);
			public dispatchKeyEvent(param0: android.view.KeyEvent): boolean;
			public onBuildHeaders(param0: java.util.List<android.preference.PreferenceActivity.Header>): void;
			public dispatchPopulateAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): boolean;
			public onAttachedToWindow(): void;
			public setListFooter(param0: android.view.View): void;
			public invalidateHeaders(): void;
			public onWindowAttributesChanged(param0: android.view.WindowManager.LayoutParams): void;
		}
		export module PreferenceActivity {
			export class Header extends java.lang.Object implements android.os.Parcelable {
				public static class: java.lang.Class<android.preference.PreferenceActivity.Header>;
				public id: number;
				public titleRes: number;
				public title: string;
				public summaryRes: number;
				public summary: string;
				public breadCrumbTitleRes: number;
				public breadCrumbTitle: string;
				public breadCrumbShortTitleRes: number;
				public breadCrumbShortTitle: string;
				public iconRes: number;
				public fragment: string;
				public fragmentArguments: android.os.Bundle;
				public intent: android.content.Intent;
				public extras: android.os.Bundle;
				public static CREATOR: android.os.Parcelable.Creator<android.preference.PreferenceActivity.Header>;
				public getBreadCrumbTitle(param0: android.content.res.Resources): string;
				public getSummary(param0: android.content.res.Resources): string;
				public getTitle(param0: android.content.res.Resources): string;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public getBreadCrumbShortTitle(param0: android.content.res.Resources): string;
				public describeContents(): number;
				public readFromParcel(param0: android.os.Parcel): void;
				public constructor();
			}
		}
	}
}

declare module android {
	export module preference {
		export class PreferenceCategory extends android.preference.PreferenceGroup {
			public static class: java.lang.Class<android.preference.PreferenceCategory>;
			public isEnabled(): boolean;
			public onPrepareAddPreference(param0: android.preference.Preference): boolean;
			public constructor(param0: android.content.Context);
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
		}
	}
}

declare module android {
	export module preference {
		export abstract class PreferenceFragment extends android.app.Fragment {
			public static class: java.lang.Class<android.preference.PreferenceFragment>;
			public findPreference(param0: string): android.preference.Preference;
			public onStart(): void;
			public onCreateView(param0: android.view.LayoutInflater, param1: android.view.ViewGroup, param2: android.os.Bundle): android.view.View;
			public addPreferencesFromIntent(param0: android.content.Intent): void;
			public getPreferenceManager(): android.preference.PreferenceManager;
			public getPreferenceScreen(): android.preference.PreferenceScreen;
			public constructor();
			public onDestroy(): void;
			public onActivityCreated(param0: android.os.Bundle): void;
			public onPreferenceTreeClick(param0: android.preference.PreferenceScreen, param1: android.preference.Preference): boolean;
			public setPreferenceScreen(param0: android.preference.PreferenceScreen): void;
			public onCreateContextMenu(param0: android.view.ContextMenu, param1: android.view.View, param2: android.view.ContextMenu.ContextMenuInfo): void;
			public onTrimMemory(param0: number): void;
			public onActivityResult(param0: number, param1: number, param2: android.content.Intent): void;
			public onSaveInstanceState(param0: android.os.Bundle): void;
			public onDestroyView(): void;
			public onCreate(param0: android.os.Bundle): void;
			public onStop(): void;
			public addPreferencesFromResource(param0: number): void;
		}
		export module PreferenceFragment {
			export class OnPreferenceStartFragmentCallback extends java.lang.Object {
				public static class: java.lang.Class<android.preference.PreferenceFragment.OnPreferenceStartFragmentCallback>;
				/**
				 * Constructs a new instance of the android.preference.PreferenceFragment$OnPreferenceStartFragmentCallback interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onPreferenceStartFragment(param0: android.preference.PreferenceFragment, param1: android.preference.Preference): boolean;
				});
				public constructor();
				public onPreferenceStartFragment(param0: android.preference.PreferenceFragment, param1: android.preference.Preference): boolean;
			}
		}
	}
}

declare module android {
	export module preference {
		export abstract class PreferenceGroup extends android.preference.Preference {
			public static class: java.lang.Class<android.preference.PreferenceGroup>;
			public findPreference(param0: string): android.preference.Preference;
			public setOrderingAsAdded(param0: boolean): void;
			public getPreference(param0: number): android.preference.Preference;
			public onPrepareAddPreference(param0: android.preference.Preference): boolean;
			public onPrepareForRemoval(): void;
			public removePreference(param0: android.preference.Preference): boolean;
			public addItemFromInflater(param0: android.preference.Preference): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public dispatchSaveInstanceState(param0: android.os.Bundle): void;
			public addPreference(param0: android.preference.Preference): boolean;
			public dispatchRestoreInstanceState(param0: android.os.Bundle): void;
			public isOnSameScreenAsChildren(): boolean;
			public isOrderingAsAdded(): boolean;
			public constructor(param0: android.content.Context);
			public removeAll(): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public getPreferenceCount(): number;
			public setEnabled(param0: boolean): void;
			public onAttachedToActivity(): void;
		}
	}
}

declare module android {
	export module preference {
		export class PreferenceManager extends java.lang.Object {
			public static class: java.lang.Class<android.preference.PreferenceManager>;
			public static METADATA_KEY_PREFERENCES: string;
			public static KEY_HAS_SET_DEFAULT_VALUES: string;
			public getSharedPreferencesMode(): number;
			public findPreference(param0: string): android.preference.Preference;
			public createPreferenceScreen(param0: android.content.Context): android.preference.PreferenceScreen;
			public setSharedPreferencesMode(param0: number): void;
			public setSharedPreferencesName(param0: string): void;
			public static setDefaultValues(param0: android.content.Context, param1: number, param2: boolean): void;
			public static setDefaultValues(param0: android.content.Context, param1: string, param2: number, param3: number, param4: boolean): void;
			public getSharedPreferencesName(): string;
			public static getDefaultSharedPreferences(param0: android.content.Context): android.content.SharedPreferences;
			public getSharedPreferences(): android.content.SharedPreferences;
		}
		export module PreferenceManager {
			export class OnActivityDestroyListener extends java.lang.Object {
				public static class: java.lang.Class<android.preference.PreferenceManager.OnActivityDestroyListener>;
				/**
				 * Constructs a new instance of the android.preference.PreferenceManager$OnActivityDestroyListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onActivityDestroy(): void;
				});
				public constructor();
				public onActivityDestroy(): void;
			}
			export class OnActivityResultListener extends java.lang.Object {
				public static class: java.lang.Class<android.preference.PreferenceManager.OnActivityResultListener>;
				/**
				 * Constructs a new instance of the android.preference.PreferenceManager$OnActivityResultListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onActivityResult(param0: number, param1: number, param2: android.content.Intent): boolean;
				});
				public constructor();
				public onActivityResult(param0: number, param1: number, param2: android.content.Intent): boolean;
			}
			export class OnActivityStopListener extends java.lang.Object {
				public static class: java.lang.Class<android.preference.PreferenceManager.OnActivityStopListener>;
				/**
				 * Constructs a new instance of the android.preference.PreferenceManager$OnActivityStopListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onActivityStop(): void;
				});
				public constructor();
				public onActivityStop(): void;
			}
		}
	}
}

declare module android {
	export module preference {
		export class PreferenceScreen extends android.preference.PreferenceGroup implements android.widget.AdapterView.OnItemClickListener, android.content.DialogInterface.OnDismissListener {
			public static class: java.lang.Class<android.preference.PreferenceScreen>;
			public onClick(): void;
			public onRestoreInstanceState(param0: android.os.Parcelable): void;
			public getRootAdapter(): android.widget.ListAdapter;
			public onItemClick(param0: android.widget.AdapterView<any>, param1: android.view.View, param2: number, param3: number): void;
			public isOnSameScreenAsChildren(): boolean;
			public getDialog(): android.app.Dialog;
			public onDismiss(param0: android.content.DialogInterface): void;
			public onCreateRootAdapter(): android.widget.ListAdapter;
			public bind(param0: android.widget.ListView): void;
			public onItemClick(param0: android.widget.AdapterView<any>, param1: android.view.View, param2: number, param3: number): void;
			public onSaveInstanceState(): android.os.Parcelable;
		}
	}
}

declare module android {
	export module preference {
		export class RingtonePreference extends android.preference.Preference implements android.preference.PreferenceManager.OnActivityResultListener {
			public static class: java.lang.Class<android.preference.RingtonePreference>;
			public onClick(): void;
			public onPrepareRingtonePickerIntent(param0: android.content.Intent): void;
			public getRingtoneType(): number;
			public setRingtoneType(param0: number): void;
			public onSaveRingtone(param0: android.net.Uri): void;
			public onRestoreRingtone(): android.net.Uri;
			public onAttachedToHierarchy(param0: android.preference.PreferenceManager): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public setShowDefault(param0: boolean): void;
			public onGetDefaultValue(param0: android.content.res.TypedArray, param1: number): any;
			public setShowSilent(param0: boolean): void;
			public onSetInitialValue(param0: boolean, param1: any): void;
			public onActivityResult(param0: number, param1: number, param2: android.content.Intent): boolean;
			public constructor(param0: android.content.Context);
			public getShowDefault(): boolean;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public getShowSilent(): boolean;
		}
	}
}

declare module android {
	export module preference {
		export class SwitchPreference extends android.preference.TwoStatePreference {
			public static class: java.lang.Class<android.preference.SwitchPreference>;
			public onBindView(param0: android.view.View): void;
			public setSwitchTextOn(param0: string): void;
			public getSwitchTextOff(): string;
			public setSwitchTextOff(param0: number): void;
			public constructor(param0: android.content.Context);
			public setSwitchTextOn(param0: number): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public setSwitchTextOff(param0: string): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public getSwitchTextOn(): string;
		}
	}
}

declare module android {
	export module preference {
		export abstract class TwoStatePreference extends android.preference.Preference {
			public static class: java.lang.Class<android.preference.TwoStatePreference>;
			public onClick(): void;
			public onRestoreInstanceState(param0: android.os.Parcelable): void;
			public setChecked(param0: boolean): void;
			public getSummaryOff(): string;
			public isChecked(): boolean;
			public setSummaryOn(param0: string): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public setSummaryOff(param0: number): void;
			public shouldDisableDependents(): boolean;
			public onGetDefaultValue(param0: android.content.res.TypedArray, param1: number): any;
			public setSummaryOff(param0: string): void;
			public onSetInitialValue(param0: boolean, param1: any): void;
			public constructor(param0: android.content.Context);
			public getDisableDependentsState(): boolean;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public setDisableDependentsState(param0: boolean): void;
			public getSummaryOn(): string;
			public onSaveInstanceState(): android.os.Parcelable;
			public setSummaryOn(param0: number): void;
		}
	}
}

declare module android {
	export module provider {
		export class AlarmClock extends java.lang.Object {
			public static class: java.lang.Class<android.provider.AlarmClock>;
			public static ACTION_SET_ALARM: string;
			public static EXTRA_MESSAGE: string;
			public static EXTRA_HOUR: string;
			public static EXTRA_MINUTES: string;
			public static EXTRA_SKIP_UI: string;
			public constructor();
		}
	}
}

declare module android {
	export module provider {
		export class BaseColumns extends java.lang.Object {
			public static class: java.lang.Class<android.provider.BaseColumns>;
			/**
			 * Constructs a new instance of the android.provider.BaseColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
			});
			public constructor();
			public static _COUNT: string;
			public static _ID: string;
		}
	}
}

declare module android {
	export module provider {
		export class Browser extends java.lang.Object {
			public static class: java.lang.Class<android.provider.Browser>;
			public static BOOKMARKS_URI: android.net.Uri;
			public static INITIAL_ZOOM_LEVEL: string;
			public static EXTRA_APPLICATION_ID: string;
			public static EXTRA_HEADERS: string;
			public static HISTORY_PROJECTION: native.Array<string>;
			public static HISTORY_PROJECTION_ID_INDEX: number;
			public static HISTORY_PROJECTION_URL_INDEX: number;
			public static HISTORY_PROJECTION_VISITS_INDEX: number;
			public static HISTORY_PROJECTION_DATE_INDEX: number;
			public static HISTORY_PROJECTION_BOOKMARK_INDEX: number;
			public static HISTORY_PROJECTION_TITLE_INDEX: number;
			public static HISTORY_PROJECTION_FAVICON_INDEX: number;
			public static TRUNCATE_HISTORY_PROJECTION: native.Array<string>;
			public static TRUNCATE_HISTORY_PROJECTION_ID_INDEX: number;
			public static TRUNCATE_N_OLDEST: number;
			public static SEARCHES_URI: android.net.Uri;
			public static SEARCHES_PROJECTION: native.Array<string>;
			public static SEARCHES_PROJECTION_SEARCH_INDEX: number;
			public static SEARCHES_PROJECTION_DATE_INDEX: number;
			public static EXTRA_CREATE_NEW_TAB: string;
			public static getAllBookmarks(param0: android.content.ContentResolver): android.database.Cursor;
			public static deleteFromHistory(param0: android.content.ContentResolver, param1: string): void;
			public static requestAllIcons(param0: android.content.ContentResolver, param1: string, param2: android.webkit.WebIconDatabase.IconListener): void;
			public static truncateHistory(param0: android.content.ContentResolver): void;
			public static getAllVisitedUrls(param0: android.content.ContentResolver): android.database.Cursor;
			public static addSearchUrl(param0: android.content.ContentResolver, param1: string): void;
			public static sendString(param0: android.content.Context, param1: string): void;
			public constructor();
			public static canClearHistory(param0: android.content.ContentResolver): boolean;
			public static deleteHistoryTimeFrame(param0: android.content.ContentResolver, param1: number, param2: number): void;
			public static saveBookmark(param0: android.content.Context, param1: string, param2: string): void;
			public static clearSearches(param0: android.content.ContentResolver): void;
			public static updateVisitedHistory(param0: android.content.ContentResolver, param1: string, param2: boolean): void;
			public static clearHistory(param0: android.content.ContentResolver): void;
		}
		export module Browser {
			export class BookmarkColumns extends java.lang.Object implements android.provider.BaseColumns {
				public static class: java.lang.Class<android.provider.Browser.BookmarkColumns>;
				public static URL: string;
				public static VISITS: string;
				public static DATE: string;
				public static BOOKMARK: string;
				public static TITLE: string;
				public static CREATED: string;
				public static FAVICON: string;
				public constructor();
			}
			export class SearchColumns extends java.lang.Object implements android.provider.BaseColumns {
				public static class: java.lang.Class<android.provider.Browser.SearchColumns>;
				public static URL: string;
				public static SEARCH: string;
				public static DATE: string;
				public constructor();
			}
		}
	}
}

declare module android {
	export module provider {
		export class CalendarContract extends java.lang.Object {
			public static class: java.lang.Class<android.provider.CalendarContract>;
			public static ACTION_EVENT_REMINDER: string;
			public static ACTION_HANDLE_CUSTOM_EVENT: string;
			public static EXTRA_CUSTOM_APP_URI: string;
			public static EXTRA_EVENT_BEGIN_TIME: string;
			public static EXTRA_EVENT_END_TIME: string;
			public static EXTRA_EVENT_ALL_DAY: string;
			public static AUTHORITY: string;
			public static CONTENT_URI: android.net.Uri;
			public static CALLER_IS_SYNCADAPTER: string;
			public static ACCOUNT_TYPE_LOCAL: string;
		}
		export module CalendarContract {
			export class Attendees extends java.lang.Object implements android.provider.BaseColumns, android.provider.CalendarContract.AttendeesColumns, android.provider.CalendarContract.EventsColumns {
				public static class: java.lang.Class<android.provider.CalendarContract.Attendees>;
				public static CONTENT_URI: android.net.Uri;
				public static query(param0: android.content.ContentResolver, param1: number, param2: native.Array<string>): android.database.Cursor;
			}
			export class AttendeesColumns extends java.lang.Object {
				public static class: java.lang.Class<android.provider.CalendarContract.AttendeesColumns>;
				/**
				 * Constructs a new instance of the android.provider.CalendarContract$AttendeesColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
				public static RELATIONSHIP_NONE: number;
				public static TYPE_RESOURCE: number;
				public static ATTENDEE_STATUS_ACCEPTED: number;
				public static ATTENDEE_STATUS: string;
				public static ATTENDEE_STATUS_DECLINED: number;
				public static EVENT_ID: string;
				public static TYPE_REQUIRED: number;
				public static ATTENDEE_EMAIL: string;
				public static RELATIONSHIP_SPEAKER: number;
				public static ATTENDEE_IDENTITY: string;
				public static ATTENDEE_TYPE: string;
				public static ATTENDEE_STATUS_NONE: number;
				public static RELATIONSHIP_ATTENDEE: number;
				public static ATTENDEE_ID_NAMESPACE: string;
				public static ATTENDEE_RELATIONSHIP: string;
				public static TYPE_OPTIONAL: number;
				public static TYPE_NONE: number;
				public static ATTENDEE_NAME: string;
				public static RELATIONSHIP_PERFORMER: number;
				public static RELATIONSHIP_ORGANIZER: number;
				public static ATTENDEE_STATUS_INVITED: number;
				public static ATTENDEE_STATUS_TENTATIVE: number;
			}
			export class CalendarAlerts extends java.lang.Object implements android.provider.BaseColumns, android.provider.CalendarContract.CalendarAlertsColumns, android.provider.CalendarContract.EventsColumns, android.provider.CalendarContract.CalendarColumns {
				public static class: java.lang.Class<android.provider.CalendarContract.CalendarAlerts>;
				public static CONTENT_URI: android.net.Uri;
				public static CONTENT_URI_BY_INSTANCE: android.net.Uri;
			}
			export class CalendarAlertsColumns extends java.lang.Object {
				public static class: java.lang.Class<android.provider.CalendarContract.CalendarAlertsColumns>;
				/**
				 * Constructs a new instance of the android.provider.CalendarContract$CalendarAlertsColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
				public static STATE_FIRED: number;
				public static ALARM_TIME: string;
				public static STATE_DISMISSED: number;
				public static NOTIFY_TIME: string;
				public static MINUTES: string;
				public static EVENT_ID: string;
				public static END: string;
				public static CREATION_TIME: string;
				public static DEFAULT_SORT_ORDER: string;
				public static STATE_SCHEDULED: number;
				public static RECEIVED_TIME: string;
				public static STATE: string;
				public static BEGIN: string;
			}
			export class CalendarCache extends java.lang.Object implements android.provider.CalendarContract.CalendarCacheColumns {
				public static class: java.lang.Class<android.provider.CalendarContract.CalendarCache>;
				public static URI: android.net.Uri;
				public static KEY_TIMEZONE_TYPE: string;
				public static KEY_TIMEZONE_INSTANCES: string;
				public static KEY_TIMEZONE_INSTANCES_PREVIOUS: string;
				public static TIMEZONE_TYPE_AUTO: string;
				public static TIMEZONE_TYPE_HOME: string;
			}
			export class CalendarCacheColumns extends java.lang.Object {
				public static class: java.lang.Class<android.provider.CalendarContract.CalendarCacheColumns>;
				/**
				 * Constructs a new instance of the android.provider.CalendarContract$CalendarCacheColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
				public static VALUE: string;
				public static KEY: string;
			}
			export class CalendarColumns extends java.lang.Object {
				public static class: java.lang.Class<android.provider.CalendarContract.CalendarColumns>;
				/**
				 * Constructs a new instance of the android.provider.CalendarContract$CalendarColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
				public static CAL_ACCESS_CONTRIBUTOR: number;
				public static CALENDAR_TIME_ZONE: string;
				public static CAN_MODIFY_TIME_ZONE: string;
				public static CALENDAR_ACCESS_LEVEL: string;
				public static IS_PRIMARY: string;
				public static CAL_ACCESS_EDITOR: number;
				public static CAL_ACCESS_OVERRIDE: number;
				public static CAL_ACCESS_RESPOND: number;
				public static MAX_REMINDERS: string;
				public static SYNC_EVENTS: string;
				public static CALENDAR_COLOR_KEY: string;
				public static ALLOWED_ATTENDEE_TYPES: string;
				public static CALENDAR_COLOR: string;
				public static CAL_ACCESS_NONE: number;
				public static CAL_ACCESS_READ: number;
				public static OWNER_ACCOUNT: string;
				public static CAL_ACCESS_FREEBUSY: number;
				public static CALENDAR_DISPLAY_NAME: string;
				public static CAN_ORGANIZER_RESPOND: string;
				public static ALLOWED_AVAILABILITY: string;
				public static CAL_ACCESS_ROOT: number;
				public static ALLOWED_REMINDERS: string;
				public static VISIBLE: string;
				public static CAL_ACCESS_OWNER: number;
			}
			export class CalendarEntity extends java.lang.Object implements android.provider.BaseColumns, android.provider.CalendarContract.SyncColumns, android.provider.CalendarContract.CalendarColumns {
				public static class: java.lang.Class<android.provider.CalendarContract.CalendarEntity>;
				public static CONTENT_URI: android.net.Uri;
				public static newEntityIterator(param0: android.database.Cursor): android.content.EntityIterator;
			}
			export class CalendarSyncColumns extends java.lang.Object {
				public static class: java.lang.Class<android.provider.CalendarContract.CalendarSyncColumns>;
				/**
				 * Constructs a new instance of the android.provider.CalendarContract$CalendarSyncColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
				public static CAL_SYNC3: string;
				public static CAL_SYNC2: string;
				public static CAL_SYNC1: string;
				public static CAL_SYNC10: string;
				public static CAL_SYNC9: string;
				public static CAL_SYNC8: string;
				public static CAL_SYNC7: string;
				public static CAL_SYNC6: string;
				public static CAL_SYNC5: string;
				public static CAL_SYNC4: string;
			}
			export class Calendars extends java.lang.Object implements android.provider.BaseColumns, android.provider.CalendarContract.SyncColumns, android.provider.CalendarContract.CalendarColumns {
				public static class: java.lang.Class<android.provider.CalendarContract.Calendars>;
				public static CONTENT_URI: android.net.Uri;
				public static DEFAULT_SORT_ORDER: string;
				public static NAME: string;
				public static CALENDAR_LOCATION: string;
			}
			export class Colors extends java.lang.Object implements android.provider.CalendarContract.ColorsColumns {
				public static class: java.lang.Class<android.provider.CalendarContract.Colors>;
				public static CONTENT_URI: android.net.Uri;
			}
			export class ColorsColumns extends java.lang.Object implements android.provider.SyncStateContract.Columns {
				public static class: java.lang.Class<android.provider.CalendarContract.ColorsColumns>;
				/**
				 * Constructs a new instance of the android.provider.CalendarContract$ColorsColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
				public static ACCOUNT_NAME: string;
				public static _COUNT: string;
				public static ACCOUNT_TYPE: string;
				public static TYPE_CALENDAR: number;
				public static DATA: string;
				public static COLOR: string;
				public static _ID: string;
				public static COLOR_TYPE: string;
				public static TYPE_EVENT: number;
				public static COLOR_KEY: string;
			}
			export class EventDays extends java.lang.Object implements android.provider.CalendarContract.EventDaysColumns {
				public static class: java.lang.Class<android.provider.CalendarContract.EventDays>;
				public static CONTENT_URI: android.net.Uri;
				public static query(param0: android.content.ContentResolver, param1: number, param2: number, param3: native.Array<string>): android.database.Cursor;
			}
			export class EventDaysColumns extends java.lang.Object {
				public static class: java.lang.Class<android.provider.CalendarContract.EventDaysColumns>;
				/**
				 * Constructs a new instance of the android.provider.CalendarContract$EventDaysColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
				public static STARTDAY: string;
				public static ENDDAY: string;
			}
			export class Events extends java.lang.Object implements android.provider.BaseColumns, android.provider.CalendarContract.SyncColumns, android.provider.CalendarContract.EventsColumns, android.provider.CalendarContract.CalendarColumns {
				public static class: java.lang.Class<android.provider.CalendarContract.Events>;
				public static CONTENT_URI: android.net.Uri;
				public static CONTENT_EXCEPTION_URI: android.net.Uri;
			}
			export class EventsColumns extends java.lang.Object {
				public static class: java.lang.Class<android.provider.CalendarContract.EventsColumns>;
				/**
				 * Constructs a new instance of the android.provider.CalendarContract$EventsColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
				public static HAS_EXTENDED_PROPERTIES: string;
				public static UID_2445: string;
				public static IS_ORGANIZER: string;
				public static ALL_DAY: string;
				public static STATUS_TENTATIVE: number;
				public static EVENT_TIMEZONE: string;
				public static RDATE: string;
				public static ACCESS_PRIVATE: number;
				public static AVAILABILITY_TENTATIVE: number;
				public static STATUS: string;
				public static ACCESS_DEFAULT: number;
				public static EXRULE: string;
				public static EVENT_LOCATION: string;
				public static EVENT_COLOR_KEY: string;
				public static DTSTART: string;
				public static CAN_INVITE_OTHERS: string;
				public static ACCESS_PUBLIC: number;
				public static AVAILABILITY: string;
				public static GUESTS_CAN_INVITE_OTHERS: string;
				public static LAST_SYNCED: string;
				public static TITLE: string;
				public static ACCESS_LEVEL: string;
				public static ORIGINAL_SYNC_ID: string;
				public static HAS_ATTENDEE_DATA: string;
				public static DURATION: string;
				public static ORGANIZER: string;
				public static ACCESS_CONFIDENTIAL: number;
				public static AVAILABILITY_FREE: number;
				public static LAST_DATE: string;
				public static EVENT_COLOR: string;
				public static RRULE: string;
				public static EVENT_END_TIMEZONE: string;
				public static SELF_ATTENDEE_STATUS: string;
				public static STATUS_CONFIRMED: number;
				public static AVAILABILITY_BUSY: number;
				public static DISPLAY_COLOR: string;
				public static ORIGINAL_ALL_DAY: string;
				public static CALENDAR_ID: string;
				public static SYNC_DATA1: string;
				public static ORIGINAL_INSTANCE_TIME: string;
				public static DESCRIPTION: string;
				public static STATUS_CANCELED: number;
				public static SYNC_DATA3: string;
				public static SYNC_DATA2: string;
				public static SYNC_DATA5: string;
				public static EXDATE: string;
				public static CUSTOM_APP_PACKAGE: string;
				public static SYNC_DATA4: string;
				public static SYNC_DATA7: string;
				public static SYNC_DATA6: string;
				public static SYNC_DATA9: string;
				public static SYNC_DATA8: string;
				public static ORIGINAL_ID: string;
				public static GUESTS_CAN_MODIFY: string;
				public static GUESTS_CAN_SEE_GUESTS: string;
				public static SYNC_DATA10: string;
				public static HAS_ALARM: string;
				public static CUSTOM_APP_URI: string;
				public static DTEND: string;
			}
			export class EventsEntity extends java.lang.Object implements android.provider.BaseColumns, android.provider.CalendarContract.SyncColumns, android.provider.CalendarContract.EventsColumns {
				public static class: java.lang.Class<android.provider.CalendarContract.EventsEntity>;
				public static CONTENT_URI: android.net.Uri;
				public static newEntityIterator(param0: android.database.Cursor, param1: android.content.ContentProviderClient): android.content.EntityIterator;
				public static newEntityIterator(param0: android.database.Cursor, param1: android.content.ContentResolver): android.content.EntityIterator;
			}
			export class ExtendedProperties extends java.lang.Object implements android.provider.BaseColumns, android.provider.CalendarContract.ExtendedPropertiesColumns, android.provider.CalendarContract.EventsColumns {
				public static class: java.lang.Class<android.provider.CalendarContract.ExtendedProperties>;
				public static CONTENT_URI: android.net.Uri;
			}
			export class ExtendedPropertiesColumns extends java.lang.Object {
				public static class: java.lang.Class<android.provider.CalendarContract.ExtendedPropertiesColumns>;
				/**
				 * Constructs a new instance of the android.provider.CalendarContract$ExtendedPropertiesColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
				public static VALUE: string;
				public static EVENT_ID: string;
				public static NAME: string;
			}
			export class Instances extends java.lang.Object implements android.provider.BaseColumns, android.provider.CalendarContract.EventsColumns, android.provider.CalendarContract.CalendarColumns {
				public static class: java.lang.Class<android.provider.CalendarContract.Instances>;
				public static CONTENT_URI: android.net.Uri;
				public static CONTENT_BY_DAY_URI: android.net.Uri;
				public static CONTENT_SEARCH_URI: android.net.Uri;
				public static CONTENT_SEARCH_BY_DAY_URI: android.net.Uri;
				public static BEGIN: string;
				public static END: string;
				public static EVENT_ID: string;
				public static START_DAY: string;
				public static END_DAY: string;
				public static START_MINUTE: string;
				public static END_MINUTE: string;
				public static query(param0: android.content.ContentResolver, param1: native.Array<string>, param2: number, param3: number, param4: string): android.database.Cursor;
				public static query(param0: android.content.ContentResolver, param1: native.Array<string>, param2: number, param3: number): android.database.Cursor;
			}
			export class Reminders extends java.lang.Object implements android.provider.BaseColumns, android.provider.CalendarContract.RemindersColumns, android.provider.CalendarContract.EventsColumns {
				public static class: java.lang.Class<android.provider.CalendarContract.Reminders>;
				public static CONTENT_URI: android.net.Uri;
				public static query(param0: android.content.ContentResolver, param1: number, param2: native.Array<string>): android.database.Cursor;
			}
			export class RemindersColumns extends java.lang.Object {
				public static class: java.lang.Class<android.provider.CalendarContract.RemindersColumns>;
				/**
				 * Constructs a new instance of the android.provider.CalendarContract$RemindersColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
				public static MINUTES_DEFAULT: number;
				public static METHOD_DEFAULT: number;
				public static METHOD_ALERT: number;
				public static METHOD_SMS: number;
				public static METHOD: string;
				public static METHOD_ALARM: number;
				public static MINUTES: string;
				public static EVENT_ID: string;
				public static METHOD_EMAIL: number;
			}
			export class SyncColumns extends java.lang.Object implements android.provider.CalendarContract.CalendarSyncColumns {
				public static class: java.lang.Class<android.provider.CalendarContract.SyncColumns>;
				/**
				 * Constructs a new instance of the android.provider.CalendarContract$SyncColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
				public static ACCOUNT_NAME: string;
				public static DIRTY: string;
				public static CAN_PARTIALLY_UPDATE: string;
				public static _SYNC_ID: string;
				public static CAL_SYNC3: string;
				public static CAL_SYNC2: string;
				public static ACCOUNT_TYPE: string;
				public static CAL_SYNC1: string;
				public static CAL_SYNC10: string;
				public static CAL_SYNC9: string;
				public static CAL_SYNC8: string;
				public static CAL_SYNC7: string;
				public static DELETED: string;
				public static CAL_SYNC6: string;
				public static MUTATORS: string;
				public static CAL_SYNC5: string;
				public static CAL_SYNC4: string;
			}
			export class SyncState extends java.lang.Object implements android.provider.SyncStateContract.Columns {
				public static class: java.lang.Class<android.provider.CalendarContract.SyncState>;
				public static CONTENT_URI: android.net.Uri;
			}
		}
	}
}

declare module android {
	export module provider {
		export class CallLog extends java.lang.Object {
			public static class: java.lang.Class<android.provider.CallLog>;
			public static AUTHORITY: string;
			public static CONTENT_URI: android.net.Uri;
			public constructor();
		}
		export module CallLog {
			export class Calls extends java.lang.Object implements android.provider.BaseColumns {
				public static class: java.lang.Class<android.provider.CallLog.Calls>;
				public static CONTENT_URI: android.net.Uri;
				public static CONTENT_FILTER_URI: android.net.Uri;
				public static LIMIT_PARAM_KEY: string;
				public static OFFSET_PARAM_KEY: string;
				public static DEFAULT_SORT_ORDER: string;
				public static CONTENT_TYPE: string;
				public static CONTENT_ITEM_TYPE: string;
				public static TYPE: string;
				public static INCOMING_TYPE: number;
				public static OUTGOING_TYPE: number;
				public static MISSED_TYPE: number;
				public static NUMBER: string;
				public static DATE: string;
				public static DURATION: string;
				public static NEW: string;
				public static CACHED_NAME: string;
				public static CACHED_NUMBER_TYPE: string;
				public static CACHED_NUMBER_LABEL: string;
				public static IS_READ: string;
				public static getLastOutgoingCall(param0: android.content.Context): string;
				public constructor();
			}
		}
	}
}

declare module android {
	export module provider {
		export class Contacts extends java.lang.Object {
			public static class: java.lang.Class<android.provider.Contacts>;
			public static AUTHORITY: string;
			public static CONTENT_URI: android.net.Uri;
			public static KIND_EMAIL: number;
			public static KIND_POSTAL: number;
			public static KIND_IM: number;
			public static KIND_ORGANIZATION: number;
			public static KIND_PHONE: number;
		}
		export module Contacts {
			export class ContactMethods extends java.lang.Object implements android.provider.BaseColumns, android.provider.Contacts.ContactMethodsColumns, android.provider.Contacts.PeopleColumns {
				public static class: java.lang.Class<android.provider.Contacts.ContactMethods>;
				public static POSTAL_LOCATION_LATITUDE: string;
				public static POSTAL_LOCATION_LONGITUDE: string;
				public static PROTOCOL_AIM: number;
				public static PROTOCOL_MSN: number;
				public static PROTOCOL_YAHOO: number;
				public static PROTOCOL_SKYPE: number;
				public static PROTOCOL_QQ: number;
				public static PROTOCOL_GOOGLE_TALK: number;
				public static PROTOCOL_ICQ: number;
				public static PROTOCOL_JABBER: number;
				public static CONTENT_URI: android.net.Uri;
				public static CONTENT_EMAIL_URI: android.net.Uri;
				public static CONTENT_TYPE: string;
				public static CONTENT_EMAIL_TYPE: string;
				public static CONTENT_POSTAL_TYPE: string;
				public static CONTENT_EMAIL_ITEM_TYPE: string;
				public static CONTENT_POSTAL_ITEM_TYPE: string;
				public static CONTENT_IM_ITEM_TYPE: string;
				public static DEFAULT_SORT_ORDER: string;
				public static PERSON_ID: string;
				/** @deprecated */
				public static encodePredefinedImProtocol(param0: number): string;
				/** @deprecated */
				public static getDisplayLabel(param0: android.content.Context, param1: number, param2: number, param3: string): string;
				/** @deprecated */
				public static decodeImProtocol(param0: string): any;
				/** @deprecated */
				public addPostalLocation(param0: android.content.Context, param1: number, param2: number, param3: number): void;
				/** @deprecated */
				public static encodeCustomImProtocol(param0: string): string;
			}
			export class ContactMethodsColumns extends java.lang.Object {
				public static class: java.lang.Class<android.provider.Contacts.ContactMethodsColumns>;
				/**
				 * Constructs a new instance of the android.provider.Contacts$ContactMethodsColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
				public static DATA: string;
				public static ISPRIMARY: string;
				public static KIND: string;
				public static TYPE_HOME: number;
				public static AUX_DATA: string;
				public static LABEL: string;
				public static TYPE: string;
				public static TYPE_WORK: number;
				public static TYPE_OTHER: number;
				public static TYPE_CUSTOM: number;
			}
			export class Extensions extends java.lang.Object implements android.provider.BaseColumns, android.provider.Contacts.ExtensionsColumns {
				public static class: java.lang.Class<android.provider.Contacts.Extensions>;
				public static CONTENT_URI: android.net.Uri;
				public static CONTENT_TYPE: string;
				public static CONTENT_ITEM_TYPE: string;
				public static DEFAULT_SORT_ORDER: string;
				public static PERSON_ID: string;
			}
			export class ExtensionsColumns extends java.lang.Object {
				public static class: java.lang.Class<android.provider.Contacts.ExtensionsColumns>;
				/**
				 * Constructs a new instance of the android.provider.Contacts$ExtensionsColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
				public static VALUE: string;
				public static NAME: string;
			}
			export class GroupMembership extends java.lang.Object implements android.provider.BaseColumns, android.provider.Contacts.GroupsColumns {
				public static class: java.lang.Class<android.provider.Contacts.GroupMembership>;
				public static CONTENT_URI: android.net.Uri;
				public static RAW_CONTENT_URI: android.net.Uri;
				public static CONTENT_DIRECTORY: string;
				public static CONTENT_TYPE: string;
				public static CONTENT_ITEM_TYPE: string;
				public static DEFAULT_SORT_ORDER: string;
				public static GROUP_ID: string;
				public static GROUP_SYNC_ID: string;
				public static GROUP_SYNC_ACCOUNT: string;
				public static GROUP_SYNC_ACCOUNT_TYPE: string;
				public static PERSON_ID: string;
			}
			export class Groups extends java.lang.Object implements android.provider.BaseColumns, android.provider.Contacts.GroupsColumns {
				public static class: java.lang.Class<android.provider.Contacts.Groups>;
				public static CONTENT_URI: android.net.Uri;
				public static DELETED_CONTENT_URI: android.net.Uri;
				public static CONTENT_TYPE: string;
				public static CONTENT_ITEM_TYPE: string;
				public static DEFAULT_SORT_ORDER: string;
				public static GROUP_ANDROID_STARRED: string;
				public static GROUP_MY_CONTACTS: string;
			}
			export class GroupsColumns extends java.lang.Object {
				public static class: java.lang.Class<android.provider.Contacts.GroupsColumns>;
				/**
				 * Constructs a new instance of the android.provider.Contacts$GroupsColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
				public static NOTES: string;
				public static SHOULD_SYNC: string;
				public static NAME: string;
				public static SYSTEM_ID: string;
			}
			export class Intents extends java.lang.Object {
				public static class: java.lang.Class<android.provider.Contacts.Intents>;
				public static SEARCH_SUGGESTION_CLICKED: string;
				public static SEARCH_SUGGESTION_DIAL_NUMBER_CLICKED: string;
				public static SEARCH_SUGGESTION_CREATE_CONTACT_CLICKED: string;
				public static ATTACH_IMAGE: string;
				public static SHOW_OR_CREATE_CONTACT: string;
				public static EXTRA_FORCE_CREATE: string;
				public static EXTRA_CREATE_DESCRIPTION: string;
				/** @deprecated */
				public constructor();
			}
			export module Intents {
				export class Insert extends java.lang.Object {
					public static class: java.lang.Class<android.provider.Contacts.Intents.Insert>;
					public static ACTION: string;
					public static FULL_MODE: string;
					public static NAME: string;
					public static PHONETIC_NAME: string;
					public static COMPANY: string;
					public static JOB_TITLE: string;
					public static NOTES: string;
					public static PHONE: string;
					public static PHONE_TYPE: string;
					public static PHONE_ISPRIMARY: string;
					public static SECONDARY_PHONE: string;
					public static SECONDARY_PHONE_TYPE: string;
					public static TERTIARY_PHONE: string;
					public static TERTIARY_PHONE_TYPE: string;
					public static EMAIL: string;
					public static EMAIL_TYPE: string;
					public static EMAIL_ISPRIMARY: string;
					public static SECONDARY_EMAIL: string;
					public static SECONDARY_EMAIL_TYPE: string;
					public static TERTIARY_EMAIL: string;
					public static TERTIARY_EMAIL_TYPE: string;
					public static POSTAL: string;
					public static POSTAL_TYPE: string;
					public static POSTAL_ISPRIMARY: string;
					public static IM_HANDLE: string;
					public static IM_PROTOCOL: string;
					public static IM_ISPRIMARY: string;
					/** @deprecated */
					public constructor();
				}
				export class UI extends java.lang.Object {
					public static class: java.lang.Class<android.provider.Contacts.Intents.UI>;
					public static LIST_DEFAULT: string;
					public static LIST_GROUP_ACTION: string;
					public static GROUP_NAME_EXTRA_KEY: string;
					public static LIST_ALL_CONTACTS_ACTION: string;
					public static LIST_CONTACTS_WITH_PHONES_ACTION: string;
					public static LIST_STARRED_ACTION: string;
					public static LIST_FREQUENT_ACTION: string;
					public static LIST_STREQUENT_ACTION: string;
					public static TITLE_EXTRA_KEY: string;
					public static FILTER_CONTACTS_ACTION: string;
					public static FILTER_TEXT_EXTRA_KEY: string;
					/** @deprecated */
					public constructor();
				}
			}
			export class OrganizationColumns extends java.lang.Object {
				public static class: java.lang.Class<android.provider.Contacts.OrganizationColumns>;
				/**
				 * Constructs a new instance of the android.provider.Contacts$OrganizationColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
				public static ISPRIMARY: string;
				public static PERSON_ID: string;
				public static LABEL: string;
				public static TITLE: string;
				public static TYPE: string;
				public static TYPE_WORK: number;
				public static TYPE_OTHER: number;
				public static COMPANY: string;
				public static TYPE_CUSTOM: number;
			}
			export class Organizations extends java.lang.Object implements android.provider.BaseColumns, android.provider.Contacts.OrganizationColumns {
				public static class: java.lang.Class<android.provider.Contacts.Organizations>;
				public static CONTENT_URI: android.net.Uri;
				public static CONTENT_DIRECTORY: string;
				public static DEFAULT_SORT_ORDER: string;
				/** @deprecated */
				public static getDisplayLabel(param0: android.content.Context, param1: number, param2: string): string;
			}
			export class People extends java.lang.Object implements android.provider.BaseColumns, android.provider.Contacts.PeopleColumns, android.provider.Contacts.PhonesColumns, android.provider.Contacts.PresenceColumns {
				public static class: java.lang.Class<android.provider.Contacts.People>;
				public static CONTENT_URI: android.net.Uri;
				public static CONTENT_FILTER_URI: android.net.Uri;
				public static DELETED_CONTENT_URI: android.net.Uri;
				public static CONTENT_TYPE: string;
				public static CONTENT_ITEM_TYPE: string;
				public static DEFAULT_SORT_ORDER: string;
				public static PRIMARY_PHONE_ID: string;
				public static PRIMARY_EMAIL_ID: string;
				public static PRIMARY_ORGANIZATION_ID: string;
				/** @deprecated */
				public static addToGroup(param0: android.content.ContentResolver, param1: number, param2: string): android.net.Uri;
				/** @deprecated */
				public static markAsContacted(param0: android.content.ContentResolver, param1: number): void;
				/** @deprecated */
				public static openContactPhotoInputStream(param0: android.content.ContentResolver, param1: android.net.Uri): java.io.InputStream;
				/** @deprecated */
				public static addToMyContactsGroup(param0: android.content.ContentResolver, param1: number): android.net.Uri;
				/** @deprecated */
				public static setPhotoData(param0: android.content.ContentResolver, param1: android.net.Uri, param2: native.Array<number>): void;
				/** @deprecated */
				public static queryGroups(param0: android.content.ContentResolver, param1: number): android.database.Cursor;
				/** @deprecated */
				public static loadContactPhoto(param0: android.content.Context, param1: android.net.Uri, param2: number, param3: android.graphics.BitmapFactory.Options): android.graphics.Bitmap;
				/** @deprecated */
				public static addToGroup(param0: android.content.ContentResolver, param1: number, param2: number): android.net.Uri;
				/** @deprecated */
				public static createPersonInMyContactsGroup(param0: android.content.ContentResolver, param1: android.content.ContentValues): android.net.Uri;
			}
			export module People {
				export class ContactMethods extends java.lang.Object implements android.provider.BaseColumns, android.provider.Contacts.ContactMethodsColumns, android.provider.Contacts.PeopleColumns {
					public static class: java.lang.Class<android.provider.Contacts.People.ContactMethods>;
					public static CONTENT_DIRECTORY: string;
					public static DEFAULT_SORT_ORDER: string;
				}
				export class Extensions extends java.lang.Object implements android.provider.BaseColumns, android.provider.Contacts.ExtensionsColumns {
					public static class: java.lang.Class<android.provider.Contacts.People.Extensions>;
					public static CONTENT_DIRECTORY: string;
					public static DEFAULT_SORT_ORDER: string;
					public static PERSON_ID: string;
				}
				export class Phones extends java.lang.Object implements android.provider.BaseColumns, android.provider.Contacts.PhonesColumns, android.provider.Contacts.PeopleColumns {
					public static class: java.lang.Class<android.provider.Contacts.People.Phones>;
					public static CONTENT_DIRECTORY: string;
					public static DEFAULT_SORT_ORDER: string;
				}
			}
			export class PeopleColumns extends java.lang.Object {
				public static class: java.lang.Class<android.provider.Contacts.PeopleColumns>;
				/**
				 * Constructs a new instance of the android.provider.Contacts$PeopleColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
				public static PHONETIC_NAME: string;
				public static NOTES: string;
				public static TIMES_CONTACTED: string;
				public static SEND_TO_VOICEMAIL: string;
				public static CUSTOM_RINGTONE: string;
				public static STARRED: string;
				public static PHOTO_VERSION: string;
				public static NAME: string;
				public static LAST_TIME_CONTACTED: string;
				public static DISPLAY_NAME: string;
			}
			export class Phones extends java.lang.Object implements android.provider.BaseColumns, android.provider.Contacts.PhonesColumns, android.provider.Contacts.PeopleColumns {
				public static class: java.lang.Class<android.provider.Contacts.Phones>;
				public static CONTENT_URI: android.net.Uri;
				public static CONTENT_FILTER_URL: android.net.Uri;
				public static CONTENT_TYPE: string;
				public static CONTENT_ITEM_TYPE: string;
				public static DEFAULT_SORT_ORDER: string;
				public static PERSON_ID: string;
				/** @deprecated */
				public static getDisplayLabel(param0: android.content.Context, param1: number, param2: string, param3: native.Array<string>): string;
				/** @deprecated */
				public static getDisplayLabel(param0: android.content.Context, param1: number, param2: string): string;
			}
			export class PhonesColumns extends java.lang.Object {
				public static class: java.lang.Class<android.provider.Contacts.PhonesColumns>;
				/**
				 * Constructs a new instance of the android.provider.Contacts$PhonesColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
				public static ISPRIMARY: string;
				public static TYPE_PAGER: number;
				public static NUMBER_KEY: string;
				public static TYPE_HOME: number;
				public static LABEL: string;
				public static TYPE: string;
				public static TYPE_WORK: number;
				public static TYPE_OTHER: number;
				public static TYPE_FAX_WORK: number;
				public static NUMBER: string;
				public static TYPE_FAX_HOME: number;
				public static TYPE_MOBILE: number;
				public static TYPE_CUSTOM: number;
			}
			export class Photos extends java.lang.Object implements android.provider.BaseColumns, android.provider.Contacts.PhotosColumns {
				public static class: java.lang.Class<android.provider.Contacts.Photos>;
				public static CONTENT_URI: android.net.Uri;
				public static CONTENT_DIRECTORY: string;
				public static DEFAULT_SORT_ORDER: string;
			}
			export class PhotosColumns extends java.lang.Object {
				public static class: java.lang.Class<android.provider.Contacts.PhotosColumns>;
				/**
				 * Constructs a new instance of the android.provider.Contacts$PhotosColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
				public static SYNC_ERROR: string;
				public static DATA: string;
				public static EXISTS_ON_SERVER: string;
				public static PERSON_ID: string;
				public static DOWNLOAD_REQUIRED: string;
				public static LOCAL_VERSION: string;
			}
			export class PresenceColumns extends java.lang.Object {
				public static class: java.lang.Class<android.provider.Contacts.PresenceColumns>;
				/**
				 * Constructs a new instance of the android.provider.Contacts$PresenceColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
				public static IM_PROTOCOL: string;
				public static IM_HANDLE: string;
				public static PRESENCE_STATUS: string;
				public static DO_NOT_DISTURB: number;
				public static IM_ACCOUNT: string;
				public static OFFLINE: number;
				public static INVISIBLE: number;
				public static AWAY: number;
				public static AVAILABLE: number;
				public static PRIORITY: string;
				public static PRESENCE_CUSTOM_STATUS: string;
				public static IDLE: number;
			}
			export class Settings extends java.lang.Object implements android.provider.BaseColumns, android.provider.Contacts.SettingsColumns {
				public static class: java.lang.Class<android.provider.Contacts.Settings>;
				public static CONTENT_URI: android.net.Uri;
				public static CONTENT_DIRECTORY: string;
				public static DEFAULT_SORT_ORDER: string;
				public static SYNC_EVERYTHING: string;
				/** @deprecated */
				public static setSetting(param0: android.content.ContentResolver, param1: string, param2: string, param3: string): void;
				/** @deprecated */
				public static getSetting(param0: android.content.ContentResolver, param1: string, param2: string): string;
			}
			export class SettingsColumns extends java.lang.Object {
				public static class: java.lang.Class<android.provider.Contacts.SettingsColumns>;
				/**
				 * Constructs a new instance of the android.provider.Contacts$SettingsColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
				public static _SYNC_ACCOUNT_TYPE: string;
				public static VALUE: string;
				public static _SYNC_ACCOUNT: string;
				public static KEY: string;
			}
		}
	}
}

declare module android {
	export module provider {
		export class ContactsContract extends java.lang.Object {
			public static class: java.lang.Class<android.provider.ContactsContract>;
			public static AUTHORITY: string;
			public static AUTHORITY_URI: android.net.Uri;
			public static CALLER_IS_SYNCADAPTER: string;
			public static DIRECTORY_PARAM_KEY: string;
			public static LIMIT_PARAM_KEY: string;
			public static PRIMARY_ACCOUNT_NAME: string;
			public static PRIMARY_ACCOUNT_TYPE: string;
			public static isProfileId(param0: number): boolean;
			public constructor();
		}
		export module ContactsContract {
			export class AggregationExceptions extends java.lang.Object implements android.provider.BaseColumns {
				public static class: java.lang.Class<android.provider.ContactsContract.AggregationExceptions>;
				public static CONTENT_URI: android.net.Uri;
				public static CONTENT_TYPE: string;
				public static CONTENT_ITEM_TYPE: string;
				public static TYPE: string;
				public static TYPE_AUTOMATIC: number;
				public static TYPE_KEEP_TOGETHER: number;
				public static TYPE_KEEP_SEPARATE: number;
				public static RAW_CONTACT_ID1: string;
				public static RAW_CONTACT_ID2: string;
			}
			export class BaseSyncColumns extends java.lang.Object {
				public static class: java.lang.Class<android.provider.ContactsContract.BaseSyncColumns>;
				/**
				 * Constructs a new instance of the android.provider.ContactsContract$BaseSyncColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
				public static SYNC3: string;
				public static SYNC4: string;
				public static SYNC1: string;
				public static SYNC2: string;
			}
			export class CommonDataKinds extends java.lang.Object {
				public static class: java.lang.Class<android.provider.ContactsContract.CommonDataKinds>;
			}
			export module CommonDataKinds {
				export class BaseTypes extends java.lang.Object {
					public static class: java.lang.Class<android.provider.ContactsContract.CommonDataKinds.BaseTypes>;
					/**
					 * Constructs a new instance of the android.provider.ContactsContract$CommonDataKinds$BaseTypes interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
					});
					public constructor();
					public static TYPE_CUSTOM: number;
				}
				export class CommonColumns extends java.lang.Object implements android.provider.ContactsContract.CommonDataKinds.BaseTypes {
					public static class: java.lang.Class<android.provider.ContactsContract.CommonDataKinds.CommonColumns>;
					/**
					 * Constructs a new instance of the android.provider.ContactsContract$CommonDataKinds$CommonColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
					});
					public constructor();
					public static DATA: string;
					public static LABEL: string;
					public static TYPE: string;
					public static TYPE_CUSTOM: number;
				}
				export class Contactables extends java.lang.Object implements android.provider.ContactsContract.DataColumnsWithJoins, android.provider.ContactsContract.CommonDataKinds.CommonColumns {
					public static class: java.lang.Class<android.provider.ContactsContract.CommonDataKinds.Contactables>;
					public static CONTENT_URI: android.net.Uri;
					public static CONTENT_FILTER_URI: android.net.Uri;
					public static VISIBLE_CONTACTS_ONLY: string;
					public constructor();
				}
				export class Email extends java.lang.Object implements android.provider.ContactsContract.DataColumnsWithJoins, android.provider.ContactsContract.CommonDataKinds.CommonColumns {
					public static class: java.lang.Class<android.provider.ContactsContract.CommonDataKinds.Email>;
					public static CONTENT_ITEM_TYPE: string;
					public static CONTENT_TYPE: string;
					public static CONTENT_URI: android.net.Uri;
					public static CONTENT_LOOKUP_URI: android.net.Uri;
					public static CONTENT_FILTER_URI: android.net.Uri;
					public static ADDRESS: string;
					public static TYPE_HOME: number;
					public static TYPE_WORK: number;
					public static TYPE_OTHER: number;
					public static TYPE_MOBILE: number;
					public static DISPLAY_NAME: string;
					public static getTypeLabel(param0: android.content.res.Resources, param1: number, param2: string): string;
					public static getTypeLabelResource(param0: number): number;
				}
				export class Event extends java.lang.Object implements android.provider.ContactsContract.DataColumnsWithJoins, android.provider.ContactsContract.CommonDataKinds.CommonColumns {
					public static class: java.lang.Class<android.provider.ContactsContract.CommonDataKinds.Event>;
					public static CONTENT_ITEM_TYPE: string;
					public static TYPE_ANNIVERSARY: number;
					public static TYPE_OTHER: number;
					public static TYPE_BIRTHDAY: number;
					public static START_DATE: string;
					public static getTypeResource(param0: java.lang.Integer): number;
				}
				export class GroupMembership extends java.lang.Object implements android.provider.ContactsContract.DataColumnsWithJoins {
					public static class: java.lang.Class<android.provider.ContactsContract.CommonDataKinds.GroupMembership>;
					public static CONTENT_ITEM_TYPE: string;
					public static GROUP_ROW_ID: string;
					public static GROUP_SOURCE_ID: string;
				}
				export class Identity extends java.lang.Object implements android.provider.ContactsContract.DataColumnsWithJoins {
					public static class: java.lang.Class<android.provider.ContactsContract.CommonDataKinds.Identity>;
					public static CONTENT_ITEM_TYPE: string;
					public static IDENTITY: string;
					public static NAMESPACE: string;
				}
				export class Im extends java.lang.Object implements android.provider.ContactsContract.DataColumnsWithJoins, android.provider.ContactsContract.CommonDataKinds.CommonColumns {
					public static class: java.lang.Class<android.provider.ContactsContract.CommonDataKinds.Im>;
					public static CONTENT_ITEM_TYPE: string;
					public static TYPE_HOME: number;
					public static TYPE_WORK: number;
					public static TYPE_OTHER: number;
					public static PROTOCOL: string;
					public static CUSTOM_PROTOCOL: string;
					public static PROTOCOL_CUSTOM: number;
					public static PROTOCOL_AIM: number;
					public static PROTOCOL_MSN: number;
					public static PROTOCOL_YAHOO: number;
					public static PROTOCOL_SKYPE: number;
					public static PROTOCOL_QQ: number;
					public static PROTOCOL_GOOGLE_TALK: number;
					public static PROTOCOL_ICQ: number;
					public static PROTOCOL_JABBER: number;
					public static PROTOCOL_NETMEETING: number;
					public static getProtocolLabelResource(param0: number): number;
					public static getTypeLabel(param0: android.content.res.Resources, param1: number, param2: string): string;
					public static getProtocolLabel(param0: android.content.res.Resources, param1: number, param2: string): string;
					public static getTypeLabelResource(param0: number): number;
				}
				export class Nickname extends java.lang.Object implements android.provider.ContactsContract.DataColumnsWithJoins, android.provider.ContactsContract.CommonDataKinds.CommonColumns {
					public static class: java.lang.Class<android.provider.ContactsContract.CommonDataKinds.Nickname>;
					public static CONTENT_ITEM_TYPE: string;
					public static TYPE_DEFAULT: number;
					public static TYPE_OTHER_NAME: number;
					public static TYPE_MAIDEN_NAME: number;
					public static TYPE_MAINDEN_NAME: number;
					public static TYPE_SHORT_NAME: number;
					public static TYPE_INITIALS: number;
					public static NAME: string;
				}
				export class Note extends java.lang.Object implements android.provider.ContactsContract.DataColumnsWithJoins {
					public static class: java.lang.Class<android.provider.ContactsContract.CommonDataKinds.Note>;
					public static CONTENT_ITEM_TYPE: string;
					public static NOTE: string;
				}
				export class Organization extends java.lang.Object implements android.provider.ContactsContract.DataColumnsWithJoins, android.provider.ContactsContract.CommonDataKinds.CommonColumns {
					public static class: java.lang.Class<android.provider.ContactsContract.CommonDataKinds.Organization>;
					public static CONTENT_ITEM_TYPE: string;
					public static TYPE_WORK: number;
					public static TYPE_OTHER: number;
					public static COMPANY: string;
					public static TITLE: string;
					public static DEPARTMENT: string;
					public static JOB_DESCRIPTION: string;
					public static SYMBOL: string;
					public static PHONETIC_NAME: string;
					public static OFFICE_LOCATION: string;
					public static getTypeLabel(param0: android.content.res.Resources, param1: number, param2: string): string;
					public static getTypeLabelResource(param0: number): number;
				}
				export class Phone extends java.lang.Object implements android.provider.ContactsContract.DataColumnsWithJoins, android.provider.ContactsContract.CommonDataKinds.CommonColumns {
					public static class: java.lang.Class<android.provider.ContactsContract.CommonDataKinds.Phone>;
					public static CONTENT_ITEM_TYPE: string;
					public static CONTENT_TYPE: string;
					public static CONTENT_URI: android.net.Uri;
					public static CONTENT_FILTER_URI: android.net.Uri;
					public static SEARCH_DISPLAY_NAME_KEY: string;
					public static SEARCH_PHONE_NUMBER_KEY: string;
					public static TYPE_HOME: number;
					public static TYPE_MOBILE: number;
					public static TYPE_WORK: number;
					public static TYPE_FAX_WORK: number;
					public static TYPE_FAX_HOME: number;
					public static TYPE_PAGER: number;
					public static TYPE_OTHER: number;
					public static TYPE_CALLBACK: number;
					public static TYPE_CAR: number;
					public static TYPE_COMPANY_MAIN: number;
					public static TYPE_ISDN: number;
					public static TYPE_MAIN: number;
					public static TYPE_OTHER_FAX: number;
					public static TYPE_RADIO: number;
					public static TYPE_TELEX: number;
					public static TYPE_TTY_TDD: number;
					public static TYPE_WORK_MOBILE: number;
					public static TYPE_WORK_PAGER: number;
					public static TYPE_ASSISTANT: number;
					public static TYPE_MMS: number;
					public static NUMBER: string;
					public static NORMALIZED_NUMBER: string;
					public static getTypeLabel(param0: android.content.res.Resources, param1: number, param2: string): string;
					public static getTypeLabelResource(param0: number): number;
				}
				export class Photo extends java.lang.Object implements android.provider.ContactsContract.DataColumnsWithJoins {
					public static class: java.lang.Class<android.provider.ContactsContract.CommonDataKinds.Photo>;
					public static CONTENT_ITEM_TYPE: string;
					public static PHOTO_FILE_ID: string;
					public static PHOTO: string;
				}
				export class Relation extends java.lang.Object implements android.provider.ContactsContract.DataColumnsWithJoins, android.provider.ContactsContract.CommonDataKinds.CommonColumns {
					public static class: java.lang.Class<android.provider.ContactsContract.CommonDataKinds.Relation>;
					public static CONTENT_ITEM_TYPE: string;
					public static TYPE_ASSISTANT: number;
					public static TYPE_BROTHER: number;
					public static TYPE_CHILD: number;
					public static TYPE_DOMESTIC_PARTNER: number;
					public static TYPE_FATHER: number;
					public static TYPE_FRIEND: number;
					public static TYPE_MANAGER: number;
					public static TYPE_MOTHER: number;
					public static TYPE_PARENT: number;
					public static TYPE_PARTNER: number;
					public static TYPE_REFERRED_BY: number;
					public static TYPE_RELATIVE: number;
					public static TYPE_SISTER: number;
					public static TYPE_SPOUSE: number;
					public static NAME: string;
					public static getTypeLabel(param0: android.content.res.Resources, param1: number, param2: string): string;
					public static getTypeLabelResource(param0: number): number;
				}
				export class SipAddress extends java.lang.Object implements android.provider.ContactsContract.DataColumnsWithJoins, android.provider.ContactsContract.CommonDataKinds.CommonColumns {
					public static class: java.lang.Class<android.provider.ContactsContract.CommonDataKinds.SipAddress>;
					public static CONTENT_ITEM_TYPE: string;
					public static TYPE_HOME: number;
					public static TYPE_WORK: number;
					public static TYPE_OTHER: number;
					public static SIP_ADDRESS: string;
					public static getTypeLabel(param0: android.content.res.Resources, param1: number, param2: string): string;
					public static getTypeLabelResource(param0: number): number;
				}
				export class StructuredName extends java.lang.Object implements android.provider.ContactsContract.DataColumnsWithJoins {
					public static class: java.lang.Class<android.provider.ContactsContract.CommonDataKinds.StructuredName>;
					public static CONTENT_ITEM_TYPE: string;
					public static DISPLAY_NAME: string;
					public static GIVEN_NAME: string;
					public static FAMILY_NAME: string;
					public static PREFIX: string;
					public static MIDDLE_NAME: string;
					public static SUFFIX: string;
					public static PHONETIC_GIVEN_NAME: string;
					public static PHONETIC_MIDDLE_NAME: string;
					public static PHONETIC_FAMILY_NAME: string;
				}
				export class StructuredPostal extends java.lang.Object implements android.provider.ContactsContract.DataColumnsWithJoins, android.provider.ContactsContract.CommonDataKinds.CommonColumns {
					public static class: java.lang.Class<android.provider.ContactsContract.CommonDataKinds.StructuredPostal>;
					public static CONTENT_ITEM_TYPE: string;
					public static CONTENT_TYPE: string;
					public static CONTENT_URI: android.net.Uri;
					public static TYPE_HOME: number;
					public static TYPE_WORK: number;
					public static TYPE_OTHER: number;
					public static FORMATTED_ADDRESS: string;
					public static STREET: string;
					public static POBOX: string;
					public static NEIGHBORHOOD: string;
					public static CITY: string;
					public static REGION: string;
					public static POSTCODE: string;
					public static COUNTRY: string;
					public static getTypeLabel(param0: android.content.res.Resources, param1: number, param2: string): string;
					public static getTypeLabelResource(param0: number): number;
				}
				export class Website extends java.lang.Object implements android.provider.ContactsContract.DataColumnsWithJoins, android.provider.ContactsContract.CommonDataKinds.CommonColumns {
					public static class: java.lang.Class<android.provider.ContactsContract.CommonDataKinds.Website>;
					public static CONTENT_ITEM_TYPE: string;
					public static TYPE_HOMEPAGE: number;
					public static TYPE_BLOG: number;
					public static TYPE_PROFILE: number;
					public static TYPE_HOME: number;
					public static TYPE_WORK: number;
					public static TYPE_FTP: number;
					public static TYPE_OTHER: number;
					public static URL: string;
				}
			}
			export class ContactNameColumns extends java.lang.Object {
				public static class: java.lang.Class<android.provider.ContactsContract.ContactNameColumns>;
				/**
				 * Constructs a new instance of the android.provider.ContactsContract$ContactNameColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
				public static PHONETIC_NAME: string;
				public static SORT_KEY_PRIMARY: string;
				public static PHONETIC_NAME_STYLE: string;
				public static SORT_KEY_ALTERNATIVE: string;
				public static DISPLAY_NAME_SOURCE: string;
				public static DISPLAY_NAME_ALTERNATIVE: string;
				public static DISPLAY_NAME_PRIMARY: string;
			}
			export class ContactOptionsColumns extends java.lang.Object {
				public static class: java.lang.Class<android.provider.ContactsContract.ContactOptionsColumns>;
				/**
				 * Constructs a new instance of the android.provider.ContactsContract$ContactOptionsColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
				public static TIMES_CONTACTED: string;
				public static SEND_TO_VOICEMAIL: string;
				public static CUSTOM_RINGTONE: string;
				public static STARRED: string;
				public static LAST_TIME_CONTACTED: string;
			}
			export class ContactStatusColumns extends java.lang.Object {
				public static class: java.lang.Class<android.provider.ContactsContract.ContactStatusColumns>;
				/**
				 * Constructs a new instance of the android.provider.ContactsContract$ContactStatusColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
				public static CONTACT_STATUS_TIMESTAMP: string;
				public static CONTACT_CHAT_CAPABILITY: string;
				public static CONTACT_STATUS: string;
				public static CONTACT_STATUS_RES_PACKAGE: string;
				public static CONTACT_STATUS_LABEL: string;
				public static CONTACT_PRESENCE: string;
				public static CONTACT_STATUS_ICON: string;
			}
			export class Contacts extends java.lang.Object implements android.provider.BaseColumns, android.provider.ContactsContract.ContactsColumns, android.provider.ContactsContract.ContactOptionsColumns, android.provider.ContactsContract.ContactNameColumns, android.provider.ContactsContract.ContactStatusColumns {
				public static class: java.lang.Class<android.provider.ContactsContract.Contacts>;
				public static CONTENT_URI: android.net.Uri;
				public static CONTENT_LOOKUP_URI: android.net.Uri;
				public static CONTENT_VCARD_URI: android.net.Uri;
				public static CONTENT_FILTER_URI: android.net.Uri;
				public static CONTENT_STREQUENT_URI: android.net.Uri;
				public static CONTENT_STREQUENT_FILTER_URI: android.net.Uri;
				public static CONTENT_GROUP_URI: android.net.Uri;
				public static CONTENT_TYPE: string;
				public static CONTENT_ITEM_TYPE: string;
				public static CONTENT_VCARD_TYPE: string;
				public static getLookupUri(param0: android.content.ContentResolver, param1: android.net.Uri): android.net.Uri;
				/** @deprecated */
				public static markAsContacted(param0: android.content.ContentResolver, param1: number): void;
				public static openContactPhotoInputStream(param0: android.content.ContentResolver, param1: android.net.Uri): java.io.InputStream;
				public static getLookupUri(param0: number, param1: string): android.net.Uri;
				public static openContactPhotoInputStream(param0: android.content.ContentResolver, param1: android.net.Uri, param2: boolean): java.io.InputStream;
				public static lookupContact(param0: android.content.ContentResolver, param1: android.net.Uri): android.net.Uri;
			}
			export module Contacts {
				export class AggregationSuggestions extends java.lang.Object implements android.provider.BaseColumns, android.provider.ContactsContract.ContactsColumns, android.provider.ContactsContract.ContactOptionsColumns, android.provider.ContactsContract.ContactStatusColumns {
					public static class: java.lang.Class<android.provider.ContactsContract.Contacts.AggregationSuggestions>;
					public static CONTENT_DIRECTORY: string;
				}
				export class Data extends java.lang.Object implements android.provider.BaseColumns, android.provider.ContactsContract.DataColumns {
					public static class: java.lang.Class<android.provider.ContactsContract.Contacts.Data>;
					public static CONTENT_DIRECTORY: string;
				}
				export class Entity extends java.lang.Object implements android.provider.BaseColumns, android.provider.ContactsContract.ContactsColumns, android.provider.ContactsContract.ContactNameColumns, android.provider.ContactsContract.RawContactsColumns, android.provider.ContactsContract.BaseSyncColumns, android.provider.ContactsContract.SyncColumns, android.provider.ContactsContract.DataColumns, android.provider.ContactsContract.StatusColumns, android.provider.ContactsContract.ContactOptionsColumns, android.provider.ContactsContract.ContactStatusColumns {
					public static class: java.lang.Class<android.provider.ContactsContract.Contacts.Entity>;
					public static CONTENT_DIRECTORY: string;
					public static RAW_CONTACT_ID: string;
					public static DATA_ID: string;
				}
				export class Photo extends java.lang.Object implements android.provider.BaseColumns, android.provider.ContactsContract.DataColumnsWithJoins {
					public static class: java.lang.Class<android.provider.ContactsContract.Contacts.Photo>;
					public static CONTENT_DIRECTORY: string;
					public static DISPLAY_PHOTO: string;
					public static PHOTO_FILE_ID: string;
					public static PHOTO: string;
				}
				export class StreamItems extends java.lang.Object implements android.provider.ContactsContract.StreamItemsColumns {
					public static class: java.lang.Class<android.provider.ContactsContract.Contacts.StreamItems>;
					public static CONTENT_DIRECTORY: string;
				}
			}
			export class ContactsColumns extends java.lang.Object {
				public static class: java.lang.Class<android.provider.ContactsContract.ContactsColumns>;
				/**
				 * Constructs a new instance of the android.provider.ContactsContract$ContactsColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
				public static IS_USER_PROFILE: string;
				public static LOOKUP_KEY: string;
				public static PHOTO_THUMBNAIL_URI: string;
				public static IN_VISIBLE_GROUP: string;
				public static HAS_PHONE_NUMBER: string;
				public static PHOTO_FILE_ID: string;
				public static PHOTO_ID: string;
				public static CONTACT_LAST_UPDATED_TIMESTAMP: string;
				public static PHOTO_URI: string;
				public static DISPLAY_NAME: string;
			}
			export class Data extends java.lang.Object implements android.provider.ContactsContract.DataColumnsWithJoins {
				public static class: java.lang.Class<android.provider.ContactsContract.Data>;
				public static CONTENT_URI: android.net.Uri;
				public static VISIBLE_CONTACTS_ONLY: string;
				public static CONTENT_TYPE: string;
				public static getContactLookupUri(param0: android.content.ContentResolver, param1: android.net.Uri): android.net.Uri;
			}
			export class DataColumns extends java.lang.Object {
				public static class: java.lang.Class<android.provider.ContactsContract.DataColumns>;
				/**
				 * Constructs a new instance of the android.provider.ContactsContract$DataColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
				public static IS_PRIMARY: string;
				public static DATA_VERSION: string;
				public static IS_READ_ONLY: string;
				public static IS_SUPER_PRIMARY: string;
				public static DATA6: string;
				public static DATA7: string;
				public static DATA8: string;
				public static DATA9: string;
				public static DATA2: string;
				public static MIMETYPE: string;
				public static DATA3: string;
				public static DATA4: string;
				public static DATA5: string;
				public static DATA1: string;
				public static RAW_CONTACT_ID: string;
				public static SYNC3: string;
				public static SYNC4: string;
				public static DATA14: string;
				public static DATA13: string;
				public static DATA15: string;
				public static DATA10: string;
				public static SYNC1: string;
				public static SYNC2: string;
				public static DATA12: string;
				public static DATA11: string;
			}
			export class DataColumnsWithJoins extends java.lang.Object implements android.provider.BaseColumns, android.provider.ContactsContract.DataColumns, android.provider.ContactsContract.StatusColumns, android.provider.ContactsContract.RawContactsColumns, android.provider.ContactsContract.ContactsColumns, android.provider.ContactsContract.ContactNameColumns, android.provider.ContactsContract.ContactOptionsColumns, android.provider.ContactsContract.ContactStatusColumns, android.provider.ContactsContract.DataUsageStatColumns {
				public static class: java.lang.Class<android.provider.ContactsContract.DataColumnsWithJoins>;
				/**
				 * Constructs a new instance of the android.provider.ContactsContract$DataColumnsWithJoins interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
				public static CHAT_CAPABILITY: string;
				public static STATUS_TIMESTAMP: string;
				public static PHONETIC_NAME_STYLE: string;
				public static _ID: string;
				public static PRESENCE_CUSTOM_STATUS: string;
				public static CAPABILITY_HAS_CAMERA: number;
				public static PHOTO_URI: string;
				public static CONTACT_STATUS_ICON: string;
				public static IN_VISIBLE_GROUP: string;
				public static DATA_VERSION: string;
				public static SORT_KEY_ALTERNATIVE: string;
				public static DISPLAY_NAME_SOURCE: string;
				public static CONTACT_STATUS_LABEL: string;
				public static CONTACT_PRESENCE: string;
				public static DISPLAY_NAME_ALTERNATIVE: string;
				public static DISPLAY_NAME: string;
				public static DISPLAY_NAME_PRIMARY: string;
				public static DATA6: string;
				public static DATA7: string;
				public static DATA8: string;
				public static DATA9: string;
				public static STATUS: string;
				public static CONTACT_CHAT_CAPABILITY: string;
				public static DATA2: string;
				public static DATA3: string;
				public static DATA4: string;
				public static SEND_TO_VOICEMAIL: string;
				public static DATA5: string;
				public static DATA1: string;
				public static RAW_CONTACT_ID: string;
				public static _COUNT: string;
				public static LOOKUP_KEY: string;
				public static PHONETIC_NAME: string;
				public static STATUS_RES_PACKAGE: string;
				public static AGGREGATION_MODE: string;
				public static DATA14: string;
				public static PHOTO_FILE_ID: string;
				public static DATA13: string;
				public static AWAY: number;
				public static AVAILABLE: number;
				public static DATA15: string;
				public static DATA10: string;
				public static LAST_TIME_USED: string;
				public static CAPABILITY_HAS_VOICE: number;
				public static DATA12: string;
				public static DATA11: string;
				public static IDLE: number;
				public static DATA_SET: string;
				public static IS_PRIMARY: string;
				public static DO_NOT_DISTURB: number;
				public static PRESENCE: string;
				public static CONTACT_STATUS: string;
				public static CONTACT_ID: string;
				public static LAST_TIME_CONTACTED: string;
				public static SORT_KEY_PRIMARY: string;
				public static CUSTOM_RINGTONE: string;
				public static STARRED: string;
				public static IS_READ_ONLY: string;
				public static IS_SUPER_PRIMARY: string;
				public static IS_USER_PROFILE: string;
				public static CONTACT_STATUS_TIMESTAMP: string;
				public static HAS_PHONE_NUMBER: string;
				public static MIMETYPE: string;
				public static STATUS_ICON: string;
				public static STATUS_LABEL: string;
				public static RAW_CONTACT_IS_USER_PROFILE: string;
				public static CAPABILITY_HAS_VIDEO: number;
				public static PHOTO_ID: string;
				public static TIMES_USED: string;
				public static SYNC3: string;
				public static PHOTO_THUMBNAIL_URI: string;
				public static TIMES_CONTACTED: string;
				public static SYNC4: string;
				public static PRESENCE_STATUS: string;
				public static RAW_CONTACT_IS_READ_ONLY: string;
				public static OFFLINE: number;
				public static INVISIBLE: number;
				public static CONTACT_LAST_UPDATED_TIMESTAMP: string;
				public static CONTACT_STATUS_RES_PACKAGE: string;
				public static SYNC1: string;
				public static SYNC2: string;
				public static DELETED: string;
			}
			export class DataUsageFeedback extends java.lang.Object {
				public static class: java.lang.Class<android.provider.ContactsContract.DataUsageFeedback>;
				public static FEEDBACK_URI: android.net.Uri;
				public static DELETE_USAGE_URI: android.net.Uri;
				public static USAGE_TYPE: string;
				public static USAGE_TYPE_CALL: string;
				public static USAGE_TYPE_LONG_TEXT: string;
				public static USAGE_TYPE_SHORT_TEXT: string;
				public constructor();
			}
			export class DataUsageStatColumns extends java.lang.Object {
				public static class: java.lang.Class<android.provider.ContactsContract.DataUsageStatColumns>;
				/**
				 * Constructs a new instance of the android.provider.ContactsContract$DataUsageStatColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
				public static LAST_TIME_USED: string;
				public static TIMES_USED: string;
			}
			export class DeletedContacts extends java.lang.Object implements android.provider.ContactsContract.DeletedContactsColumns {
				public static class: java.lang.Class<android.provider.ContactsContract.DeletedContacts>;
				public static CONTENT_URI: android.net.Uri;
				public static DAYS_KEPT_MILLISECONDS: number;
			}
			export class DeletedContactsColumns extends java.lang.Object {
				public static class: java.lang.Class<android.provider.ContactsContract.DeletedContactsColumns>;
				/**
				 * Constructs a new instance of the android.provider.ContactsContract$DeletedContactsColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
				public static CONTACT_DELETED_TIMESTAMP: string;
				public static CONTACT_ID: string;
			}
			export class Directory extends java.lang.Object implements android.provider.BaseColumns {
				public static class: java.lang.Class<android.provider.ContactsContract.Directory>;
				public static CONTENT_URI: android.net.Uri;
				public static CONTENT_TYPE: string;
				public static CONTENT_ITEM_TYPE: string;
				public static DEFAULT: number;
				public static LOCAL_INVISIBLE: number;
				public static PACKAGE_NAME: string;
				public static TYPE_RESOURCE_ID: string;
				public static DISPLAY_NAME: string;
				public static DIRECTORY_AUTHORITY: string;
				public static ACCOUNT_TYPE: string;
				public static ACCOUNT_NAME: string;
				public static EXPORT_SUPPORT: string;
				public static EXPORT_SUPPORT_NONE: number;
				public static EXPORT_SUPPORT_SAME_ACCOUNT_ONLY: number;
				public static EXPORT_SUPPORT_ANY_ACCOUNT: number;
				public static SHORTCUT_SUPPORT: string;
				public static SHORTCUT_SUPPORT_NONE: number;
				public static SHORTCUT_SUPPORT_DATA_ITEMS_ONLY: number;
				public static SHORTCUT_SUPPORT_FULL: number;
				public static PHOTO_SUPPORT: string;
				public static PHOTO_SUPPORT_NONE: number;
				public static PHOTO_SUPPORT_THUMBNAIL_ONLY: number;
				public static PHOTO_SUPPORT_FULL_SIZE_ONLY: number;
				public static PHOTO_SUPPORT_FULL: number;
				public static notifyDirectoryChange(param0: android.content.ContentResolver): void;
			}
			export class DisplayNameSources extends java.lang.Object {
				public static class: java.lang.Class<android.provider.ContactsContract.DisplayNameSources>;
				/**
				 * Constructs a new instance of the android.provider.ContactsContract$DisplayNameSources interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
				public static STRUCTURED_NAME: number;
				public static EMAIL: number;
				public static ORGANIZATION: number;
				public static NICKNAME: number;
				public static UNDEFINED: number;
				public static PHONE: number;
			}
			export class DisplayPhoto extends java.lang.Object {
				public static class: java.lang.Class<android.provider.ContactsContract.DisplayPhoto>;
				public static CONTENT_URI: android.net.Uri;
				public static CONTENT_MAX_DIMENSIONS_URI: android.net.Uri;
				public static DISPLAY_MAX_DIM: string;
				public static THUMBNAIL_MAX_DIM: string;
			}
			export class FullNameStyle extends java.lang.Object {
				public static class: java.lang.Class<android.provider.ContactsContract.FullNameStyle>;
				/**
				 * Constructs a new instance of the android.provider.ContactsContract$FullNameStyle interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
				public static JAPANESE: number;
				public static CHINESE: number;
				public static KOREAN: number;
				public static CJK: number;
				public static UNDEFINED: number;
				public static WESTERN: number;
			}
			export class Groups extends java.lang.Object implements android.provider.BaseColumns, android.provider.ContactsContract.GroupsColumns, android.provider.ContactsContract.SyncColumns {
				public static class: java.lang.Class<android.provider.ContactsContract.Groups>;
				public static CONTENT_URI: android.net.Uri;
				public static CONTENT_SUMMARY_URI: android.net.Uri;
				public static CONTENT_TYPE: string;
				public static CONTENT_ITEM_TYPE: string;
				public static newEntityIterator(param0: android.database.Cursor): android.content.EntityIterator;
			}
			export class GroupsColumns extends java.lang.Object {
				public static class: java.lang.Class<android.provider.ContactsContract.GroupsColumns>;
				/**
				 * Constructs a new instance of the android.provider.ContactsContract$GroupsColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
				public static DATA_SET: string;
				public static NOTES: string;
				public static GROUP_VISIBLE: string;
				public static SHOULD_SYNC: string;
				public static SUMMARY_COUNT: string;
				public static GROUP_IS_READ_ONLY: string;
				public static SUMMARY_WITH_PHONES: string;
				public static FAVORITES: string;
				public static AUTO_ADD: string;
				public static TITLE: string;
				public static DELETED: string;
				public static SYSTEM_ID: string;
			}
			export class Intents extends java.lang.Object {
				public static class: java.lang.Class<android.provider.ContactsContract.Intents>;
				public static SEARCH_SUGGESTION_CLICKED: string;
				public static SEARCH_SUGGESTION_DIAL_NUMBER_CLICKED: string;
				public static SEARCH_SUGGESTION_CREATE_CONTACT_CLICKED: string;
				public static CONTACTS_DATABASE_CREATED: string;
				public static ATTACH_IMAGE: string;
				public static INVITE_CONTACT: string;
				public static SHOW_OR_CREATE_CONTACT: string;
				public static EXTRA_FORCE_CREATE: string;
				public static EXTRA_CREATE_DESCRIPTION: string;
				public constructor();
			}
			export module Intents {
				export class Insert extends java.lang.Object {
					public static class: java.lang.Class<android.provider.ContactsContract.Intents.Insert>;
					public static ACTION: string;
					public static FULL_MODE: string;
					public static NAME: string;
					public static PHONETIC_NAME: string;
					public static COMPANY: string;
					public static JOB_TITLE: string;
					public static NOTES: string;
					public static PHONE: string;
					public static PHONE_TYPE: string;
					public static PHONE_ISPRIMARY: string;
					public static SECONDARY_PHONE: string;
					public static SECONDARY_PHONE_TYPE: string;
					public static TERTIARY_PHONE: string;
					public static TERTIARY_PHONE_TYPE: string;
					public static EMAIL: string;
					public static EMAIL_TYPE: string;
					public static EMAIL_ISPRIMARY: string;
					public static SECONDARY_EMAIL: string;
					public static SECONDARY_EMAIL_TYPE: string;
					public static TERTIARY_EMAIL: string;
					public static TERTIARY_EMAIL_TYPE: string;
					public static POSTAL: string;
					public static POSTAL_TYPE: string;
					public static POSTAL_ISPRIMARY: string;
					public static IM_HANDLE: string;
					public static IM_PROTOCOL: string;
					public static IM_ISPRIMARY: string;
					public static DATA: string;
					public constructor();
				}
			}
			export class PhoneLookup extends java.lang.Object implements android.provider.BaseColumns, android.provider.ContactsContract.PhoneLookupColumns, android.provider.ContactsContract.ContactsColumns, android.provider.ContactsContract.ContactOptionsColumns {
				public static class: java.lang.Class<android.provider.ContactsContract.PhoneLookup>;
				public static CONTENT_FILTER_URI: android.net.Uri;
			}
			export class PhoneLookupColumns extends java.lang.Object {
				public static class: java.lang.Class<android.provider.ContactsContract.PhoneLookupColumns>;
				/**
				 * Constructs a new instance of the android.provider.ContactsContract$PhoneLookupColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
				public static NUMBER: string;
				public static LABEL: string;
				public static NORMALIZED_NUMBER: string;
				public static TYPE: string;
			}
			export class PhoneticNameStyle extends java.lang.Object {
				public static class: java.lang.Class<android.provider.ContactsContract.PhoneticNameStyle>;
				/**
				 * Constructs a new instance of the android.provider.ContactsContract$PhoneticNameStyle interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
				public static JAPANESE: number;
				public static KOREAN: number;
				public static PINYIN: number;
				public static UNDEFINED: number;
			}
			export class Presence extends android.provider.ContactsContract.StatusUpdates {
				public static class: java.lang.Class<android.provider.ContactsContract.Presence>;
				public constructor();
			}
			export class PresenceColumns extends java.lang.Object {
				public static class: java.lang.Class<android.provider.ContactsContract.PresenceColumns>;
				/**
				 * Constructs a new instance of the android.provider.ContactsContract$PresenceColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
				public static DATA_ID: string;
				public static IM_HANDLE: string;
				public static CUSTOM_PROTOCOL: string;
				public static IM_ACCOUNT: string;
				public static PROTOCOL: string;
			}
			export class Profile extends java.lang.Object implements android.provider.BaseColumns, android.provider.ContactsContract.ContactsColumns, android.provider.ContactsContract.ContactOptionsColumns, android.provider.ContactsContract.ContactNameColumns, android.provider.ContactsContract.ContactStatusColumns {
				public static class: java.lang.Class<android.provider.ContactsContract.Profile>;
				public static CONTENT_URI: android.net.Uri;
				public static CONTENT_VCARD_URI: android.net.Uri;
				public static CONTENT_RAW_CONTACTS_URI: android.net.Uri;
				public static MIN_ID: number;
			}
			export class ProfileSyncState extends java.lang.Object implements android.provider.SyncStateContract.Columns {
				public static class: java.lang.Class<android.provider.ContactsContract.ProfileSyncState>;
				public static CONTENT_DIRECTORY: string;
				public static CONTENT_URI: android.net.Uri;
				public static newSetOperation(param0: android.accounts.Account, param1: native.Array<number>): android.content.ContentProviderOperation;
				public static set(param0: android.content.ContentProviderClient, param1: android.accounts.Account, param2: native.Array<number>): void;
				public static get(param0: android.content.ContentProviderClient, param1: android.accounts.Account): native.Array<number>;
				public static getWithUri(param0: android.content.ContentProviderClient, param1: android.accounts.Account): android.util.Pair<android.net.Uri,native.Array<number>>;
			}
			export class QuickContact extends java.lang.Object {
				public static class: java.lang.Class<android.provider.ContactsContract.QuickContact>;
				public static MODE_SMALL: number;
				public static MODE_MEDIUM: number;
				public static MODE_LARGE: number;
				public static showQuickContact(param0: android.content.Context, param1: android.view.View, param2: android.net.Uri, param3: number, param4: native.Array<string>): void;
				public static showQuickContact(param0: android.content.Context, param1: android.graphics.Rect, param2: android.net.Uri, param3: number, param4: native.Array<string>): void;
				public constructor();
			}
			export class RawContacts extends java.lang.Object implements android.provider.BaseColumns, android.provider.ContactsContract.RawContactsColumns, android.provider.ContactsContract.ContactOptionsColumns, android.provider.ContactsContract.ContactNameColumns, android.provider.ContactsContract.SyncColumns {
				public static class: java.lang.Class<android.provider.ContactsContract.RawContacts>;
				public static CONTENT_URI: android.net.Uri;
				public static CONTENT_TYPE: string;
				public static CONTENT_ITEM_TYPE: string;
				public static AGGREGATION_MODE_DEFAULT: number;
				public static AGGREGATION_MODE_IMMEDIATE: number;
				public static AGGREGATION_MODE_SUSPENDED: number;
				public static AGGREGATION_MODE_DISABLED: number;
				public static getContactLookupUri(param0: android.content.ContentResolver, param1: android.net.Uri): android.net.Uri;
				public static newEntityIterator(param0: android.database.Cursor): android.content.EntityIterator;
			}
			export module RawContacts {
				export class Data extends java.lang.Object implements android.provider.BaseColumns, android.provider.ContactsContract.DataColumns {
					public static class: java.lang.Class<android.provider.ContactsContract.RawContacts.Data>;
					public static CONTENT_DIRECTORY: string;
				}
				export class DisplayPhoto extends java.lang.Object {
					public static class: java.lang.Class<android.provider.ContactsContract.RawContacts.DisplayPhoto>;
					public static CONTENT_DIRECTORY: string;
				}
				export class Entity extends java.lang.Object implements android.provider.BaseColumns, android.provider.ContactsContract.DataColumns {
					public static class: java.lang.Class<android.provider.ContactsContract.RawContacts.Entity>;
					public static CONTENT_DIRECTORY: string;
					public static DATA_ID: string;
				}
				export class StreamItems extends java.lang.Object implements android.provider.BaseColumns, android.provider.ContactsContract.StreamItemsColumns {
					public static class: java.lang.Class<android.provider.ContactsContract.RawContacts.StreamItems>;
					public static CONTENT_DIRECTORY: string;
				}
			}
			export class RawContactsColumns extends java.lang.Object {
				public static class: java.lang.Class<android.provider.ContactsContract.RawContactsColumns>;
				/**
				 * Constructs a new instance of the android.provider.ContactsContract$RawContactsColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
				public static DATA_SET: string;
				public static AGGREGATION_MODE: string;
				public static RAW_CONTACT_IS_READ_ONLY: string;
				public static RAW_CONTACT_IS_USER_PROFILE: string;
				public static CONTACT_ID: string;
				public static DELETED: string;
			}
			export class RawContactsEntity extends java.lang.Object implements android.provider.BaseColumns, android.provider.ContactsContract.DataColumns, android.provider.ContactsContract.RawContactsColumns {
				public static class: java.lang.Class<android.provider.ContactsContract.RawContactsEntity>;
				public static CONTENT_URI: android.net.Uri;
				public static PROFILE_CONTENT_URI: android.net.Uri;
				public static CONTENT_TYPE: string;
				public static DATA_ID: string;
			}
			export class Settings extends java.lang.Object implements android.provider.ContactsContract.SettingsColumns {
				public static class: java.lang.Class<android.provider.ContactsContract.Settings>;
				public static CONTENT_URI: android.net.Uri;
				public static CONTENT_TYPE: string;
				public static CONTENT_ITEM_TYPE: string;
			}
			export class SettingsColumns extends java.lang.Object {
				public static class: java.lang.Class<android.provider.ContactsContract.SettingsColumns>;
				/**
				 * Constructs a new instance of the android.provider.ContactsContract$SettingsColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
				public static ACCOUNT_NAME: string;
				public static DATA_SET: string;
				public static ACCOUNT_TYPE: string;
				public static SHOULD_SYNC: string;
				public static UNGROUPED_WITH_PHONES: string;
				public static ANY_UNSYNCED: string;
				public static UNGROUPED_COUNT: string;
				public static UNGROUPED_VISIBLE: string;
			}
			export class StatusColumns extends java.lang.Object {
				public static class: java.lang.Class<android.provider.ContactsContract.StatusColumns>;
				/**
				 * Constructs a new instance of the android.provider.ContactsContract$StatusColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
				public static CHAT_CAPABILITY: string;
				public static STATUS: string;
				public static STATUS_TIMESTAMP: string;
				public static DO_NOT_DISTURB: number;
				public static STATUS_ICON: string;
				public static STATUS_LABEL: string;
				public static PRESENCE: string;
				public static CAPABILITY_HAS_VIDEO: number;
				public static PRESENCE_CUSTOM_STATUS: string;
				public static CAPABILITY_HAS_CAMERA: number;
				public static STATUS_RES_PACKAGE: string;
				public static PRESENCE_STATUS: string;
				public static OFFLINE: number;
				public static INVISIBLE: number;
				public static AWAY: number;
				public static AVAILABLE: number;
				public static CAPABILITY_HAS_VOICE: number;
				public static IDLE: number;
			}
			export class StatusUpdates extends java.lang.Object implements android.provider.ContactsContract.StatusColumns, android.provider.ContactsContract.PresenceColumns {
				public static class: java.lang.Class<android.provider.ContactsContract.StatusUpdates>;
				public static CONTENT_URI: android.net.Uri;
				public static PROFILE_CONTENT_URI: android.net.Uri;
				public static CONTENT_TYPE: string;
				public static CONTENT_ITEM_TYPE: string;
				public static getPresenceIconResourceId(param0: number): number;
				public static getPresencePrecedence(param0: number): number;
			}
			export class StreamItemPhotos extends java.lang.Object implements android.provider.BaseColumns, android.provider.ContactsContract.StreamItemPhotosColumns {
				public static class: java.lang.Class<android.provider.ContactsContract.StreamItemPhotos>;
				public static PHOTO: string;
			}
			export class StreamItemPhotosColumns extends java.lang.Object {
				public static class: java.lang.Class<android.provider.ContactsContract.StreamItemPhotosColumns>;
				/**
				 * Constructs a new instance of the android.provider.ContactsContract$StreamItemPhotosColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
				public static STREAM_ITEM_ID: string;
				public static SYNC3: string;
				public static SYNC4: string;
				public static PHOTO_FILE_ID: string;
				public static SYNC1: string;
				public static SYNC2: string;
				public static PHOTO_URI: string;
				public static SORT_INDEX: string;
			}
			export class StreamItems extends java.lang.Object implements android.provider.BaseColumns, android.provider.ContactsContract.StreamItemsColumns {
				public static class: java.lang.Class<android.provider.ContactsContract.StreamItems>;
				public static CONTENT_URI: android.net.Uri;
				public static CONTENT_PHOTO_URI: android.net.Uri;
				public static CONTENT_LIMIT_URI: android.net.Uri;
				public static CONTENT_TYPE: string;
				public static CONTENT_ITEM_TYPE: string;
				public static MAX_ITEMS: string;
			}
			export module StreamItems {
				export class StreamItemPhotos extends java.lang.Object implements android.provider.BaseColumns, android.provider.ContactsContract.StreamItemPhotosColumns {
					public static class: java.lang.Class<android.provider.ContactsContract.StreamItems.StreamItemPhotos>;
					public static CONTENT_DIRECTORY: string;
					public static CONTENT_TYPE: string;
					public static CONTENT_ITEM_TYPE: string;
				}
			}
			export class StreamItemsColumns extends java.lang.Object {
				public static class: java.lang.Class<android.provider.ContactsContract.StreamItemsColumns>;
				/**
				 * Constructs a new instance of the android.provider.ContactsContract$StreamItemsColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
				public static ACCOUNT_NAME: string;
				public static DATA_SET: string;
				public static CONTACT_LOOKUP_KEY: string;
				public static RES_ICON: string;
				public static TIMESTAMP: string;
				public static CONTACT_ID: string;
				public static RES_PACKAGE: string;
				public static RAW_CONTACT_ID: string;
				public static RES_LABEL: string;
				public static ACCOUNT_TYPE: string;
				public static SYNC3: string;
				public static SYNC4: string;
				public static COMMENTS: string;
				public static TEXT: string;
				public static RAW_CONTACT_SOURCE_ID: string;
				public static SYNC1: string;
				public static SYNC2: string;
			}
			export class SyncColumns extends java.lang.Object implements android.provider.ContactsContract.BaseSyncColumns {
				public static class: java.lang.Class<android.provider.ContactsContract.SyncColumns>;
				/**
				 * Constructs a new instance of the android.provider.ContactsContract$SyncColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
				public static ACCOUNT_NAME: string;
				public static ACCOUNT_TYPE: string;
				public static SOURCE_ID: string;
				public static SYNC3: string;
				public static DIRTY: string;
				public static SYNC4: string;
				public static VERSION: string;
				public static SYNC1: string;
				public static SYNC2: string;
			}
			export class SyncState extends java.lang.Object implements android.provider.SyncStateContract.Columns {
				public static class: java.lang.Class<android.provider.ContactsContract.SyncState>;
				public static CONTENT_DIRECTORY: string;
				public static CONTENT_URI: android.net.Uri;
				public static newSetOperation(param0: android.accounts.Account, param1: native.Array<number>): android.content.ContentProviderOperation;
				public static set(param0: android.content.ContentProviderClient, param1: android.accounts.Account, param2: native.Array<number>): void;
				public static get(param0: android.content.ContentProviderClient, param1: android.accounts.Account): native.Array<number>;
				public static getWithUri(param0: android.content.ContentProviderClient, param1: android.accounts.Account): android.util.Pair<android.net.Uri,native.Array<number>>;
			}
		}
	}
}

declare module android {
	export module provider {
		export class LiveFolders extends java.lang.Object implements android.provider.BaseColumns {
			public static class: java.lang.Class<android.provider.LiveFolders>;
			public static NAME: string;
			public static DESCRIPTION: string;
			public static INTENT: string;
			public static ICON_BITMAP: string;
			public static ICON_PACKAGE: string;
			public static ICON_RESOURCE: string;
			public static DISPLAY_MODE_GRID: number;
			public static DISPLAY_MODE_LIST: number;
			public static EXTRA_LIVE_FOLDER_NAME: string;
			public static EXTRA_LIVE_FOLDER_ICON: string;
			public static EXTRA_LIVE_FOLDER_DISPLAY_MODE: string;
			public static EXTRA_LIVE_FOLDER_BASE_INTENT: string;
			public static ACTION_CREATE_LIVE_FOLDER: string;
		}
	}
}

declare module android {
	export module provider {
		export class MediaStore extends java.lang.Object {
			public static class: java.lang.Class<android.provider.MediaStore>;
			public static AUTHORITY: string;
			public static INTENT_ACTION_MUSIC_PLAYER: string;
			public static INTENT_ACTION_MEDIA_SEARCH: string;
			public static INTENT_ACTION_MEDIA_PLAY_FROM_SEARCH: string;
			public static INTENT_ACTION_TEXT_OPEN_FROM_SEARCH: string;
			public static INTENT_ACTION_VIDEO_PLAY_FROM_SEARCH: string;
			public static EXTRA_MEDIA_ARTIST: string;
			public static EXTRA_MEDIA_ALBUM: string;
			public static EXTRA_MEDIA_TITLE: string;
			public static EXTRA_MEDIA_FOCUS: string;
			public static EXTRA_SCREEN_ORIENTATION: string;
			public static EXTRA_FULL_SCREEN: string;
			public static EXTRA_SHOW_ACTION_ICONS: string;
			public static EXTRA_FINISH_ON_COMPLETION: string;
			public static INTENT_ACTION_STILL_IMAGE_CAMERA: string;
			public static INTENT_ACTION_STILL_IMAGE_CAMERA_SECURE: string;
			public static INTENT_ACTION_VIDEO_CAMERA: string;
			public static ACTION_IMAGE_CAPTURE: string;
			public static ACTION_IMAGE_CAPTURE_SECURE: string;
			public static ACTION_VIDEO_CAPTURE: string;
			public static EXTRA_VIDEO_QUALITY: string;
			public static EXTRA_SIZE_LIMIT: string;
			public static EXTRA_DURATION_LIMIT: string;
			public static EXTRA_OUTPUT: string;
			public static UNKNOWN_STRING: string;
			public static MEDIA_SCANNER_VOLUME: string;
			public static MEDIA_IGNORE_FILENAME: string;
			public static getMediaScannerUri(): android.net.Uri;
			public constructor();
			public static getVersion(param0: android.content.Context): string;
		}
		export module MediaStore {
			export class Audio extends java.lang.Object {
				public static class: java.lang.Class<android.provider.MediaStore.Audio>;
				public constructor();
				public static keyFor(param0: string): string;
			}
			export module Audio {
				export class AlbumColumns extends java.lang.Object {
					public static class: java.lang.Class<android.provider.MediaStore.Audio.AlbumColumns>;
					/**
					 * Constructs a new instance of the android.provider.MediaStore$Audio$AlbumColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
					});
					public constructor();
					public static ALBUM_ID: string;
					public static ARTIST: string;
					public static FIRST_YEAR: string;
					public static ALBUM_KEY: string;
					public static NUMBER_OF_SONGS_FOR_ARTIST: string;
					public static ALBUM: string;
					public static NUMBER_OF_SONGS: string;
					public static LAST_YEAR: string;
					public static ALBUM_ART: string;
				}
				export class Albums extends java.lang.Object implements android.provider.BaseColumns, android.provider.MediaStore.Audio.AlbumColumns {
					public static class: java.lang.Class<android.provider.MediaStore.Audio.Albums>;
					public static INTERNAL_CONTENT_URI: android.net.Uri;
					public static EXTERNAL_CONTENT_URI: android.net.Uri;
					public static CONTENT_TYPE: string;
					public static ENTRY_CONTENT_TYPE: string;
					public static DEFAULT_SORT_ORDER: string;
					public constructor();
					public static getContentUri(param0: string): android.net.Uri;
				}
				export class ArtistColumns extends java.lang.Object {
					public static class: java.lang.Class<android.provider.MediaStore.Audio.ArtistColumns>;
					/**
					 * Constructs a new instance of the android.provider.MediaStore$Audio$ArtistColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
					});
					public constructor();
					public static NUMBER_OF_ALBUMS: string;
					public static ARTIST: string;
					public static NUMBER_OF_TRACKS: string;
					public static ARTIST_KEY: string;
				}
				export class Artists extends java.lang.Object implements android.provider.BaseColumns, android.provider.MediaStore.Audio.ArtistColumns {
					public static class: java.lang.Class<android.provider.MediaStore.Audio.Artists>;
					public static INTERNAL_CONTENT_URI: android.net.Uri;
					public static EXTERNAL_CONTENT_URI: android.net.Uri;
					public static CONTENT_TYPE: string;
					public static ENTRY_CONTENT_TYPE: string;
					public static DEFAULT_SORT_ORDER: string;
					public constructor();
					public static getContentUri(param0: string): android.net.Uri;
				}
				export module Artists {
					export class Albums extends java.lang.Object implements android.provider.MediaStore.Audio.AlbumColumns {
						public static class: java.lang.Class<android.provider.MediaStore.Audio.Artists.Albums>;
						public constructor();
						public static getContentUri(param0: string, param1: number): android.net.Uri;
					}
				}
				export class AudioColumns extends java.lang.Object implements android.provider.MediaStore.MediaColumns {
					public static class: java.lang.Class<android.provider.MediaStore.Audio.AudioColumns>;
					/**
					 * Constructs a new instance of the android.provider.MediaStore$Audio$AudioColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
					});
					public constructor();
					public static ALBUM_ID: string;
					public static IS_ALARM: string;
					public static DATA: string;
					public static ALBUM: string;
					public static _ID: string;
					public static TITLE: string;
					public static DURATION: string;
					public static DATE_MODIFIED: string;
					public static SIZE: string;
					public static TITLE_KEY: string;
					public static IS_MUSIC: string;
					public static DATE_ADDED: string;
					public static HEIGHT: string;
					public static TRACK: string;
					public static DISPLAY_NAME: string;
					public static ARTIST: string;
					public static IS_NOTIFICATION: string;
					public static YEAR: string;
					public static BOOKMARK: string;
					public static _COUNT: string;
					public static IS_PODCAST: string;
					public static ALBUM_KEY: string;
					public static ARTIST_ID: string;
					public static IS_RINGTONE: string;
					public static WIDTH: string;
					public static COMPOSER: string;
					public static ARTIST_KEY: string;
					public static MIME_TYPE: string;
				}
				export class Genres extends java.lang.Object implements android.provider.BaseColumns, android.provider.MediaStore.Audio.GenresColumns {
					public static class: java.lang.Class<android.provider.MediaStore.Audio.Genres>;
					public static INTERNAL_CONTENT_URI: android.net.Uri;
					public static EXTERNAL_CONTENT_URI: android.net.Uri;
					public static CONTENT_TYPE: string;
					public static ENTRY_CONTENT_TYPE: string;
					public static DEFAULT_SORT_ORDER: string;
					public constructor();
					public static getContentUriForAudioId(param0: string, param1: number): android.net.Uri;
					public static getContentUri(param0: string): android.net.Uri;
				}
				export module Genres {
					export class Members extends java.lang.Object implements android.provider.MediaStore.Audio.AudioColumns {
						public static class: java.lang.Class<android.provider.MediaStore.Audio.Genres.Members>;
						public static CONTENT_DIRECTORY: string;
						public static DEFAULT_SORT_ORDER: string;
						public static AUDIO_ID: string;
						public static GENRE_ID: string;
						public constructor();
						public static getContentUri(param0: string, param1: number): android.net.Uri;
					}
				}
				export class GenresColumns extends java.lang.Object {
					public static class: java.lang.Class<android.provider.MediaStore.Audio.GenresColumns>;
					/**
					 * Constructs a new instance of the android.provider.MediaStore$Audio$GenresColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
					});
					public constructor();
					public static NAME: string;
				}
				export class Media extends java.lang.Object implements android.provider.MediaStore.Audio.AudioColumns {
					public static class: java.lang.Class<android.provider.MediaStore.Audio.Media>;
					public static INTERNAL_CONTENT_URI: android.net.Uri;
					public static EXTERNAL_CONTENT_URI: android.net.Uri;
					public static CONTENT_TYPE: string;
					public static DEFAULT_SORT_ORDER: string;
					public static RECORD_SOUND_ACTION: string;
					public static EXTRA_MAX_BYTES: string;
					public static getContentUriForPath(param0: string): android.net.Uri;
					public constructor();
					public static getContentUri(param0: string): android.net.Uri;
				}
				export class Playlists extends java.lang.Object implements android.provider.BaseColumns, android.provider.MediaStore.Audio.PlaylistsColumns {
					public static class: java.lang.Class<android.provider.MediaStore.Audio.Playlists>;
					public static INTERNAL_CONTENT_URI: android.net.Uri;
					public static EXTERNAL_CONTENT_URI: android.net.Uri;
					public static CONTENT_TYPE: string;
					public static ENTRY_CONTENT_TYPE: string;
					public static DEFAULT_SORT_ORDER: string;
					public constructor();
					public static getContentUri(param0: string): android.net.Uri;
				}
				export module Playlists {
					export class Members extends java.lang.Object implements android.provider.MediaStore.Audio.AudioColumns {
						public static class: java.lang.Class<android.provider.MediaStore.Audio.Playlists.Members>;
						public static _ID: string;
						public static CONTENT_DIRECTORY: string;
						public static AUDIO_ID: string;
						public static PLAYLIST_ID: string;
						public static PLAY_ORDER: string;
						public static DEFAULT_SORT_ORDER: string;
						public constructor();
						public static moveItem(param0: android.content.ContentResolver, param1: number, param2: number, param3: number): boolean;
						public static getContentUri(param0: string, param1: number): android.net.Uri;
					}
				}
				export class PlaylistsColumns extends java.lang.Object {
					public static class: java.lang.Class<android.provider.MediaStore.Audio.PlaylistsColumns>;
					/**
					 * Constructs a new instance of the android.provider.MediaStore$Audio$PlaylistsColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
					});
					public constructor();
					public static DATE_MODIFIED: string;
					public static DATA: string;
					public static DATE_ADDED: string;
					public static NAME: string;
				}
			}
			export class Files extends java.lang.Object {
				public static class: java.lang.Class<android.provider.MediaStore.Files>;
				public static getContentUri(param0: string, param1: number): android.net.Uri;
				public static getContentUri(param0: string): android.net.Uri;
				public constructor();
			}
			export module Files {
				export class FileColumns extends java.lang.Object implements android.provider.MediaStore.MediaColumns {
					public static class: java.lang.Class<android.provider.MediaStore.Files.FileColumns>;
					/**
					 * Constructs a new instance of the android.provider.MediaStore$Files$FileColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
					});
					public constructor();
					public static DATA: string;
					public static PARENT: string;
					public static MEDIA_TYPE: string;
					public static _ID: string;
					public static TITLE: string;
					public static MEDIA_TYPE_IMAGE: number;
					public static MEDIA_TYPE_AUDIO: number;
					public static MEDIA_TYPE_NONE: number;
					public static _COUNT: string;
					public static DATE_MODIFIED: string;
					public static MEDIA_TYPE_PLAYLIST: number;
					public static MEDIA_TYPE_VIDEO: number;
					public static SIZE: string;
					public static WIDTH: string;
					public static DATE_ADDED: string;
					public static HEIGHT: string;
					public static MIME_TYPE: string;
					public static DISPLAY_NAME: string;
				}
			}
			export class Images extends java.lang.Object {
				public static class: java.lang.Class<android.provider.MediaStore.Images>;
				public constructor();
			}
			export module Images {
				export class ImageColumns extends java.lang.Object implements android.provider.MediaStore.MediaColumns {
					public static class: java.lang.Class<android.provider.MediaStore.Images.ImageColumns>;
					/**
					 * Constructs a new instance of the android.provider.MediaStore$Images$ImageColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
					});
					public constructor();
					public static IS_PRIVATE: string;
					public static DESCRIPTION: string;
					public static DATA: string;
					public static ORIENTATION: string;
					public static DATE_TAKEN: string;
					public static _ID: string;
					public static MINI_THUMB_MAGIC: string;
					public static TITLE: string;
					public static LATITUDE: string;
					public static _COUNT: string;
					public static PICASA_ID: string;
					public static BUCKET_DISPLAY_NAME: string;
					public static DATE_MODIFIED: string;
					public static LONGITUDE: string;
					public static SIZE: string;
					public static BUCKET_ID: string;
					public static WIDTH: string;
					public static DATE_ADDED: string;
					public static HEIGHT: string;
					public static DISPLAY_NAME: string;
					public static MIME_TYPE: string;
				}
				export class Media extends java.lang.Object implements android.provider.MediaStore.Images.ImageColumns {
					public static class: java.lang.Class<android.provider.MediaStore.Images.Media>;
					public static INTERNAL_CONTENT_URI: android.net.Uri;
					public static EXTERNAL_CONTENT_URI: android.net.Uri;
					public static CONTENT_TYPE: string;
					public static DEFAULT_SORT_ORDER: string;
					public static query(param0: android.content.ContentResolver, param1: android.net.Uri, param2: native.Array<string>, param3: string, param4: string): android.database.Cursor;
					public constructor();
					public static query(param0: android.content.ContentResolver, param1: android.net.Uri, param2: native.Array<string>, param3: string, param4: native.Array<string>, param5: string): android.database.Cursor;
					public static query(param0: android.content.ContentResolver, param1: android.net.Uri, param2: native.Array<string>): android.database.Cursor;
					public static insertImage(param0: android.content.ContentResolver, param1: string, param2: string, param3: string): string;
					public static insertImage(param0: android.content.ContentResolver, param1: android.graphics.Bitmap, param2: string, param3: string): string;
					public static getContentUri(param0: string): android.net.Uri;
					public static getBitmap(param0: android.content.ContentResolver, param1: android.net.Uri): android.graphics.Bitmap;
				}
				export class Thumbnails extends java.lang.Object implements android.provider.BaseColumns {
					public static class: java.lang.Class<android.provider.MediaStore.Images.Thumbnails>;
					public static INTERNAL_CONTENT_URI: android.net.Uri;
					public static EXTERNAL_CONTENT_URI: android.net.Uri;
					public static DEFAULT_SORT_ORDER: string;
					public static DATA: string;
					public static IMAGE_ID: string;
					public static KIND: string;
					public static MINI_KIND: number;
					public static FULL_SCREEN_KIND: number;
					public static MICRO_KIND: number;
					public static THUMB_DATA: string;
					public static WIDTH: string;
					public static HEIGHT: string;
					public static queryMiniThumbnails(param0: android.content.ContentResolver, param1: android.net.Uri, param2: number, param3: native.Array<string>): android.database.Cursor;
					public static cancelThumbnailRequest(param0: android.content.ContentResolver, param1: number, param2: number): void;
					public static getThumbnail(param0: android.content.ContentResolver, param1: number, param2: number, param3: number, param4: android.graphics.BitmapFactory.Options): android.graphics.Bitmap;
					public constructor();
					public static queryMiniThumbnail(param0: android.content.ContentResolver, param1: number, param2: number, param3: native.Array<string>): android.database.Cursor;
					public static cancelThumbnailRequest(param0: android.content.ContentResolver, param1: number): void;
					public static query(param0: android.content.ContentResolver, param1: android.net.Uri, param2: native.Array<string>): android.database.Cursor;
					public static getThumbnail(param0: android.content.ContentResolver, param1: number, param2: number, param3: android.graphics.BitmapFactory.Options): android.graphics.Bitmap;
					public static getContentUri(param0: string): android.net.Uri;
				}
			}
			export class MediaColumns extends java.lang.Object implements android.provider.BaseColumns {
				public static class: java.lang.Class<android.provider.MediaStore.MediaColumns>;
				/**
				 * Constructs a new instance of the android.provider.MediaStore$MediaColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
				public static _COUNT: string;
				public static DATE_MODIFIED: string;
				public static DATA: string;
				public static SIZE: string;
				public static _ID: string;
				public static TITLE: string;
				public static WIDTH: string;
				public static DATE_ADDED: string;
				public static HEIGHT: string;
				public static DISPLAY_NAME: string;
				public static MIME_TYPE: string;
			}
			export class Video extends java.lang.Object {
				public static class: java.lang.Class<android.provider.MediaStore.Video>;
				public static DEFAULT_SORT_ORDER: string;
				public static query(param0: android.content.ContentResolver, param1: android.net.Uri, param2: native.Array<string>): android.database.Cursor;
				public constructor();
			}
			export module Video {
				export class Media extends java.lang.Object implements android.provider.MediaStore.Video.VideoColumns {
					public static class: java.lang.Class<android.provider.MediaStore.Video.Media>;
					public static INTERNAL_CONTENT_URI: android.net.Uri;
					public static EXTERNAL_CONTENT_URI: android.net.Uri;
					public static CONTENT_TYPE: string;
					public static DEFAULT_SORT_ORDER: string;
					public constructor();
					public static getContentUri(param0: string): android.net.Uri;
				}
				export class Thumbnails extends java.lang.Object implements android.provider.BaseColumns {
					public static class: java.lang.Class<android.provider.MediaStore.Video.Thumbnails>;
					public static INTERNAL_CONTENT_URI: android.net.Uri;
					public static EXTERNAL_CONTENT_URI: android.net.Uri;
					public static DEFAULT_SORT_ORDER: string;
					public static DATA: string;
					public static VIDEO_ID: string;
					public static KIND: string;
					public static MINI_KIND: number;
					public static FULL_SCREEN_KIND: number;
					public static MICRO_KIND: number;
					public static WIDTH: string;
					public static HEIGHT: string;
					public static cancelThumbnailRequest(param0: android.content.ContentResolver, param1: number, param2: number): void;
					public static getThumbnail(param0: android.content.ContentResolver, param1: number, param2: number, param3: number, param4: android.graphics.BitmapFactory.Options): android.graphics.Bitmap;
					public constructor();
					public static cancelThumbnailRequest(param0: android.content.ContentResolver, param1: number): void;
					public static getThumbnail(param0: android.content.ContentResolver, param1: number, param2: number, param3: android.graphics.BitmapFactory.Options): android.graphics.Bitmap;
					public static getContentUri(param0: string): android.net.Uri;
				}
				export class VideoColumns extends java.lang.Object implements android.provider.MediaStore.MediaColumns {
					public static class: java.lang.Class<android.provider.MediaStore.Video.VideoColumns>;
					/**
					 * Constructs a new instance of the android.provider.MediaStore$Video$VideoColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
					});
					public constructor();
					public static IS_PRIVATE: string;
					public static DATA: string;
					public static ALBUM: string;
					public static DATE_TAKEN: string;
					public static _ID: string;
					public static TITLE: string;
					public static LATITUDE: string;
					public static DURATION: string;
					public static TAGS: string;
					public static LANGUAGE: string;
					public static DATE_MODIFIED: string;
					public static RESOLUTION: string;
					public static SIZE: string;
					public static DATE_ADDED: string;
					public static HEIGHT: string;
					public static DISPLAY_NAME: string;
					public static ARTIST: string;
					public static DESCRIPTION: string;
					public static CATEGORY: string;
					public static BOOKMARK: string;
					public static MINI_THUMB_MAGIC: string;
					public static _COUNT: string;
					public static BUCKET_DISPLAY_NAME: string;
					public static LONGITUDE: string;
					public static BUCKET_ID: string;
					public static WIDTH: string;
					public static MIME_TYPE: string;
				}
			}
		}
	}
}

declare module android {
	export module provider {
		export class OpenableColumns extends java.lang.Object {
			public static class: java.lang.Class<android.provider.OpenableColumns>;
			/**
			 * Constructs a new instance of the android.provider.OpenableColumns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
			});
			public constructor();
			public static SIZE: string;
			public static DISPLAY_NAME: string;
		}
	}
}

declare module android {
	export module provider {
		export class SearchRecentSuggestions extends java.lang.Object {
			public static class: java.lang.Class<android.provider.SearchRecentSuggestions>;
			public static QUERIES_PROJECTION_1LINE: native.Array<string>;
			public static QUERIES_PROJECTION_2LINE: native.Array<string>;
			public static QUERIES_PROJECTION_DATE_INDEX: number;
			public static QUERIES_PROJECTION_QUERY_INDEX: number;
			public static QUERIES_PROJECTION_DISPLAY1_INDEX: number;
			public static QUERIES_PROJECTION_DISPLAY2_INDEX: number;
			public saveRecentQuery(param0: string, param1: string): void;
			public constructor(param0: android.content.Context, param1: string, param2: number);
			public clearHistory(): void;
			public truncateHistory(param0: android.content.ContentResolver, param1: number): void;
		}
	}
}

declare module android {
	export module provider {
		export class Settings extends java.lang.Object {
			public static class: java.lang.Class<android.provider.Settings>;
			public static ACTION_SETTINGS: string;
			public static ACTION_APN_SETTINGS: string;
			public static ACTION_LOCATION_SOURCE_SETTINGS: string;
			public static ACTION_WIRELESS_SETTINGS: string;
			public static ACTION_AIRPLANE_MODE_SETTINGS: string;
			public static ACTION_ACCESSIBILITY_SETTINGS: string;
			public static ACTION_SECURITY_SETTINGS: string;
			public static ACTION_PRIVACY_SETTINGS: string;
			public static ACTION_WIFI_SETTINGS: string;
			public static ACTION_WIFI_IP_SETTINGS: string;
			public static ACTION_BLUETOOTH_SETTINGS: string;
			public static ACTION_DATE_SETTINGS: string;
			public static ACTION_SOUND_SETTINGS: string;
			public static ACTION_DISPLAY_SETTINGS: string;
			public static ACTION_LOCALE_SETTINGS: string;
			public static ACTION_INPUT_METHOD_SETTINGS: string;
			public static ACTION_INPUT_METHOD_SUBTYPE_SETTINGS: string;
			public static ACTION_USER_DICTIONARY_SETTINGS: string;
			public static ACTION_APPLICATION_SETTINGS: string;
			public static ACTION_APPLICATION_DEVELOPMENT_SETTINGS: string;
			public static ACTION_QUICK_LAUNCH_SETTINGS: string;
			public static ACTION_MANAGE_APPLICATIONS_SETTINGS: string;
			public static ACTION_MANAGE_ALL_APPLICATIONS_SETTINGS: string;
			public static ACTION_APPLICATION_DETAILS_SETTINGS: string;
			public static ACTION_SYNC_SETTINGS: string;
			public static ACTION_ADD_ACCOUNT: string;
			public static ACTION_NETWORK_OPERATOR_SETTINGS: string;
			public static ACTION_DATA_ROAMING_SETTINGS: string;
			public static ACTION_INTERNAL_STORAGE_SETTINGS: string;
			public static ACTION_MEMORY_CARD_SETTINGS: string;
			public static ACTION_SEARCH_SETTINGS: string;
			public static ACTION_DEVICE_INFO_SETTINGS: string;
			public static ACTION_NFC_SETTINGS: string;
			public static ACTION_NFCSHARING_SETTINGS: string;
			public static ACTION_DREAM_SETTINGS: string;
			public static EXTRA_AUTHORITIES: string;
			public static EXTRA_ACCOUNT_TYPES: string;
			public static EXTRA_INPUT_METHOD_ID: string;
			public static AUTHORITY: string;
			public constructor();
		}
		export module Settings {
			export class Global extends android.provider.Settings.NameValueTable {
				public static class: java.lang.Class<android.provider.Settings.Global>;
				public static SYS_PROP_SETTING_VERSION: string;
				public static CONTENT_URI: android.net.Uri;
				public static AIRPLANE_MODE_ON: string;
				public static RADIO_BLUETOOTH: string;
				public static RADIO_WIFI: string;
				public static RADIO_CELL: string;
				public static RADIO_NFC: string;
				public static AIRPLANE_MODE_RADIOS: string;
				public static WIFI_SLEEP_POLICY: string;
				public static WIFI_SLEEP_POLICY_DEFAULT: number;
				public static WIFI_SLEEP_POLICY_NEVER_WHILE_PLUGGED: number;
				public static WIFI_SLEEP_POLICY_NEVER: number;
				public static AUTO_TIME: string;
				public static AUTO_TIME_ZONE: string;
				public static STAY_ON_WHILE_PLUGGED_IN: string;
				public static ADB_ENABLED: string;
				public static BLUETOOTH_ON: string;
				public static DATA_ROAMING: string;
				public static DEVELOPMENT_SETTINGS_ENABLED: string;
				public static DEVICE_PROVISIONED: string;
				public static INSTALL_NON_MARKET_APPS: string;
				public static NETWORK_PREFERENCE: string;
				public static USB_MASS_STORAGE_ENABLED: string;
				public static USE_GOOGLE_MAIL: string;
				public static WIFI_NETWORKS_AVAILABLE_NOTIFICATION_ON: string;
				public static WIFI_NETWORKS_AVAILABLE_REPEAT_DELAY: string;
				public static WIFI_NUM_OPEN_NETWORKS_KEPT: string;
				public static WIFI_ON: string;
				public static WIFI_WATCHDOG_ON: string;
				public static WIFI_MAX_DHCP_RETRY_COUNT: string;
				public static WIFI_MOBILE_DATA_TRANSITION_WAKELOCK_TIMEOUT_MS: string;
				public static MODE_RINGER: string;
				public static HTTP_PROXY: string;
				public static WINDOW_ANIMATION_SCALE: string;
				public static TRANSITION_ANIMATION_SCALE: string;
				public static ANIMATOR_DURATION_SCALE: string;
				public static DEBUG_APP: string;
				public static WAIT_FOR_DEBUGGER: string;
				public static SHOW_PROCESSES: string;
				public static ALWAYS_FINISH_ACTIVITIES: string;
				public static getFloat(param0: android.content.ContentResolver, param1: string): number;
				public static getLong(param0: android.content.ContentResolver, param1: string, param2: number): number;
				public static putString(param0: android.content.ContentResolver, param1: android.net.Uri, param2: string, param3: string): boolean;
				public static getUriFor(param0: android.net.Uri, param1: string): android.net.Uri;
				public static getString(param0: android.content.ContentResolver, param1: string): string;
				public static getFloat(param0: android.content.ContentResolver, param1: string, param2: number): number;
				public constructor();
				public static getUriFor(param0: string): android.net.Uri;
				public static putInt(param0: android.content.ContentResolver, param1: string, param2: number): boolean;
				public static getLong(param0: android.content.ContentResolver, param1: string): number;
				public static putFloat(param0: android.content.ContentResolver, param1: string, param2: number): boolean;
				public static getInt(param0: android.content.ContentResolver, param1: string, param2: number): number;
				public static putLong(param0: android.content.ContentResolver, param1: string, param2: number): boolean;
				public static getInt(param0: android.content.ContentResolver, param1: string): number;
				public static putString(param0: android.content.ContentResolver, param1: string, param2: string): boolean;
			}
			export class NameValueTable extends java.lang.Object implements android.provider.BaseColumns {
				public static class: java.lang.Class<android.provider.Settings.NameValueTable>;
				public static NAME: string;
				public static VALUE: string;
				public static putString(param0: android.content.ContentResolver, param1: android.net.Uri, param2: string, param3: string): boolean;
				public static getUriFor(param0: android.net.Uri, param1: string): android.net.Uri;
				public constructor();
			}
			export class Secure extends android.provider.Settings.NameValueTable {
				public static class: java.lang.Class<android.provider.Settings.Secure>;
				public static SYS_PROP_SETTING_VERSION: string;
				public static CONTENT_URI: android.net.Uri;
				public static DEVELOPMENT_SETTINGS_ENABLED: string;
				public static ADB_ENABLED: string;
				public static ALLOW_MOCK_LOCATION: string;
				public static ANDROID_ID: string;
				public static BLUETOOTH_ON: string;
				public static DATA_ROAMING: string;
				public static DEFAULT_INPUT_METHOD: string;
				public static SELECTED_INPUT_METHOD_SUBTYPE: string;
				public static INPUT_METHOD_SELECTOR_VISIBILITY: string;
				public static DEVICE_PROVISIONED: string;
				public static ENABLED_INPUT_METHODS: string;
				public static HTTP_PROXY: string;
				public static INSTALL_NON_MARKET_APPS: string;
				public static LOCATION_PROVIDERS_ALLOWED: string;
				public static LOCK_PATTERN_ENABLED: string;
				public static LOCK_PATTERN_VISIBLE: string;
				public static LOCK_PATTERN_TACTILE_FEEDBACK_ENABLED: string;
				public static LOGGING_ID: string;
				public static NETWORK_PREFERENCE: string;
				public static PARENTAL_CONTROL_ENABLED: string;
				public static PARENTAL_CONTROL_LAST_UPDATE: string;
				public static PARENTAL_CONTROL_REDIRECT_URL: string;
				public static SETTINGS_CLASSNAME: string;
				public static USB_MASS_STORAGE_ENABLED: string;
				public static USE_GOOGLE_MAIL: string;
				public static ACCESSIBILITY_ENABLED: string;
				public static TOUCH_EXPLORATION_ENABLED: string;
				public static ENABLED_ACCESSIBILITY_SERVICES: string;
				public static ACCESSIBILITY_SPEAK_PASSWORD: string;
				public static TTS_USE_DEFAULTS: string;
				public static TTS_DEFAULT_RATE: string;
				public static TTS_DEFAULT_PITCH: string;
				public static TTS_DEFAULT_SYNTH: string;
				public static TTS_DEFAULT_LANG: string;
				public static TTS_DEFAULT_COUNTRY: string;
				public static TTS_DEFAULT_VARIANT: string;
				public static TTS_ENABLED_PLUGINS: string;
				public static WIFI_NETWORKS_AVAILABLE_NOTIFICATION_ON: string;
				public static WIFI_NETWORKS_AVAILABLE_REPEAT_DELAY: string;
				public static WIFI_NUM_OPEN_NETWORKS_KEPT: string;
				public static WIFI_ON: string;
				public static WIFI_WATCHDOG_ACCEPTABLE_PACKET_LOSS_PERCENTAGE: string;
				public static WIFI_WATCHDOG_AP_COUNT: string;
				public static WIFI_WATCHDOG_BACKGROUND_CHECK_DELAY_MS: string;
				public static WIFI_WATCHDOG_BACKGROUND_CHECK_ENABLED: string;
				public static WIFI_WATCHDOG_BACKGROUND_CHECK_TIMEOUT_MS: string;
				public static WIFI_WATCHDOG_INITIAL_IGNORED_PING_COUNT: string;
				public static WIFI_WATCHDOG_MAX_AP_CHECKS: string;
				public static WIFI_WATCHDOG_ON: string;
				public static WIFI_WATCHDOG_WATCH_LIST: string;
				public static WIFI_WATCHDOG_PING_COUNT: string;
				public static WIFI_WATCHDOG_PING_DELAY_MS: string;
				public static WIFI_WATCHDOG_PING_TIMEOUT_MS: string;
				public static WIFI_MAX_DHCP_RETRY_COUNT: string;
				public static WIFI_MOBILE_DATA_TRANSITION_WAKELOCK_TIMEOUT_MS: string;
				public static BACKGROUND_DATA: string;
				public static ALLOWED_GEOLOCATION_ORIGINS: string;
				public static getFloat(param0: android.content.ContentResolver, param1: string): number;
				public static isLocationProviderEnabled(param0: android.content.ContentResolver, param1: string): boolean;
				public static getLong(param0: android.content.ContentResolver, param1: string, param2: number): number;
				public static setLocationProviderEnabled(param0: android.content.ContentResolver, param1: string, param2: boolean): void;
				public static putString(param0: android.content.ContentResolver, param1: android.net.Uri, param2: string, param3: string): boolean;
				public static getUriFor(param0: android.net.Uri, param1: string): android.net.Uri;
				public static getString(param0: android.content.ContentResolver, param1: string): string;
				public static getFloat(param0: android.content.ContentResolver, param1: string, param2: number): number;
				public constructor();
				public static getUriFor(param0: string): android.net.Uri;
				public static putInt(param0: android.content.ContentResolver, param1: string, param2: number): boolean;
				public static getLong(param0: android.content.ContentResolver, param1: string): number;
				public static putFloat(param0: android.content.ContentResolver, param1: string, param2: number): boolean;
				public static getInt(param0: android.content.ContentResolver, param1: string, param2: number): number;
				public static putLong(param0: android.content.ContentResolver, param1: string, param2: number): boolean;
				public static getInt(param0: android.content.ContentResolver, param1: string): number;
				public static putString(param0: android.content.ContentResolver, param1: string, param2: string): boolean;
			}
			export class SettingNotFoundException extends android.util.AndroidException {
				public static class: java.lang.Class<android.provider.Settings.SettingNotFoundException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Exception);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
			export class System extends android.provider.Settings.NameValueTable {
				public static class: java.lang.Class<android.provider.Settings.System>;
				public static SYS_PROP_SETTING_VERSION: string;
				public static CONTENT_URI: android.net.Uri;
				public static STAY_ON_WHILE_PLUGGED_IN: string;
				public static END_BUTTON_BEHAVIOR: string;
				public static AIRPLANE_MODE_ON: string;
				public static RADIO_BLUETOOTH: string;
				public static RADIO_WIFI: string;
				public static RADIO_CELL: string;
				public static RADIO_NFC: string;
				public static AIRPLANE_MODE_RADIOS: string;
				public static WIFI_SLEEP_POLICY: string;
				public static WIFI_SLEEP_POLICY_DEFAULT: number;
				public static WIFI_SLEEP_POLICY_NEVER_WHILE_PLUGGED: number;
				public static WIFI_SLEEP_POLICY_NEVER: number;
				public static MODE_RINGER: string;
				public static WIFI_USE_STATIC_IP: string;
				public static WIFI_STATIC_IP: string;
				public static WIFI_STATIC_GATEWAY: string;
				public static WIFI_STATIC_NETMASK: string;
				public static WIFI_STATIC_DNS1: string;
				public static WIFI_STATIC_DNS2: string;
				public static BLUETOOTH_DISCOVERABILITY: string;
				public static BLUETOOTH_DISCOVERABILITY_TIMEOUT: string;
				public static LOCK_PATTERN_ENABLED: string;
				public static LOCK_PATTERN_VISIBLE: string;
				public static LOCK_PATTERN_TACTILE_FEEDBACK_ENABLED: string;
				public static NEXT_ALARM_FORMATTED: string;
				public static FONT_SCALE: string;
				public static DEBUG_APP: string;
				public static WAIT_FOR_DEBUGGER: string;
				public static DIM_SCREEN: string;
				public static SCREEN_OFF_TIMEOUT: string;
				public static SCREEN_BRIGHTNESS: string;
				public static SCREEN_BRIGHTNESS_MODE: string;
				public static SCREEN_BRIGHTNESS_MODE_MANUAL: number;
				public static SCREEN_BRIGHTNESS_MODE_AUTOMATIC: number;
				public static SHOW_PROCESSES: string;
				public static ALWAYS_FINISH_ACTIVITIES: string;
				public static MODE_RINGER_STREAMS_AFFECTED: string;
				public static MUTE_STREAMS_AFFECTED: string;
				public static VIBRATE_ON: string;
				public static VOLUME_RING: string;
				public static VOLUME_SYSTEM: string;
				public static VOLUME_VOICE: string;
				public static VOLUME_MUSIC: string;
				public static VOLUME_ALARM: string;
				public static VOLUME_NOTIFICATION: string;
				public static VOLUME_BLUETOOTH_SCO: string;
				public static VOLUME_SETTINGS: native.Array<string>;
				public static APPEND_FOR_LAST_AUDIBLE: string;
				public static RINGTONE: string;
				public static DEFAULT_RINGTONE_URI: android.net.Uri;
				public static NOTIFICATION_SOUND: string;
				public static DEFAULT_NOTIFICATION_URI: android.net.Uri;
				public static ALARM_ALERT: string;
				public static DEFAULT_ALARM_ALERT_URI: android.net.Uri;
				public static TEXT_AUTO_REPLACE: string;
				public static TEXT_AUTO_CAPS: string;
				public static TEXT_AUTO_PUNCTUATE: string;
				public static TEXT_SHOW_PASSWORD: string;
				public static SHOW_GTALK_SERVICE_STATUS: string;
				public static WALLPAPER_ACTIVITY: string;
				public static AUTO_TIME: string;
				public static AUTO_TIME_ZONE: string;
				public static TIME_12_24: string;
				public static DATE_FORMAT: string;
				public static SETUP_WIZARD_HAS_RUN: string;
				public static WINDOW_ANIMATION_SCALE: string;
				public static TRANSITION_ANIMATION_SCALE: string;
				public static ANIMATOR_DURATION_SCALE: string;
				public static ACCELEROMETER_ROTATION: string;
				public static USER_ROTATION: string;
				public static DTMF_TONE_WHEN_DIALING: string;
				public static SOUND_EFFECTS_ENABLED: string;
				public static HAPTIC_FEEDBACK_ENABLED: string;
				public static SHOW_WEB_SUGGESTIONS: string;
				public static ADB_ENABLED: string;
				public static ANDROID_ID: string;
				public static BLUETOOTH_ON: string;
				public static DATA_ROAMING: string;
				public static DEVICE_PROVISIONED: string;
				public static HTTP_PROXY: string;
				public static INSTALL_NON_MARKET_APPS: string;
				public static LOCATION_PROVIDERS_ALLOWED: string;
				public static LOGGING_ID: string;
				public static NETWORK_PREFERENCE: string;
				public static PARENTAL_CONTROL_ENABLED: string;
				public static PARENTAL_CONTROL_LAST_UPDATE: string;
				public static PARENTAL_CONTROL_REDIRECT_URL: string;
				public static SETTINGS_CLASSNAME: string;
				public static USB_MASS_STORAGE_ENABLED: string;
				public static USE_GOOGLE_MAIL: string;
				public static WIFI_MAX_DHCP_RETRY_COUNT: string;
				public static WIFI_MOBILE_DATA_TRANSITION_WAKELOCK_TIMEOUT_MS: string;
				public static WIFI_NETWORKS_AVAILABLE_NOTIFICATION_ON: string;
				public static WIFI_NETWORKS_AVAILABLE_REPEAT_DELAY: string;
				public static WIFI_NUM_OPEN_NETWORKS_KEPT: string;
				public static WIFI_ON: string;
				public static WIFI_WATCHDOG_ACCEPTABLE_PACKET_LOSS_PERCENTAGE: string;
				public static WIFI_WATCHDOG_AP_COUNT: string;
				public static WIFI_WATCHDOG_BACKGROUND_CHECK_DELAY_MS: string;
				public static WIFI_WATCHDOG_BACKGROUND_CHECK_ENABLED: string;
				public static WIFI_WATCHDOG_BACKGROUND_CHECK_TIMEOUT_MS: string;
				public static WIFI_WATCHDOG_INITIAL_IGNORED_PING_COUNT: string;
				public static WIFI_WATCHDOG_MAX_AP_CHECKS: string;
				public static WIFI_WATCHDOG_ON: string;
				public static WIFI_WATCHDOG_PING_COUNT: string;
				public static WIFI_WATCHDOG_PING_DELAY_MS: string;
				public static WIFI_WATCHDOG_PING_TIMEOUT_MS: string;
				public static getFloat(param0: android.content.ContentResolver, param1: string): number;
				public static getLong(param0: android.content.ContentResolver, param1: string, param2: number): number;
				/** @deprecated */
				public static setShowGTalkServiceStatus(param0: android.content.ContentResolver, param1: boolean): void;
				public static putString(param0: android.content.ContentResolver, param1: android.net.Uri, param2: string, param3: string): boolean;
				/** @deprecated */
				public static getShowGTalkServiceStatus(param0: android.content.ContentResolver): boolean;
				public static getUriFor(param0: android.net.Uri, param1: string): android.net.Uri;
				public static putConfiguration(param0: android.content.ContentResolver, param1: android.content.res.Configuration): boolean;
				public static getString(param0: android.content.ContentResolver, param1: string): string;
				public static getFloat(param0: android.content.ContentResolver, param1: string, param2: number): number;
				public constructor();
				public static getConfiguration(param0: android.content.ContentResolver, param1: android.content.res.Configuration): void;
				public static getUriFor(param0: string): android.net.Uri;
				public static putInt(param0: android.content.ContentResolver, param1: string, param2: number): boolean;
				public static getLong(param0: android.content.ContentResolver, param1: string): number;
				public static putFloat(param0: android.content.ContentResolver, param1: string, param2: number): boolean;
				public static getInt(param0: android.content.ContentResolver, param1: string, param2: number): number;
				public static putLong(param0: android.content.ContentResolver, param1: string, param2: number): boolean;
				public static getInt(param0: android.content.ContentResolver, param1: string): number;
				public static putString(param0: android.content.ContentResolver, param1: string, param2: string): boolean;
			}
		}
	}
}

declare module android {
	export module provider {
		export class SyncStateContract extends java.lang.Object {
			public static class: java.lang.Class<android.provider.SyncStateContract>;
			public constructor();
		}
		export module SyncStateContract {
			export class Columns extends java.lang.Object implements android.provider.BaseColumns {
				public static class: java.lang.Class<android.provider.SyncStateContract.Columns>;
				/**
				 * Constructs a new instance of the android.provider.SyncStateContract$Columns interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
				public static ACCOUNT_NAME: string;
				public static _COUNT: string;
				public static ACCOUNT_TYPE: string;
				public static DATA: string;
				public static _ID: string;
			}
			export class Constants extends java.lang.Object implements android.provider.SyncStateContract.Columns {
				public static class: java.lang.Class<android.provider.SyncStateContract.Constants>;
				public static CONTENT_DIRECTORY: string;
				public constructor();
			}
			export class Helpers extends java.lang.Object {
				public static class: java.lang.Class<android.provider.SyncStateContract.Helpers>;
				public static insert(param0: android.content.ContentProviderClient, param1: android.net.Uri, param2: android.accounts.Account, param3: native.Array<number>): android.net.Uri;
				public static newUpdateOperation(param0: android.net.Uri, param1: native.Array<number>): android.content.ContentProviderOperation;
				public static get(param0: android.content.ContentProviderClient, param1: android.net.Uri, param2: android.accounts.Account): native.Array<number>;
				public static set(param0: android.content.ContentProviderClient, param1: android.net.Uri, param2: android.accounts.Account, param3: native.Array<number>): void;
				public static newSetOperation(param0: android.net.Uri, param1: android.accounts.Account, param2: native.Array<number>): android.content.ContentProviderOperation;
				public static update(param0: android.content.ContentProviderClient, param1: android.net.Uri, param2: native.Array<number>): void;
				public static getWithUri(param0: android.content.ContentProviderClient, param1: android.net.Uri, param2: android.accounts.Account): android.util.Pair<android.net.Uri,native.Array<number>>;
				public constructor();
			}
		}
	}
}

declare module android {
	export module provider {
		export class UserDictionary extends java.lang.Object {
			public static class: java.lang.Class<android.provider.UserDictionary>;
			public static AUTHORITY: string;
			public static CONTENT_URI: android.net.Uri;
			public constructor();
		}
		export module UserDictionary {
			export class Words extends java.lang.Object implements android.provider.BaseColumns {
				public static class: java.lang.Class<android.provider.UserDictionary.Words>;
				public static CONTENT_URI: android.net.Uri;
				public static CONTENT_TYPE: string;
				public static CONTENT_ITEM_TYPE: string;
				public static _ID: string;
				public static WORD: string;
				public static FREQUENCY: string;
				public static LOCALE: string;
				public static APP_ID: string;
				public static SHORTCUT: string;
				public static LOCALE_TYPE_ALL: number;
				public static LOCALE_TYPE_CURRENT: number;
				public static DEFAULT_SORT_ORDER: string;
				/** @deprecated */
				public static addWord(param0: android.content.Context, param1: string, param2: number, param3: number): void;
				public static addWord(param0: android.content.Context, param1: string, param2: number, param3: string, param4: java.util.Locale): void;
				public constructor();
			}
		}
	}
}

declare module android {
	export module provider {
		export class VoicemailContract extends java.lang.Object {
			public static class: java.lang.Class<android.provider.VoicemailContract>;
			public static AUTHORITY: string;
			public static PARAM_KEY_SOURCE_PACKAGE: string;
			public static ACTION_NEW_VOICEMAIL: string;
			public static ACTION_FETCH_VOICEMAIL: string;
			public static EXTRA_SELF_CHANGE: string;
		}
		export module VoicemailContract {
			export class Status extends java.lang.Object implements android.provider.BaseColumns {
				public static class: java.lang.Class<android.provider.VoicemailContract.Status>;
				public static CONTENT_URI: android.net.Uri;
				public static DIR_TYPE: string;
				public static ITEM_TYPE: string;
				public static SOURCE_PACKAGE: string;
				public static SETTINGS_URI: string;
				public static VOICEMAIL_ACCESS_URI: string;
				public static CONFIGURATION_STATE: string;
				public static CONFIGURATION_STATE_OK: number;
				public static CONFIGURATION_STATE_NOT_CONFIGURED: number;
				public static CONFIGURATION_STATE_CAN_BE_CONFIGURED: number;
				public static DATA_CHANNEL_STATE: string;
				public static DATA_CHANNEL_STATE_OK: number;
				public static DATA_CHANNEL_STATE_NO_CONNECTION: number;
				public static NOTIFICATION_CHANNEL_STATE: string;
				public static NOTIFICATION_CHANNEL_STATE_OK: number;
				public static NOTIFICATION_CHANNEL_STATE_NO_CONNECTION: number;
				public static NOTIFICATION_CHANNEL_STATE_MESSAGE_WAITING: number;
				public static buildSourceUri(param0: string): android.net.Uri;
			}
			export class Voicemails extends java.lang.Object implements android.provider.BaseColumns, android.provider.OpenableColumns {
				public static class: java.lang.Class<android.provider.VoicemailContract.Voicemails>;
				public static CONTENT_URI: android.net.Uri;
				public static DIR_TYPE: string;
				public static ITEM_TYPE: string;
				public static NUMBER: string;
				public static DATE: string;
				public static DURATION: string;
				public static IS_READ: string;
				public static SOURCE_PACKAGE: string;
				public static SOURCE_DATA: string;
				public static HAS_CONTENT: string;
				public static MIME_TYPE: string;
				public static buildSourceUri(param0: string): android.net.Uri;
			}
		}
	}
}

declare module android {
	export module renderscript {
		export class Allocation extends android.renderscript.BaseObj {
			public static class: java.lang.Class<android.renderscript.Allocation>;
			public static USAGE_SCRIPT: number;
			public static USAGE_GRAPHICS_TEXTURE: number;
			public static USAGE_GRAPHICS_VERTEX: number;
			public static USAGE_GRAPHICS_CONSTANTS: number;
			public static USAGE_GRAPHICS_RENDER_TARGET: number;
			public static USAGE_IO_INPUT: number;
			public static USAGE_IO_OUTPUT: number;
			public static USAGE_SHARED: number;
			public copyFromUnchecked(param0: native.Array<number>): void;
			/** @deprecated */
			public resize(param0: number): void;
			public copyFrom(param0: native.Array<number>): void;
			public copy1DRangeFrom(param0: number, param1: number, param2: native.Array<number>): void;
			public static createCubemapFromBitmap(param0: android.renderscript.RenderScript, param1: android.graphics.Bitmap): android.renderscript.Allocation;
			public static createFromBitmapResource(param0: android.renderscript.RenderScript, param1: android.content.res.Resources, param2: number, param3: android.renderscript.Allocation.MipmapControl, param4: number): android.renderscript.Allocation;
			public copy1DRangeFromUnchecked(param0: number, param1: number, param2: native.Array<number>): void;
			public setSurface(param0: android.view.Surface): void;
			public copyTo(param0: native.Array<number>): void;
			public getUsage(): number;
			public static createFromString(param0: android.renderscript.RenderScript, param1: string, param2: number): android.renderscript.Allocation;
			public copy2DRangeFrom(param0: number, param1: number, param2: android.graphics.Bitmap): void;
			public syncAll(param0: number): void;
			public ioReceive(): void;
			public getBytesSize(): number;
			public static createCubemapFromBitmap(param0: android.renderscript.RenderScript, param1: android.graphics.Bitmap, param2: android.renderscript.Allocation.MipmapControl, param3: number): android.renderscript.Allocation;
			public static createSized(param0: android.renderscript.RenderScript, param1: android.renderscript.Element, param2: number, param3: number): android.renderscript.Allocation;
			public copyFrom(param0: android.graphics.Bitmap): void;
			public copyFrom(param0: native.Array<android.renderscript.BaseObj>): void;
			public copyFrom(param0: android.renderscript.Allocation): void;
			public static createCubemapFromCubeFaces(param0: android.renderscript.RenderScript, param1: android.graphics.Bitmap, param2: android.graphics.Bitmap, param3: android.graphics.Bitmap, param4: android.graphics.Bitmap, param5: android.graphics.Bitmap, param6: android.graphics.Bitmap, param7: android.renderscript.Allocation.MipmapControl, param8: number): android.renderscript.Allocation;
			public setFromFieldPacker(param0: number, param1: android.renderscript.FieldPacker): void;
			public static createTyped(param0: android.renderscript.RenderScript, param1: android.renderscript.Type): android.renderscript.Allocation;
			public static createSized(param0: android.renderscript.RenderScript, param1: android.renderscript.Element, param2: number): android.renderscript.Allocation;
			public getType(): android.renderscript.Type;
			public ioSend(): void;
			public getSurface(): android.view.Surface;
			public static createTyped(param0: android.renderscript.RenderScript, param1: android.renderscript.Type, param2: number): android.renderscript.Allocation;
			public copy2DRangeFrom(param0: number, param1: number, param2: number, param3: number, param4: android.renderscript.Allocation, param5: number, param6: number): void;
			public static createCubemapFromCubeFaces(param0: android.renderscript.RenderScript, param1: android.graphics.Bitmap, param2: android.graphics.Bitmap, param3: android.graphics.Bitmap, param4: android.graphics.Bitmap, param5: android.graphics.Bitmap, param6: android.graphics.Bitmap): android.renderscript.Allocation;
			public static createFromBitmapResource(param0: android.renderscript.RenderScript, param1: android.content.res.Resources, param2: number): android.renderscript.Allocation;
			public copy1DRangeFrom(param0: number, param1: number, param2: android.renderscript.Allocation, param3: number): void;
			public static createFromBitmap(param0: android.renderscript.RenderScript, param1: android.graphics.Bitmap, param2: android.renderscript.Allocation.MipmapControl, param3: number): android.renderscript.Allocation;
			public copy2DRangeFrom(param0: number, param1: number, param2: number, param3: number, param4: native.Array<number>): void;
			public static createTyped(param0: android.renderscript.RenderScript, param1: android.renderscript.Type, param2: android.renderscript.Allocation.MipmapControl, param3: number): android.renderscript.Allocation;
			public static createFromBitmap(param0: android.renderscript.RenderScript, param1: android.graphics.Bitmap): android.renderscript.Allocation;
			public getElement(): android.renderscript.Element;
			public setFromFieldPacker(param0: number, param1: number, param2: android.renderscript.FieldPacker): void;
			public generateMipmaps(): void;
			public copyTo(param0: android.graphics.Bitmap): void;
		}
		export module Allocation {
			export class MipmapControl {
				public static class: java.lang.Class<android.renderscript.Allocation.MipmapControl>;
				public static MIPMAP_FULL: android.renderscript.Allocation.MipmapControl;
				public static MIPMAP_NONE: android.renderscript.Allocation.MipmapControl;
				public static MIPMAP_ON_SYNC_TO_TEXTURE: android.renderscript.Allocation.MipmapControl;
				public static values(): native.Array<android.renderscript.Allocation.MipmapControl>;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
				public static valueOf(param0: string): android.renderscript.Allocation.MipmapControl;
			}
		}
	}
}

declare module android {
	export module renderscript {
		export class AllocationAdapter extends android.renderscript.Allocation {
			public static class: java.lang.Class<android.renderscript.AllocationAdapter>;
			/** @deprecated */
			public resize(param0: number): void;
			public setFace(param0: android.renderscript.Type.CubemapFace): void;
			public setY(param0: number): void;
			public setZ(param0: number): void;
			public static create1D(param0: android.renderscript.RenderScript, param1: android.renderscript.Allocation): android.renderscript.AllocationAdapter;
			public setLOD(param0: number): void;
			public static create2D(param0: android.renderscript.RenderScript, param1: android.renderscript.Allocation): android.renderscript.AllocationAdapter;
			public resize(param0: number): void;
		}
	}
}

declare module android {
	export module renderscript {
		export class BaseObj extends java.lang.Object {
			public static class: java.lang.Class<android.renderscript.BaseObj>;
			public equals(param0: any): boolean;
			public getName(): string;
			public destroy(): void;
			public finalize(): void;
			public setName(param0: string): void;
			public hashCode(): number;
		}
	}
}

declare module android {
	export module renderscript {
		export class Byte2 extends java.lang.Object {
			public static class: java.lang.Class<android.renderscript.Byte2>;
			public x: number;
			public y: number;
			public constructor();
			public constructor(param0: number, param1: number);
		}
	}
}

declare module android {
	export module renderscript {
		export class Byte3 extends java.lang.Object {
			public static class: java.lang.Class<android.renderscript.Byte3>;
			public x: number;
			public y: number;
			public z: number;
			public constructor(param0: number, param1: number, param2: number);
			public constructor();
		}
	}
}

declare module android {
	export module renderscript {
		export class Byte4 extends java.lang.Object {
			public static class: java.lang.Class<android.renderscript.Byte4>;
			public x: number;
			public y: number;
			public z: number;
			public w: number;
			public constructor();
			public constructor(param0: number, param1: number, param2: number, param3: number);
		}
	}
}

declare module android {
	export module renderscript {
		export class Double2 extends java.lang.Object {
			public static class: java.lang.Class<android.renderscript.Double2>;
			public x: number;
			public y: number;
			public constructor();
			public constructor(param0: number, param1: number);
		}
	}
}

declare module android {
	export module renderscript {
		export class Double3 extends java.lang.Object {
			public static class: java.lang.Class<android.renderscript.Double3>;
			public x: number;
			public y: number;
			public z: number;
			public constructor(param0: number, param1: number, param2: number);
			public constructor();
		}
	}
}

declare module android {
	export module renderscript {
		export class Double4 extends java.lang.Object {
			public static class: java.lang.Class<android.renderscript.Double4>;
			public x: number;
			public y: number;
			public z: number;
			public w: number;
			public constructor();
			public constructor(param0: number, param1: number, param2: number, param3: number);
		}
	}
}

declare module android {
	export module renderscript {
		export class Element extends android.renderscript.BaseObj {
			public static class: java.lang.Class<android.renderscript.Element>;
			public static I32_2(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static I8(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static U64(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static U32(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static MESH(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static PROGRAM_RASTER(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static F32(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static PROGRAM_FRAGMENT(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static I16_2(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public getVectorSize(): number;
			public static F64(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public getDataKind(): android.renderscript.Element.DataKind;
			public static F64_2(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static I32_3(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static F64_3(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static PROGRAM_STORE(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public getBytesSize(): number;
			public static U32_2(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static U64_2(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static I16_3(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static I16(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static I32_4(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static I64_4(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static A_8(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public isComplex(): boolean;
			public static FONT(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static MATRIX_4X4(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public getSubElementArraySize(param0: number): number;
			public static MATRIX_2X2(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static U64_3(param0: android.renderscript.RenderScript): android.renderscript.Element;
			/** @deprecated */
			public static MATRIX4X4(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static U16_4(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static RGB_888(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static U32_4(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static U64_4(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static I16_4(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static RGBA_8888(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static U16(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static U16_3(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static I8_2(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static I64_2(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public getSubElementName(param0: number): string;
			public static U8_4(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static SCRIPT(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static F32_2(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static U32_3(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static U16_2(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static I64_3(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static createVector(param0: android.renderscript.RenderScript, param1: android.renderscript.Element.DataType, param2: number): android.renderscript.Element;
			public static F32_3(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static createPixel(param0: android.renderscript.RenderScript, param1: android.renderscript.Element.DataType, param2: android.renderscript.Element.DataKind): android.renderscript.Element;
			public static I32(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static RGB_565(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static ALLOCATION(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public getSubElementOffsetBytes(param0: number): number;
			public static U8(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static U8_2(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static I8_4(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static I64(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static PROGRAM_VERTEX(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public getSubElementCount(): number;
			public static F32_4(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static F64_4(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static BOOLEAN(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static RGBA_4444(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static MATRIX_3X3(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public isCompatible(param0: android.renderscript.Element): boolean;
			public static I8_3(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static ELEMENT(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public getDataType(): android.renderscript.Element.DataType;
			public static U8_3(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static SAMPLER(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static TYPE(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public static RGBA_5551(param0: android.renderscript.RenderScript): android.renderscript.Element;
			public getSubElement(param0: number): android.renderscript.Element;
		}
		export module Element {
			export class Builder extends java.lang.Object {
				public static class: java.lang.Class<android.renderscript.Element.Builder>;
				public constructor(param0: android.renderscript.RenderScript);
				public add(param0: android.renderscript.Element, param1: string): android.renderscript.Element.Builder;
				public create(): android.renderscript.Element;
				public add(param0: android.renderscript.Element, param1: string, param2: number): android.renderscript.Element.Builder;
			}
			export class DataKind {
				public static class: java.lang.Class<android.renderscript.Element.DataKind>;
				public static PIXEL_A: android.renderscript.Element.DataKind;
				public static PIXEL_DEPTH: android.renderscript.Element.DataKind;
				public static PIXEL_L: android.renderscript.Element.DataKind;
				public static PIXEL_LA: android.renderscript.Element.DataKind;
				public static PIXEL_RGB: android.renderscript.Element.DataKind;
				public static PIXEL_RGBA: android.renderscript.Element.DataKind;
				public static PIXEL_YUV: android.renderscript.Element.DataKind;
				public static USER: android.renderscript.Element.DataKind;
				public static values(): native.Array<android.renderscript.Element.DataKind>;
				public static valueOf(param0: string): android.renderscript.Element.DataKind;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			}
			export class DataType {
				public static class: java.lang.Class<android.renderscript.Element.DataType>;
				public static BOOLEAN: android.renderscript.Element.DataType;
				public static FLOAT_32: android.renderscript.Element.DataType;
				public static FLOAT_64: android.renderscript.Element.DataType;
				public static MATRIX_2X2: android.renderscript.Element.DataType;
				public static MATRIX_3X3: android.renderscript.Element.DataType;
				public static MATRIX_4X4: android.renderscript.Element.DataType;
				public static NONE: android.renderscript.Element.DataType;
				public static RS_ALLOCATION: android.renderscript.Element.DataType;
				public static RS_ELEMENT: android.renderscript.Element.DataType;
				public static RS_FONT: android.renderscript.Element.DataType;
				public static RS_MESH: android.renderscript.Element.DataType;
				public static RS_PROGRAM_FRAGMENT: android.renderscript.Element.DataType;
				public static RS_PROGRAM_RASTER: android.renderscript.Element.DataType;
				public static RS_PROGRAM_STORE: android.renderscript.Element.DataType;
				public static RS_PROGRAM_VERTEX: android.renderscript.Element.DataType;
				public static RS_SAMPLER: android.renderscript.Element.DataType;
				public static RS_SCRIPT: android.renderscript.Element.DataType;
				public static RS_TYPE: android.renderscript.Element.DataType;
				public static SIGNED_16: android.renderscript.Element.DataType;
				public static SIGNED_32: android.renderscript.Element.DataType;
				public static SIGNED_64: android.renderscript.Element.DataType;
				public static SIGNED_8: android.renderscript.Element.DataType;
				public static UNSIGNED_16: android.renderscript.Element.DataType;
				public static UNSIGNED_32: android.renderscript.Element.DataType;
				public static UNSIGNED_4_4_4_4: android.renderscript.Element.DataType;
				public static UNSIGNED_5_5_5_1: android.renderscript.Element.DataType;
				public static UNSIGNED_5_6_5: android.renderscript.Element.DataType;
				public static UNSIGNED_64: android.renderscript.Element.DataType;
				public static UNSIGNED_8: android.renderscript.Element.DataType;
				public static valueOf(param0: string): android.renderscript.Element.DataType;
				public static values(): native.Array<android.renderscript.Element.DataType>;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			}
		}
	}
}

declare module android {
	export module renderscript {
		export class FieldPacker extends java.lang.Object {
			public static class: java.lang.Class<android.renderscript.FieldPacker>;
			public addF64(param0: android.renderscript.Double3): void;
			public addU32(param0: android.renderscript.Long4): void;
			public subI8(): number;
			public addI32(param0: number): void;
			public addI32(param0: android.renderscript.Int2): void;
			public addI8(param0: android.renderscript.Byte3): void;
			public addMatrix(param0: android.renderscript.Matrix2f): void;
			public subFloat2(): android.renderscript.Float2;
			public subMatrix4f(): android.renderscript.Matrix4f;
			public subDouble3(): android.renderscript.Double3;
			public subBoolean(): boolean;
			public addF32(param0: android.renderscript.Float4): void;
			public addU64(param0: android.renderscript.Long2): void;
			public getData(): native.Array<number>;
			public addU32(param0: android.renderscript.Long2): void;
			public addI32(param0: android.renderscript.Int4): void;
			public addU64(param0: android.renderscript.Long4): void;
			public addF32(param0: android.renderscript.Float2): void;
			public addU16(param0: android.renderscript.Int2): void;
			public subShort3(): android.renderscript.Short3;
			public constructor(param0: number);
			public addU16(param0: android.renderscript.Int3): void;
			public align(param0: number): void;
			public constructor(param0: native.Array<number>);
			public addI64(param0: number): void;
			public subF32(): number;
			public subShort2(): android.renderscript.Short2;
			public subDouble2(): android.renderscript.Double2;
			public addU8(param0: android.renderscript.Short3): void;
			public addMatrix(param0: android.renderscript.Matrix4f): void;
			public addI64(param0: android.renderscript.Long3): void;
			public addI16(param0: android.renderscript.Short3): void;
			public subMatrix3f(): android.renderscript.Matrix3f;
			public addU16(param0: number): void;
			public subFloat4(): android.renderscript.Float4;
			public subI32(): number;
			public subLong2(): android.renderscript.Long2;
			public addI8(param0: number): void;
			public addI8(param0: android.renderscript.Byte2): void;
			public subByte4(): android.renderscript.Byte4;
			public addI8(param0: android.renderscript.Byte4): void;
			public subFloat3(): android.renderscript.Float3;
			public subInt2(): android.renderscript.Int2;
			public addF64(param0: android.renderscript.Double2): void;
			public skip(param0: number): void;
			public subInt3(): android.renderscript.Int3;
			public subI64(): number;
			public addBoolean(param0: boolean): void;
			public subLong4(): android.renderscript.Long4;
			public addF32(param0: number): void;
			public reset(param0: number): void;
			public addI16(param0: number): void;
			public addF32(param0: android.renderscript.Float3): void;
			public addU64(param0: android.renderscript.Long3): void;
			public subalign(param0: number): void;
			public subMatrix2f(): android.renderscript.Matrix2f;
			public reset(): void;
			public addU32(param0: number): void;
			public addI32(param0: android.renderscript.Int3): void;
			public subShort4(): android.renderscript.Short4;
			public addU32(param0: android.renderscript.Long3): void;
			public subInt4(): android.renderscript.Int4;
			public addF64(param0: android.renderscript.Double4): void;
			public addMatrix(param0: android.renderscript.Matrix3f): void;
			public subI16(): number;
			public subByte2(): android.renderscript.Byte2;
			public subLong3(): android.renderscript.Long3;
			public addF64(param0: number): void;
			public addU16(param0: android.renderscript.Int4): void;
			public addU8(param0: number): void;
			public subByte3(): android.renderscript.Byte3;
			public addU8(param0: android.renderscript.Short2): void;
			public addI64(param0: android.renderscript.Long4): void;
			public addI16(param0: android.renderscript.Short4): void;
			public addU64(param0: number): void;
			public addU8(param0: android.renderscript.Short4): void;
			public addI64(param0: android.renderscript.Long2): void;
			public subDouble4(): android.renderscript.Double4;
			public addI16(param0: android.renderscript.Short2): void;
			public addObj(param0: android.renderscript.BaseObj): void;
			public subF64(): number;
		}
	}
}

declare module android {
	export module renderscript {
		export class Float2 extends java.lang.Object {
			public static class: java.lang.Class<android.renderscript.Float2>;
			public x: number;
			public y: number;
			public constructor();
			public constructor(param0: number, param1: number);
		}
	}
}

declare module android {
	export module renderscript {
		export class Float3 extends java.lang.Object {
			public static class: java.lang.Class<android.renderscript.Float3>;
			public x: number;
			public y: number;
			public z: number;
			public constructor(param0: number, param1: number, param2: number);
			public constructor();
		}
	}
}

declare module android {
	export module renderscript {
		export class Float4 extends java.lang.Object {
			public static class: java.lang.Class<android.renderscript.Float4>;
			public x: number;
			public y: number;
			public z: number;
			public w: number;
			public constructor();
			public constructor(param0: number, param1: number, param2: number, param3: number);
		}
	}
}

declare module android {
	export module renderscript {
		export class Int2 extends java.lang.Object {
			public static class: java.lang.Class<android.renderscript.Int2>;
			public x: number;
			public y: number;
			public constructor();
			public constructor(param0: number, param1: number);
		}
	}
}

declare module android {
	export module renderscript {
		export class Int3 extends java.lang.Object {
			public static class: java.lang.Class<android.renderscript.Int3>;
			public x: number;
			public y: number;
			public z: number;
			public constructor(param0: number, param1: number, param2: number);
			public constructor();
		}
	}
}

declare module android {
	export module renderscript {
		export class Int4 extends java.lang.Object {
			public static class: java.lang.Class<android.renderscript.Int4>;
			public x: number;
			public y: number;
			public z: number;
			public w: number;
			public constructor();
			public constructor(param0: number, param1: number, param2: number, param3: number);
		}
	}
}

declare module android {
	export module renderscript {
		export class Long2 extends java.lang.Object {
			public static class: java.lang.Class<android.renderscript.Long2>;
			public x: number;
			public y: number;
			public constructor();
			public constructor(param0: number, param1: number);
		}
	}
}

declare module android {
	export module renderscript {
		export class Long3 extends java.lang.Object {
			public static class: java.lang.Class<android.renderscript.Long3>;
			public x: number;
			public y: number;
			public z: number;
			public constructor(param0: number, param1: number, param2: number);
			public constructor();
		}
	}
}

declare module android {
	export module renderscript {
		export class Long4 extends java.lang.Object {
			public static class: java.lang.Class<android.renderscript.Long4>;
			public x: number;
			public y: number;
			public z: number;
			public w: number;
			public constructor();
			public constructor(param0: number, param1: number, param2: number, param3: number);
		}
	}
}

declare module android {
	export module renderscript {
		export class Matrix2f extends java.lang.Object {
			public static class: java.lang.Class<android.renderscript.Matrix2f>;
			public rotate(param0: number): void;
			public loadScale(param0: number, param1: number): void;
			public multiply(param0: android.renderscript.Matrix2f): void;
			public constructor();
			public constructor(param0: native.Array<number>);
			public getArray(): native.Array<number>;
			public load(param0: android.renderscript.Matrix2f): void;
			public set(param0: number, param1: number, param2: number): void;
			public loadIdentity(): void;
			public loadRotate(param0: number): void;
			public scale(param0: number, param1: number): void;
			public loadMultiply(param0: android.renderscript.Matrix2f, param1: android.renderscript.Matrix2f): void;
			public get(param0: number, param1: number): number;
			public transpose(): void;
		}
	}
}

declare module android {
	export module renderscript {
		export class Matrix3f extends java.lang.Object {
			public static class: java.lang.Class<android.renderscript.Matrix3f>;
			public loadScale(param0: number, param1: number, param2: number): void;
			public rotate(param0: number): void;
			public multiply(param0: android.renderscript.Matrix3f): void;
			public loadScale(param0: number, param1: number): void;
			public load(param0: android.renderscript.Matrix3f): void;
			public loadTranslate(param0: number, param1: number): void;
			public constructor();
			public constructor(param0: native.Array<number>);
			public getArray(): native.Array<number>;
			public loadRotate(param0: number, param1: number, param2: number, param3: number): void;
			public scale(param0: number, param1: number, param2: number): void;
			public set(param0: number, param1: number, param2: number): void;
			public loadIdentity(): void;
			public loadRotate(param0: number): void;
			public loadMultiply(param0: android.renderscript.Matrix3f, param1: android.renderscript.Matrix3f): void;
			public scale(param0: number, param1: number): void;
			public translate(param0: number, param1: number): void;
			public rotate(param0: number, param1: number, param2: number, param3: number): void;
			public get(param0: number, param1: number): number;
			public transpose(): void;
		}
	}
}

declare module android {
	export module renderscript {
		export class Matrix4f extends java.lang.Object {
			public static class: java.lang.Class<android.renderscript.Matrix4f>;
			public loadMultiply(param0: android.renderscript.Matrix4f, param1: android.renderscript.Matrix4f): void;
			public loadOrtho(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): void;
			public inverseTranspose(): boolean;
			public loadScale(param0: number, param1: number, param2: number): void;
			public loadOrthoWindow(param0: number, param1: number): void;
			public constructor();
			public constructor(param0: native.Array<number>);
			public loadProjectionNormalized(param0: number, param1: number): void;
			public getArray(): native.Array<number>;
			public loadRotate(param0: number, param1: number, param2: number, param3: number): void;
			public scale(param0: number, param1: number, param2: number): void;
			public set(param0: number, param1: number, param2: number): void;
			public loadIdentity(): void;
			public multiply(param0: android.renderscript.Matrix4f): void;
			public loadFrustum(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): void;
			public translate(param0: number, param1: number, param2: number): void;
			public load(param0: android.renderscript.Matrix4f): void;
			public loadTranslate(param0: number, param1: number, param2: number): void;
			public loadPerspective(param0: number, param1: number, param2: number, param3: number): void;
			public rotate(param0: number, param1: number, param2: number, param3: number): void;
			public inverse(): boolean;
			public get(param0: number, param1: number): number;
			public transpose(): void;
		}
	}
}

declare module android {
	export module renderscript {
		export class RSDriverException extends android.renderscript.RSRuntimeException {
			public static class: java.lang.Class<android.renderscript.RSDriverException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module android {
	export module renderscript {
		export class RSIllegalArgumentException extends android.renderscript.RSRuntimeException {
			public static class: java.lang.Class<android.renderscript.RSIllegalArgumentException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module android {
	export module renderscript {
		export class RSInvalidStateException extends android.renderscript.RSRuntimeException {
			public static class: java.lang.Class<android.renderscript.RSInvalidStateException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module android {
	export module renderscript {
		export class RSRuntimeException extends java.lang.RuntimeException {
			public static class: java.lang.Class<android.renderscript.RSRuntimeException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module android {
	export module renderscript {
		export class RenderScript extends java.lang.Object {
			public static class: java.lang.Class<android.renderscript.RenderScript>;
			public getMessageHandler(): android.renderscript.RenderScript.RSMessageHandler;
			public sendMessage(param0: number, param1: native.Array<number>): void;
			public setMessageHandler(param0: android.renderscript.RenderScript.RSMessageHandler): void;
			public finish(): void;
			public destroy(): void;
			public setPriority(param0: android.renderscript.RenderScript.Priority): void;
			public getApplicationContext(): android.content.Context;
			public setErrorHandler(param0: android.renderscript.RenderScript.RSErrorHandler): void;
			public getErrorHandler(): android.renderscript.RenderScript.RSErrorHandler;
			public static create(param0: android.content.Context, param1: android.renderscript.RenderScript.ContextType): android.renderscript.RenderScript;
			public static create(param0: android.content.Context): android.renderscript.RenderScript;
			public contextDump(): void;
		}
		export module RenderScript {
			export class ContextType {
				public static class: java.lang.Class<android.renderscript.RenderScript.ContextType>;
				public static DEBUG: android.renderscript.RenderScript.ContextType;
				public static NORMAL: android.renderscript.RenderScript.ContextType;
				public static PROFILE: android.renderscript.RenderScript.ContextType;
				public static values(): native.Array<android.renderscript.RenderScript.ContextType>;
				public static valueOf(param0: string): android.renderscript.RenderScript.ContextType;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			}
			export class Priority {
				public static class: java.lang.Class<android.renderscript.RenderScript.Priority>;
				public static LOW: android.renderscript.RenderScript.Priority;
				public static NORMAL: android.renderscript.RenderScript.Priority;
				public static values(): native.Array<android.renderscript.RenderScript.Priority>;
				public static valueOf(param0: string): android.renderscript.RenderScript.Priority;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			}
			export class RSErrorHandler extends java.lang.Object implements java.lang.Runnable {
				public static class: java.lang.Class<android.renderscript.RenderScript.RSErrorHandler>;
				public mErrorMessage: string;
				public mErrorNum: number;
				public run(): void;
				public constructor();
			}
			export class RSMessageHandler extends java.lang.Object implements java.lang.Runnable {
				public static class: java.lang.Class<android.renderscript.RenderScript.RSMessageHandler>;
				public mData: native.Array<number>;
				public mID: number;
				public mLength: number;
				public run(): void;
				public constructor();
			}
		}
	}
}

declare module android {
	export module renderscript {
		export class Sampler extends android.renderscript.BaseObj {
			public static class: java.lang.Class<android.renderscript.Sampler>;
			public static WRAP_NEAREST(param0: android.renderscript.RenderScript): android.renderscript.Sampler;
			public getMinification(): android.renderscript.Sampler.Value;
			public static CLAMP_LINEAR(param0: android.renderscript.RenderScript): android.renderscript.Sampler;
			public getAnisotropy(): number;
			public getWrapT(): android.renderscript.Sampler.Value;
			public static WRAP_LINEAR_MIP_LINEAR(param0: android.renderscript.RenderScript): android.renderscript.Sampler;
			public static MIRRORED_REPEAT_NEAREST(param0: android.renderscript.RenderScript): android.renderscript.Sampler;
			public static CLAMP_LINEAR_MIP_LINEAR(param0: android.renderscript.RenderScript): android.renderscript.Sampler;
			public static MIRRORED_REPEAT_LINEAR(param0: android.renderscript.RenderScript): android.renderscript.Sampler;
			public static CLAMP_NEAREST(param0: android.renderscript.RenderScript): android.renderscript.Sampler;
			public static WRAP_LINEAR(param0: android.renderscript.RenderScript): android.renderscript.Sampler;
			public getMagnification(): android.renderscript.Sampler.Value;
			public getWrapS(): android.renderscript.Sampler.Value;
			public static MIRRORED_REPEAT_LINEAR_MIP_LINEAR(param0: android.renderscript.RenderScript): android.renderscript.Sampler;
		}
		export module Sampler {
			export class Builder extends java.lang.Object {
				public static class: java.lang.Class<android.renderscript.Sampler.Builder>;
				public constructor(param0: android.renderscript.RenderScript);
				public setMinification(param0: android.renderscript.Sampler.Value): void;
				public setAnisotropy(param0: number): void;
				public setMagnification(param0: android.renderscript.Sampler.Value): void;
				public create(): android.renderscript.Sampler;
				public setWrapT(param0: android.renderscript.Sampler.Value): void;
				public setWrapS(param0: android.renderscript.Sampler.Value): void;
			}
			export class Value {
				public static class: java.lang.Class<android.renderscript.Sampler.Value>;
				public static CLAMP: android.renderscript.Sampler.Value;
				public static LINEAR: android.renderscript.Sampler.Value;
				public static LINEAR_MIP_LINEAR: android.renderscript.Sampler.Value;
				public static LINEAR_MIP_NEAREST: android.renderscript.Sampler.Value;
				public static MIRRORED_REPEAT: android.renderscript.Sampler.Value;
				public static NEAREST: android.renderscript.Sampler.Value;
				public static WRAP: android.renderscript.Sampler.Value;
				public static values(): native.Array<android.renderscript.Sampler.Value>;
				public static valueOf(param0: string): android.renderscript.Sampler.Value;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			}
		}
	}
}

declare module android {
	export module renderscript {
		export class Script extends android.renderscript.BaseObj {
			public static class: java.lang.Class<android.renderscript.Script>;
			public invoke(param0: number, param1: android.renderscript.FieldPacker): void;
			public forEach(param0: number, param1: android.renderscript.Allocation, param2: android.renderscript.Allocation, param3: android.renderscript.FieldPacker, param4: android.renderscript.Script.LaunchOptions): void;
			public forEach(param0: number, param1: android.renderscript.Allocation, param2: android.renderscript.Allocation, param3: android.renderscript.FieldPacker): void;
			public createFieldID(param0: number, param1: android.renderscript.Element): android.renderscript.Script.FieldID;
			public getVarB(param0: number): boolean;
			public setVar(param0: number, param1: android.renderscript.BaseObj): void;
			public setVar(param0: number, param1: android.renderscript.FieldPacker): void;
			public getVarF(param0: number): number;
			public setVar(param0: number, param1: boolean): void;
			public setVar(param0: number, param1: android.renderscript.FieldPacker, param2: android.renderscript.Element, param3: native.Array<number>): void;
			public invoke(param0: number): void;
			public getVarJ(param0: number): number;
			public setVar(param0: number, param1: number): void;
			public setTimeZone(param0: string): void;
			public bindAllocation(param0: android.renderscript.Allocation, param1: number): void;
			public getVarD(param0: number): number;
			public createKernelID(param0: number, param1: number, param2: android.renderscript.Element, param3: android.renderscript.Element): android.renderscript.Script.KernelID;
			public getVarI(param0: number): number;
			public getVarV(param0: number, param1: android.renderscript.FieldPacker): void;
		}
		export module Script {
			export class Builder extends java.lang.Object {
				public static class: java.lang.Class<android.renderscript.Script.Builder>;
			}
			export class FieldBase extends java.lang.Object {
				public static class: java.lang.Class<android.renderscript.Script.FieldBase>;
				public mElement: android.renderscript.Element;
				public mAllocation: android.renderscript.Allocation;
				public getType(): android.renderscript.Type;
				public updateAllocation(): void;
				public init(param0: android.renderscript.RenderScript, param1: number, param2: number): void;
				public getAllocation(): android.renderscript.Allocation;
				public init(param0: android.renderscript.RenderScript, param1: number): void;
				public getElement(): android.renderscript.Element;
				public constructor();
			}
			export class FieldID extends android.renderscript.BaseObj {
				public static class: java.lang.Class<android.renderscript.Script.FieldID>;
			}
			export class KernelID extends android.renderscript.BaseObj {
				public static class: java.lang.Class<android.renderscript.Script.KernelID>;
			}
			export class LaunchOptions extends java.lang.Object {
				public static class: java.lang.Class<android.renderscript.Script.LaunchOptions>;
				public setX(param0: number, param1: number): android.renderscript.Script.LaunchOptions;
				public getZStart(): number;
				public getYStart(): number;
				public getYEnd(): number;
				public getXEnd(): number;
				public getZEnd(): number;
				public setY(param0: number, param1: number): android.renderscript.Script.LaunchOptions;
				public getXStart(): number;
				public constructor();
				public setZ(param0: number, param1: number): android.renderscript.Script.LaunchOptions;
			}
		}
	}
}

declare module android {
	export module renderscript {
		export class ScriptC extends android.renderscript.Script {
			public static class: java.lang.Class<android.renderscript.ScriptC>;
			public constructor(param0: number, param1: android.renderscript.RenderScript);
			public constructor(param0: android.renderscript.RenderScript, param1: android.content.res.Resources, param2: number);
		}
	}
}

declare module android {
	export module renderscript {
		export class ScriptGroup extends android.renderscript.BaseObj {
			public static class: java.lang.Class<android.renderscript.ScriptGroup>;
			public execute(): void;
			public setInput(param0: android.renderscript.Script.KernelID, param1: android.renderscript.Allocation): void;
			public setOutput(param0: android.renderscript.Script.KernelID, param1: android.renderscript.Allocation): void;
		}
		export module ScriptGroup {
			export class Builder extends java.lang.Object {
				public static class: java.lang.Class<android.renderscript.ScriptGroup.Builder>;
				public constructor(param0: android.renderscript.RenderScript);
				public create(): android.renderscript.ScriptGroup;
				public addKernel(param0: android.renderscript.Script.KernelID): android.renderscript.ScriptGroup.Builder;
				public addConnection(param0: android.renderscript.Type, param1: android.renderscript.Script.KernelID, param2: android.renderscript.Script.FieldID): android.renderscript.ScriptGroup.Builder;
				public addConnection(param0: android.renderscript.Type, param1: android.renderscript.Script.KernelID, param2: android.renderscript.Script.KernelID): android.renderscript.ScriptGroup.Builder;
			}
		}
	}
}

declare module android {
	export module renderscript {
		export abstract class ScriptIntrinsic extends android.renderscript.Script {
			public static class: java.lang.Class<android.renderscript.ScriptIntrinsic>;
		}
	}
}

declare module android {
	export module renderscript {
		export class ScriptIntrinsic3DLUT extends android.renderscript.ScriptIntrinsic {
			public static class: java.lang.Class<android.renderscript.ScriptIntrinsic3DLUT>;
			public forEach(param0: android.renderscript.Allocation, param1: android.renderscript.Allocation): void;
			public forEach(param0: number, param1: android.renderscript.Allocation, param2: android.renderscript.Allocation, param3: android.renderscript.FieldPacker, param4: android.renderscript.Script.LaunchOptions): void;
			public static create(param0: android.renderscript.RenderScript, param1: android.renderscript.Element): android.renderscript.ScriptIntrinsic3DLUT;
			public forEach(param0: number, param1: android.renderscript.Allocation, param2: android.renderscript.Allocation, param3: android.renderscript.FieldPacker): void;
			public getKernelID(): android.renderscript.Script.KernelID;
			public setLUT(param0: android.renderscript.Allocation): void;
		}
	}
}

declare module android {
	export module renderscript {
		export class ScriptIntrinsicBlend extends android.renderscript.ScriptIntrinsic {
			public static class: java.lang.Class<android.renderscript.ScriptIntrinsicBlend>;
			public forEachDstIn(param0: android.renderscript.Allocation, param1: android.renderscript.Allocation): void;
			public getKernelIDDst(): android.renderscript.Script.KernelID;
			public getKernelIDXor(): android.renderscript.Script.KernelID;
			public forEachDstOver(param0: android.renderscript.Allocation, param1: android.renderscript.Allocation): void;
			public getKernelIDClear(): android.renderscript.Script.KernelID;
			public getKernelIDDstOver(): android.renderscript.Script.KernelID;
			public forEachClear(param0: android.renderscript.Allocation, param1: android.renderscript.Allocation): void;
			public static create(param0: android.renderscript.RenderScript, param1: android.renderscript.Element): android.renderscript.ScriptIntrinsicBlend;
			public forEachDstOut(param0: android.renderscript.Allocation, param1: android.renderscript.Allocation): void;
			public getKernelIDDstOut(): android.renderscript.Script.KernelID;
			public getKernelIDSrcAtop(): android.renderscript.Script.KernelID;
			public forEachSubtract(param0: android.renderscript.Allocation, param1: android.renderscript.Allocation): void;
			public forEachDst(param0: android.renderscript.Allocation, param1: android.renderscript.Allocation): void;
			public forEachSrcOver(param0: android.renderscript.Allocation, param1: android.renderscript.Allocation): void;
			public forEachXor(param0: android.renderscript.Allocation, param1: android.renderscript.Allocation): void;
			public getKernelIDSrc(): android.renderscript.Script.KernelID;
			public getKernelIDDstIn(): android.renderscript.Script.KernelID;
			public getKernelIDDstAtop(): android.renderscript.Script.KernelID;
			public getKernelIDMultiply(): android.renderscript.Script.KernelID;
			public forEachSrc(param0: android.renderscript.Allocation, param1: android.renderscript.Allocation): void;
			public forEachDstAtop(param0: android.renderscript.Allocation, param1: android.renderscript.Allocation): void;
			public getKernelIDSubtract(): android.renderscript.Script.KernelID;
			public getKernelIDSrcOut(): android.renderscript.Script.KernelID;
			public forEachAdd(param0: android.renderscript.Allocation, param1: android.renderscript.Allocation): void;
			public getKernelIDAdd(): android.renderscript.Script.KernelID;
			public forEachSrcOut(param0: android.renderscript.Allocation, param1: android.renderscript.Allocation): void;
			public getKernelIDSrcOver(): android.renderscript.Script.KernelID;
			public forEachSrcIn(param0: android.renderscript.Allocation, param1: android.renderscript.Allocation): void;
			public getKernelIDSrcIn(): android.renderscript.Script.KernelID;
			public forEachMultiply(param0: android.renderscript.Allocation, param1: android.renderscript.Allocation): void;
			public forEachSrcAtop(param0: android.renderscript.Allocation, param1: android.renderscript.Allocation): void;
		}
	}
}

declare module android {
	export module renderscript {
		export class ScriptIntrinsicBlur extends android.renderscript.ScriptIntrinsic {
			public static class: java.lang.Class<android.renderscript.ScriptIntrinsicBlur>;
			public setRadius(param0: number): void;
			public getFieldID_Input(): android.renderscript.Script.FieldID;
			public forEach(param0: number, param1: android.renderscript.Allocation, param2: android.renderscript.Allocation, param3: android.renderscript.FieldPacker, param4: android.renderscript.Script.LaunchOptions): void;
			public forEach(param0: number, param1: android.renderscript.Allocation, param2: android.renderscript.Allocation, param3: android.renderscript.FieldPacker): void;
			public setInput(param0: android.renderscript.Allocation): void;
			public forEach(param0: android.renderscript.Allocation): void;
			public getKernelID(): android.renderscript.Script.KernelID;
			public static create(param0: android.renderscript.RenderScript, param1: android.renderscript.Element): android.renderscript.ScriptIntrinsicBlur;
		}
	}
}

declare module android {
	export module renderscript {
		export class ScriptIntrinsicColorMatrix extends android.renderscript.ScriptIntrinsic {
			public static class: java.lang.Class<android.renderscript.ScriptIntrinsicColorMatrix>;
			public forEach(param0: android.renderscript.Allocation, param1: android.renderscript.Allocation): void;
			public static create(param0: android.renderscript.RenderScript, param1: android.renderscript.Element): android.renderscript.ScriptIntrinsicColorMatrix;
			public forEach(param0: number, param1: android.renderscript.Allocation, param2: android.renderscript.Allocation, param3: android.renderscript.FieldPacker, param4: android.renderscript.Script.LaunchOptions): void;
			public setColorMatrix(param0: android.renderscript.Matrix3f): void;
			public forEach(param0: number, param1: android.renderscript.Allocation, param2: android.renderscript.Allocation, param3: android.renderscript.FieldPacker): void;
			public setYUVtoRGB(): void;
			public setRGBtoYUV(): void;
			public getKernelID(): android.renderscript.Script.KernelID;
			public setColorMatrix(param0: android.renderscript.Matrix4f): void;
			public setGreyscale(): void;
		}
	}
}

declare module android {
	export module renderscript {
		export class ScriptIntrinsicConvolve3x3 extends android.renderscript.ScriptIntrinsic {
			public static class: java.lang.Class<android.renderscript.ScriptIntrinsicConvolve3x3>;
			public getFieldID_Input(): android.renderscript.Script.FieldID;
			public forEach(param0: number, param1: android.renderscript.Allocation, param2: android.renderscript.Allocation, param3: android.renderscript.FieldPacker, param4: android.renderscript.Script.LaunchOptions): void;
			public forEach(param0: number, param1: android.renderscript.Allocation, param2: android.renderscript.Allocation, param3: android.renderscript.FieldPacker): void;
			public setInput(param0: android.renderscript.Allocation): void;
			public forEach(param0: android.renderscript.Allocation): void;
			public setCoefficients(param0: native.Array<number>): void;
			public getKernelID(): android.renderscript.Script.KernelID;
			public static create(param0: android.renderscript.RenderScript, param1: android.renderscript.Element): android.renderscript.ScriptIntrinsicConvolve3x3;
		}
	}
}

declare module android {
	export module renderscript {
		export class ScriptIntrinsicConvolve5x5 extends android.renderscript.ScriptIntrinsic {
			public static class: java.lang.Class<android.renderscript.ScriptIntrinsicConvolve5x5>;
			public getFieldID_Input(): android.renderscript.Script.FieldID;
			public forEach(param0: number, param1: android.renderscript.Allocation, param2: android.renderscript.Allocation, param3: android.renderscript.FieldPacker, param4: android.renderscript.Script.LaunchOptions): void;
			public forEach(param0: number, param1: android.renderscript.Allocation, param2: android.renderscript.Allocation, param3: android.renderscript.FieldPacker): void;
			public setInput(param0: android.renderscript.Allocation): void;
			public forEach(param0: android.renderscript.Allocation): void;
			public static create(param0: android.renderscript.RenderScript, param1: android.renderscript.Element): android.renderscript.ScriptIntrinsicConvolve5x5;
			public setCoefficients(param0: native.Array<number>): void;
			public getKernelID(): android.renderscript.Script.KernelID;
		}
	}
}

declare module android {
	export module renderscript {
		export class ScriptIntrinsicLUT extends android.renderscript.ScriptIntrinsic {
			public static class: java.lang.Class<android.renderscript.ScriptIntrinsicLUT>;
			public setRed(param0: number, param1: number): void;
			public forEach(param0: android.renderscript.Allocation, param1: android.renderscript.Allocation): void;
			public setGreen(param0: number, param1: number): void;
			public setBlue(param0: number, param1: number): void;
			public forEach(param0: number, param1: android.renderscript.Allocation, param2: android.renderscript.Allocation, param3: android.renderscript.FieldPacker, param4: android.renderscript.Script.LaunchOptions): void;
			public setAlpha(param0: number, param1: number): void;
			public forEach(param0: number, param1: android.renderscript.Allocation, param2: android.renderscript.Allocation, param3: android.renderscript.FieldPacker): void;
			public static create(param0: android.renderscript.RenderScript, param1: android.renderscript.Element): android.renderscript.ScriptIntrinsicLUT;
			public getKernelID(): android.renderscript.Script.KernelID;
		}
	}
}

declare module android {
	export module renderscript {
		export class ScriptIntrinsicYuvToRGB extends android.renderscript.ScriptIntrinsic {
			public static class: java.lang.Class<android.renderscript.ScriptIntrinsicYuvToRGB>;
			public getFieldID_Input(): android.renderscript.Script.FieldID;
			public forEach(param0: number, param1: android.renderscript.Allocation, param2: android.renderscript.Allocation, param3: android.renderscript.FieldPacker, param4: android.renderscript.Script.LaunchOptions): void;
			public forEach(param0: number, param1: android.renderscript.Allocation, param2: android.renderscript.Allocation, param3: android.renderscript.FieldPacker): void;
			public setInput(param0: android.renderscript.Allocation): void;
			public forEach(param0: android.renderscript.Allocation): void;
			public static create(param0: android.renderscript.RenderScript, param1: android.renderscript.Element): android.renderscript.ScriptIntrinsicYuvToRGB;
			public getKernelID(): android.renderscript.Script.KernelID;
		}
	}
}

declare module android {
	export module renderscript {
		export class Short2 extends java.lang.Object {
			public static class: java.lang.Class<android.renderscript.Short2>;
			public x: number;
			public y: number;
			public constructor();
			public constructor(param0: number, param1: number);
		}
	}
}

declare module android {
	export module renderscript {
		export class Short3 extends java.lang.Object {
			public static class: java.lang.Class<android.renderscript.Short3>;
			public x: number;
			public y: number;
			public z: number;
			public constructor(param0: number, param1: number, param2: number);
			public constructor();
		}
	}
}

declare module android {
	export module renderscript {
		export class Short4 extends java.lang.Object {
			public static class: java.lang.Class<android.renderscript.Short4>;
			public x: number;
			public y: number;
			public z: number;
			public w: number;
			public constructor();
			public constructor(param0: number, param1: number, param2: number, param3: number);
		}
	}
}

declare module android {
	export module renderscript {
		export class Type extends android.renderscript.BaseObj {
			public static class: java.lang.Class<android.renderscript.Type>;
			public getYuv(): number;
			public hasMipmaps(): boolean;
			public hasFaces(): boolean;
			public getY(): number;
			public getX(): number;
			public getCount(): number;
			public getElement(): android.renderscript.Element;
			public getZ(): number;
		}
		export module Type {
			export class Builder extends java.lang.Object {
				public static class: java.lang.Class<android.renderscript.Type.Builder>;
				public setFaces(param0: boolean): android.renderscript.Type.Builder;
				public setX(param0: number): android.renderscript.Type.Builder;
				public setMipmaps(param0: boolean): android.renderscript.Type.Builder;
				public constructor(param0: android.renderscript.RenderScript, param1: android.renderscript.Element);
				public setZ(param0: number): android.renderscript.Type.Builder;
				public create(): android.renderscript.Type;
				public setY(param0: number): android.renderscript.Type.Builder;
				public setYuvFormat(param0: number): android.renderscript.Type.Builder;
			}
			export class CubemapFace {
				public static class: java.lang.Class<android.renderscript.Type.CubemapFace>;
				public static NEGATIVE_X: android.renderscript.Type.CubemapFace;
				public static NEGATIVE_Y: android.renderscript.Type.CubemapFace;
				public static NEGATIVE_Z: android.renderscript.Type.CubemapFace;
				public static POSITIVE_X: android.renderscript.Type.CubemapFace;
				public static POSITIVE_Y: android.renderscript.Type.CubemapFace;
				public static POSITIVE_Z: android.renderscript.Type.CubemapFace;
				public static POSITVE_X: android.renderscript.Type.CubemapFace;
				public static POSITVE_Y: android.renderscript.Type.CubemapFace;
				public static POSITVE_Z: android.renderscript.Type.CubemapFace;
				public static values(): native.Array<android.renderscript.Type.CubemapFace>;
				public static valueOf(param0: string): android.renderscript.Type.CubemapFace;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			}
		}
	}
}

declare module android {
	export module sax {
		export class Element extends java.lang.Object {
			public static class: java.lang.Class<android.sax.Element>;
			public setEndTextElementListener(param0: android.sax.EndTextElementListener): void;
			public getChild(param0: string, param1: string): android.sax.Element;
			public requireChild(param0: string): android.sax.Element;
			public setTextElementListener(param0: android.sax.TextElementListener): void;
			public toString(): string;
			public setStartElementListener(param0: android.sax.StartElementListener): void;
			public getChild(param0: string): android.sax.Element;
			public setElementListener(param0: android.sax.ElementListener): void;
			public requireChild(param0: string, param1: string): android.sax.Element;
			public setEndElementListener(param0: android.sax.EndElementListener): void;
		}
	}
}

declare module android {
	export module sax {
		export class ElementListener extends java.lang.Object implements android.sax.StartElementListener, android.sax.EndElementListener {
			public static class: java.lang.Class<android.sax.ElementListener>;
			/**
			 * Constructs a new instance of the android.sax.ElementListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				start(param0: org.xml.sax.Attributes): void;
				end(): void;
			});
			public constructor();
			public start(param0: org.xml.sax.Attributes): void;
			public end(): void;
		}
	}
}

declare module android {
	export module sax {
		export class EndElementListener extends java.lang.Object {
			public static class: java.lang.Class<android.sax.EndElementListener>;
			/**
			 * Constructs a new instance of the android.sax.EndElementListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				end(): void;
			});
			public constructor();
			public end(): void;
		}
	}
}

declare module android {
	export module sax {
		export class EndTextElementListener extends java.lang.Object {
			public static class: java.lang.Class<android.sax.EndTextElementListener>;
			/**
			 * Constructs a new instance of the android.sax.EndTextElementListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				end(param0: string): void;
			});
			public constructor();
			public end(param0: string): void;
		}
	}
}

declare module android {
	export module sax {
		export class RootElement extends android.sax.Element {
			public static class: java.lang.Class<android.sax.RootElement>;
			public constructor(param0: string, param1: string);
			public constructor(param0: string);
			public getContentHandler(): org.xml.sax.ContentHandler;
		}
	}
}

declare module android {
	export module sax {
		export class StartElementListener extends java.lang.Object {
			public static class: java.lang.Class<android.sax.StartElementListener>;
			/**
			 * Constructs a new instance of the android.sax.StartElementListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				start(param0: org.xml.sax.Attributes): void;
			});
			public constructor();
			public start(param0: org.xml.sax.Attributes): void;
		}
	}
}

declare module android {
	export module sax {
		export class TextElementListener extends java.lang.Object implements android.sax.StartElementListener, android.sax.EndTextElementListener {
			public static class: java.lang.Class<android.sax.TextElementListener>;
			/**
			 * Constructs a new instance of the android.sax.TextElementListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				start(param0: org.xml.sax.Attributes): void;
				end(param0: string): void;
			});
			public constructor();
			public start(param0: org.xml.sax.Attributes): void;
			public end(param0: string): void;
		}
	}
}

declare module android {
	export module security {
		export class KeyChain extends java.lang.Object {
			public static class: java.lang.Class<android.security.KeyChain>;
			public static EXTRA_NAME: string;
			public static EXTRA_CERTIFICATE: string;
			public static EXTRA_PKCS12: string;
			public static ACTION_STORAGE_CHANGED: string;
			public static createInstallIntent(): android.content.Intent;
			public static getPrivateKey(param0: android.content.Context, param1: string): java.security.PrivateKey;
			public static getCertificateChain(param0: android.content.Context, param1: string): native.Array<java.security.cert.X509Certificate>;
			public static isKeyAlgorithmSupported(param0: string): boolean;
			public static isBoundKeyAlgorithm(param0: string): boolean;
			public constructor();
			public static choosePrivateKeyAlias(param0: android.app.Activity, param1: android.security.KeyChainAliasCallback, param2: native.Array<string>, param3: native.Array<java.security.Principal>, param4: string, param5: number, param6: string): void;
		}
	}
}

declare module android {
	export module security {
		export class KeyChainAliasCallback extends java.lang.Object {
			public static class: java.lang.Class<android.security.KeyChainAliasCallback>;
			/**
			 * Constructs a new instance of the android.security.KeyChainAliasCallback interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				alias(param0: string): void;
			});
			public constructor();
			public alias(param0: string): void;
		}
	}
}

declare module android {
	export module security {
		export class KeyChainException extends java.lang.Exception {
			public static class: java.lang.Class<android.security.KeyChainException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module android {
	export module security {
		export class KeyPairGeneratorSpec extends java.lang.Object implements java.security.spec.AlgorithmParameterSpec {
			public static class: java.lang.Class<android.security.KeyPairGeneratorSpec>;
			public getStartDate(): java.util.Date;
			public getSubjectDN(): javax.security.auth.x500.X500Principal;
			public getKeystoreAlias(): string;
			public getContext(): android.content.Context;
			public getSerialNumber(): java.math.BigInteger;
			public getEndDate(): java.util.Date;
			public isEncryptionRequired(): boolean;
		}
		export module KeyPairGeneratorSpec {
			export class Builder extends java.lang.Object {
				public static class: java.lang.Class<android.security.KeyPairGeneratorSpec.Builder>;
				public setStartDate(param0: java.util.Date): android.security.KeyPairGeneratorSpec.Builder;
				public setEndDate(param0: java.util.Date): android.security.KeyPairGeneratorSpec.Builder;
				public setAlias(param0: string): android.security.KeyPairGeneratorSpec.Builder;
				public constructor(param0: android.content.Context);
				public setEncryptionRequired(): android.security.KeyPairGeneratorSpec.Builder;
				public setSubject(param0: javax.security.auth.x500.X500Principal): android.security.KeyPairGeneratorSpec.Builder;
				public build(): android.security.KeyPairGeneratorSpec;
				public setSerialNumber(param0: java.math.BigInteger): android.security.KeyPairGeneratorSpec.Builder;
			}
		}
	}
}

declare module android {
	export module security {
		export class KeyStoreParameter extends java.lang.Object implements java.security.KeyStore.ProtectionParameter {
			public static class: java.lang.Class<android.security.KeyStoreParameter>;
			public isEncryptionRequired(): boolean;
		}
		export module KeyStoreParameter {
			export class Builder extends java.lang.Object {
				public static class: java.lang.Class<android.security.KeyStoreParameter.Builder>;
				public constructor(param0: android.content.Context);
				public build(): android.security.KeyStoreParameter;
				public setEncryptionRequired(param0: boolean): android.security.KeyStoreParameter.Builder;
			}
		}
	}
}

declare module android {
	export module service {
		export module dreams {
			export class DreamService extends android.app.Service implements android.view.Window.Callback {
				public static class: java.lang.Class<android.service.dreams.DreamService>;
				public static SERVICE_INTERFACE: string;
				public static DREAM_META_DATA: string;
				public dispatchGenericMotionEvent(param0: android.view.MotionEvent): boolean;
				public setContentView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
				public onWindowStartingActionMode(param0: android.view.ActionMode.Callback): android.view.ActionMode;
				public isInteractive(): boolean;
				public isFullscreen(): boolean;
				public getWindowManager(): android.view.WindowManager;
				public onDreamingStarted(): void;
				public finish(): void;
				public constructor();
				public dispatchPopulateAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): boolean;
				public onPreparePanel(param0: number, param1: android.view.View, param2: android.view.Menu): boolean;
				public setFullscreen(param0: boolean): void;
				public isScreenBright(): boolean;
				public onMenuItemSelected(param0: number, param1: android.view.MenuItem): boolean;
				public setInteractive(param0: boolean): void;
				public onPanelClosed(param0: number, param1: android.view.Menu): void;
				public onCreatePanelView(param0: number): android.view.View;
				public onTrimMemory(param0: number): void;
				public findViewById(param0: number): android.view.View;
				public onActionModeStarted(param0: android.view.ActionMode): void;
				public onMenuOpened(param0: number, param1: android.view.Menu): boolean;
				public dispatchTrackballEvent(param0: android.view.MotionEvent): boolean;
				public getWindow(): android.view.Window;
				public onActionModeFinished(param0: android.view.ActionMode): void;
				public setContentView(param0: number): void;
				public dispatchKeyShortcutEvent(param0: android.view.KeyEvent): boolean;
				public addContentView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
				public onWindowAttributesChanged(param0: android.view.WindowManager.LayoutParams): void;
				public onContentChanged(): void;
				public dump(param0: java.io.FileDescriptor, param1: java.io.PrintWriter, param2: native.Array<string>): void;
				public setScreenBright(param0: boolean): void;
				public onBind(param0: android.content.Intent): android.os.IBinder;
				public constructor(param0: android.content.Context);
				public dispatchKeyEvent(param0: android.view.KeyEvent): boolean;
				public onCreatePanelMenu(param0: number, param1: android.view.Menu): boolean;
				public onDetachedFromWindow(): void;
				public setContentView(param0: android.view.View): void;
				public onCreate(): void;
				public dispatchTouchEvent(param0: android.view.MotionEvent): boolean;
				public onSearchRequested(): boolean;
				public onWindowFocusChanged(param0: boolean): void;
				public onDreamingStopped(): void;
				public onDestroy(): void;
				public onAttachedToWindow(): void;
			}
		}
	}
}

declare module android {
	export module service {
		export module notification {
			export abstract class NotificationListenerService extends android.app.Service {
				public static class: java.lang.Class<android.service.notification.NotificationListenerService>;
				public static SERVICE_INTERFACE: string;
				public getActiveNotifications(): native.Array<android.service.notification.StatusBarNotification>;
				public onBind(param0: android.content.Intent): android.os.IBinder;
				public constructor(param0: android.content.Context);
				public cancelNotification(param0: string, param1: string, param2: number): void;
				public onNotificationRemoved(param0: android.service.notification.StatusBarNotification): void;
				public cancelAllNotifications(): void;
				public onNotificationPosted(param0: android.service.notification.StatusBarNotification): void;
				public onTrimMemory(param0: number): void;
				public constructor();
			}
		}
	}
}

declare module android {
	export module service {
		export module notification {
			export class StatusBarNotification extends java.lang.Object implements android.os.Parcelable {
				public static class: java.lang.Class<android.service.notification.StatusBarNotification>;
				public static CREATOR: android.os.Parcelable.Creator<android.service.notification.StatusBarNotification>;
				public getPostTime(): number;
				public isOngoing(): boolean;
				public getUserId(): number;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public constructor(param0: string, param1: string, param2: number, param3: string, param4: number, param5: number, param6: number, param7: android.app.Notification, param8: android.os.UserHandle, param9: number);
				public isClearable(): boolean;
				public getPackageName(): string;
				public getId(): number;
				public getTag(): string;
				public toString(): string;
				public constructor(param0: android.os.Parcel);
				public describeContents(): number;
				public clone(): any;
				public getNotification(): android.app.Notification;
				public clone(): android.service.notification.StatusBarNotification;
			}
		}
	}
}

declare module android {
	export module service {
		export module textservice {
			export abstract class SpellCheckerService extends android.app.Service {
				public static class: java.lang.Class<android.service.textservice.SpellCheckerService>;
				public static SERVICE_INTERFACE: string;
				public onBind(param0: android.content.Intent): android.os.IBinder;
				public createSession(): android.service.textservice.SpellCheckerService.Session;
				public constructor(param0: android.content.Context);
				public onTrimMemory(param0: number): void;
				public constructor();
			}
			export module SpellCheckerService {
				export abstract class Session extends java.lang.Object {
					public static class: java.lang.Class<android.service.textservice.SpellCheckerService.Session>;
					public onCreate(): void;
					public onClose(): void;
					public getLocale(): string;
					public constructor();
					public onGetSuggestionsMultiple(param0: native.Array<android.view.textservice.TextInfo>, param1: number, param2: boolean): native.Array<android.view.textservice.SuggestionsInfo>;
					public onGetSuggestions(param0: android.view.textservice.TextInfo, param1: number): android.view.textservice.SuggestionsInfo;
					public onGetSentenceSuggestionsMultiple(param0: native.Array<android.view.textservice.TextInfo>, param1: number): native.Array<android.view.textservice.SentenceSuggestionsInfo>;
					public onCancel(): void;
					public getBundle(): android.os.Bundle;
				}
			}
		}
	}
}

declare module android {
	export module service {
		export module wallpaper {
			export abstract class WallpaperService extends android.app.Service {
				public static class: java.lang.Class<android.service.wallpaper.WallpaperService>;
				public static SERVICE_INTERFACE: string;
				public static SERVICE_META_DATA: string;
				public dump(param0: java.io.FileDescriptor, param1: java.io.PrintWriter, param2: native.Array<string>): void;
				public onBind(param0: android.content.Intent): android.os.IBinder;
				public constructor(param0: android.content.Context);
				public onCreate(): void;
				public onDestroy(): void;
				public onTrimMemory(param0: number): void;
				public onCreateEngine(): android.service.wallpaper.WallpaperService.Engine;
				public constructor();
			}
			export module WallpaperService {
				export class Engine extends java.lang.Object {
					public static class: java.lang.Class<android.service.wallpaper.WallpaperService.Engine>;
					public onVisibilityChanged(param0: boolean): void;
					public onTouchEvent(param0: android.view.MotionEvent): void;
					public onDesiredSizeChanged(param0: number, param1: number): void;
					public onSurfaceDestroyed(param0: android.view.SurfaceHolder): void;
					public onCommand(param0: string, param1: number, param2: number, param3: number, param4: android.os.Bundle, param5: boolean): android.os.Bundle;
					public onSurfaceChanged(param0: android.view.SurfaceHolder, param1: number, param2: number, param3: number): void;
					public onDestroy(): void;
					public getDesiredMinimumHeight(): number;
					public isPreview(): boolean;
					public onSurfaceCreated(param0: android.view.SurfaceHolder): void;
					public onOffsetsChanged(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): void;
					public getSurfaceHolder(): android.view.SurfaceHolder;
					public isVisible(): boolean;
					public onCreate(param0: android.view.SurfaceHolder): void;
					public setTouchEventsEnabled(param0: boolean): void;
					public setOffsetNotificationsEnabled(param0: boolean): void;
					public constructor(param0: android.service.wallpaper.WallpaperService);
					public onSurfaceRedrawNeeded(param0: android.view.SurfaceHolder): void;
					public getDesiredMinimumWidth(): number;
					public dump(param0: string, param1: java.io.FileDescriptor, param2: java.io.PrintWriter, param3: native.Array<string>): void;
				}
			}
		}
	}
}

declare module android {
	export module speech {
		export class RecognitionListener extends java.lang.Object {
			public static class: java.lang.Class<android.speech.RecognitionListener>;
			/**
			 * Constructs a new instance of the android.speech.RecognitionListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				onReadyForSpeech(param0: android.os.Bundle): void;
				onBeginningOfSpeech(): void;
				onRmsChanged(param0: number): void;
				onBufferReceived(param0: native.Array<number>): void;
				onEndOfSpeech(): void;
				onError(param0: number): void;
				onResults(param0: android.os.Bundle): void;
				onPartialResults(param0: android.os.Bundle): void;
				onEvent(param0: number, param1: android.os.Bundle): void;
			});
			public constructor();
			public onEndOfSpeech(): void;
			public onRmsChanged(param0: number): void;
			public onBufferReceived(param0: native.Array<number>): void;
			public onEvent(param0: number, param1: android.os.Bundle): void;
			public onPartialResults(param0: android.os.Bundle): void;
			public onReadyForSpeech(param0: android.os.Bundle): void;
			public onError(param0: number): void;
			public onResults(param0: android.os.Bundle): void;
			public onBeginningOfSpeech(): void;
		}
	}
}

declare module android {
	export module speech {
		export abstract class RecognitionService extends android.app.Service {
			public static class: java.lang.Class<android.speech.RecognitionService>;
			public static SERVICE_INTERFACE: string;
			public static SERVICE_META_DATA: string;
			public onCancel(param0: android.speech.RecognitionService.Callback): void;
			public onTrimMemory(param0: number): void;
			public onStartListening(param0: android.content.Intent, param1: android.speech.RecognitionService.Callback): void;
			public onBind(param0: android.content.Intent): android.os.IBinder;
			public constructor(param0: android.content.Context);
			public onStopListening(param0: android.speech.RecognitionService.Callback): void;
			public constructor();
			public onDestroy(): void;
		}
		export module RecognitionService {
			export class Callback extends java.lang.Object {
				public static class: java.lang.Class<android.speech.RecognitionService.Callback>;
				public bufferReceived(param0: native.Array<number>): void;
				public endOfSpeech(): void;
				public error(param0: number): void;
				public partialResults(param0: android.os.Bundle): void;
				public results(param0: android.os.Bundle): void;
				public rmsChanged(param0: number): void;
				public beginningOfSpeech(): void;
				public readyForSpeech(param0: android.os.Bundle): void;
			}
		}
	}
}

declare module android {
	export module speech {
		export class RecognizerIntent extends java.lang.Object {
			public static class: java.lang.Class<android.speech.RecognizerIntent>;
			public static EXTRA_CALLING_PACKAGE: string;
			public static ACTION_RECOGNIZE_SPEECH: string;
			public static ACTION_WEB_SEARCH: string;
			public static ACTION_VOICE_SEARCH_HANDS_FREE: string;
			public static EXTRA_SECURE: string;
			public static EXTRA_SPEECH_INPUT_MINIMUM_LENGTH_MILLIS: string;
			public static EXTRA_SPEECH_INPUT_COMPLETE_SILENCE_LENGTH_MILLIS: string;
			public static EXTRA_SPEECH_INPUT_POSSIBLY_COMPLETE_SILENCE_LENGTH_MILLIS: string;
			public static EXTRA_LANGUAGE_MODEL: string;
			public static LANGUAGE_MODEL_FREE_FORM: string;
			public static LANGUAGE_MODEL_WEB_SEARCH: string;
			public static EXTRA_PROMPT: string;
			public static EXTRA_LANGUAGE: string;
			public static EXTRA_ORIGIN: string;
			public static EXTRA_MAX_RESULTS: string;
			public static EXTRA_WEB_SEARCH_ONLY: string;
			public static EXTRA_PARTIAL_RESULTS: string;
			public static EXTRA_RESULTS_PENDINGINTENT: string;
			public static EXTRA_RESULTS_PENDINGINTENT_BUNDLE: string;
			public static RESULT_NO_MATCH: number;
			public static RESULT_CLIENT_ERROR: number;
			public static RESULT_SERVER_ERROR: number;
			public static RESULT_NETWORK_ERROR: number;
			public static RESULT_AUDIO_ERROR: number;
			public static EXTRA_RESULTS: string;
			public static EXTRA_CONFIDENCE_SCORES: string;
			public static DETAILS_META_DATA: string;
			public static ACTION_GET_LANGUAGE_DETAILS: string;
			public static EXTRA_ONLY_RETURN_LANGUAGE_PREFERENCE: string;
			public static EXTRA_LANGUAGE_PREFERENCE: string;
			public static EXTRA_SUPPORTED_LANGUAGES: string;
			public static getVoiceDetailsIntent(param0: android.content.Context): android.content.Intent;
		}
	}
}

declare module android {
	export module speech {
		export class RecognizerResultsIntent extends java.lang.Object {
			public static class: java.lang.Class<android.speech.RecognizerResultsIntent>;
			public static ACTION_VOICE_SEARCH_RESULTS: string;
			public static EXTRA_VOICE_SEARCH_RESULT_STRINGS: string;
			public static EXTRA_VOICE_SEARCH_RESULT_URLS: string;
			public static EXTRA_VOICE_SEARCH_RESULT_HTML: string;
			public static EXTRA_VOICE_SEARCH_RESULT_HTML_BASE_URLS: string;
			public static EXTRA_VOICE_SEARCH_RESULT_HTTP_HEADERS: string;
			public static URI_SCHEME_INLINE: string;
		}
	}
}

declare module android {
	export module speech {
		export class SpeechRecognizer extends java.lang.Object {
			public static class: java.lang.Class<android.speech.SpeechRecognizer>;
			public static RESULTS_RECOGNITION: string;
			public static CONFIDENCE_SCORES: string;
			public static ERROR_NETWORK_TIMEOUT: number;
			public static ERROR_NETWORK: number;
			public static ERROR_AUDIO: number;
			public static ERROR_SERVER: number;
			public static ERROR_CLIENT: number;
			public static ERROR_SPEECH_TIMEOUT: number;
			public static ERROR_NO_MATCH: number;
			public static ERROR_RECOGNIZER_BUSY: number;
			public static ERROR_INSUFFICIENT_PERMISSIONS: number;
			public static createSpeechRecognizer(param0: android.content.Context): android.speech.SpeechRecognizer;
			public startListening(param0: android.content.Intent): void;
			public destroy(): void;
			public setRecognitionListener(param0: android.speech.RecognitionListener): void;
			public stopListening(): void;
			public cancel(): void;
			public static isRecognitionAvailable(param0: android.content.Context): boolean;
			public static createSpeechRecognizer(param0: android.content.Context, param1: android.content.ComponentName): android.speech.SpeechRecognizer;
		}
	}
}

declare module android {
	export module speech {
		export module tts {
			export class SynthesisCallback extends java.lang.Object {
				public static class: java.lang.Class<android.speech.tts.SynthesisCallback>;
				/**
				 * Constructs a new instance of the android.speech.tts.SynthesisCallback interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getMaxBufferSize(): number;
					start(param0: number, param1: number, param2: number): number;
					audioAvailable(param0: native.Array<number>, param1: number, param2: number): number;
					done(): number;
					error(): void;
				});
				public constructor();
				public audioAvailable(param0: native.Array<number>, param1: number, param2: number): number;
				public error(): void;
				public start(param0: number, param1: number, param2: number): number;
				public getMaxBufferSize(): number;
				public done(): number;
			}
		}
	}
}

declare module android {
	export module speech {
		export module tts {
			export class SynthesisRequest extends java.lang.Object {
				public static class: java.lang.Class<android.speech.tts.SynthesisRequest>;
				public constructor(param0: string, param1: android.os.Bundle);
				public getParams(): android.os.Bundle;
				public getSpeechRate(): number;
				public getCountry(): string;
				public getLanguage(): string;
				public getVariant(): string;
				public getPitch(): number;
				public getText(): string;
			}
		}
	}
}

declare module android {
	export module speech {
		export module tts {
			export class TextToSpeech extends java.lang.Object {
				public static class: java.lang.Class<android.speech.tts.TextToSpeech>;
				public static SUCCESS: number;
				public static ERROR: number;
				public static QUEUE_FLUSH: number;
				public static QUEUE_ADD: number;
				public static LANG_COUNTRY_VAR_AVAILABLE: number;
				public static LANG_COUNTRY_AVAILABLE: number;
				public static LANG_AVAILABLE: number;
				public static LANG_MISSING_DATA: number;
				public static LANG_NOT_SUPPORTED: number;
				public static ACTION_TTS_QUEUE_PROCESSING_COMPLETED: string;
				public addSpeech(param0: string, param1: string, param2: number): number;
				public addEarcon(param0: string, param1: string): number;
				public speak(param0: string, param1: number, param2: java.util.HashMap<string,string>): number;
				public shutdown(): void;
				public isSpeaking(): boolean;
				public getDefaultEngine(): string;
				public setPitch(param0: number): number;
				public setOnUtteranceProgressListener(param0: android.speech.tts.UtteranceProgressListener): number;
				public addEarcon(param0: string, param1: string, param2: number): number;
				public getFeatures(param0: java.util.Locale): java.util.Set<string>;
				public areDefaultsEnforced(): boolean;
				public playEarcon(param0: string, param1: number, param2: java.util.HashMap<string,string>): number;
				public getLanguage(): java.util.Locale;
				public getEngines(): java.util.List<android.speech.tts.TextToSpeech.EngineInfo>;
				public synthesizeToFile(param0: string, param1: java.util.HashMap<string,string>, param2: string): number;
				public constructor(param0: android.content.Context, param1: android.speech.tts.TextToSpeech.OnInitListener);
				public setLanguage(param0: java.util.Locale): number;
				public playSilence(param0: number, param1: number, param2: java.util.HashMap<string,string>): number;
				public addSpeech(param0: string, param1: string): number;
				public constructor(param0: android.content.Context, param1: android.speech.tts.TextToSpeech.OnInitListener, param2: string);
				public isLanguageAvailable(param0: java.util.Locale): number;
				/** @deprecated */
				public setEngineByPackageName(param0: string): number;
				public setSpeechRate(param0: number): number;
				public stop(): number;
				/** @deprecated */
				public setOnUtteranceCompletedListener(param0: android.speech.tts.TextToSpeech.OnUtteranceCompletedListener): number;
				public static getMaxSpeechInputLength(): number;
				public getDefaultLanguage(): java.util.Locale;
			}
			export module TextToSpeech {
				export class Engine extends java.lang.Object {
					public static class: java.lang.Class<android.speech.tts.TextToSpeech.Engine>;
					public static DEFAULT_STREAM: number;
					public static CHECK_VOICE_DATA_PASS: number;
					public static CHECK_VOICE_DATA_FAIL: number;
					public static CHECK_VOICE_DATA_BAD_DATA: number;
					public static CHECK_VOICE_DATA_MISSING_DATA: number;
					public static CHECK_VOICE_DATA_MISSING_VOLUME: number;
					public static INTENT_ACTION_TTS_SERVICE: string;
					public static SERVICE_META_DATA: string;
					public static ACTION_INSTALL_TTS_DATA: string;
					public static ACTION_TTS_DATA_INSTALLED: string;
					public static ACTION_CHECK_TTS_DATA: string;
					public static ACTION_GET_SAMPLE_TEXT: string;
					public static EXTRA_SAMPLE_TEXT: string;
					public static EXTRA_AVAILABLE_VOICES: string;
					public static EXTRA_UNAVAILABLE_VOICES: string;
					public static EXTRA_VOICE_DATA_ROOT_DIRECTORY: string;
					public static EXTRA_VOICE_DATA_FILES: string;
					public static EXTRA_VOICE_DATA_FILES_INFO: string;
					public static EXTRA_CHECK_VOICE_DATA_FOR: string;
					public static EXTRA_TTS_DATA_INSTALLED: string;
					public static KEY_PARAM_STREAM: string;
					public static KEY_PARAM_UTTERANCE_ID: string;
					public static KEY_PARAM_VOLUME: string;
					public static KEY_PARAM_PAN: string;
					public static KEY_FEATURE_NETWORK_SYNTHESIS: string;
					public static KEY_FEATURE_EMBEDDED_SYNTHESIS: string;
					public constructor(param0: android.speech.tts.TextToSpeech);
				}
				export class EngineInfo extends java.lang.Object {
					public static class: java.lang.Class<android.speech.tts.TextToSpeech.EngineInfo>;
					public name: string;
					public label: string;
					public icon: number;
					public toString(): string;
					public constructor();
				}
				export class OnInitListener extends java.lang.Object {
					public static class: java.lang.Class<android.speech.tts.TextToSpeech.OnInitListener>;
					/**
					 * Constructs a new instance of the android.speech.tts.TextToSpeech$OnInitListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						onInit(param0: number): void;
					});
					public constructor();
					public onInit(param0: number): void;
				}
				export class OnUtteranceCompletedListener extends java.lang.Object {
					public static class: java.lang.Class<android.speech.tts.TextToSpeech.OnUtteranceCompletedListener>;
					/**
					 * Constructs a new instance of the android.speech.tts.TextToSpeech$OnUtteranceCompletedListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						onUtteranceCompleted(param0: string): void;
					});
					public constructor();
					public onUtteranceCompleted(param0: string): void;
				}
			}
		}
	}
}

declare module android {
	export module speech {
		export module tts {
			export abstract class TextToSpeechService extends android.app.Service {
				public static class: java.lang.Class<android.speech.tts.TextToSpeechService>;
				public onLoadLanguage(param0: string, param1: string, param2: string): number;
				public onBind(param0: android.content.Intent): android.os.IBinder;
				public onIsLanguageAvailable(param0: string, param1: string, param2: string): number;
				public constructor(param0: android.content.Context);
				public onCreate(): void;
				public onSynthesizeText(param0: android.speech.tts.SynthesisRequest, param1: android.speech.tts.SynthesisCallback): void;
				public onStop(): void;
				public onDestroy(): void;
				public onGetFeaturesForLanguage(param0: string, param1: string, param2: string): java.util.Set<string>;
				public onTrimMemory(param0: number): void;
				public constructor();
				public onGetLanguage(): native.Array<string>;
			}
		}
	}
}

declare module android {
	export module speech {
		export module tts {
			export abstract class UtteranceProgressListener extends java.lang.Object {
				public static class: java.lang.Class<android.speech.tts.UtteranceProgressListener>;
				public onError(param0: string): void;
				public onDone(param0: string): void;
				public constructor();
				public onStart(param0: string): void;
			}
		}
	}
}

declare module android {
	export module telephony {
		export class CellIdentityCdma extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.telephony.CellIdentityCdma>;
			public static CREATOR: android.os.Parcelable.Creator<android.telephony.CellIdentityCdma>;
			public getLongitude(): number;
			public equals(param0: any): boolean;
			public toString(): string;
			public getBasestationId(): number;
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public getLatitude(): number;
			public getNetworkId(): number;
			public getSystemId(): number;
			public hashCode(): number;
		}
	}
}

declare module android {
	export module telephony {
		export class CellIdentityGsm extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.telephony.CellIdentityGsm>;
			public static CREATOR: android.os.Parcelable.Creator<android.telephony.CellIdentityGsm>;
			public equals(param0: any): boolean;
			public getMnc(): number;
			public toString(): string;
			/** @deprecated */
			public getPsc(): number;
			public getMcc(): number;
			public describeContents(): number;
			public getLac(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public getCid(): number;
			public hashCode(): number;
		}
	}
}

declare module android {
	export module telephony {
		export class CellIdentityLte extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.telephony.CellIdentityLte>;
			public static CREATOR: android.os.Parcelable.Creator<android.telephony.CellIdentityLte>;
			public equals(param0: any): boolean;
			public getMnc(): number;
			public toString(): string;
			public getTac(): number;
			public getMcc(): number;
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public getPci(): number;
			public getCi(): number;
			public hashCode(): number;
		}
	}
}

declare module android {
	export module telephony {
		export class CellIdentityWcdma extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.telephony.CellIdentityWcdma>;
			public static CREATOR: android.os.Parcelable.Creator<android.telephony.CellIdentityWcdma>;
			public equals(param0: any): boolean;
			public getMnc(): number;
			public toString(): string;
			public getMcc(): number;
			public describeContents(): number;
			public getLac(): number;
			public getPsc(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public getCid(): number;
			public hashCode(): number;
		}
	}
}

declare module android {
	export module telephony {
		export abstract class CellInfo extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.telephony.CellInfo>;
			public static CREATOR: android.os.Parcelable.Creator<android.telephony.CellInfo>;
			public equals(param0: any): boolean;
			public getTimeStamp(): number;
			public toString(): string;
			public isRegistered(): boolean;
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public hashCode(): number;
		}
	}
}

declare module android {
	export module telephony {
		export class CellInfoCdma extends android.telephony.CellInfo implements android.os.Parcelable {
			public static class: java.lang.Class<android.telephony.CellInfoCdma>;
			public static CREATOR: android.os.Parcelable.Creator<android.telephony.CellInfoCdma>;
			public equals(param0: any): boolean;
			public toString(): string;
			public getCellIdentity(): android.telephony.CellIdentityCdma;
			public describeContents(): number;
			public getCellSignalStrength(): android.telephony.CellSignalStrengthCdma;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public hashCode(): number;
		}
	}
}

declare module android {
	export module telephony {
		export class CellInfoGsm extends android.telephony.CellInfo implements android.os.Parcelable {
			public static class: java.lang.Class<android.telephony.CellInfoGsm>;
			public static CREATOR: android.os.Parcelable.Creator<android.telephony.CellInfoGsm>;
			public getCellIdentity(): android.telephony.CellIdentityGsm;
			public equals(param0: any): boolean;
			public toString(): string;
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public getCellSignalStrength(): android.telephony.CellSignalStrengthGsm;
			public hashCode(): number;
		}
	}
}

declare module android {
	export module telephony {
		export class CellInfoLte extends android.telephony.CellInfo implements android.os.Parcelable {
			public static class: java.lang.Class<android.telephony.CellInfoLte>;
			public static CREATOR: android.os.Parcelable.Creator<android.telephony.CellInfoLte>;
			public equals(param0: any): boolean;
			public getCellSignalStrength(): android.telephony.CellSignalStrengthLte;
			public getCellIdentity(): android.telephony.CellIdentityLte;
			public toString(): string;
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public hashCode(): number;
		}
	}
}

declare module android {
	export module telephony {
		export class CellInfoWcdma extends android.telephony.CellInfo implements android.os.Parcelable {
			public static class: java.lang.Class<android.telephony.CellInfoWcdma>;
			public static CREATOR: android.os.Parcelable.Creator<android.telephony.CellInfoWcdma>;
			public equals(param0: any): boolean;
			public toString(): string;
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public getCellIdentity(): android.telephony.CellIdentityWcdma;
			public getCellSignalStrength(): android.telephony.CellSignalStrengthWcdma;
			public hashCode(): number;
		}
	}
}

declare module android {
	export module telephony {
		export abstract class CellLocation extends java.lang.Object {
			public static class: java.lang.Class<android.telephony.CellLocation>;
			public static requestLocationUpdate(): void;
			public static getEmpty(): android.telephony.CellLocation;
			public constructor();
		}
	}
}

declare module android {
	export module telephony {
		export abstract class CellSignalStrength extends java.lang.Object {
			public static class: java.lang.Class<android.telephony.CellSignalStrength>;
			public getAsuLevel(): number;
			public equals(param0: any): boolean;
			public getDbm(): number;
			public getLevel(): number;
			public hashCode(): number;
		}
	}
}

declare module android {
	export module telephony {
		export class CellSignalStrengthCdma extends android.telephony.CellSignalStrength implements android.os.Parcelable {
			public static class: java.lang.Class<android.telephony.CellSignalStrengthCdma>;
			public static CREATOR: android.os.Parcelable.Creator<android.telephony.CellSignalStrengthCdma>;
			public getEvdoSnr(): number;
			public equals(param0: any): boolean;
			public getCdmaEcio(): number;
			public getCdmaLevel(): number;
			public getLevel(): number;
			public getCdmaDbm(): number;
			public getAsuLevel(): number;
			public toString(): string;
			public getDbm(): number;
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public getEvdoEcio(): number;
			public getEvdoLevel(): number;
			public getEvdoDbm(): number;
			public hashCode(): number;
		}
	}
}

declare module android {
	export module telephony {
		export class CellSignalStrengthGsm extends android.telephony.CellSignalStrength implements android.os.Parcelable {
			public static class: java.lang.Class<android.telephony.CellSignalStrengthGsm>;
			public static CREATOR: android.os.Parcelable.Creator<android.telephony.CellSignalStrengthGsm>;
			public getAsuLevel(): number;
			public equals(param0: any): boolean;
			public toString(): string;
			public getDbm(): number;
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public getLevel(): number;
			public hashCode(): number;
		}
	}
}

declare module android {
	export module telephony {
		export class CellSignalStrengthLte extends android.telephony.CellSignalStrength implements android.os.Parcelable {
			public static class: java.lang.Class<android.telephony.CellSignalStrengthLte>;
			public static CREATOR: android.os.Parcelable.Creator<android.telephony.CellSignalStrengthLte>;
			public getTimingAdvance(): number;
			public getAsuLevel(): number;
			public equals(param0: any): boolean;
			public toString(): string;
			public getDbm(): number;
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public getLevel(): number;
			public hashCode(): number;
		}
	}
}

declare module android {
	export module telephony {
		export class CellSignalStrengthWcdma extends android.telephony.CellSignalStrength implements android.os.Parcelable {
			public static class: java.lang.Class<android.telephony.CellSignalStrengthWcdma>;
			public static CREATOR: android.os.Parcelable.Creator<android.telephony.CellSignalStrengthWcdma>;
			public getAsuLevel(): number;
			public equals(param0: any): boolean;
			public toString(): string;
			public getDbm(): number;
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public getLevel(): number;
			public hashCode(): number;
		}
	}
}

declare module android {
	export module telephony {
		export class NeighboringCellInfo extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.telephony.NeighboringCellInfo>;
			public static UNKNOWN_RSSI: number;
			public static UNKNOWN_CID: number;
			public static CREATOR: android.os.Parcelable.Creator<android.telephony.NeighboringCellInfo>;
			public getRssi(): number;
			public getNetworkType(): number;
			public getLac(): number;
			public getPsc(): number;
			/** @deprecated */
			public setRssi(param0: number): void;
			/** @deprecated */
			public setCid(param0: number): void;
			/** @deprecated */
			public constructor();
			public toString(): string;
			public constructor(param0: android.os.Parcel);
			public describeContents(): number;
			public constructor(param0: number, param1: string, param2: number);
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			/** @deprecated */
			public constructor(param0: number, param1: number);
			public getCid(): number;
		}
	}
}

declare module android {
	export module telephony {
		export class PhoneNumberFormattingTextWatcher extends java.lang.Object implements android.text.TextWatcher {
			public static class: java.lang.Class<android.telephony.PhoneNumberFormattingTextWatcher>;
			public afterTextChanged(param0: android.text.Editable): void;
			public onTextChanged(param0: string, param1: number, param2: number, param3: number): void;
			public constructor();
			public beforeTextChanged(param0: string, param1: number, param2: number, param3: number): void;
		}
	}
}

declare module android {
	export module telephony {
		export class PhoneNumberUtils extends java.lang.Object {
			public static class: java.lang.Class<android.telephony.PhoneNumberUtils>;
			public static PAUSE: string;
			public static WAIT: string;
			public static WILD: string;
			public static TOA_International: number;
			public static TOA_Unknown: number;
			public static FORMAT_UNKNOWN: number;
			public static FORMAT_NANP: number;
			public static FORMAT_JAPAN: number;
			public static compare(param0: string, param1: string): boolean;
			public static isStartsPostDial(param0: string): boolean;
			public static getStrippedReversed(param0: string): string;
			public static networkPortionToCalledPartyBCD(param0: string): native.Array<number>;
			public static numberToCalledPartyBCD(param0: string): native.Array<number>;
			public static isISODigit(param0: string): boolean;
			public static isDialable(param0: string): boolean;
			public static isGlobalPhoneNumber(param0: string): boolean;
			public static extractPostDialPortion(param0: string): string;
			public static formatNanpNumber(param0: android.text.Editable): void;
			public static isNonSeparator(param0: string): boolean;
			public static isEmergencyNumber(param0: string): boolean;
			public static toCallerIDMinMatch(param0: string): string;
			public static compare(param0: android.content.Context, param1: string, param2: string): boolean;
			public static calledPartyBCDFragmentToString(param0: native.Array<number>, param1: number, param2: number): string;
			public static toaFromString(param0: string): number;
			public static formatNumber(param0: android.text.Editable, param1: number): void;
			public static formatJapaneseNumber(param0: android.text.Editable): void;
			public static extractNetworkPortion(param0: string): string;
			public static formatNumber(param0: string): string;
			public static networkPortionToCalledPartyBCDWithLength(param0: string): native.Array<number>;
			public static getFormatTypeForLocale(param0: java.util.Locale): number;
			public static calledPartyBCDToString(param0: native.Array<number>, param1: number, param2: number): string;
			public constructor();
			public static is12Key(param0: string): boolean;
			public static convertKeypadLettersToDigits(param0: string): string;
			public static stringFromStringAndTOA(param0: string, param1: number): string;
			public static isReallyDialable(param0: string): boolean;
			public static isWellFormedSmsAddress(param0: string): boolean;
			public static stripSeparators(param0: string): string;
			public static getNumberFromIntent(param0: android.content.Intent, param1: android.content.Context): string;
		}
	}
}

declare module android {
	export module telephony {
		export class PhoneStateListener extends java.lang.Object {
			public static class: java.lang.Class<android.telephony.PhoneStateListener>;
			public static LISTEN_NONE: number;
			public static LISTEN_SERVICE_STATE: number;
			public static LISTEN_SIGNAL_STRENGTH: number;
			public static LISTEN_MESSAGE_WAITING_INDICATOR: number;
			public static LISTEN_CALL_FORWARDING_INDICATOR: number;
			public static LISTEN_CELL_LOCATION: number;
			public static LISTEN_CALL_STATE: number;
			public static LISTEN_DATA_CONNECTION_STATE: number;
			public static LISTEN_DATA_ACTIVITY: number;
			public static LISTEN_SIGNAL_STRENGTHS: number;
			public static LISTEN_CELL_INFO: number;
			public onMessageWaitingIndicatorChanged(param0: boolean): void;
			public onServiceStateChanged(param0: android.telephony.ServiceState): void;
			public onDataActivity(param0: number): void;
			/** @deprecated */
			public onSignalStrengthChanged(param0: number): void;
			public onDataConnectionStateChanged(param0: number, param1: number): void;
			public onSignalStrengthsChanged(param0: android.telephony.SignalStrength): void;
			public onCellInfoChanged(param0: java.util.List<android.telephony.CellInfo>): void;
			public constructor();
			public onCallForwardingIndicatorChanged(param0: boolean): void;
			public onCellLocationChanged(param0: android.telephony.CellLocation): void;
			public onCallStateChanged(param0: number, param1: string): void;
			public onDataConnectionStateChanged(param0: number): void;
		}
	}
}

declare module android {
	export module telephony {
		export class ServiceState extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.telephony.ServiceState>;
			public static STATE_IN_SERVICE: number;
			public static STATE_OUT_OF_SERVICE: number;
			public static STATE_EMERGENCY_ONLY: number;
			public static STATE_POWER_OFF: number;
			public static CREATOR: android.os.Parcelable.Creator<android.telephony.ServiceState>;
			public equals(param0: any): boolean;
			public copyFrom(param0: android.telephony.ServiceState): void;
			public setState(param0: number): void;
			public setStateOff(): void;
			public getOperatorAlphaLong(): string;
			public getOperatorAlphaShort(): string;
			public setStateOutOfService(): void;
			public constructor(param0: android.telephony.ServiceState);
			public setRoaming(param0: boolean): void;
			public setIsManualSelection(param0: boolean): void;
			public constructor();
			public setOperatorName(param0: string, param1: string, param2: string): void;
			public toString(): string;
			public getOperatorNumeric(): string;
			public constructor(param0: android.os.Parcel);
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public getIsManualSelection(): boolean;
			public getRoaming(): boolean;
			public getState(): number;
			public hashCode(): number;
		}
	}
}

declare module android {
	export module telephony {
		export class SignalStrength extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.telephony.SignalStrength>;
			public getEvdoSnr(): number;
			public isGsm(): boolean;
			public equals(param0: any): boolean;
			public getGsmSignalStrength(): number;
			public getCdmaEcio(): number;
			public getCdmaDbm(): number;
			public toString(): string;
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public getEvdoEcio(): number;
			public getGsmBitErrorRate(): number;
			public getEvdoDbm(): number;
			public hashCode(): number;
		}
	}
}

declare module android {
	export module telephony {
		export class SmsManager extends java.lang.Object {
			public static class: java.lang.Class<android.telephony.SmsManager>;
			public static STATUS_ON_ICC_FREE: number;
			public static STATUS_ON_ICC_READ: number;
			public static STATUS_ON_ICC_UNREAD: number;
			public static STATUS_ON_ICC_SENT: number;
			public static STATUS_ON_ICC_UNSENT: number;
			public static RESULT_ERROR_GENERIC_FAILURE: number;
			public static RESULT_ERROR_RADIO_OFF: number;
			public static RESULT_ERROR_NULL_PDU: number;
			public static RESULT_ERROR_NO_SERVICE: number;
			public sendMultipartTextMessage(param0: string, param1: string, param2: java.util.ArrayList<string>, param3: java.util.ArrayList<android.app.PendingIntent>, param4: java.util.ArrayList<android.app.PendingIntent>): void;
			public sendDataMessage(param0: string, param1: string, param2: number, param3: native.Array<number>, param4: android.app.PendingIntent, param5: android.app.PendingIntent): void;
			public static getDefault(): android.telephony.SmsManager;
			public divideMessage(param0: string): java.util.ArrayList<string>;
			public sendTextMessage(param0: string, param1: string, param2: string, param3: android.app.PendingIntent, param4: android.app.PendingIntent): void;
		}
	}
}

declare module android {
	export module telephony {
		export class SmsMessage extends java.lang.Object {
			public static class: java.lang.Class<android.telephony.SmsMessage>;
			public static ENCODING_UNKNOWN: number;
			public static ENCODING_7BIT: number;
			public static ENCODING_8BIT: number;
			public static ENCODING_16BIT: number;
			public static MAX_USER_DATA_BYTES: number;
			public static MAX_USER_DATA_BYTES_WITH_HEADER: number;
			public static MAX_USER_DATA_SEPTETS: number;
			public static MAX_USER_DATA_SEPTETS_WITH_HEADER: number;
			public isReplace(): boolean;
			/** @deprecated */
			public getIndexOnSim(): number;
			public getEmailBody(): string;
			public getMessageClass(): android.telephony.SmsMessage.MessageClass;
			public isStatusReportMessage(): boolean;
			public static getSubmitPdu(param0: string, param1: string, param2: number, param3: native.Array<number>, param4: boolean): android.telephony.SmsMessage.SubmitPdu;
			public getTimestampMillis(): number;
			/** @deprecated */
			public getStatusOnSim(): number;
			public getPseudoSubject(): string;
			public getEmailFrom(): string;
			public isCphsMwiMessage(): boolean;
			public getStatus(): number;
			public getProtocolIdentifier(): number;
			public getDisplayOriginatingAddress(): string;
			public getDisplayMessageBody(): string;
			public getOriginatingAddress(): string;
			public getServiceCenterAddress(): string;
			public getIndexOnIcc(): number;
			public static calculateLength(param0: string, param1: boolean): native.Array<number>;
			public isMwiDontStore(): boolean;
			public static getTPLayerLengthForPDU(param0: string): number;
			public getPdu(): native.Array<number>;
			public getUserData(): native.Array<number>;
			public getStatusOnIcc(): number;
			public getMessageBody(): string;
			public isMWIClearMessage(): boolean;
			public static getSubmitPdu(param0: string, param1: string, param2: string, param3: boolean): android.telephony.SmsMessage.SubmitPdu;
			public isEmail(): boolean;
			public static createFromPdu(param0: native.Array<number>): android.telephony.SmsMessage;
			public isMWISetMessage(): boolean;
			public isReplyPathPresent(): boolean;
		}
		export module SmsMessage {
			export class MessageClass {
				public static class: java.lang.Class<android.telephony.SmsMessage.MessageClass>;
				public static CLASS_0: android.telephony.SmsMessage.MessageClass;
				public static CLASS_1: android.telephony.SmsMessage.MessageClass;
				public static CLASS_2: android.telephony.SmsMessage.MessageClass;
				public static CLASS_3: android.telephony.SmsMessage.MessageClass;
				public static UNKNOWN: android.telephony.SmsMessage.MessageClass;
				public static values(): native.Array<android.telephony.SmsMessage.MessageClass>;
				public static valueOf(param0: string): android.telephony.SmsMessage.MessageClass;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			}
			export class SubmitPdu extends java.lang.Object {
				public static class: java.lang.Class<android.telephony.SmsMessage.SubmitPdu>;
				public encodedScAddress: native.Array<number>;
				public encodedMessage: native.Array<number>;
				public toString(): string;
			}
		}
	}
}

declare module android {
	export module telephony {
		export class TelephonyManager extends java.lang.Object {
			public static class: java.lang.Class<android.telephony.TelephonyManager>;
			public static ACTION_PHONE_STATE_CHANGED: string;
			public static ACTION_RESPOND_VIA_MESSAGE: string;
			public static EXTRA_STATE: string;
			public static EXTRA_STATE_IDLE: string;
			public static EXTRA_STATE_RINGING: string;
			public static EXTRA_STATE_OFFHOOK: string;
			public static EXTRA_INCOMING_NUMBER: string;
			public static PHONE_TYPE_NONE: number;
			public static PHONE_TYPE_GSM: number;
			public static PHONE_TYPE_CDMA: number;
			public static PHONE_TYPE_SIP: number;
			public static NETWORK_TYPE_UNKNOWN: number;
			public static NETWORK_TYPE_GPRS: number;
			public static NETWORK_TYPE_EDGE: number;
			public static NETWORK_TYPE_UMTS: number;
			public static NETWORK_TYPE_CDMA: number;
			public static NETWORK_TYPE_EVDO_0: number;
			public static NETWORK_TYPE_EVDO_A: number;
			public static NETWORK_TYPE_1xRTT: number;
			public static NETWORK_TYPE_HSDPA: number;
			public static NETWORK_TYPE_HSUPA: number;
			public static NETWORK_TYPE_HSPA: number;
			public static NETWORK_TYPE_IDEN: number;
			public static NETWORK_TYPE_EVDO_B: number;
			public static NETWORK_TYPE_LTE: number;
			public static NETWORK_TYPE_EHRPD: number;
			public static NETWORK_TYPE_HSPAP: number;
			public static SIM_STATE_UNKNOWN: number;
			public static SIM_STATE_ABSENT: number;
			public static SIM_STATE_PIN_REQUIRED: number;
			public static SIM_STATE_PUK_REQUIRED: number;
			public static SIM_STATE_NETWORK_LOCKED: number;
			public static SIM_STATE_READY: number;
			public static CALL_STATE_IDLE: number;
			public static CALL_STATE_RINGING: number;
			public static CALL_STATE_OFFHOOK: number;
			public static DATA_ACTIVITY_NONE: number;
			public static DATA_ACTIVITY_IN: number;
			public static DATA_ACTIVITY_OUT: number;
			public static DATA_ACTIVITY_INOUT: number;
			public static DATA_ACTIVITY_DORMANT: number;
			public static DATA_DISCONNECTED: number;
			public static DATA_CONNECTING: number;
			public static DATA_CONNECTED: number;
			public static DATA_SUSPENDED: number;
			public getCallState(): number;
			public getNetworkOperatorName(): string;
			public getLine1Number(): string;
			public getSimOperatorName(): string;
			public listen(param0: android.telephony.PhoneStateListener, param1: number): void;
			public getNetworkOperator(): string;
			public getAllCellInfo(): java.util.List<android.telephony.CellInfo>;
			public getCellLocation(): android.telephony.CellLocation;
			public hasIccCard(): boolean;
			public getNetworkCountryIso(): string;
			public getSimOperator(): string;
			public getDeviceId(): string;
			public getNetworkType(): number;
			public getDataState(): number;
			public getNeighboringCellInfo(): java.util.List<android.telephony.NeighboringCellInfo>;
			public getSimCountryIso(): string;
			public getPhoneType(): number;
			public getSimState(): number;
			public isNetworkRoaming(): boolean;
			public getGroupIdLevel1(): string;
			public getVoiceMailNumber(): string;
			public getSimSerialNumber(): string;
			public getSubscriberId(): string;
			public getVoiceMailAlphaTag(): string;
			public getDataActivity(): number;
			public getDeviceSoftwareVersion(): string;
		}
	}
}

declare module android {
	export module telephony {
		export module cdma {
			export class CdmaCellLocation extends android.telephony.CellLocation {
				public static class: java.lang.Class<android.telephony.cdma.CdmaCellLocation>;
				public fillInNotifierBundle(param0: android.os.Bundle): void;
				public setCellLocationData(param0: number, param1: number, param2: number, param3: number, param4: number): void;
				public constructor(param0: android.os.Bundle);
				public getBaseStationLongitude(): number;
				public setCellLocationData(param0: number, param1: number, param2: number): void;
				public getBaseStationLatitude(): number;
				public toString(): string;
				public constructor();
				public getNetworkId(): number;
				public setStateInvalid(): void;
				public getBaseStationId(): number;
				public hashCode(): number;
				public static convertQuartSecToDecDegrees(param0: number): number;
				public equals(param0: any): boolean;
				public getSystemId(): number;
			}
		}
	}
}

declare module android {
	export module telephony {
		export module gsm {
			export class GsmCellLocation extends android.telephony.CellLocation {
				public static class: java.lang.Class<android.telephony.gsm.GsmCellLocation>;
				public fillInNotifierBundle(param0: android.os.Bundle): void;
				public setLacAndCid(param0: number, param1: number): void;
				public hashCode(): number;
				public constructor(param0: android.os.Bundle);
				public getCid(): number;
				public equals(param0: any): boolean;
				public getLac(): number;
				public toString(): string;
				public getPsc(): number;
				public constructor();
				public setStateInvalid(): void;
			}
		}
	}
}

declare module android {
	export module telephony {
		export module gsm {
			export class SmsManager extends java.lang.Object {
				public static class: java.lang.Class<android.telephony.gsm.SmsManager>;
				public static STATUS_ON_SIM_FREE: number;
				public static STATUS_ON_SIM_READ: number;
				public static STATUS_ON_SIM_UNREAD: number;
				public static STATUS_ON_SIM_SENT: number;
				public static STATUS_ON_SIM_UNSENT: number;
				public static RESULT_ERROR_GENERIC_FAILURE: number;
				public static RESULT_ERROR_RADIO_OFF: number;
				public static RESULT_ERROR_NULL_PDU: number;
				public static RESULT_ERROR_NO_SERVICE: number;
				/** @deprecated */
				public sendTextMessage(param0: string, param1: string, param2: string, param3: android.app.PendingIntent, param4: android.app.PendingIntent): void;
				/** @deprecated */
				public divideMessage(param0: string): java.util.ArrayList<string>;
				/** @deprecated */
				public sendDataMessage(param0: string, param1: string, param2: number, param3: native.Array<number>, param4: android.app.PendingIntent, param5: android.app.PendingIntent): void;
				/** @deprecated */
				public static getDefault(): android.telephony.gsm.SmsManager;
				/** @deprecated */
				public sendMultipartTextMessage(param0: string, param1: string, param2: java.util.ArrayList<string>, param3: java.util.ArrayList<android.app.PendingIntent>, param4: java.util.ArrayList<android.app.PendingIntent>): void;
			}
		}
	}
}

declare module android {
	export module telephony {
		export module gsm {
			export class SmsMessage extends java.lang.Object {
				public static class: java.lang.Class<android.telephony.gsm.SmsMessage>;
				public static ENCODING_UNKNOWN: number;
				public static ENCODING_7BIT: number;
				public static ENCODING_8BIT: number;
				public static ENCODING_16BIT: number;
				public static MAX_USER_DATA_BYTES: number;
				public static MAX_USER_DATA_SEPTETS: number;
				public static MAX_USER_DATA_SEPTETS_WITH_HEADER: number;
				/** @deprecated */
				public getDisplayMessageBody(): string;
				/** @deprecated */
				public static createFromPdu(param0: native.Array<number>): android.telephony.gsm.SmsMessage;
				/** @deprecated */
				public getServiceCenterAddress(): string;
				/** @deprecated */
				public getEmailFrom(): string;
				/** @deprecated */
				public getOriginatingAddress(): string;
				/** @deprecated */
				public getStatusOnSim(): number;
				/** @deprecated */
				public getTimestampMillis(): number;
				/** @deprecated */
				public getProtocolIdentifier(): number;
				/** @deprecated */
				public static calculateLength(param0: string, param1: boolean): native.Array<number>;
				/** @deprecated */
				public getIndexOnSim(): number;
				/** @deprecated */
				public getPdu(): native.Array<number>;
				/** @deprecated */
				public isReplace(): boolean;
				/** @deprecated */
				public static getSubmitPdu(param0: string, param1: string, param2: number, param3: native.Array<number>, param4: boolean): android.telephony.gsm.SmsMessage.SubmitPdu;
				/** @deprecated */
				public getStatus(): number;
				/** @deprecated */
				public isEmail(): boolean;
				/** @deprecated */
				public static getSubmitPdu(param0: string, param1: string, param2: string, param3: boolean): android.telephony.gsm.SmsMessage.SubmitPdu;
				/** @deprecated */
				public getMessageClass(): android.telephony.gsm.SmsMessage.MessageClass;
				/** @deprecated */
				public isMWISetMessage(): boolean;
				/** @deprecated */
				public getEmailBody(): string;
				/** @deprecated */
				public getPseudoSubject(): string;
				/** @deprecated */
				public isMWIClearMessage(): boolean;
				/** @deprecated */
				public isCphsMwiMessage(): boolean;
				/** @deprecated */
				public isReplyPathPresent(): boolean;
				/** @deprecated */
				public isStatusReportMessage(): boolean;
				/** @deprecated */
				public isMwiDontStore(): boolean;
				/** @deprecated */
				public getMessageBody(): string;
				/** @deprecated */
				public constructor();
				/** @deprecated */
				public getDisplayOriginatingAddress(): string;
				/** @deprecated */
				public getUserData(): native.Array<number>;
				/** @deprecated */
				public static getTPLayerLengthForPDU(param0: string): number;
			}
			export module SmsMessage {
				export class MessageClass {
					public static class: java.lang.Class<android.telephony.gsm.SmsMessage.MessageClass>;
					public static CLASS_0: android.telephony.gsm.SmsMessage.MessageClass;
					public static CLASS_1: android.telephony.gsm.SmsMessage.MessageClass;
					public static CLASS_2: android.telephony.gsm.SmsMessage.MessageClass;
					public static CLASS_3: android.telephony.gsm.SmsMessage.MessageClass;
					public static UNKNOWN: android.telephony.gsm.SmsMessage.MessageClass;
					public static valueOf(param0: string): android.telephony.gsm.SmsMessage.MessageClass;
					public static values(): native.Array<android.telephony.gsm.SmsMessage.MessageClass>;
					public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
				}
				export class SubmitPdu extends java.lang.Object {
					public static class: java.lang.Class<android.telephony.gsm.SmsMessage.SubmitPdu>;
					public encodedScAddress: native.Array<number>;
					public encodedMessage: native.Array<number>;
					public toString(): string;
					/** @deprecated */
					public constructor();
					/** @deprecated */
					public toString(): string;
				}
			}
		}
	}
}

declare module android {
	export module test {
		export abstract class ActivityInstrumentationTestCase<T>  extends android.test.ActivityTestCase {
			public static class: java.lang.Class<android.test.ActivityInstrumentationTestCase<any>>;
			public constructor(param0: string, param1: java.lang.Class<any>, param2: boolean);
			public countTestCases(): number;
			public setUp(): void;
			public tearDown(): void;
			public testActivityTestCaseSetUpProperly(): void;
			public constructor(param0: string, param1: java.lang.Class<any>);
			public getActivity(): android.app.Activity;
			public run(param0: junit.framework.TestResult): void;
			public run(): junit.framework.TestResult;
			public constructor();
			public getActivity(): any;
			public constructor(param0: string);
		}
	}
}

declare module android {
	export module test {
		export abstract class ActivityInstrumentationTestCase2<T>  extends android.test.ActivityTestCase {
			public static class: java.lang.Class<android.test.ActivityInstrumentationTestCase2<any>>;
			public countTestCases(): number;
			public run(): junit.framework.TestResult;
			public constructor();
			public getActivity(): any;
			/** @deprecated */
			public constructor(param0: string, param1: java.lang.Class<any>);
			public setActivityInitialTouchMode(param0: boolean): void;
			public setActivityIntent(param0: android.content.Intent): void;
			public setUp(): void;
			public tearDown(): void;
			public getActivity(): android.app.Activity;
			public run(param0: junit.framework.TestResult): void;
			public constructor(param0: java.lang.Class<any>);
			public runTest(): void;
			public constructor(param0: string);
		}
	}
}

declare module android {
	export module test {
		export abstract class ActivityTestCase extends android.test.InstrumentationTestCase {
			public static class: java.lang.Class<android.test.ActivityTestCase>;
			public countTestCases(): number;
			public getActivity(): android.app.Activity;
			public scrubClass(param0: java.lang.Class<any>): void;
			public run(param0: junit.framework.TestResult): void;
			public run(): junit.framework.TestResult;
			public constructor();
			public constructor(param0: string);
			public setActivity(param0: android.app.Activity): void;
		}
	}
}

declare module android {
	export module test {
		export abstract class ActivityUnitTestCase<T>  extends android.test.ActivityTestCase {
			public static class: java.lang.Class<android.test.ActivityUnitTestCase<any>>;
			public countTestCases(): number;
			public isFinishCalled(): boolean;
			public run(): junit.framework.TestResult;
			public constructor();
			public getActivity(): any;
			public getStartedActivityIntent(): android.content.Intent;
			public setUp(): void;
			public startActivity(param0: android.content.Intent, param1: android.os.Bundle, param2: any): any;
			public tearDown(): void;
			public getFinishedActivityRequest(): number;
			public setActivityContext(param0: android.content.Context): void;
			public getActivity(): android.app.Activity;
			public setApplication(param0: android.app.Application): void;
			public run(param0: junit.framework.TestResult): void;
			public constructor(param0: java.lang.Class<any>);
			public getRequestedOrientation(): number;
			public getStartedActivityRequest(): number;
			public constructor(param0: string);
		}
	}
}

declare module android {
	export module test {
		export class AndroidTestCase extends junit.framework.TestCase {
			public static class: java.lang.Class<android.test.AndroidTestCase>;
			public mContext: android.content.Context;
			public assertWritingContentUriRequiresPermission(param0: android.net.Uri, param1: string): void;
			public countTestCases(): number;
			public testAndroidTestCaseSetupProperly(): void;
			public setContext(param0: android.content.Context): void;
			public assertReadingContentUriRequiresPermission(param0: android.net.Uri, param1: string): void;
			public scrubClass(param0: java.lang.Class<any>): void;
			public run(): junit.framework.TestResult;
			public constructor();
			public assertActivityRequiresPermission(param0: string, param1: string, param2: string): void;
			public setUp(): void;
			public tearDown(): void;
			public run(param0: junit.framework.TestResult): void;
			public getContext(): android.content.Context;
			public constructor(param0: string);
		}
	}
}

declare module android {
	export module test {
		export class AndroidTestRunner extends junit.runner.BaseTestRunner {
			public static class: java.lang.Class<android.test.AndroidTestRunner>;
			public testEnded(param0: string): void;
			public testFailed(param0: number, param1: junit.framework.Test, param2: java.lang.Throwable): void;
			public endTest(param0: junit.framework.Test): void;
			public createTestResult(): junit.framework.TestResult;
			public startTest(param0: junit.framework.Test): void;
			public setTest(param0: junit.framework.Test): void;
			public setContext(param0: android.content.Context): void;
			public runFailed(param0: string): void;
			public addFailure(param0: junit.framework.Test, param1: junit.framework.AssertionFailedError): void;
			public setTestClassName(param0: string, param1: string): void;
			public constructor();
			public getTestResult(): junit.framework.TestResult;
			public setInstrumentation(param0: android.app.Instrumentation): void;
			/** @deprecated */
			public setInstrumentaiton(param0: android.app.Instrumentation): void;
			public addError(param0: junit.framework.Test, param1: java.lang.Throwable): void;
			public loadSuiteClass(param0: string): java.lang.Class<any>;
			public addTestListener(param0: junit.framework.TestListener): void;
			public getTestClassName(): string;
			public getTestCases(): java.util.List<junit.framework.TestCase>;
			public testStarted(param0: string): void;
			public clearTestListeners(): void;
			public loadSuiteClass(param0: string): java.lang.Class<any>;
			public runTest(): void;
			public runTest(param0: junit.framework.TestResult): void;
		}
	}
}

declare module android {
	export module test {
		export abstract class ApplicationTestCase<T>  extends android.test.AndroidTestCase {
			public static class: java.lang.Class<android.test.ApplicationTestCase<any>>;
			public getApplication(): any;
			public countTestCases(): number;
			public getSystemContext(): android.content.Context;
			public run(): junit.framework.TestResult;
			public constructor();
			public terminateApplication(): void;
			public setUp(): void;
			public tearDown(): void;
			public run(param0: junit.framework.TestResult): void;
			public constructor(param0: java.lang.Class<any>);
			public createApplication(): void;
			public testApplicationTestCaseSetUpProperly(): void;
			public constructor(param0: string);
		}
	}
}

declare module android {
	export module test {
		export class AssertionFailedError extends java.lang.Error {
			public static class: java.lang.Class<android.test.AssertionFailedError>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module android {
	export module test {
		export class ComparisonFailure extends android.test.AssertionFailedError {
			public static class: java.lang.Class<android.test.ComparisonFailure>;
			public getMessage(): string;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor(param0: string, param1: string, param2: string);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module android {
	export module test {
		export class FlakyTest extends java.lang.Object implements java.lang.annotation.Annotation {
			public static class: java.lang.Class<android.test.FlakyTest>;
			/**
			 * Constructs a new instance of the android.test.FlakyTest interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				tolerance(): number;
				annotationType(): java.lang.Class<any>;
				equals(param0: any): boolean;
				hashCode(): number;
				toString(): string;
			});
			public constructor();
			public tolerance(): number;
			public equals(param0: any): boolean;
			public toString(): string;
			public annotationType(): java.lang.Class<any>;
			public hashCode(): number;
		}
	}
}

declare module android {
	export module test {
		export class InstrumentationTestCase extends junit.framework.TestCase {
			public static class: java.lang.Class<android.test.InstrumentationTestCase>;
			public injectInstrumentation(param0: android.app.Instrumentation): void;
			public runTestOnUiThread(param0: java.lang.Runnable): void;
			public sendKeys(param0: string): void;
			public countTestCases(): number;
			public launchActivityWithIntent(param0: string, param1: java.lang.Class<any>, param2: android.content.Intent): android.app.Activity;
			public run(): junit.framework.TestResult;
			public constructor();
			public sendRepeatedKeys(param0: native.Array<number>): void;
			public tearDown(): void;
			/** @deprecated */
			public injectInsrumentation(param0: android.app.Instrumentation): void;
			public launchActivity(param0: string, param1: java.lang.Class<any>, param2: android.os.Bundle): android.app.Activity;
			public run(param0: junit.framework.TestResult): void;
			public getInstrumentation(): android.app.Instrumentation;
			public runTest(): void;
			public sendKeys(param0: native.Array<number>): void;
			public constructor(param0: string);
		}
	}
}

declare module android {
	export module test {
		export class InstrumentationTestRunner extends android.app.Instrumentation implements android.test.TestSuiteProvider {
			public static class: java.lang.Class<android.test.InstrumentationTestRunner>;
			public static REPORT_VALUE_ID: string;
			public static REPORT_KEY_NUM_TOTAL: string;
			public static REPORT_KEY_NUM_CURRENT: string;
			public static REPORT_KEY_NAME_CLASS: string;
			public static REPORT_KEY_NAME_TEST: string;
			public static REPORT_VALUE_RESULT_START: number;
			public static REPORT_VALUE_RESULT_OK: number;
			public static REPORT_VALUE_RESULT_ERROR: number;
			public static REPORT_VALUE_RESULT_FAILURE: number;
			public static REPORT_KEY_STACK: string;
			public getTestSuite(): junit.framework.TestSuite;
			public onStart(): void;
			public getAllTests(): junit.framework.TestSuite;
			public getArguments(): android.os.Bundle;
			public getAndroidTestRunner(): android.test.AndroidTestRunner;
			public getLoader(): java.lang.ClassLoader;
			public constructor();
			public onCreate(param0: android.os.Bundle): void;
		}
	}
}

declare module android {
	export module test {
		export class InstrumentationTestSuite extends junit.framework.TestSuite {
			public static class: java.lang.Class<android.test.InstrumentationTestSuite>;
			public constructor(param0: java.lang.Class<any>, param1: string);
			public constructor(param0: string, param1: android.app.Instrumentation);
			public constructor(param0: native.Array<java.lang.Class<any>>, param1: string);
			public addTestSuite(param0: java.lang.Class<any>): void;
			public countTestCases(): number;
			public constructor();
			public runTest(param0: junit.framework.Test, param1: junit.framework.TestResult): void;
			public constructor(param0: native.Array<java.lang.Class<any>>);
			public constructor(param0: java.lang.Class<any>, param1: android.app.Instrumentation);
			public run(param0: junit.framework.TestResult): void;
			public constructor(param0: java.lang.Class<any>);
			public addTestSuite(param0: java.lang.Class<any>): void;
			public constructor(param0: string);
			public constructor(param0: android.app.Instrumentation);
		}
	}
}

declare module android {
	export module test {
		export class IsolatedContext extends android.content.ContextWrapper {
			public static class: java.lang.Class<android.test.IsolatedContext>;
			public constructor(param0: android.content.ContentResolver, param1: android.content.Context);
			public registerReceiver(param0: android.content.BroadcastReceiver, param1: android.content.IntentFilter): android.content.Intent;
			public checkUriPermission(param0: android.net.Uri, param1: string, param2: string, param3: number, param4: number, param5: number): number;
			public sendOrderedBroadcast(param0: android.content.Intent, param1: string, param2: android.content.BroadcastReceiver, param3: android.os.Handler, param4: number, param5: string, param6: android.os.Bundle): void;
			public getFilesDir(): java.io.File;
			public registerReceiver(param0: android.content.BroadcastReceiver, param1: android.content.IntentFilter, param2: string, param3: android.os.Handler): android.content.Intent;
			public sendOrderedBroadcast(param0: android.content.Intent, param1: string): void;
			public constructor();
			public checkUriPermission(param0: android.net.Uri, param1: number, param2: number, param3: number): number;
			public getContentResolver(): android.content.ContentResolver;
			public getAndClearBroadcastIntents(): java.util.List<android.content.Intent>;
			public sendBroadcast(param0: android.content.Intent, param1: string): void;
			public getSystemService(param0: string): any;
			public constructor(param0: android.content.Context);
			public bindService(param0: android.content.Intent, param1: android.content.ServiceConnection, param2: number): boolean;
			public unregisterReceiver(param0: android.content.BroadcastReceiver): void;
			public sendBroadcast(param0: android.content.Intent): void;
		}
	}
}

declare module android {
	export module test {
		export class LoaderTestCase extends android.test.AndroidTestCase {
			public static class: java.lang.Class<android.test.LoaderTestCase>;
			public countTestCases(): number;
			public getLoaderResultSynchronously(param0: android.content.Loader<any>): any;
			public run(param0: junit.framework.TestResult): void;
			public run(): junit.framework.TestResult;
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module android {
	export module test {
		export class MoreAsserts extends java.lang.Object {
			public static class: java.lang.Class<android.test.MoreAsserts>;
			public static assertEmpty(param0: java.lang.Iterable<any>): void;
			public static assertMatchesRegex(param0: string, param1: string): java.util.regex.MatchResult;
			public static assertEmpty(param0: string, param1: java.lang.Iterable<any>): void;
			public static assertNotContainsRegex(param0: string, param1: string, param2: string): void;
			public static assertContentsInAnyOrder(param0: string, param1: java.lang.Iterable<any>, param2: native.Array<any>): void;
			public static assertEquals(param0: native.Array<any>, param1: native.Array<any>): void;
			public static assertNotEmpty(param0: string, param1: java.util.Map<any,any>): void;
			public static assertContentsInOrder(param0: string, param1: java.lang.Iterable<any>, param2: native.Array<any>): void;
			public static assertEmpty(param0: string, param1: java.util.Map<any,any>): void;
			public static assertNotEmpty(param0: java.lang.Iterable<any>): void;
			public static assertContentsInAnyOrder(param0: java.lang.Iterable<any>, param1: native.Array<any>): void;
			public static assertNotEmpty(param0: string, param1: java.lang.Iterable<any>): void;
			public static assertMatchesRegex(param0: string, param1: string, param2: string): java.util.regex.MatchResult;
			public static assertNotContainsRegex(param0: string, param1: string): void;
			public static checkEqualsAndHashCodeMethods(param0: string, param1: any, param2: any, param3: boolean): void;
			public static assertEquals(param0: string, param1: native.Array<any>, param2: native.Array<any>): void;
			public static assertNotEqual(param0: any, param1: any): void;
			public static assertAssignableFrom(param0: java.lang.Class<any>, param1: java.lang.Class<any>): void;
			public static assertNotEqual(param0: string, param1: any, param2: any): void;
			public static assertEmpty(param0: java.util.Map<any,any>): void;
			public static checkEqualsAndHashCodeMethods(param0: any, param1: any, param2: boolean): void;
			public static assertAssignableFrom(param0: java.lang.Class<any>, param1: any): void;
			public static assertEquals(param0: string, param1: java.util.Set<any>, param2: java.util.Set<any>): void;
			public static assertContentsInOrder(param0: java.lang.Iterable<any>, param1: native.Array<any>): void;
			public static assertContainsRegex(param0: string, param1: string, param2: string): java.util.regex.MatchResult;
			public static assertEquals(param0: java.util.Set<any>, param1: java.util.Set<any>): void;
			public static assertEquals(param0: string, param1: native.Array<number>, param2: native.Array<number>): void;
			public static assertNotMatchesRegex(param0: string, param1: string): void;
			public static assertNotMatchesRegex(param0: string, param1: string, param2: string): void;
			public static assertContainsRegex(param0: string, param1: string): java.util.regex.MatchResult;
			public static assertNotEmpty(param0: java.util.Map<any,any>): void;
			public static assertEquals(param0: native.Array<number>, param1: native.Array<number>): void;
		}
	}
}

declare module android {
	export module test {
		export class PerformanceTestCase extends java.lang.Object {
			public static class: java.lang.Class<android.test.PerformanceTestCase>;
			/**
			 * Constructs a new instance of the android.test.PerformanceTestCase interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				startPerformance(param0: android.test.PerformanceTestCase.Intermediates): number;
				isPerformanceOnly(): boolean;
			});
			public constructor();
			public startPerformance(param0: android.test.PerformanceTestCase.Intermediates): number;
			public isPerformanceOnly(): boolean;
		}
		export module PerformanceTestCase {
			export class Intermediates extends java.lang.Object {
				public static class: java.lang.Class<android.test.PerformanceTestCase.Intermediates>;
				/**
				 * Constructs a new instance of the android.test.PerformanceTestCase$Intermediates interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					setInternalIterations(param0: number): void;
					startTiming(param0: boolean): void;
					addIntermediate(param0: string): void;
					addIntermediate(param0: string, param1: number): void;
					finishTiming(param0: boolean): void;
				});
				public constructor();
				public setInternalIterations(param0: number): void;
				public finishTiming(param0: boolean): void;
				public addIntermediate(param0: string, param1: number): void;
				public addIntermediate(param0: string): void;
				public startTiming(param0: boolean): void;
			}
		}
	}
}

declare module android {
	export module test {
		export abstract class ProviderTestCase<T>  extends android.test.InstrumentationTestCase {
			public static class: java.lang.Class<android.test.ProviderTestCase<any>>;
			public constructor(param0: java.lang.Class<any>, param1: string);
			public getMockContentResolver(): android.test.mock.MockContentResolver;
			public countTestCases(): number;
			public setUp(): void;
			public tearDown(): void;
			public getProvider(): any;
			public run(param0: junit.framework.TestResult): void;
			public run(): junit.framework.TestResult;
			public constructor();
			public getMockContext(): android.test.IsolatedContext;
			public constructor(param0: string);
			public static newResolverWithContentProviderFromSql(param0: android.content.Context, param1: java.lang.Class<any>, param2: string, param3: string, param4: number, param5: string): android.content.ContentResolver;
		}
	}
}

declare module android {
	export module test {
		export abstract class ProviderTestCase2<T>  extends android.test.AndroidTestCase {
			public static class: java.lang.Class<android.test.ProviderTestCase2<any>>;
			public constructor(param0: java.lang.Class<any>, param1: string);
			public getMockContentResolver(): android.test.mock.MockContentResolver;
			public countTestCases(): number;
			public setUp(): void;
			public tearDown(): void;
			public getProvider(): any;
			public run(param0: junit.framework.TestResult): void;
			public run(): junit.framework.TestResult;
			public constructor();
			public static newResolverWithContentProviderFromSql(param0: android.content.Context, param1: string, param2: java.lang.Class<any>, param3: string, param4: string, param5: number, param6: string): android.content.ContentResolver;
			public getMockContext(): android.test.IsolatedContext;
			public constructor(param0: string);
		}
	}
}

declare module android {
	export module test {
		export class RenamingDelegatingContext extends android.content.ContextWrapper {
			public static class: java.lang.Class<android.test.RenamingDelegatingContext>;
			public static providerWithRenamedContext(param0: java.lang.Class<any>, param1: android.content.Context, param2: string, param3: boolean): android.content.ContentProvider;
			public databaseList(): native.Array<string>;
			public makeExistingFilesAndDbsAccessible(): void;
			public openOrCreateDatabase(param0: string, param1: number, param2: android.database.sqlite.SQLiteDatabase.CursorFactory, param3: android.database.DatabaseErrorHandler): android.database.sqlite.SQLiteDatabase;
			public constructor(param0: android.content.Context, param1: android.content.Context, param2: string);
			public openFileOutput(param0: string, param1: number): java.io.FileOutputStream;
			public fileList(): native.Array<string>;
			public constructor(param0: android.content.Context, param1: string);
			public deleteDatabase(param0: string): boolean;
			public constructor();
			public static providerWithRenamedContext(param0: java.lang.Class<any>, param1: android.content.Context, param2: string): android.content.ContentProvider;
			public getDatabasePrefix(): string;
			public getFileStreamPath(param0: string): java.io.File;
			public openFileInput(param0: string): java.io.FileInputStream;
			public constructor(param0: android.content.Context);
			public deleteFile(param0: string): boolean;
			public getCacheDir(): java.io.File;
			public getDatabasePath(param0: string): java.io.File;
			public openOrCreateDatabase(param0: string, param1: number, param2: android.database.sqlite.SQLiteDatabase.CursorFactory): android.database.sqlite.SQLiteDatabase;
		}
	}
}

declare module android {
	export module test {
		export abstract class ServiceTestCase<T>  extends android.test.AndroidTestCase {
			public static class: java.lang.Class<android.test.ServiceTestCase<any>>;
			public countTestCases(): number;
			public getSystemContext(): android.content.Context;
			public setupService(): void;
			public run(): junit.framework.TestResult;
			public constructor();
			public getApplication(): android.app.Application;
			public getService(): any;
			public testServiceTestCaseSetUpProperly(): void;
			public bindService(param0: android.content.Intent): android.os.IBinder;
			public setUp(): void;
			public tearDown(): void;
			public setApplication(param0: android.app.Application): void;
			public run(param0: junit.framework.TestResult): void;
			public constructor(param0: java.lang.Class<any>);
			public startService(param0: android.content.Intent): void;
			public shutdownService(): void;
			public constructor(param0: string);
		}
	}
}

declare module android {
	export module test {
		export abstract class SingleLaunchActivityTestCase<T>  extends android.test.InstrumentationTestCase {
			public static class: java.lang.Class<android.test.SingleLaunchActivityTestCase<any>>;
			public countTestCases(): number;
			public setUp(): void;
			public tearDown(): void;
			public testActivityTestCaseSetUpProperly(): void;
			public constructor(param0: string, param1: java.lang.Class<any>);
			public run(param0: junit.framework.TestResult): void;
			public run(): junit.framework.TestResult;
			public constructor();
			public getActivity(): any;
			public constructor(param0: string);
		}
	}
}

declare module android {
	export module test {
		export class SyncBaseInstrumentation extends android.test.InstrumentationTestCase {
			public static class: java.lang.Class<android.test.SyncBaseInstrumentation>;
			public syncProvider(param0: android.net.Uri, param1: string, param2: string): void;
			public countTestCases(): number;
			public setUp(): void;
			public run(param0: junit.framework.TestResult): void;
			public run(): junit.framework.TestResult;
			public constructor();
			public constructor(param0: string);
			public cancelSyncsandDisableAutoSync(): void;
		}
	}
}

declare module android {
	export module test {
		export class TestSuiteProvider extends java.lang.Object {
			public static class: java.lang.Class<android.test.TestSuiteProvider>;
			/**
			 * Constructs a new instance of the android.test.TestSuiteProvider interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				getTestSuite(): junit.framework.TestSuite;
			});
			public constructor();
			public getTestSuite(): junit.framework.TestSuite;
		}
	}
}

declare module android {
	export module test {
		export class TouchUtils extends java.lang.Object {
			public static class: java.lang.Class<android.test.TouchUtils>;
			public static dragViewToY(param0: android.test.InstrumentationTestCase, param1: android.view.View, param2: number, param3: number): number;
			/** @deprecated */
			public static dragViewToY(param0: android.test.ActivityInstrumentationTestCase<any>, param1: android.view.View, param2: number, param3: number): number;
			public static longClickView(param0: android.test.InstrumentationTestCase, param1: android.view.View): void;
			public static dragViewToX(param0: android.test.InstrumentationTestCase, param1: android.view.View, param2: number, param3: number): number;
			/** @deprecated */
			public static dragViewToTop(param0: android.test.ActivityInstrumentationTestCase<any>, param1: android.view.View, param2: number): void;
			public static dragViewToTop(param0: android.test.InstrumentationTestCase, param1: android.view.View, param2: number): void;
			public static touchAndCancelView(param0: android.test.InstrumentationTestCase, param1: android.view.View): void;
			/** @deprecated */
			public static longClickView(param0: android.test.ActivityInstrumentationTestCase<any>, param1: android.view.View): void;
			/** @deprecated */
			public static dragQuarterScreenUp(param0: android.test.ActivityInstrumentationTestCase<any>): void;
			public static dragQuarterScreenDown(param0: android.test.InstrumentationTestCase, param1: android.app.Activity): void;
			/** @deprecated */
			public static dragViewToX(param0: android.test.ActivityInstrumentationTestCase<any>, param1: android.view.View, param2: number, param3: number): number;
			/** @deprecated */
			public static dragViewBy(param0: android.test.InstrumentationTestCase, param1: android.view.View, param2: number, param3: number, param4: number): number;
			/** @deprecated */
			public static scrollToTop(param0: android.test.ActivityInstrumentationTestCase<any>, param1: android.view.ViewGroup): void;
			public static dragQuarterScreenUp(param0: android.test.InstrumentationTestCase, param1: android.app.Activity): void;
			/** @deprecated */
			public static dragQuarterScreenDown(param0: android.test.ActivityInstrumentationTestCase<any>): void;
			/** @deprecated */
			public static dragViewToBottom(param0: android.test.ActivityInstrumentationTestCase<any>, param1: android.view.View): void;
			public static dragViewToBottom(param0: android.test.InstrumentationTestCase, param1: android.app.Activity, param2: android.view.View): void;
			/** @deprecated */
			public static dragViewToBottom(param0: android.test.ActivityInstrumentationTestCase<any>, param1: android.view.View, param2: number): void;
			public static dragViewToTop(param0: android.test.InstrumentationTestCase, param1: android.view.View): void;
			public static scrollToBottom(param0: android.test.InstrumentationTestCase, param1: android.app.Activity, param2: android.view.ViewGroup): void;
			public constructor();
			public static scrollToTop(param0: android.test.InstrumentationTestCase, param1: android.app.Activity, param2: android.view.ViewGroup): void;
			public static drag(param0: android.test.InstrumentationTestCase, param1: number, param2: number, param3: number, param4: number, param5: number): void;
			public static dragViewToBottom(param0: android.test.InstrumentationTestCase, param1: android.app.Activity, param2: android.view.View, param3: number): void;
			/** @deprecated */
			public static scrollToBottom(param0: android.test.ActivityInstrumentationTestCase<any>, param1: android.view.ViewGroup): void;
			/** @deprecated */
			public static dragViewToTop(param0: android.test.ActivityInstrumentationTestCase<any>, param1: android.view.View): void;
			/** @deprecated */
			public static dragViewTo(param0: android.test.ActivityInstrumentationTestCase<any>, param1: android.view.View, param2: number, param3: number, param4: number): number;
			/** @deprecated */
			public static drag(param0: android.test.ActivityInstrumentationTestCase<any>, param1: number, param2: number, param3: number, param4: number, param5: number): void;
			public static clickView(param0: android.test.InstrumentationTestCase, param1: android.view.View): void;
			public static dragViewTo(param0: android.test.InstrumentationTestCase, param1: android.view.View, param2: number, param3: number, param4: number): number;
			/** @deprecated */
			public static dragViewBy(param0: android.test.ActivityInstrumentationTestCase<any>, param1: android.view.View, param2: number, param3: number, param4: number): number;
			public static tapView(param0: android.test.InstrumentationTestCase, param1: android.view.View): void;
		}
	}
}

declare module android {
	export module test {
		export class UiThreadTest extends java.lang.Object implements java.lang.annotation.Annotation {
			public static class: java.lang.Class<android.test.UiThreadTest>;
			/**
			 * Constructs a new instance of the android.test.UiThreadTest interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				annotationType(): java.lang.Class<any>;
				equals(param0: any): boolean;
				hashCode(): number;
				toString(): string;
			});
			public constructor();
			public equals(param0: any): boolean;
			public toString(): string;
			public annotationType(): java.lang.Class<any>;
			public hashCode(): number;
		}
	}
}

declare module android {
	export module test {
		export class ViewAsserts extends java.lang.Object {
			public static class: java.lang.Class<android.test.ViewAsserts>;
			public static assertGroupContains(param0: android.view.ViewGroup, param1: android.view.View): void;
			public static assertRightAligned(param0: android.view.View, param1: android.view.View, param2: number): void;
			public static assertOnScreen(param0: android.view.View, param1: android.view.View): void;
			public static assertOffScreenBelow(param0: android.view.View, param1: android.view.View): void;
			public static assertBottomAligned(param0: android.view.View, param1: android.view.View): void;
			public static assertLeftAligned(param0: android.view.View, param1: android.view.View, param2: number): void;
			public static assertTopAligned(param0: android.view.View, param1: android.view.View, param2: number): void;
			public static assertHorizontalCenterAligned(param0: android.view.View, param1: android.view.View): void;
			public static assertBottomAligned(param0: android.view.View, param1: android.view.View, param2: number): void;
			public static assertVerticalCenterAligned(param0: android.view.View, param1: android.view.View): void;
			public static assertOffScreenAbove(param0: android.view.View, param1: android.view.View): void;
			public static assertLeftAligned(param0: android.view.View, param1: android.view.View): void;
			public static assertGroupIntegrity(param0: android.view.ViewGroup): void;
			public static assertHasScreenCoordinates(param0: android.view.View, param1: android.view.View, param2: number, param3: number): void;
			public static assertRightAligned(param0: android.view.View, param1: android.view.View): void;
			public static assertGroupNotContains(param0: android.view.ViewGroup, param1: android.view.View): void;
			public static assertBaselineAligned(param0: android.view.View, param1: android.view.View): void;
			public static assertTopAligned(param0: android.view.View, param1: android.view.View): void;
		}
	}
}

declare module android {
	export module test {
		export module mock {
			export class MockApplication extends android.app.Application {
				public static class: java.lang.Class<android.test.mock.MockApplication>;
				public onTerminate(): void;
				public constructor(param0: android.content.Context);
				public onCreate(): void;
				public onTrimMemory(param0: number): void;
				public constructor();
				public onConfigurationChanged(param0: android.content.res.Configuration): void;
			}
		}
	}
}

declare module android {
	export module test {
		export module mock {
			export class MockContentProvider extends android.content.ContentProvider {
				public static class: java.lang.Class<android.test.mock.MockContentProvider>;
				public getStreamTypes(param0: android.net.Uri, param1: string): native.Array<string>;
				public delete(param0: android.net.Uri, param1: string, param2: native.Array<string>): number;
				public insert(param0: android.net.Uri, param1: android.content.ContentValues): android.net.Uri;
				public query(param0: android.net.Uri, param1: native.Array<string>, param2: string, param3: native.Array<string>, param4: string, param5: android.os.CancellationSignal): android.database.Cursor;
				public onCreate(): boolean;
				public constructor();
				public attachInfo(param0: android.content.Context, param1: android.content.pm.ProviderInfo): void;
				public applyBatch(param0: java.util.ArrayList<android.content.ContentProviderOperation>): native.Array<android.content.ContentProviderResult>;
				public constructor(param0: android.content.Context);
				public openTypedAssetFile(param0: android.net.Uri, param1: string, param2: android.os.Bundle): android.content.res.AssetFileDescriptor;
				public bulkInsert(param0: android.net.Uri, param1: native.Array<android.content.ContentValues>): number;
				public getType(param0: android.net.Uri): string;
				public update(param0: android.net.Uri, param1: android.content.ContentValues, param2: string, param3: native.Array<string>): number;
				public onTrimMemory(param0: number): void;
				public constructor(param0: android.content.Context, param1: string, param2: string, param3: native.Array<android.content.pm.PathPermission>);
				public query(param0: android.net.Uri, param1: native.Array<string>, param2: string, param3: native.Array<string>, param4: string): android.database.Cursor;
			}
		}
	}
}

declare module android {
	export module test {
		export module mock {
			export class MockContentResolver extends android.content.ContentResolver {
				public static class: java.lang.Class<android.test.mock.MockContentResolver>;
				public constructor(param0: android.content.Context);
				public addProvider(param0: string, param1: android.content.ContentProvider): void;
				public notifyChange(param0: android.net.Uri, param1: android.database.ContentObserver): void;
				public notifyChange(param0: android.net.Uri, param1: android.database.ContentObserver, param2: boolean): void;
				public constructor();
			}
		}
	}
}

declare module android {
	export module test {
		export module mock {
			export class MockContext extends android.content.Context {
				public static class: java.lang.Class<android.test.mock.MockContext>;
				public createDisplayContext(param0: android.view.Display): android.content.Context;
				public getApplicationContext(): android.content.Context;
				public getSystemService(param0: string): any;
				public checkUriPermission(param0: android.net.Uri, param1: string, param2: string, param3: number, param4: number, param5: number): number;
				public startIntentSender(param0: android.content.IntentSender, param1: android.content.Intent, param2: number, param3: number, param4: number, param5: android.os.Bundle): void;
				public enforceCallingOrSelfUriPermission(param0: android.net.Uri, param1: number, param2: string): void;
				public getPackageResourcePath(): string;
				/** @deprecated */
				public peekWallpaper(): android.graphics.drawable.Drawable;
				public startActivities(param0: native.Array<android.content.Intent>): void;
				public getCacheDir(): java.io.File;
				public clearWallpaper(): void;
				public constructor();
				public startIntentSender(param0: android.content.IntentSender, param1: android.content.Intent, param2: number, param3: number, param4: number): void;
				public unregisterReceiver(param0: android.content.BroadcastReceiver): void;
				public getExternalCacheDir(): java.io.File;
				public isRestricted(): boolean;
				public getWallpaperDesiredMinimumWidth(): number;
				/** @deprecated */
				public clearWallpaper(): void;
				public enforceCallingUriPermission(param0: android.net.Uri, param1: number, param2: string): void;
				/** @deprecated */
				public getWallpaper(): android.graphics.drawable.Drawable;
				public sendOrderedBroadcastAsUser(param0: android.content.Intent, param1: android.os.UserHandle, param2: string, param3: android.content.BroadcastReceiver, param4: android.os.Handler, param5: number, param6: string, param7: android.os.Bundle): void;
				/** @deprecated */
				public getWallpaperDesiredMinimumWidth(): number;
				public sendStickyBroadcastAsUser(param0: android.content.Intent, param1: android.os.UserHandle): void;
				public checkCallingOrSelfPermission(param0: string): number;
				public createPackageContext(param0: string, param1: number): android.content.Context;
				public getWallpaperDesiredMinimumHeight(): number;
				public fileList(): native.Array<string>;
				public enforceUriPermission(param0: android.net.Uri, param1: number, param2: number, param3: number, param4: string): void;
				public startActivity(param0: android.content.Intent, param1: android.os.Bundle): void;
				public sendStickyOrderedBroadcastAsUser(param0: android.content.Intent, param1: android.os.UserHandle, param2: android.content.BroadcastReceiver, param3: android.os.Handler, param4: number, param5: string, param6: android.os.Bundle): void;
				public registerReceiver(param0: android.content.BroadcastReceiver, param1: android.content.IntentFilter, param2: string, param3: android.os.Handler): android.content.Intent;
				public openFileOutput(param0: string, param1: number): java.io.FileOutputStream;
				public setWallpaper(param0: android.graphics.Bitmap): void;
				public getPackageName(): string;
				public openFileInput(param0: string): java.io.FileInputStream;
				public getPackageCodePath(): string;
				public sendBroadcast(param0: android.content.Intent): void;
				public sendOrderedBroadcast(param0: android.content.Intent, param1: string, param2: android.content.BroadcastReceiver, param3: android.os.Handler, param4: number, param5: string, param6: android.os.Bundle): void;
				public bindService(param0: android.content.Intent, param1: android.content.ServiceConnection, param2: number): boolean;
				public enforceCallingPermission(param0: string, param1: string): void;
				public setWallpaper(param0: java.io.InputStream): void;
				public startInstrumentation(param0: android.content.ComponentName, param1: string, param2: android.os.Bundle): boolean;
				public openOrCreateDatabase(param0: string, param1: number, param2: android.database.sqlite.SQLiteDatabase.CursorFactory): android.database.sqlite.SQLiteDatabase;
				public startActivity(param0: android.content.Intent): void;
				public startActivities(param0: native.Array<android.content.Intent>, param1: android.os.Bundle): void;
				public getMainLooper(): android.os.Looper;
				public peekWallpaper(): android.graphics.drawable.Drawable;
				/** @deprecated */
				public setWallpaper(param0: android.graphics.Bitmap): void;
				public openOrCreateDatabase(param0: string, param1: number, param2: android.database.sqlite.SQLiteDatabase.CursorFactory, param3: android.database.DatabaseErrorHandler): android.database.sqlite.SQLiteDatabase;
				public setTheme(param0: number): void;
				public getFilesDir(): java.io.File;
				public startService(param0: android.content.Intent): android.content.ComponentName;
				public checkCallingPermission(param0: string): number;
				public createConfigurationContext(param0: android.content.res.Configuration): android.content.Context;
				/** @deprecated */
				public getWallpaperDesiredMinimumHeight(): number;
				public getApplicationInfo(): android.content.pm.ApplicationInfo;
				public getExternalFilesDir(param0: string): java.io.File;
				public databaseList(): native.Array<string>;
				public grantUriPermission(param0: string, param1: android.net.Uri, param2: number): void;
				public getContentResolver(): android.content.ContentResolver;
				public sendStickyBroadcast(param0: android.content.Intent): void;
				public registerReceiver(param0: android.content.BroadcastReceiver, param1: android.content.IntentFilter): android.content.Intent;
				public enforceUriPermission(param0: android.net.Uri, param1: string, param2: string, param3: number, param4: number, param5: number, param6: string): void;
				public removeStickyBroadcast(param0: android.content.Intent): void;
				public getFileStreamPath(param0: string): java.io.File;
				public removeStickyBroadcastAsUser(param0: android.content.Intent, param1: android.os.UserHandle): void;
				public enforcePermission(param0: string, param1: number, param2: number, param3: string): void;
				public getDatabasePath(param0: string): java.io.File;
				public getObbDir(): java.io.File;
				public checkUriPermission(param0: android.net.Uri, param1: number, param2: number, param3: number): number;
				public revokeUriPermission(param0: android.net.Uri, param1: number): void;
				public unbindService(param0: android.content.ServiceConnection): void;
				public sendBroadcastAsUser(param0: android.content.Intent, param1: android.os.UserHandle): void;
				public getClassLoader(): java.lang.ClassLoader;
				/** @deprecated */
				public setWallpaper(param0: java.io.InputStream): void;
				public sendBroadcastAsUser(param0: android.content.Intent, param1: android.os.UserHandle, param2: string): void;
				public getDir(param0: string, param1: number): java.io.File;
				public deleteDatabase(param0: string): boolean;
				public checkCallingUriPermission(param0: android.net.Uri, param1: number): number;
				public getTheme(): android.content.res.Resources.Theme;
				public getWallpaper(): android.graphics.drawable.Drawable;
				public sendStickyOrderedBroadcast(param0: android.content.Intent, param1: android.content.BroadcastReceiver, param2: android.os.Handler, param3: number, param4: string, param5: android.os.Bundle): void;
				public getAssets(): android.content.res.AssetManager;
				public getResources(): android.content.res.Resources;
				public getPackageManager(): android.content.pm.PackageManager;
				public checkCallingOrSelfUriPermission(param0: android.net.Uri, param1: number): number;
				public deleteFile(param0: string): boolean;
				public getSharedPreferences(param0: string, param1: number): android.content.SharedPreferences;
				public sendOrderedBroadcast(param0: android.content.Intent, param1: string): void;
				public stopService(param0: android.content.Intent): boolean;
				public enforceCallingOrSelfPermission(param0: string, param1: string): void;
				public checkPermission(param0: string, param1: number, param2: number): number;
				public sendBroadcast(param0: android.content.Intent, param1: string): void;
			}
		}
	}
}

declare module android {
	export module test {
		export module mock {
			export class MockCursor extends java.lang.Object implements android.database.Cursor {
				public static class: java.lang.Class<android.test.mock.MockCursor>;
				public getColumnCount(): number;
				public requery(): boolean;
				public getDouble(param0: number): number;
				public moveToPrevious(): boolean;
				public registerContentObserver(param0: android.database.ContentObserver): void;
				public getString(param0: number): string;
				public getShort(param0: number): number;
				public setNotificationUri(param0: android.content.ContentResolver, param1: android.net.Uri): void;
				/** @deprecated */
				public deactivate(): void;
				public move(param0: number): boolean;
				public getColumnIndex(param0: string): number;
				public getPosition(): number;
				public moveToPosition(param0: number): boolean;
				public constructor();
				public isAfterLast(): boolean;
				public getColumnName(param0: number): string;
				/** @deprecated */
				public requery(): boolean;
				public getLong(param0: number): number;
				public getInt(param0: number): number;
				public getExtras(): android.os.Bundle;
				public copyStringToBuffer(param0: number, param1: android.database.CharArrayBuffer): void;
				public getBlob(param0: number): native.Array<number>;
				public getColumnNames(): native.Array<string>;
				public isFirst(): boolean;
				public moveToNext(): boolean;
				public close(): void;
				public isNull(param0: number): boolean;
				public unregisterContentObserver(param0: android.database.ContentObserver): void;
				public respond(param0: android.os.Bundle): android.os.Bundle;
				public getColumnIndexOrThrow(param0: string): number;
				public isClosed(): boolean;
				public getCount(): number;
				public registerDataSetObserver(param0: android.database.DataSetObserver): void;
				public getWantsAllOnMoveCalls(): boolean;
				public isLast(): boolean;
				public unregisterDataSetObserver(param0: android.database.DataSetObserver): void;
				public getType(param0: number): number;
				public moveToLast(): boolean;
				public moveToFirst(): boolean;
				public getFloat(param0: number): number;
				public isBeforeFirst(): boolean;
				public deactivate(): void;
			}
		}
	}
}

declare module android {
	export module test {
		export module mock {
			export class MockDialogInterface extends java.lang.Object implements android.content.DialogInterface {
				public static class: java.lang.Class<android.test.mock.MockDialogInterface>;
				public cancel(): void;
				public dismiss(): void;
				public constructor();
			}
		}
	}
}

declare module android {
	export module test {
		export module mock {
			export class MockPackageManager extends android.content.pm.PackageManager {
				public static class: java.lang.Class<android.test.mock.MockPackageManager>;
				public getServiceInfo(param0: android.content.ComponentName, param1: number): android.content.pm.ServiceInfo;
				public checkSignatures(param0: number, param1: number): number;
				public getApplicationInfo(param0: string, param1: number): android.content.pm.ApplicationInfo;
				public addPermission(param0: android.content.pm.PermissionInfo): boolean;
				public resolveService(param0: android.content.Intent, param1: number): android.content.pm.ResolveInfo;
				public getPackageGids(param0: string): native.Array<number>;
				public getApplicationLabel(param0: android.content.pm.ApplicationInfo): string;
				public checkPermission(param0: string, param1: string): number;
				public getDefaultActivityIcon(): android.graphics.drawable.Drawable;
				public constructor();
				public getPackagesHoldingPermissions(param0: native.Array<string>, param1: number): java.util.List<android.content.pm.PackageInfo>;
				public setInstallerPackageName(param0: string, param1: string): void;
				public getSystemAvailableFeatures(): native.Array<android.content.pm.FeatureInfo>;
				public getActivityIcon(param0: android.content.ComponentName): android.graphics.drawable.Drawable;
				public getDrawable(param0: string, param1: number, param2: android.content.pm.ApplicationInfo): android.graphics.drawable.Drawable;
				public getPermissionGroupInfo(param0: string, param1: number): android.content.pm.PermissionGroupInfo;
				public getActivityLogo(param0: android.content.ComponentName): android.graphics.drawable.Drawable;
				public getPreferredActivities(param0: java.util.List<android.content.IntentFilter>, param1: java.util.List<android.content.ComponentName>, param2: string): number;
				public queryBroadcastReceivers(param0: android.content.Intent, param1: number): java.util.List<android.content.pm.ResolveInfo>;
				public getText(param0: string, param1: number, param2: android.content.pm.ApplicationInfo): string;
				public getComponentEnabledSetting(param0: android.content.ComponentName): number;
				/** @deprecated */
				public addPreferredActivity(param0: android.content.IntentFilter, param1: number, param2: native.Array<android.content.ComponentName>, param3: android.content.ComponentName): void;
				public getResourcesForActivity(param0: android.content.ComponentName): android.content.res.Resources;
				public getInstrumentationInfo(param0: android.content.ComponentName, param1: number): android.content.pm.InstrumentationInfo;
				public getInstallerPackageName(param0: string): string;
				public getPreferredPackages(param0: number): java.util.List<android.content.pm.PackageInfo>;
				public getAllPermissionGroups(param0: number): java.util.List<android.content.pm.PermissionGroupInfo>;
				public resolveActivity(param0: android.content.Intent, param1: number): android.content.pm.ResolveInfo;
				public queryIntentActivityOptions(param0: android.content.ComponentName, param1: native.Array<android.content.Intent>, param2: android.content.Intent, param3: number): java.util.List<android.content.pm.ResolveInfo>;
				public getApplicationIcon(param0: string): android.graphics.drawable.Drawable;
				public getActivityInfo(param0: android.content.ComponentName, param1: number): android.content.pm.ActivityInfo;
				public setApplicationEnabledSetting(param0: string, param1: number, param2: number): void;
				public setComponentEnabledSetting(param0: android.content.ComponentName, param1: number, param2: number): void;
				public getResourcesForApplication(param0: string): android.content.res.Resources;
				public addPreferredActivity(param0: android.content.IntentFilter, param1: number, param2: native.Array<android.content.ComponentName>, param3: android.content.ComponentName): void;
				public queryIntentActivities(param0: android.content.Intent, param1: number): java.util.List<android.content.pm.ResolveInfo>;
				public resolveContentProvider(param0: string, param1: number): android.content.pm.ProviderInfo;
				public getInstalledPackages(param0: number): java.util.List<android.content.pm.PackageInfo>;
				public removePermission(param0: string): void;
				public removePackageFromPreferred(param0: string): void;
				public canonicalToCurrentPackageNames(param0: native.Array<string>): native.Array<string>;
				public getActivityLogo(param0: android.content.Intent): android.graphics.drawable.Drawable;
				public getPermissionInfo(param0: string, param1: number): android.content.pm.PermissionInfo;
				public getLaunchIntentForPackage(param0: string): android.content.Intent;
				public getResourcesForApplication(param0: android.content.pm.ApplicationInfo): android.content.res.Resources;
				/** @deprecated */
				public removePackageFromPreferred(param0: string): void;
				public queryPermissionsByGroup(param0: string, param1: number): java.util.List<android.content.pm.PermissionInfo>;
				public checkSignatures(param0: string, param1: string): number;
				public clearPackagePreferredActivities(param0: string): void;
				public getInstalledApplications(param0: number): java.util.List<android.content.pm.ApplicationInfo>;
				public addPermissionAsync(param0: android.content.pm.PermissionInfo): boolean;
				public queryIntentServices(param0: android.content.Intent, param1: number): java.util.List<android.content.pm.ResolveInfo>;
				public queryInstrumentation(param0: string, param1: number): java.util.List<android.content.pm.InstrumentationInfo>;
				public getApplicationLogo(param0: string): android.graphics.drawable.Drawable;
				public extendVerificationTimeout(param0: number, param1: number, param2: number): void;
				public getActivityIcon(param0: android.content.Intent): android.graphics.drawable.Drawable;
				public getSystemSharedLibraryNames(): native.Array<string>;
				public getApplicationIcon(param0: android.content.pm.ApplicationInfo): android.graphics.drawable.Drawable;
				public verifyPendingInstall(param0: number, param1: number): void;
				public getPackageArchiveInfo(param0: string, param1: number): android.content.pm.PackageInfo;
				public getProviderInfo(param0: android.content.ComponentName, param1: number): android.content.pm.ProviderInfo;
				public getApplicationEnabledSetting(param0: string): number;
				public getReceiverInfo(param0: android.content.ComponentName, param1: number): android.content.pm.ActivityInfo;
				public addPackageToPreferred(param0: string): void;
				public getXml(param0: string, param1: number, param2: android.content.pm.ApplicationInfo): android.content.res.XmlResourceParser;
				public hasSystemFeature(param0: string): boolean;
				public getNameForUid(param0: number): string;
				public getPackageInfo(param0: string, param1: number): android.content.pm.PackageInfo;
				public getPackagesForUid(param0: number): native.Array<string>;
				public queryContentProviders(param0: string, param1: number, param2: number): java.util.List<android.content.pm.ProviderInfo>;
				public isSafeMode(): boolean;
				public currentToCanonicalPackageNames(param0: native.Array<string>): native.Array<string>;
				/** @deprecated */
				public addPackageToPreferred(param0: string): void;
				public getApplicationLogo(param0: android.content.pm.ApplicationInfo): android.graphics.drawable.Drawable;
			}
		}
	}
}

declare module android {
	export module test {
		export module mock {
			export class MockResources extends android.content.res.Resources {
				public static class: java.lang.Class<android.test.mock.MockResources>;
				public getDimensionPixelSize(param0: number): number;
				public getXml(param0: number): android.content.res.XmlResourceParser;
				public getDisplayMetrics(): android.util.DisplayMetrics;
				public getString(param0: number): string;
				public getInteger(param0: number): number;
				public getValue(param0: number, param1: android.util.TypedValue, param2: boolean): void;
				public getConfiguration(): android.content.res.Configuration;
				public getMovie(param0: number): android.graphics.Movie;
				public openRawResource(param0: number, param1: android.util.TypedValue): java.io.InputStream;
				public openRawResourceFd(param0: number): android.content.res.AssetFileDescriptor;
				public constructor();
				public getResourceEntryName(param0: number): string;
				public getString(param0: number, param1: native.Array<any>): string;
				public getTextArray(param0: number): native.Array<string>;
				public getDimension(param0: number): number;
				public getResourceTypeName(param0: number): string;
				public updateConfiguration(param0: android.content.res.Configuration, param1: android.util.DisplayMetrics): void;
				public getQuantityText(param0: number, param1: number): string;
				public openRawResource(param0: number): java.io.InputStream;
				public getDrawable(param0: number): android.graphics.drawable.Drawable;
				public getText(param0: number): string;
				public getIntArray(param0: number): native.Array<number>;
				public getAnimation(param0: number): android.content.res.XmlResourceParser;
				public getColor(param0: number): number;
				public getStringArray(param0: number): native.Array<string>;
				public getQuantityString(param0: number, param1: number, param2: native.Array<any>): string;
				public getText(param0: number, param1: string): string;
				public getDimensionPixelOffset(param0: number): number;
				public obtainAttributes(param0: android.util.AttributeSet, param1: native.Array<number>): android.content.res.TypedArray;
				public getResourcePackageName(param0: number): string;
				public obtainTypedArray(param0: number): android.content.res.TypedArray;
				public getIdentifier(param0: string, param1: string, param2: string): number;
				public getResourceName(param0: number): string;
				public constructor(param0: android.content.res.AssetManager, param1: android.util.DisplayMetrics, param2: android.content.res.Configuration);
				public getLayout(param0: number): android.content.res.XmlResourceParser;
				public getQuantityString(param0: number, param1: number): string;
				public getValue(param0: string, param1: android.util.TypedValue, param2: boolean): void;
				public getColorStateList(param0: number): android.content.res.ColorStateList;
			}
		}
	}
}

declare module android {
	export module test {
		export module suitebuilder {
			export class TestMethod extends java.lang.Object {
				public static class: java.lang.Class<android.test.suitebuilder.TestMethod>;
				public constructor(param0: java.lang.reflect.Method, param1: java.lang.Class<any>);
				public getAnnotation(param0: java.lang.Class<any>): java.lang.annotation.Annotation;
				public getEnclosingClassname(): string;
				public constructor(param0: junit.framework.TestCase);
				public createTest(): junit.framework.TestCase;
				public hashCode(): number;
				public getEnclosingClass(): java.lang.Class<any>;
				public equals(param0: any): boolean;
				public getName(): string;
				public constructor(param0: string, param1: java.lang.Class<any>);
				public toString(): string;
			}
		}
	}
}

declare module android {
	export module test {
		export module suitebuilder {
			export class TestSuiteBuilder extends java.lang.Object {
				public static class: java.lang.Class<android.test.suitebuilder.TestSuiteBuilder>;
				public build(): junit.framework.TestSuite;
				public addRequirements(param0: java.util.List<com.android.internal.util.Predicate<android.test.suitebuilder.TestMethod>>): android.test.suitebuilder.TestSuiteBuilder;
				public named(param0: string): android.test.suitebuilder.TestSuiteBuilder;
				public includePackages(param0: native.Array<string>): android.test.suitebuilder.TestSuiteBuilder;
				public getSuiteName(): string;
				public excludePackages(param0: native.Array<string>): android.test.suitebuilder.TestSuiteBuilder;
				public constructor(param0: string, param1: java.lang.ClassLoader);
				public includeAllPackagesUnderHere(): android.test.suitebuilder.TestSuiteBuilder;
				public addRequirements(param0: native.Array<com.android.internal.util.Predicate<android.test.suitebuilder.TestMethod>>): android.test.suitebuilder.TestSuiteBuilder;
				public constructor(param0: java.lang.Class<any>);
			}
			export module TestSuiteBuilder {
				export class FailedToCreateTests extends junit.framework.TestCase {
					public static class: java.lang.Class<android.test.suitebuilder.TestSuiteBuilder.FailedToCreateTests>;
					public constructor(param0: string);
					public constructor();
					public run(): junit.framework.TestResult;
					public run(param0: junit.framework.TestResult): void;
					public constructor(param0: java.lang.Exception);
					public testSuiteConstructionFailed(): void;
					public countTestCases(): number;
				}
			}
		}
	}
}

declare module android {
	export module test {
		export module suitebuilder {
			export module annotation {
				export class LargeTest extends java.lang.Object implements java.lang.annotation.Annotation {
					public static class: java.lang.Class<android.test.suitebuilder.annotation.LargeTest>;
					/**
					 * Constructs a new instance of the android.test.suitebuilder.annotation.LargeTest interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						annotationType(): java.lang.Class<any>;
						equals(param0: any): boolean;
						hashCode(): number;
						toString(): string;
					});
					public constructor();
					public equals(param0: any): boolean;
					public toString(): string;
					public annotationType(): java.lang.Class<any>;
					public hashCode(): number;
				}
			}
		}
	}
}

declare module android {
	export module test {
		export module suitebuilder {
			export module annotation {
				export class MediumTest extends java.lang.Object implements java.lang.annotation.Annotation {
					public static class: java.lang.Class<android.test.suitebuilder.annotation.MediumTest>;
					/**
					 * Constructs a new instance of the android.test.suitebuilder.annotation.MediumTest interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						annotationType(): java.lang.Class<any>;
						equals(param0: any): boolean;
						hashCode(): number;
						toString(): string;
					});
					public constructor();
					public equals(param0: any): boolean;
					public toString(): string;
					public annotationType(): java.lang.Class<any>;
					public hashCode(): number;
				}
			}
		}
	}
}

declare module android {
	export module test {
		export module suitebuilder {
			export module annotation {
				export class SmallTest extends java.lang.Object implements java.lang.annotation.Annotation {
					public static class: java.lang.Class<android.test.suitebuilder.annotation.SmallTest>;
					/**
					 * Constructs a new instance of the android.test.suitebuilder.annotation.SmallTest interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						annotationType(): java.lang.Class<any>;
						equals(param0: any): boolean;
						hashCode(): number;
						toString(): string;
					});
					public constructor();
					public equals(param0: any): boolean;
					public toString(): string;
					public annotationType(): java.lang.Class<any>;
					public hashCode(): number;
				}
			}
		}
	}
}

declare module android {
	export module test {
		export module suitebuilder {
			export module annotation {
				export class Smoke extends java.lang.Object implements java.lang.annotation.Annotation {
					public static class: java.lang.Class<android.test.suitebuilder.annotation.Smoke>;
					/**
					 * Constructs a new instance of the android.test.suitebuilder.annotation.Smoke interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						annotationType(): java.lang.Class<any>;
						equals(param0: any): boolean;
						hashCode(): number;
						toString(): string;
					});
					public constructor();
					public equals(param0: any): boolean;
					public toString(): string;
					public annotationType(): java.lang.Class<any>;
					public hashCode(): number;
				}
			}
		}
	}
}

declare module android {
	export module test {
		export module suitebuilder {
			export module annotation {
				export class Suppress extends java.lang.Object implements java.lang.annotation.Annotation {
					public static class: java.lang.Class<android.test.suitebuilder.annotation.Suppress>;
					/**
					 * Constructs a new instance of the android.test.suitebuilder.annotation.Suppress interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						annotationType(): java.lang.Class<any>;
						equals(param0: any): boolean;
						hashCode(): number;
						toString(): string;
					});
					public constructor();
					public equals(param0: any): boolean;
					public toString(): string;
					public annotationType(): java.lang.Class<any>;
					public hashCode(): number;
				}
			}
		}
	}
}

declare module android {
	export module text {
		export class AlteredCharSequence extends java.lang.Object implements java.lang.CharSequence, android.text.GetChars {
			public static class: java.lang.Class<android.text.AlteredCharSequence>;
			public charAt(param0: number): string;
			public getChars(param0: number, param1: number, param2: native.Array<string>, param3: number): void;
			public subSequence(param0: number, param1: number): string;
			public toString(): string;
			public length(): number;
			public static make(param0: string, param1: native.Array<string>, param2: number, param3: number): android.text.AlteredCharSequence;
		}
	}
}

declare module android {
	export module text {
		export class AndroidCharacter extends java.lang.Object {
			public static class: java.lang.Class<android.text.AndroidCharacter>;
			public static EAST_ASIAN_WIDTH_NEUTRAL: number;
			public static EAST_ASIAN_WIDTH_AMBIGUOUS: number;
			public static EAST_ASIAN_WIDTH_HALF_WIDTH: number;
			public static EAST_ASIAN_WIDTH_FULL_WIDTH: number;
			public static EAST_ASIAN_WIDTH_NARROW: number;
			public static EAST_ASIAN_WIDTH_WIDE: number;
			public static getEastAsianWidth(param0: string): number;
			public static mirror(param0: native.Array<string>, param1: number, param2: number): boolean;
			public static getDirectionalities(param0: native.Array<string>, param1: native.Array<number>, param2: number): void;
			public static getEastAsianWidths(param0: native.Array<string>, param1: number, param2: number, param3: native.Array<number>): void;
			public constructor();
			public static getMirror(param0: string): string;
		}
	}
}

declare module android {
	export module text {
		export class Annotation extends java.lang.Object implements android.text.ParcelableSpan {
			public static class: java.lang.Class<android.text.Annotation>;
			public constructor(param0: string, param1: string);
			public getSpanTypeId(): number;
			public constructor(param0: android.os.Parcel);
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public getKey(): string;
			public getValue(): string;
		}
	}
}

declare module android {
	export module text {
		export class AutoText extends java.lang.Object {
			public static class: java.lang.Class<android.text.AutoText>;
			public static get(param0: string, param1: number, param2: number, param3: android.view.View): string;
			public static getSize(param0: android.view.View): number;
		}
	}
}

declare module android {
	export module text {
		export class BidiFormatter extends java.lang.Object {
			public static class: java.lang.Class<android.text.BidiFormatter>;
			public static getInstance(param0: boolean): android.text.BidiFormatter;
			public unicodeWrap(param0: string, param1: any): string;
			public unicodeWrap(param0: string): string;
			public static getInstance(): android.text.BidiFormatter;
			public isRtlContext(): boolean;
			public unicodeWrap(param0: string, param1: boolean): string;
			public unicodeWrap(param0: string, param1: any, param2: boolean): string;
			public static getInstance(param0: java.util.Locale): android.text.BidiFormatter;
			public getStereoReset(): boolean;
			public isRtl(param0: string): boolean;
		}
		export module BidiFormatter {
			export class Builder extends java.lang.Object {
				public static class: java.lang.Class<android.text.BidiFormatter.Builder>;
				public stereoReset(param0: boolean): android.text.BidiFormatter.Builder;
				public constructor(param0: java.util.Locale);
				public constructor(param0: boolean);
				public setTextDirectionHeuristic(param0: any): android.text.BidiFormatter.Builder;
				public build(): android.text.BidiFormatter;
				public constructor();
			}
		}
	}
}

declare module android {
	export module text {
		export class BoringLayout extends android.text.Layout implements android.text.TextUtils.EllipsizeCallback {
			public static class: java.lang.Class<android.text.BoringLayout>;
			public replaceOrMake(param0: string, param1: android.text.TextPaint, param2: number, param3: android.text.Layout.Alignment, param4: number, param5: number, param6: android.text.BoringLayout.Metrics, param7: boolean, param8: android.text.TextUtils.TruncateAt, param9: number): android.text.BoringLayout;
			public getEllipsisStart(param0: number): number;
			public getLineMax(param0: number): number;
			public getEllipsizedWidth(): number;
			public constructor(param0: string, param1: android.text.TextPaint, param2: number, param3: android.text.Layout.Alignment, param4: number, param5: number);
			public draw(param0: android.graphics.Canvas, param1: android.graphics.Path, param2: android.graphics.Paint, param3: number): void;
			public static isBoring(param0: string, param1: android.text.TextPaint): android.text.BoringLayout.Metrics;
			public replaceOrMake(param0: string, param1: android.text.TextPaint, param2: number, param3: android.text.Layout.Alignment, param4: number, param5: number, param6: android.text.BoringLayout.Metrics, param7: boolean): android.text.BoringLayout;
			public getEllipsisCount(param0: number): number;
			public ellipsized(param0: number, param1: number): void;
			public static make(param0: string, param1: android.text.TextPaint, param2: number, param3: android.text.Layout.Alignment, param4: number, param5: number, param6: android.text.BoringLayout.Metrics, param7: boolean, param8: android.text.TextUtils.TruncateAt, param9: number): android.text.BoringLayout;
			public getLineCount(): number;
			public getParagraphDirection(param0: number): number;
			public getTopPadding(): number;
			public static make(param0: string, param1: android.text.TextPaint, param2: number, param3: android.text.Layout.Alignment, param4: number, param5: number, param6: android.text.BoringLayout.Metrics, param7: boolean): android.text.BoringLayout;
			public getLineContainsTab(param0: number): boolean;
			public constructor(param0: string, param1: android.text.TextPaint, param2: number, param3: android.text.Layout.Alignment, param4: number, param5: number, param6: android.text.BoringLayout.Metrics, param7: boolean);
			public getBottomPadding(): number;
			public draw(param0: android.graphics.Canvas): void;
			public getHeight(): number;
			public static isBoring(param0: string, param1: android.text.TextPaint, param2: android.text.BoringLayout.Metrics): android.text.BoringLayout.Metrics;
			public getLineStart(param0: number): number;
			public getLineTop(param0: number): number;
			public getLineDirections(param0: number): android.text.Layout.Directions;
			public getLineDescent(param0: number): number;
			public constructor(param0: string, param1: android.text.TextPaint, param2: number, param3: android.text.Layout.Alignment, param4: number, param5: number, param6: android.text.BoringLayout.Metrics, param7: boolean, param8: android.text.TextUtils.TruncateAt, param9: number);
		}
		export module BoringLayout {
			export class Metrics extends android.graphics.Paint.FontMetricsInt {
				public static class: java.lang.Class<android.text.BoringLayout.Metrics>;
				public width: number;
				public toString(): string;
				public constructor();
			}
		}
	}
}

declare module android {
	export module text {
		export abstract class ClipboardManager extends java.lang.Object {
			public static class: java.lang.Class<android.text.ClipboardManager>;
			public setText(param0: string): void;
			public hasText(): boolean;
			public getText(): string;
			public constructor();
		}
	}
}

declare module android {
	export module text {
		export class DynamicLayout extends android.text.Layout {
			public static class: java.lang.Class<android.text.DynamicLayout>;
			public getEllipsisStart(param0: number): number;
			public getEllipsizedWidth(): number;
			public constructor(param0: string, param1: string, param2: android.text.TextPaint, param3: number, param4: android.text.Layout.Alignment, param5: number, param6: number, param7: boolean, param8: android.text.TextUtils.TruncateAt, param9: number);
			public constructor(param0: string, param1: android.text.TextPaint, param2: number, param3: android.text.Layout.Alignment, param4: number, param5: number);
			public getEllipsisCount(param0: number): number;
			public getLineStart(param0: number): number;
			public constructor(param0: string, param1: android.text.TextPaint, param2: number, param3: android.text.Layout.Alignment, param4: number, param5: number, param6: boolean);
			public constructor(param0: string, param1: string, param2: android.text.TextPaint, param3: number, param4: android.text.Layout.Alignment, param5: number, param6: number, param7: boolean);
			public getLineCount(): number;
			public getParagraphDirection(param0: number): number;
			public getLineTop(param0: number): number;
			public getLineDirections(param0: number): android.text.Layout.Directions;
			public getTopPadding(): number;
			public getLineContainsTab(param0: number): boolean;
			public getLineDescent(param0: number): number;
			public getBottomPadding(): number;
		}
	}
}

declare module android {
	export module text {
		export class Editable extends java.lang.Object implements java.lang.CharSequence, android.text.GetChars, android.text.Spannable, java.lang.Appendable {
			public static class: java.lang.Class<android.text.Editable>;
			/**
			 * Constructs a new instance of the android.text.Editable interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				replace(param0: number, param1: number, param2: string, param3: number, param4: number): android.text.Editable;
				replace(param0: number, param1: number, param2: string): android.text.Editable;
				insert(param0: number, param1: string, param2: number, param3: number): android.text.Editable;
				insert(param0: number, param1: string): android.text.Editable;
				delete(param0: number, param1: number): android.text.Editable;
				append(param0: string): android.text.Editable;
				append(param0: string, param1: number, param2: number): android.text.Editable;
				append(param0: string): android.text.Editable;
				clear(): void;
				clearSpans(): void;
				setFilters(param0: native.Array<android.text.InputFilter>): void;
				getFilters(): native.Array<android.text.InputFilter>;
				length(): number;
				charAt(param0: number): string;
				subSequence(param0: number, param1: number): string;
				toString(): string;
				getChars(param0: number, param1: number, param2: native.Array<string>, param3: number): void;
				setSpan(param0: any, param1: number, param2: number, param3: number): void;
				removeSpan(param0: any): void;
				append(param0: string): java.lang.Appendable;
				append(param0: string): java.lang.Appendable;
				append(param0: string, param1: number, param2: number): java.lang.Appendable;
				length(): number;
				charAt(param0: number): string;
				subSequence(param0: number, param1: number): string;
				toString(): string;
				getSpans(param0: number, param1: number, param2: java.lang.Class<any>): native.Array<any>;
				getSpanStart(param0: any): number;
				getSpanEnd(param0: any): number;
				getSpanFlags(param0: any): number;
				nextSpanTransition(param0: number, param1: number, param2: java.lang.Class<any>): number;
				length(): number;
				charAt(param0: number): string;
				subSequence(param0: number, param1: number): string;
				toString(): string;
			});
			public constructor();
			public static SPAN_POINT_MARK: number;
			public static SPAN_USER_SHIFT: number;
			public static SPAN_INCLUSIVE_EXCLUSIVE: number;
			public static SPAN_EXCLUSIVE_EXCLUSIVE: number;
			public static SPAN_PRIORITY_SHIFT: number;
			public static SPAN_INCLUSIVE_INCLUSIVE: number;
			public static SPAN_MARK_POINT: number;
			public static SPAN_EXCLUSIVE_INCLUSIVE: number;
			public static SPAN_PRIORITY: number;
			public static SPAN_INTERMEDIATE: number;
			public static SPAN_USER: number;
			public static SPAN_POINT_MARK_MASK: number;
			public static SPAN_MARK_MARK: number;
			public static SPAN_POINT_POINT: number;
			public static SPAN_PARAGRAPH: number;
			public static SPAN_COMPOSING: number;
			public insert(param0: number, param1: string, param2: number, param3: number): android.text.Editable;
			public setFilters(param0: native.Array<android.text.InputFilter>): void;
			public getSpanEnd(param0: any): number;
			public getSpanFlags(param0: any): number;
			public delete(param0: number, param1: number): android.text.Editable;
			public append(param0: string): android.text.Editable;
			public getFilters(): native.Array<android.text.InputFilter>;
			public getChars(param0: number, param1: number, param2: native.Array<string>, param3: number): void;
			public subSequence(param0: number, param1: number): string;
			public replace(param0: number, param1: number, param2: string): android.text.Editable;
			public append(param0: string, param1: number, param2: number): android.text.Editable;
			public setSpan(param0: any, param1: number, param2: number, param3: number): void;
			public clear(): void;
			public length(): number;
			public clearSpans(): void;
			public insert(param0: number, param1: string): android.text.Editable;
			public append(param0: string, param1: number, param2: number): java.lang.Appendable;
			public getSpanStart(param0: any): number;
			public replace(param0: number, param1: number, param2: string, param3: number, param4: number): android.text.Editable;
			public charAt(param0: number): string;
			public toString(): string;
			public nextSpanTransition(param0: number, param1: number, param2: java.lang.Class<any>): number;
			public removeSpan(param0: any): void;
			public append(param0: string): java.lang.Appendable;
			public getSpans(param0: number, param1: number, param2: java.lang.Class<any>): native.Array<any>;
		}
		export module Editable {
			export class Factory extends java.lang.Object {
				public static class: java.lang.Class<android.text.Editable.Factory>;
				public static getInstance(): android.text.Editable.Factory;
				public newEditable(param0: string): android.text.Editable;
				public constructor();
			}
		}
	}
}

declare module android {
	export module text {
		export class GetChars extends java.lang.Object implements java.lang.CharSequence {
			public static class: java.lang.Class<android.text.GetChars>;
			/**
			 * Constructs a new instance of the android.text.GetChars interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				getChars(param0: number, param1: number, param2: native.Array<string>, param3: number): void;
				length(): number;
				charAt(param0: number): string;
				subSequence(param0: number, param1: number): string;
				toString(): string;
			});
			public constructor();
			public getChars(param0: number, param1: number, param2: native.Array<string>, param3: number): void;
			public charAt(param0: number): string;
			public subSequence(param0: number, param1: number): string;
			public toString(): string;
			public length(): number;
		}
	}
}

declare module android {
	export module text {
		export class Html extends java.lang.Object {
			public static class: java.lang.Class<android.text.Html>;
			public static escapeHtml(param0: string): string;
			public static fromHtml(param0: string, param1: android.text.Html.ImageGetter, param2: android.text.Html.TagHandler): android.text.Spanned;
			public static fromHtml(param0: string): android.text.Spanned;
			public static toHtml(param0: android.text.Spanned): string;
		}
		export module Html {
			export class ImageGetter extends java.lang.Object {
				public static class: java.lang.Class<android.text.Html.ImageGetter>;
				/**
				 * Constructs a new instance of the android.text.Html$ImageGetter interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getDrawable(param0: string): android.graphics.drawable.Drawable;
				});
				public constructor();
				public getDrawable(param0: string): android.graphics.drawable.Drawable;
			}
			export class TagHandler extends java.lang.Object {
				public static class: java.lang.Class<android.text.Html.TagHandler>;
				/**
				 * Constructs a new instance of the android.text.Html$TagHandler interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					handleTag(param0: boolean, param1: string, param2: android.text.Editable, param3: org.xml.sax.XMLReader): void;
				});
				public constructor();
				public handleTag(param0: boolean, param1: string, param2: android.text.Editable, param3: org.xml.sax.XMLReader): void;
			}
		}
	}
}

declare module android {
	export module text {
		export class InputFilter extends java.lang.Object {
			public static class: java.lang.Class<android.text.InputFilter>;
			/**
			 * Constructs a new instance of the android.text.InputFilter interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				filter(param0: string, param1: number, param2: number, param3: android.text.Spanned, param4: number, param5: number): string;
			});
			public constructor();
			public filter(param0: string, param1: number, param2: number, param3: android.text.Spanned, param4: number, param5: number): string;
		}
		export module InputFilter {
			export class AllCaps extends java.lang.Object implements android.text.InputFilter {
				public static class: java.lang.Class<android.text.InputFilter.AllCaps>;
				public filter(param0: string, param1: number, param2: number, param3: android.text.Spanned, param4: number, param5: number): string;
				public constructor();
			}
			export class LengthFilter extends java.lang.Object implements android.text.InputFilter {
				public static class: java.lang.Class<android.text.InputFilter.LengthFilter>;
				public constructor(param0: number);
				public filter(param0: string, param1: number, param2: number, param3: android.text.Spanned, param4: number, param5: number): string;
			}
		}
	}
}

declare module android {
	export module text {
		export class InputType extends java.lang.Object {
			public static class: java.lang.Class<android.text.InputType>;
			/**
			 * Constructs a new instance of the android.text.InputType interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
			});
			public constructor();
			public static TYPE_TEXT_VARIATION_FILTER: number;
			public static TYPE_TEXT_FLAG_AUTO_COMPLETE: number;
			public static TYPE_NUMBER_VARIATION_NORMAL: number;
			public static TYPE_TEXT_FLAG_CAP_CHARACTERS: number;
			public static TYPE_TEXT_VARIATION_EMAIL_ADDRESS: number;
			public static TYPE_TEXT_FLAG_CAP_SENTENCES: number;
			public static TYPE_CLASS_DATETIME: number;
			public static TYPE_TEXT_VARIATION_POSTAL_ADDRESS: number;
			public static TYPE_NUMBER_VARIATION_PASSWORD: number;
			public static TYPE_TEXT_FLAG_MULTI_LINE: number;
			public static TYPE_NUMBER_FLAG_DECIMAL: number;
			public static TYPE_MASK_CLASS: number;
			public static TYPE_TEXT_FLAG_NO_SUGGESTIONS: number;
			public static TYPE_DATETIME_VARIATION_NORMAL: number;
			public static TYPE_TEXT_VARIATION_PASSWORD: number;
			public static TYPE_TEXT_VARIATION_WEB_PASSWORD: number;
			public static TYPE_TEXT_VARIATION_SHORT_MESSAGE: number;
			public static TYPE_TEXT_VARIATION_VISIBLE_PASSWORD: number;
			public static TYPE_TEXT_VARIATION_URI: number;
			public static TYPE_TEXT_VARIATION_LONG_MESSAGE: number;
			public static TYPE_DATETIME_VARIATION_TIME: number;
			public static TYPE_TEXT_FLAG_CAP_WORDS: number;
			public static TYPE_TEXT_VARIATION_NORMAL: number;
			public static TYPE_MASK_FLAGS: number;
			public static TYPE_TEXT_VARIATION_WEB_EDIT_TEXT: number;
			public static TYPE_NULL: number;
			public static TYPE_TEXT_VARIATION_PHONETIC: number;
			public static TYPE_CLASS_PHONE: number;
			public static TYPE_MASK_VARIATION: number;
			public static TYPE_TEXT_VARIATION_EMAIL_SUBJECT: number;
			public static TYPE_TEXT_VARIATION_WEB_EMAIL_ADDRESS: number;
			public static TYPE_TEXT_FLAG_IME_MULTI_LINE: number;
			public static TYPE_TEXT_VARIATION_PERSON_NAME: number;
			public static TYPE_DATETIME_VARIATION_DATE: number;
			public static TYPE_NUMBER_FLAG_SIGNED: number;
			public static TYPE_TEXT_FLAG_AUTO_CORRECT: number;
			public static TYPE_CLASS_TEXT: number;
			public static TYPE_CLASS_NUMBER: number;
		}
	}
}

declare module android {
	export module text {
		export abstract class Layout extends java.lang.Object {
			public static class: java.lang.Class<android.text.Layout>;
			public static DIR_LEFT_TO_RIGHT: number;
			public static DIR_RIGHT_TO_LEFT: number;
			public getEllipsisStart(param0: number): number;
			public getEllipsizedWidth(): number;
			public getLineMax(param0: number): number;
			public getOffsetToLeftOf(param0: number): number;
			public getParagraphLeft(param0: number): number;
			public draw(param0: android.graphics.Canvas, param1: android.graphics.Path, param2: android.graphics.Paint, param3: number): void;
			public getLineRight(param0: number): number;
			public getWidth(): number;
			public getLineWidth(param0: number): number;
			public getLineBottom(param0: number): number;
			public getLineCount(): number;
			public getCursorPath(param0: number, param1: android.graphics.Path, param2: string): void;
			public getSpacingAdd(): number;
			public getLineContainsTab(param0: number): boolean;
			public draw(param0: android.graphics.Canvas): void;
			public getSecondaryHorizontal(param0: number): number;
			public getLineBaseline(param0: number): number;
			public getHeight(): number;
			public isRtlCharAt(param0: number): boolean;
			public getText(): string;
			public static getDesiredWidth(param0: string, param1: number, param2: number, param3: android.text.TextPaint): number;
			public increaseWidthTo(param0: number): void;
			public getPrimaryHorizontal(param0: number): number;
			public getOffsetToRightOf(param0: number): number;
			public getAlignment(): android.text.Layout.Alignment;
			public getSpacingMultiplier(): number;
			public getLineTop(param0: number): number;
			public getLineLeft(param0: number): number;
			public isSpanned(): boolean;
			public getLineVisibleEnd(param0: number): number;
			public constructor(param0: string, param1: android.text.TextPaint, param2: number, param3: android.text.Layout.Alignment, param4: number, param5: number);
			public getEllipsisCount(param0: number): number;
			public getLineEnd(param0: number): number;
			public getOffsetForHorizontal(param0: number, param1: number): number;
			public getParagraphDirection(param0: number): number;
			public getTopPadding(): number;
			public getBottomPadding(): number;
			public getLineAscent(param0: number): number;
			public static getDesiredWidth(param0: string, param1: android.text.TextPaint): number;
			public getLineBounds(param0: number, param1: android.graphics.Rect): number;
			public getLineStart(param0: number): number;
			public getSelectionPath(param0: number, param1: number, param2: android.graphics.Path): void;
			public getPaint(): android.text.TextPaint;
			public getParagraphAlignment(param0: number): android.text.Layout.Alignment;
			public getLineForVertical(param0: number): number;
			public getLineForOffset(param0: number): number;
			public getLineDirections(param0: number): android.text.Layout.Directions;
			public getLineDescent(param0: number): number;
			public getParagraphRight(param0: number): number;
		}
		export module Layout {
			export class Alignment {
				public static class: java.lang.Class<android.text.Layout.Alignment>;
				public static ALIGN_CENTER: android.text.Layout.Alignment;
				public static ALIGN_NORMAL: android.text.Layout.Alignment;
				public static ALIGN_OPPOSITE: android.text.Layout.Alignment;
				public static values(): native.Array<android.text.Layout.Alignment>;
				public static valueOf(param0: string): android.text.Layout.Alignment;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			}
			export class Directions extends java.lang.Object {
				public static class: java.lang.Class<android.text.Layout.Directions>;
			}
		}
	}
}

declare module android {
	export module text {
		export abstract class LoginFilter extends java.lang.Object implements android.text.InputFilter {
			public static class: java.lang.Class<android.text.LoginFilter>;
			public isAllowed(param0: string): boolean;
			public onInvalidCharacter(param0: string): void;
			public onStart(): void;
			public filter(param0: string, param1: number, param2: number, param3: android.text.Spanned, param4: number, param5: number): string;
			public onStop(): void;
		}
		export module LoginFilter {
			export class PasswordFilterGMail extends android.text.LoginFilter {
				public static class: java.lang.Class<android.text.LoginFilter.PasswordFilterGMail>;
				public isAllowed(param0: string): boolean;
				public constructor(param0: boolean);
				public filter(param0: string, param1: number, param2: number, param3: android.text.Spanned, param4: number, param5: number): string;
				public constructor();
			}
			export class UsernameFilterGMail extends android.text.LoginFilter {
				public static class: java.lang.Class<android.text.LoginFilter.UsernameFilterGMail>;
				public isAllowed(param0: string): boolean;
				public constructor(param0: boolean);
				public filter(param0: string, param1: number, param2: number, param3: android.text.Spanned, param4: number, param5: number): string;
				public constructor();
			}
			export class UsernameFilterGeneric extends android.text.LoginFilter {
				public static class: java.lang.Class<android.text.LoginFilter.UsernameFilterGeneric>;
				public isAllowed(param0: string): boolean;
				public constructor(param0: boolean);
				public filter(param0: string, param1: number, param2: number, param3: android.text.Spanned, param4: number, param5: number): string;
				public constructor();
			}
		}
	}
}

declare module android {
	export module text {
		export class NoCopySpan extends java.lang.Object {
			public static class: java.lang.Class<android.text.NoCopySpan>;
			/**
			 * Constructs a new instance of the android.text.NoCopySpan interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
			});
			public constructor();
		}
		export module NoCopySpan {
			export class Concrete extends java.lang.Object implements android.text.NoCopySpan {
				public static class: java.lang.Class<android.text.NoCopySpan.Concrete>;
				public constructor();
			}
		}
	}
}

declare module android {
	export module text {
		export class ParcelableSpan extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.text.ParcelableSpan>;
			/**
			 * Constructs a new instance of the android.text.ParcelableSpan interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				getSpanTypeId(): number;
				describeContents(): number;
				writeToParcel(param0: android.os.Parcel, param1: number): void;
			});
			public constructor();
			public static PARCELABLE_WRITE_RETURN_VALUE: number;
			public static CONTENTS_FILE_DESCRIPTOR: number;
			public getSpanTypeId(): number;
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
		}
	}
}

declare module android {
	export module text {
		export class Selection extends java.lang.Object {
			public static class: java.lang.Class<android.text.Selection>;
			public static SELECTION_START: any;
			public static SELECTION_END: any;
			public static moveDown(param0: android.text.Spannable, param1: android.text.Layout): boolean;
			public static moveUp(param0: android.text.Spannable, param1: android.text.Layout): boolean;
			public static extendUp(param0: android.text.Spannable, param1: android.text.Layout): boolean;
			public static extendSelection(param0: android.text.Spannable, param1: number): void;
			public static selectAll(param0: android.text.Spannable): void;
			public static extendLeft(param0: android.text.Spannable, param1: android.text.Layout): boolean;
			public static setSelection(param0: android.text.Spannable, param1: number): void;
			public static moveToLeftEdge(param0: android.text.Spannable, param1: android.text.Layout): boolean;
			public static moveLeft(param0: android.text.Spannable, param1: android.text.Layout): boolean;
			public static moveToRightEdge(param0: android.text.Spannable, param1: android.text.Layout): boolean;
			public static extendToLeftEdge(param0: android.text.Spannable, param1: android.text.Layout): boolean;
			public static moveRight(param0: android.text.Spannable, param1: android.text.Layout): boolean;
			public static setSelection(param0: android.text.Spannable, param1: number, param2: number): void;
			public static removeSelection(param0: android.text.Spannable): void;
			public static getSelectionEnd(param0: string): number;
			public static extendDown(param0: android.text.Spannable, param1: android.text.Layout): boolean;
			public static getSelectionStart(param0: string): number;
			public static extendRight(param0: android.text.Spannable, param1: android.text.Layout): boolean;
			public static extendToRightEdge(param0: android.text.Spannable, param1: android.text.Layout): boolean;
		}
	}
}

declare module android {
	export module text {
		export class SpanWatcher extends java.lang.Object implements android.text.NoCopySpan {
			public static class: java.lang.Class<android.text.SpanWatcher>;
			/**
			 * Constructs a new instance of the android.text.SpanWatcher interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				onSpanAdded(param0: android.text.Spannable, param1: any, param2: number, param3: number): void;
				onSpanRemoved(param0: android.text.Spannable, param1: any, param2: number, param3: number): void;
				onSpanChanged(param0: android.text.Spannable, param1: any, param2: number, param3: number, param4: number, param5: number): void;
			});
			public constructor();
			public onSpanAdded(param0: android.text.Spannable, param1: any, param2: number, param3: number): void;
			public onSpanChanged(param0: android.text.Spannable, param1: any, param2: number, param3: number, param4: number, param5: number): void;
			public onSpanRemoved(param0: android.text.Spannable, param1: any, param2: number, param3: number): void;
		}
	}
}

declare module android {
	export module text {
		export class Spannable extends java.lang.Object implements android.text.Spanned {
			public static class: java.lang.Class<android.text.Spannable>;
			/**
			 * Constructs a new instance of the android.text.Spannable interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				setSpan(param0: any, param1: number, param2: number, param3: number): void;
				removeSpan(param0: any): void;
				getSpans(param0: number, param1: number, param2: java.lang.Class<any>): native.Array<any>;
				getSpanStart(param0: any): number;
				getSpanEnd(param0: any): number;
				getSpanFlags(param0: any): number;
				nextSpanTransition(param0: number, param1: number, param2: java.lang.Class<any>): number;
				length(): number;
				charAt(param0: number): string;
				subSequence(param0: number, param1: number): string;
				toString(): string;
			});
			public constructor();
			public static SPAN_POINT_MARK: number;
			public static SPAN_USER_SHIFT: number;
			public static SPAN_INCLUSIVE_EXCLUSIVE: number;
			public static SPAN_EXCLUSIVE_EXCLUSIVE: number;
			public static SPAN_PRIORITY_SHIFT: number;
			public static SPAN_INCLUSIVE_INCLUSIVE: number;
			public static SPAN_MARK_POINT: number;
			public static SPAN_EXCLUSIVE_INCLUSIVE: number;
			public static SPAN_PRIORITY: number;
			public static SPAN_INTERMEDIATE: number;
			public static SPAN_USER: number;
			public static SPAN_POINT_MARK_MASK: number;
			public static SPAN_MARK_MARK: number;
			public static SPAN_POINT_POINT: number;
			public static SPAN_PARAGRAPH: number;
			public static SPAN_COMPOSING: number;
			public charAt(param0: number): string;
			public getSpanEnd(param0: any): number;
			public subSequence(param0: number, param1: number): string;
			public toString(): string;
			public getSpanFlags(param0: any): number;
			public nextSpanTransition(param0: number, param1: number, param2: java.lang.Class<any>): number;
			public setSpan(param0: any, param1: number, param2: number, param3: number): void;
			public length(): number;
			public getSpanStart(param0: any): number;
			public removeSpan(param0: any): void;
			public getSpans(param0: number, param1: number, param2: java.lang.Class<any>): native.Array<any>;
		}
		export module Spannable {
			export class Factory extends java.lang.Object {
				public static class: java.lang.Class<android.text.Spannable.Factory>;
				public static getInstance(): android.text.Spannable.Factory;
				public newSpannable(param0: string): android.text.Spannable;
				public constructor();
			}
		}
	}
}

declare module android {
	export module text {
		export class SpannableString extends android.text.SpannableStringInternal implements java.lang.CharSequence, android.text.GetChars, android.text.Spannable {
			public static class: java.lang.Class<android.text.SpannableString>;
			public getSpanEnd(param0: any): number;
			public getSpanFlags(param0: any): number;
			public length(): number;
			public static valueOf(param0: string): android.text.SpannableString;
			public getSpanStart(param0: any): number;
			public charAt(param0: number): string;
			public getChars(param0: number, param1: number, param2: native.Array<string>, param3: number): void;
			public subSequence(param0: number, param1: number): string;
			public toString(): string;
			public nextSpanTransition(param0: number, param1: number, param2: java.lang.Class<any>): number;
			public setSpan(param0: any, param1: number, param2: number, param3: number): void;
			public removeSpan(param0: any): void;
			public constructor(param0: string);
			public getSpans(param0: number, param1: number, param2: java.lang.Class<any>): native.Array<any>;
		}
	}
}

declare module android {
	export module text {
		export class SpannableStringBuilder extends java.lang.Object implements java.lang.CharSequence, android.text.GetChars, android.text.Spannable, android.text.Editable, java.lang.Appendable {
			public static class: java.lang.Class<android.text.SpannableStringBuilder>;
			public setFilters(param0: native.Array<android.text.InputFilter>): void;
			public insert(param0: number, param1: string, param2: number, param3: number): android.text.Editable;
			public getSpanEnd(param0: any): number;
			public replace(param0: number, param1: number, param2: string): android.text.SpannableStringBuilder;
			public getSpanFlags(param0: any): number;
			public delete(param0: number, param1: number): android.text.Editable;
			public append(param0: string): android.text.Editable;
			public insert(param0: number, param1: string, param2: number, param3: number): android.text.SpannableStringBuilder;
			public append(param0: string, param1: number, param2: number): android.text.SpannableStringBuilder;
			public getFilters(): native.Array<android.text.InputFilter>;
			/** @deprecated */
			public getTextRunCursor(param0: number, param1: number, param2: number, param3: number, param4: number, param5: android.graphics.Paint): number;
			public getChars(param0: number, param1: number, param2: native.Array<string>, param3: number): void;
			public delete(param0: number, param1: number): android.text.SpannableStringBuilder;
			public subSequence(param0: number, param1: number): string;
			public replace(param0: number, param1: number, param2: string): android.text.Editable;
			public constructor(param0: string, param1: number, param2: number);
			public setSpan(param0: any, param1: number, param2: number, param3: number): void;
			public append(param0: string, param1: number, param2: number): android.text.Editable;
			public insert(param0: number, param1: string): android.text.SpannableStringBuilder;
			public constructor(param0: string);
			public clear(): void;
			public length(): number;
			public clearSpans(): void;
			public static valueOf(param0: string): android.text.SpannableStringBuilder;
			public insert(param0: number, param1: string): android.text.Editable;
			public replace(param0: number, param1: number, param2: string, param3: number, param4: number): android.text.SpannableStringBuilder;
			public append(param0: string, param1: number, param2: number): java.lang.Appendable;
			public constructor();
			public getSpanStart(param0: any): number;
			public replace(param0: number, param1: number, param2: string, param3: number, param4: number): android.text.Editable;
			public append(param0: string): android.text.SpannableStringBuilder;
			public charAt(param0: number): string;
			public toString(): string;
			public nextSpanTransition(param0: number, param1: number, param2: java.lang.Class<any>): number;
			public removeSpan(param0: any): void;
			public append(param0: string): java.lang.Appendable;
			public getSpans(param0: number, param1: number, param2: java.lang.Class<any>): native.Array<any>;
		}
	}
}

declare module android {
	export module text {
		export abstract class SpannableStringInternal extends java.lang.Object {
			public static class: java.lang.Class<android.text.SpannableStringInternal>;
			public charAt(param0: number): string;
			public getChars(param0: number, param1: number, param2: native.Array<string>, param3: number): void;
			public toString(): string;
			public getSpanEnd(param0: any): number;
			public getSpanFlags(param0: any): number;
			public nextSpanTransition(param0: number, param1: number, param2: java.lang.Class<any>): number;
			public length(): number;
			public getSpanStart(param0: any): number;
			public getSpans(param0: number, param1: number, param2: java.lang.Class<any>): native.Array<any>;
		}
	}
}

declare module android {
	export module text {
		export class Spanned extends java.lang.Object implements java.lang.CharSequence {
			public static class: java.lang.Class<android.text.Spanned>;
			/**
			 * Constructs a new instance of the android.text.Spanned interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				getSpans(param0: number, param1: number, param2: java.lang.Class<any>): native.Array<any>;
				getSpanStart(param0: any): number;
				getSpanEnd(param0: any): number;
				getSpanFlags(param0: any): number;
				nextSpanTransition(param0: number, param1: number, param2: java.lang.Class<any>): number;
				length(): number;
				charAt(param0: number): string;
				subSequence(param0: number, param1: number): string;
				toString(): string;
			});
			public constructor();
			public static SPAN_POINT_MARK: number;
			public static SPAN_USER_SHIFT: number;
			public static SPAN_INCLUSIVE_EXCLUSIVE: number;
			public static SPAN_EXCLUSIVE_EXCLUSIVE: number;
			public static SPAN_PRIORITY_SHIFT: number;
			public static SPAN_INCLUSIVE_INCLUSIVE: number;
			public static SPAN_MARK_POINT: number;
			public static SPAN_EXCLUSIVE_INCLUSIVE: number;
			public static SPAN_PRIORITY: number;
			public static SPAN_INTERMEDIATE: number;
			public static SPAN_USER: number;
			public static SPAN_POINT_MARK_MASK: number;
			public static SPAN_MARK_MARK: number;
			public static SPAN_POINT_POINT: number;
			public static SPAN_PARAGRAPH: number;
			public static SPAN_COMPOSING: number;
			public charAt(param0: number): string;
			public getSpanEnd(param0: any): number;
			public subSequence(param0: number, param1: number): string;
			public toString(): string;
			public getSpanFlags(param0: any): number;
			public nextSpanTransition(param0: number, param1: number, param2: java.lang.Class<any>): number;
			public length(): number;
			public getSpanStart(param0: any): number;
			public getSpans(param0: number, param1: number, param2: java.lang.Class<any>): native.Array<any>;
		}
	}
}

declare module android {
	export module text {
		export class SpannedString extends android.text.SpannableStringInternal implements java.lang.CharSequence, android.text.GetChars, android.text.Spanned {
			public static class: java.lang.Class<android.text.SpannedString>;
			public charAt(param0: number): string;
			public getChars(param0: number, param1: number, param2: native.Array<string>, param3: number): void;
			public subSequence(param0: number, param1: number): string;
			public toString(): string;
			public getSpanEnd(param0: any): number;
			public getSpanFlags(param0: any): number;
			public nextSpanTransition(param0: number, param1: number, param2: java.lang.Class<any>): number;
			public length(): number;
			public static valueOf(param0: string): android.text.SpannedString;
			public getSpanStart(param0: any): number;
			public constructor(param0: string);
			public getSpans(param0: number, param1: number, param2: java.lang.Class<any>): native.Array<any>;
		}
	}
}

declare module android {
	export module text {
		export class StaticLayout extends android.text.Layout {
			public static class: java.lang.Class<android.text.StaticLayout>;
			public getEllipsisStart(param0: number): number;
			public getEllipsizedWidth(): number;
			public constructor(param0: string, param1: android.text.TextPaint, param2: number, param3: android.text.Layout.Alignment, param4: number, param5: number);
			public constructor(param0: string, param1: number, param2: number, param3: android.text.TextPaint, param4: number, param5: android.text.Layout.Alignment, param6: number, param7: number, param8: boolean, param9: android.text.TextUtils.TruncateAt, param10: number);
			public getEllipsisCount(param0: number): number;
			public getLineStart(param0: number): number;
			public constructor(param0: string, param1: android.text.TextPaint, param2: number, param3: android.text.Layout.Alignment, param4: number, param5: number, param6: boolean);
			public getLineCount(): number;
			public getParagraphDirection(param0: number): number;
			public getLineTop(param0: number): number;
			public getLineForVertical(param0: number): number;
			public getLineDirections(param0: number): android.text.Layout.Directions;
			public getTopPadding(): number;
			public getLineContainsTab(param0: number): boolean;
			public getLineDescent(param0: number): number;
			public constructor(param0: string, param1: number, param2: number, param3: android.text.TextPaint, param4: number, param5: android.text.Layout.Alignment, param6: number, param7: number, param8: boolean);
			public getBottomPadding(): number;
		}
	}
}

declare module android {
	export module text {
		export class TextDirectionHeuristic extends java.lang.Object {
			public static class: java.lang.Class<android.text.TextDirectionHeuristic>;
			/**
			 * Constructs a new instance of the android.text.TextDirectionHeuristic interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				isRtl(param0: native.Array<string>, param1: number, param2: number): boolean;
				isRtl(param0: string, param1: number, param2: number): boolean;
			});
			public constructor();
			public isRtl(param0: string, param1: number, param2: number): boolean;
			public isRtl(param0: native.Array<string>, param1: number, param2: number): boolean;
		}
	}
}

declare module android {
	export module text {
		export class TextDirectionHeuristics extends java.lang.Object {
			public static class: java.lang.Class<android.text.TextDirectionHeuristics>;
			public static LTR: any;
			public static RTL: any;
			public static FIRSTSTRONG_LTR: any;
			public static FIRSTSTRONG_RTL: any;
			public static ANYRTL_LTR: any;
			public static LOCALE: any;
			public constructor();
		}
	}
}

declare module android {
	export module text {
		export class TextPaint extends android.graphics.Paint {
			public static class: java.lang.Class<android.text.TextPaint>;
			public bgColor: number;
			public baselineShift: number;
			public linkColor: number;
			public drawableState: native.Array<number>;
			public density: number;
			public set(param0: android.graphics.Paint): void;
			public constructor(param0: number);
			public set(param0: android.text.TextPaint): void;
			public constructor();
			public constructor(param0: android.graphics.Paint);
		}
	}
}

declare module android {
	export module text {
		export class TextUtils extends java.lang.Object {
			public static class: java.lang.Class<android.text.TextUtils>;
			public static CHAR_SEQUENCE_CREATOR: android.os.Parcelable.Creator<string>;
			public static CAP_MODE_CHARACTERS: number;
			public static CAP_MODE_WORDS: number;
			public static CAP_MODE_SENTENCES: number;
			public equals(param0: any): boolean;
			public static lastIndexOf(param0: string, param1: string, param2: number, param3: number): number;
			public static getChars(param0: string, param1: number, param2: number, param3: native.Array<string>, param4: number): void;
			public static copySpansFrom(param0: android.text.Spanned, param1: number, param2: number, param3: java.lang.Class<any>, param4: android.text.Spannable, param5: number): void;
			public static getOffsetBefore(param0: string, param1: number): number;
			public static getTrimmedLength(param0: string): number;
			public static getReverse(param0: string, param1: number, param2: number): string;
			public static htmlEncode(param0: string): string;
			public static regionMatches(param0: string, param1: number, param2: string, param3: number, param4: number): boolean;
			public static join(param0: string, param1: native.Array<any>): string;
			public static indexOf(param0: string, param1: string, param2: number, param3: number): number;
			public static dumpSpans(param0: string, param1: android.util.Printer, param2: string): void;
			public static expandTemplate(param0: string, param1: native.Array<string>): string;
			public static indexOf(param0: string, param1: string, param2: number): number;
			public static substring(param0: string, param1: number, param2: number): string;
			public static replace(param0: string, param1: native.Array<string>, param2: native.Array<string>): string;
			public static join(param0: string, param1: java.lang.Iterable<any>): string;
			public static ellipsize(param0: string, param1: android.text.TextPaint, param2: number, param3: android.text.TextUtils.TruncateAt): string;
			public static commaEllipsize(param0: string, param1: android.text.TextPaint, param2: number, param3: string, param4: string): string;
			public static split(param0: string, param1: java.util.regex.Pattern): native.Array<string>;
			public static stringOrSpannedString(param0: string): string;
			public static isDigitsOnly(param0: string): boolean;
			public static getOffsetAfter(param0: string, param1: number): number;
			public static writeToParcel(param0: string, param1: android.os.Parcel, param2: number): void;
			public static lastIndexOf(param0: string, param1: string): number;
			public static equals(param0: string, param1: string): boolean;
			public static getLayoutDirectionFromLocale(param0: java.util.Locale): number;
			public static isGraphic(param0: string): boolean;
			public static ellipsize(param0: string, param1: android.text.TextPaint, param2: number, param3: android.text.TextUtils.TruncateAt, param4: boolean, param5: android.text.TextUtils.EllipsizeCallback): string;
			public static lastIndexOf(param0: string, param1: string, param2: number): number;
			public static split(param0: string, param1: string): native.Array<string>;
			public static indexOf(param0: string, param1: string): number;
			public static concat(param0: native.Array<string>): string;
			public static isEmpty(param0: string): boolean;
			public static getCapsMode(param0: string, param1: number, param2: number): number;
		}
		export module TextUtils {
			export class EllipsizeCallback extends java.lang.Object {
				public static class: java.lang.Class<android.text.TextUtils.EllipsizeCallback>;
				/**
				 * Constructs a new instance of the android.text.TextUtils$EllipsizeCallback interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					ellipsized(param0: number, param1: number): void;
				});
				public constructor();
				public ellipsized(param0: number, param1: number): void;
			}
			export class SimpleStringSplitter extends java.lang.Object {
				public static class: java.lang.Class<android.text.TextUtils.SimpleStringSplitter>;
				public remove(): void;
				public setString(param0: string): void;
				public iterator(): java.util.Iterator<string>;
				public hasNext(): boolean;
				public next(): string;
				public iterator(): java.util.Iterator<any>;
				public constructor(param0: string);
			}
			export class StringSplitter extends java.lang.Iterable<string> {
				public static class: java.lang.Class<android.text.TextUtils.StringSplitter>;
				/**
				 * Constructs a new instance of the android.text.TextUtils$StringSplitter interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					setString(param0: string): void;
					iterator(): java.util.Iterator<any>;
				});
				public constructor();
				public setString(param0: string): void;
				public iterator(): java.util.Iterator<any>;
			}
			export class TruncateAt {
				public static class: java.lang.Class<android.text.TextUtils.TruncateAt>;
				public static END: android.text.TextUtils.TruncateAt;
				public static MARQUEE: android.text.TextUtils.TruncateAt;
				public static MIDDLE: android.text.TextUtils.TruncateAt;
				public static START: android.text.TextUtils.TruncateAt;
				public static valueOf(param0: string): android.text.TextUtils.TruncateAt;
				public static values(): native.Array<android.text.TextUtils.TruncateAt>;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			}
		}
	}
}

declare module android {
	export module text {
		export class TextWatcher extends java.lang.Object implements android.text.NoCopySpan {
			public static class: java.lang.Class<android.text.TextWatcher>;
			/**
			 * Constructs a new instance of the android.text.TextWatcher interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				beforeTextChanged(param0: string, param1: number, param2: number, param3: number): void;
				onTextChanged(param0: string, param1: number, param2: number, param3: number): void;
				afterTextChanged(param0: android.text.Editable): void;
			});
			public constructor();
			public afterTextChanged(param0: android.text.Editable): void;
			public onTextChanged(param0: string, param1: number, param2: number, param3: number): void;
			public beforeTextChanged(param0: string, param1: number, param2: number, param3: number): void;
		}
	}
}

declare module android {
	export module text {
		export module format {
			export class DateFormat extends java.lang.Object {
				public static class: java.lang.Class<android.text.format.DateFormat>;
				public static QUOTE: string;
				public static AM_PM: string;
				public static CAPITAL_AM_PM: string;
				public static DATE: string;
				public static DAY: string;
				public static HOUR: string;
				public static HOUR_OF_DAY: string;
				public static MINUTE: string;
				public static MONTH: string;
				public static STANDALONE_MONTH: string;
				public static SECONDS: string;
				public static TIME_ZONE: string;
				public static YEAR: string;
				public static is24HourFormat(param0: android.content.Context): boolean;
				public static format(param0: string, param1: java.util.Calendar): string;
				public static getLongDateFormat(param0: android.content.Context): java.text.DateFormat;
				public static format(param0: string, param1: java.util.Date): string;
				public static getBestDateTimePattern(param0: java.util.Locale, param1: string): string;
				public static getTimeFormat(param0: android.content.Context): java.text.DateFormat;
				public static getDateFormat(param0: android.content.Context): java.text.DateFormat;
				public static getMediumDateFormat(param0: android.content.Context): java.text.DateFormat;
				public static format(param0: string, param1: number): string;
				public constructor();
				public static getDateFormatOrder(param0: android.content.Context): native.Array<string>;
			}
		}
	}
}

declare module android {
	export module text {
		export module format {
			export class DateUtils extends java.lang.Object {
				public static class: java.lang.Class<android.text.format.DateUtils>;
				public static SECOND_IN_MILLIS: number;
				public static MINUTE_IN_MILLIS: number;
				public static HOUR_IN_MILLIS: number;
				public static DAY_IN_MILLIS: number;
				public static WEEK_IN_MILLIS: number;
				public static YEAR_IN_MILLIS: number;
				public static FORMAT_SHOW_TIME: number;
				public static FORMAT_SHOW_WEEKDAY: number;
				public static FORMAT_SHOW_YEAR: number;
				public static FORMAT_NO_YEAR: number;
				public static FORMAT_SHOW_DATE: number;
				public static FORMAT_NO_MONTH_DAY: number;
				public static FORMAT_12HOUR: number;
				public static FORMAT_24HOUR: number;
				public static FORMAT_CAP_AMPM: number;
				public static FORMAT_NO_NOON: number;
				public static FORMAT_CAP_NOON: number;
				public static FORMAT_NO_MIDNIGHT: number;
				public static FORMAT_CAP_MIDNIGHT: number;
				public static FORMAT_UTC: number;
				public static FORMAT_ABBREV_TIME: number;
				public static FORMAT_ABBREV_WEEKDAY: number;
				public static FORMAT_ABBREV_MONTH: number;
				public static FORMAT_NUMERIC_DATE: number;
				public static FORMAT_ABBREV_RELATIVE: number;
				public static FORMAT_ABBREV_ALL: number;
				public static FORMAT_CAP_NOON_MIDNIGHT: number;
				public static FORMAT_NO_NOON_MIDNIGHT: number;
				public static HOUR_MINUTE_24: string;
				public static MONTH_FORMAT: string;
				public static ABBREV_MONTH_FORMAT: string;
				public static NUMERIC_MONTH_FORMAT: string;
				public static MONTH_DAY_FORMAT: string;
				public static YEAR_FORMAT: string;
				public static YEAR_FORMAT_TWO_DIGITS: string;
				public static WEEKDAY_FORMAT: string;
				public static ABBREV_WEEKDAY_FORMAT: string;
				public static sameYearTable: native.Array<number>;
				public static sameMonthTable: native.Array<number>;
				public static LENGTH_LONG: number;
				public static LENGTH_MEDIUM: number;
				public static LENGTH_SHORT: number;
				public static LENGTH_SHORTER: number;
				public static LENGTH_SHORTEST: number;
				/** @deprecated */
				public static getAMPMString(param0: number): string;
				public static formatSameDayTime(param0: number, param1: number, param2: number, param3: number): string;
				public static getRelativeTimeSpanString(param0: number, param1: number, param2: number): string;
				public static formatDateRange(param0: android.content.Context, param1: java.util.Formatter, param2: number, param3: number, param4: number): java.util.Formatter;
				public static getRelativeTimeSpanString(param0: number, param1: number, param2: number, param3: number): string;
				public static getRelativeTimeSpanString(param0: number): string;
				public static formatElapsedTime(param0: number): string;
				public static isToday(param0: number): boolean;
				public static formatDateRange(param0: android.content.Context, param1: number, param2: number, param3: number): string;
				public static formatElapsedTime(param0: java.lang.StringBuilder, param1: number): string;
				public static formatDateTime(param0: android.content.Context, param1: number, param2: number): string;
				public constructor();
				public static getRelativeTimeSpanString(param0: android.content.Context, param1: number, param2: boolean): string;
				public static getRelativeDateTimeString(param0: android.content.Context, param1: number, param2: number, param3: number, param4: number): string;
				/** @deprecated */
				public static getDayOfWeekString(param0: number, param1: number): string;
				/** @deprecated */
				public static getMonthString(param0: number, param1: number): string;
				public static getRelativeTimeSpanString(param0: android.content.Context, param1: number): string;
				public static formatDateRange(param0: android.content.Context, param1: java.util.Formatter, param2: number, param3: number, param4: number, param5: string): java.util.Formatter;
			}
		}
	}
}

declare module android {
	export module text {
		export module format {
			export class Formatter extends java.lang.Object {
				public static class: java.lang.Class<android.text.format.Formatter>;
				public static formatFileSize(param0: android.content.Context, param1: number): string;
				public static formatShortFileSize(param0: android.content.Context, param1: number): string;
				/** @deprecated */
				public static formatIpAddress(param0: number): string;
				public constructor();
			}
		}
	}
}

declare module android {
	export module text {
		export module format {
			export class Time extends java.lang.Object {
				public static class: java.lang.Class<android.text.format.Time>;
				public static TIMEZONE_UTC: string;
				public static EPOCH_JULIAN_DAY: number;
				public static MONDAY_BEFORE_JULIAN_EPOCH: number;
				public allDay: boolean;
				public second: number;
				public minute: number;
				public hour: number;
				public monthDay: number;
				public month: number;
				public year: number;
				public weekDay: number;
				public yearDay: number;
				public isDst: number;
				public gmtoff: number;
				public timezone: string;
				public static SECOND: number;
				public static MINUTE: number;
				public static HOUR: number;
				public static MONTH_DAY: number;
				public static MONTH: number;
				public static YEAR: number;
				public static WEEK_DAY: number;
				public static YEAR_DAY: number;
				public static WEEK_NUM: number;
				public static SUNDAY: number;
				public static MONDAY: number;
				public static TUESDAY: number;
				public static WEDNESDAY: number;
				public static THURSDAY: number;
				public static FRIDAY: number;
				public static SATURDAY: number;
				public before(param0: android.text.format.Time): boolean;
				public parse(param0: string): boolean;
				public set(param0: number): void;
				public set(param0: android.text.format.Time): void;
				public getWeekNumber(): number;
				public static getCurrentTimezone(): string;
				public switchTimezone(param0: string): void;
				public constructor(param0: string);
				public constructor();
				public setToNow(): void;
				public static getJulianDay(param0: number, param1: number): number;
				public setJulianDay(param0: number): number;
				public static getJulianMondayFromWeeksSinceEpoch(param0: number): number;
				public after(param0: android.text.format.Time): boolean;
				public format2445(): string;
				public static isEpoch(param0: android.text.format.Time): boolean;
				public format3339(param0: boolean): string;
				public static compare(param0: android.text.format.Time, param1: android.text.format.Time): number;
				public toMillis(param0: boolean): number;
				public normalize(param0: boolean): number;
				public toString(): string;
				public set(param0: number, param1: number, param2: number): void;
				public constructor(param0: android.text.format.Time);
				public clear(param0: string): void;
				public parse3339(param0: string): boolean;
				public format(param0: string): string;
				public static getWeeksSinceEpochFromJulianDay(param0: number, param1: number): number;
				public getActualMaximum(param0: number): number;
				public set(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): void;
			}
		}
	}
}

declare module android {
	export module text {
		export module method {
			export class ArrowKeyMovementMethod extends android.text.method.BaseMovementMethod implements android.text.method.MovementMethod {
				public static class: java.lang.Class<android.text.method.ArrowKeyMovementMethod>;
				public lineStart(param0: android.widget.TextView, param1: android.text.Spannable): boolean;
				public up(param0: android.widget.TextView, param1: android.text.Spannable): boolean;
				public down(param0: android.widget.TextView, param1: android.text.Spannable): boolean;
				public handleMovementKey(param0: android.widget.TextView, param1: android.text.Spannable, param2: number, param3: number, param4: android.view.KeyEvent): boolean;
				public initialize(param0: android.widget.TextView, param1: android.text.Spannable): void;
				public home(param0: android.widget.TextView, param1: android.text.Spannable): boolean;
				public static getInstance(): android.text.method.MovementMethod;
				public onGenericMotionEvent(param0: android.widget.TextView, param1: android.text.Spannable, param2: android.view.MotionEvent): boolean;
				public bottom(param0: android.widget.TextView, param1: android.text.Spannable): boolean;
				public onTrackballEvent(param0: android.widget.TextView, param1: android.text.Spannable, param2: android.view.MotionEvent): boolean;
				public onKeyDown(param0: android.widget.TextView, param1: android.text.Spannable, param2: number, param3: android.view.KeyEvent): boolean;
				public onKeyUp(param0: android.widget.TextView, param1: android.text.Spannable, param2: number, param3: android.view.KeyEvent): boolean;
				public canSelectArbitrarily(): boolean;
				public end(param0: android.widget.TextView, param1: android.text.Spannable): boolean;
				public onTakeFocus(param0: android.widget.TextView, param1: android.text.Spannable, param2: number): void;
				public left(param0: android.widget.TextView, param1: android.text.Spannable): boolean;
				public right(param0: android.widget.TextView, param1: android.text.Spannable): boolean;
				public lineEnd(param0: android.widget.TextView, param1: android.text.Spannable): boolean;
				public onKeyOther(param0: android.widget.TextView, param1: android.text.Spannable, param2: android.view.KeyEvent): boolean;
				public constructor();
				public pageUp(param0: android.widget.TextView, param1: android.text.Spannable): boolean;
				public top(param0: android.widget.TextView, param1: android.text.Spannable): boolean;
				public pageDown(param0: android.widget.TextView, param1: android.text.Spannable): boolean;
				public onTouchEvent(param0: android.widget.TextView, param1: android.text.Spannable, param2: android.view.MotionEvent): boolean;
			}
		}
	}
}

declare module android {
	export module text {
		export module method {
			export abstract class BaseKeyListener extends android.text.method.MetaKeyKeyListener implements android.text.method.KeyListener {
				public static class: java.lang.Class<android.text.method.BaseKeyListener>;
				public backspace(param0: android.view.View, param1: android.text.Editable, param2: number, param3: android.view.KeyEvent): boolean;
				public clearMetaKeyState(param0: android.view.View, param1: android.text.Editable, param2: number): void;
				public onKeyUp(param0: android.view.View, param1: android.text.Editable, param2: number, param3: android.view.KeyEvent): boolean;
				public forwardDelete(param0: android.view.View, param1: android.text.Editable, param2: number, param3: android.view.KeyEvent): boolean;
				public getInputType(): number;
				public static clearMetaKeyState(param0: android.text.Editable, param1: number): void;
				public clearMetaKeyState(param0: number, param1: number): number;
				public onKeyOther(param0: android.view.View, param1: android.text.Editable, param2: android.view.KeyEvent): boolean;
				public onKeyDown(param0: android.view.View, param1: android.text.Editable, param2: number, param3: android.view.KeyEvent): boolean;
				public constructor();
			}
		}
	}
}

declare module android {
	export module text {
		export module method {
			export class BaseMovementMethod extends java.lang.Object implements android.text.method.MovementMethod {
				public static class: java.lang.Class<android.text.method.BaseMovementMethod>;
				public lineStart(param0: android.widget.TextView, param1: android.text.Spannable): boolean;
				public up(param0: android.widget.TextView, param1: android.text.Spannable): boolean;
				public down(param0: android.widget.TextView, param1: android.text.Spannable): boolean;
				public initialize(param0: android.widget.TextView, param1: android.text.Spannable): void;
				public handleMovementKey(param0: android.widget.TextView, param1: android.text.Spannable, param2: number, param3: number, param4: android.view.KeyEvent): boolean;
				public home(param0: android.widget.TextView, param1: android.text.Spannable): boolean;
				public onGenericMotionEvent(param0: android.widget.TextView, param1: android.text.Spannable, param2: android.view.MotionEvent): boolean;
				public onTrackballEvent(param0: android.widget.TextView, param1: android.text.Spannable, param2: android.view.MotionEvent): boolean;
				public bottom(param0: android.widget.TextView, param1: android.text.Spannable): boolean;
				public onKeyDown(param0: android.widget.TextView, param1: android.text.Spannable, param2: number, param3: android.view.KeyEvent): boolean;
				public onKeyUp(param0: android.widget.TextView, param1: android.text.Spannable, param2: number, param3: android.view.KeyEvent): boolean;
				public canSelectArbitrarily(): boolean;
				public onTakeFocus(param0: android.widget.TextView, param1: android.text.Spannable, param2: number): void;
				public getMovementMetaState(param0: android.text.Spannable, param1: android.view.KeyEvent): number;
				public end(param0: android.widget.TextView, param1: android.text.Spannable): boolean;
				public onKeyOther(param0: android.widget.TextView, param1: android.text.Spannable, param2: android.view.KeyEvent): boolean;
				public left(param0: android.widget.TextView, param1: android.text.Spannable): boolean;
				public right(param0: android.widget.TextView, param1: android.text.Spannable): boolean;
				public lineEnd(param0: android.widget.TextView, param1: android.text.Spannable): boolean;
				public constructor();
				public pageUp(param0: android.widget.TextView, param1: android.text.Spannable): boolean;
				public top(param0: android.widget.TextView, param1: android.text.Spannable): boolean;
				public pageDown(param0: android.widget.TextView, param1: android.text.Spannable): boolean;
				public onTouchEvent(param0: android.widget.TextView, param1: android.text.Spannable, param2: android.view.MotionEvent): boolean;
			}
		}
	}
}

declare module android {
	export module text {
		export module method {
			export class CharacterPickerDialog extends android.app.Dialog implements android.widget.AdapterView.OnItemClickListener, android.view.View.OnClickListener {
				public static class: java.lang.Class<android.text.method.CharacterPickerDialog>;
				public dispatchGenericMotionEvent(param0: android.view.MotionEvent): boolean;
				public onWindowStartingActionMode(param0: android.view.ActionMode.Callback): android.view.ActionMode;
				public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
				public onItemClick(param0: android.widget.AdapterView<any>, param1: android.view.View, param2: number, param3: number): void;
				public dismiss(): void;
				public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
				public dispatchPopulateAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): boolean;
				public onPreparePanel(param0: number, param1: android.view.View, param2: android.view.Menu): boolean;
				public onMenuItemSelected(param0: number, param1: android.view.MenuItem): boolean;
				public onCreate(param0: android.os.Bundle): void;
				public onPanelClosed(param0: number, param1: android.view.Menu): void;
				public cancel(): void;
				public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
				public onCreatePanelView(param0: number): android.view.View;
				public onCreateContextMenu(param0: android.view.ContextMenu, param1: android.view.View, param2: android.view.ContextMenu.ContextMenuInfo): void;
				public onClick(param0: android.view.View): void;
				public onActionModeStarted(param0: android.view.ActionMode): void;
				public onMenuOpened(param0: number, param1: android.view.Menu): boolean;
				public constructor(param0: android.content.Context, param1: number);
				public dispatchTrackballEvent(param0: android.view.MotionEvent): boolean;
				public constructor(param0: android.content.Context, param1: android.view.View, param2: android.text.Editable, param3: string, param4: boolean);
				public onActionModeFinished(param0: android.view.ActionMode): void;
				public dispatchKeyShortcutEvent(param0: android.view.KeyEvent): boolean;
				public constructor(param0: android.content.Context, param1: boolean, param2: android.content.DialogInterface.OnCancelListener);
				public onWindowAttributesChanged(param0: android.view.WindowManager.LayoutParams): void;
				public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
				public onContentChanged(): void;
				public onItemClick(param0: android.widget.AdapterView<any>, param1: android.view.View, param2: number, param3: number): void;
				public constructor(param0: android.content.Context);
				public dispatchKeyEvent(param0: android.view.KeyEvent): boolean;
				public onCreatePanelMenu(param0: number, param1: android.view.Menu): boolean;
				public onDetachedFromWindow(): void;
				public dispatchTouchEvent(param0: android.view.MotionEvent): boolean;
				public onSearchRequested(): boolean;
				public onWindowFocusChanged(param0: boolean): void;
				public onAttachedToWindow(): void;
			}
		}
	}
}

declare module android {
	export module text {
		export module method {
			export class DateKeyListener extends android.text.method.NumberKeyListener {
				public static class: java.lang.Class<android.text.method.DateKeyListener>;
				public static CHARACTERS: native.Array<string>;
				public getAcceptedChars(): native.Array<string>;
				public clearMetaKeyState(param0: android.view.View, param1: android.text.Editable, param2: number): void;
				public onKeyUp(param0: android.view.View, param1: android.text.Editable, param2: number, param3: android.view.KeyEvent): boolean;
				public getInputType(): number;
				public static clearMetaKeyState(param0: android.text.Editable, param1: number): void;
				public clearMetaKeyState(param0: number, param1: number): number;
				public onKeyOther(param0: android.view.View, param1: android.text.Editable, param2: android.view.KeyEvent): boolean;
				public onKeyDown(param0: android.view.View, param1: android.text.Editable, param2: number, param3: android.view.KeyEvent): boolean;
				public filter(param0: string, param1: number, param2: number, param3: android.text.Spanned, param4: number, param5: number): string;
				public constructor();
				public static getInstance(): android.text.method.DateKeyListener;
			}
		}
	}
}

declare module android {
	export module text {
		export module method {
			export class DateTimeKeyListener extends android.text.method.NumberKeyListener {
				public static class: java.lang.Class<android.text.method.DateTimeKeyListener>;
				public static CHARACTERS: native.Array<string>;
				public getAcceptedChars(): native.Array<string>;
				public clearMetaKeyState(param0: android.view.View, param1: android.text.Editable, param2: number): void;
				public onKeyUp(param0: android.view.View, param1: android.text.Editable, param2: number, param3: android.view.KeyEvent): boolean;
				public getInputType(): number;
				public static clearMetaKeyState(param0: android.text.Editable, param1: number): void;
				public clearMetaKeyState(param0: number, param1: number): number;
				public onKeyOther(param0: android.view.View, param1: android.text.Editable, param2: android.view.KeyEvent): boolean;
				public onKeyDown(param0: android.view.View, param1: android.text.Editable, param2: number, param3: android.view.KeyEvent): boolean;
				public static getInstance(): android.text.method.DateTimeKeyListener;
				public filter(param0: string, param1: number, param2: number, param3: android.text.Spanned, param4: number, param5: number): string;
				public constructor();
			}
		}
	}
}

declare module android {
	export module text {
		export module method {
			export class DialerKeyListener extends android.text.method.NumberKeyListener {
				public static class: java.lang.Class<android.text.method.DialerKeyListener>;
				public static CHARACTERS: native.Array<string>;
				public getAcceptedChars(): native.Array<string>;
				public static getInstance(): android.text.method.DialerKeyListener;
				public clearMetaKeyState(param0: android.view.View, param1: android.text.Editable, param2: number): void;
				public onKeyUp(param0: android.view.View, param1: android.text.Editable, param2: number, param3: android.view.KeyEvent): boolean;
				public getInputType(): number;
				public static clearMetaKeyState(param0: android.text.Editable, param1: number): void;
				public clearMetaKeyState(param0: number, param1: number): number;
				public lookup(param0: android.view.KeyEvent, param1: android.text.Spannable): number;
				public onKeyOther(param0: android.view.View, param1: android.text.Editable, param2: android.view.KeyEvent): boolean;
				public onKeyDown(param0: android.view.View, param1: android.text.Editable, param2: number, param3: android.view.KeyEvent): boolean;
				public filter(param0: string, param1: number, param2: number, param3: android.text.Spanned, param4: number, param5: number): string;
				public constructor();
			}
		}
	}
}

declare module android {
	export module text {
		export module method {
			export class DigitsKeyListener extends android.text.method.NumberKeyListener {
				public static class: java.lang.Class<android.text.method.DigitsKeyListener>;
				public constructor(param0: boolean, param1: boolean);
				public getAcceptedChars(): native.Array<string>;
				public clearMetaKeyState(param0: android.view.View, param1: android.text.Editable, param2: number): void;
				public onKeyUp(param0: android.view.View, param1: android.text.Editable, param2: number, param3: android.view.KeyEvent): boolean;
				public clearMetaKeyState(param0: number, param1: number): number;
				public static getInstance(param0: boolean, param1: boolean): android.text.method.DigitsKeyListener;
				public onKeyDown(param0: android.view.View, param1: android.text.Editable, param2: number, param3: android.view.KeyEvent): boolean;
				public filter(param0: string, param1: number, param2: number, param3: android.text.Spanned, param4: number, param5: number): string;
				public constructor();
				public static getInstance(): android.text.method.DigitsKeyListener;
				public getInputType(): number;
				public static clearMetaKeyState(param0: android.text.Editable, param1: number): void;
				public static getInstance(param0: string): android.text.method.DigitsKeyListener;
				public onKeyOther(param0: android.view.View, param1: android.text.Editable, param2: android.view.KeyEvent): boolean;
			}
		}
	}
}

declare module android {
	export module text {
		export module method {
			export class HideReturnsTransformationMethod extends android.text.method.ReplacementTransformationMethod {
				public static class: java.lang.Class<android.text.method.HideReturnsTransformationMethod>;
				public getReplacement(): native.Array<string>;
				public getTransformation(param0: string, param1: android.view.View): string;
				public static getInstance(): android.text.method.HideReturnsTransformationMethod;
				public getOriginal(): native.Array<string>;
				public onFocusChanged(param0: android.view.View, param1: string, param2: boolean, param3: number, param4: android.graphics.Rect): void;
				public constructor();
			}
		}
	}
}

declare module android {
	export module text {
		export module method {
			export class KeyListener extends java.lang.Object {
				public static class: java.lang.Class<android.text.method.KeyListener>;
				/**
				 * Constructs a new instance of the android.text.method.KeyListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getInputType(): number;
					onKeyDown(param0: android.view.View, param1: android.text.Editable, param2: number, param3: android.view.KeyEvent): boolean;
					onKeyUp(param0: android.view.View, param1: android.text.Editable, param2: number, param3: android.view.KeyEvent): boolean;
					onKeyOther(param0: android.view.View, param1: android.text.Editable, param2: android.view.KeyEvent): boolean;
					clearMetaKeyState(param0: android.view.View, param1: android.text.Editable, param2: number): void;
				});
				public constructor();
				public clearMetaKeyState(param0: android.view.View, param1: android.text.Editable, param2: number): void;
				public onKeyUp(param0: android.view.View, param1: android.text.Editable, param2: number, param3: android.view.KeyEvent): boolean;
				public getInputType(): number;
				public onKeyOther(param0: android.view.View, param1: android.text.Editable, param2: android.view.KeyEvent): boolean;
				public onKeyDown(param0: android.view.View, param1: android.text.Editable, param2: number, param3: android.view.KeyEvent): boolean;
			}
		}
	}
}

declare module android {
	export module text {
		export module method {
			export class LinkMovementMethod extends android.text.method.ScrollingMovementMethod {
				public static class: java.lang.Class<android.text.method.LinkMovementMethod>;
				public up(param0: android.widget.TextView, param1: android.text.Spannable): boolean;
				public down(param0: android.widget.TextView, param1: android.text.Spannable): boolean;
				public handleMovementKey(param0: android.widget.TextView, param1: android.text.Spannable, param2: number, param3: number, param4: android.view.KeyEvent): boolean;
				public initialize(param0: android.widget.TextView, param1: android.text.Spannable): void;
				public static getInstance(): android.text.method.MovementMethod;
				public onGenericMotionEvent(param0: android.widget.TextView, param1: android.text.Spannable, param2: android.view.MotionEvent): boolean;
				public onTrackballEvent(param0: android.widget.TextView, param1: android.text.Spannable, param2: android.view.MotionEvent): boolean;
				public onKeyDown(param0: android.widget.TextView, param1: android.text.Spannable, param2: number, param3: android.view.KeyEvent): boolean;
				public onKeyUp(param0: android.widget.TextView, param1: android.text.Spannable, param2: number, param3: android.view.KeyEvent): boolean;
				public canSelectArbitrarily(): boolean;
				public onTakeFocus(param0: android.widget.TextView, param1: android.text.Spannable, param2: number): void;
				public left(param0: android.widget.TextView, param1: android.text.Spannable): boolean;
				public right(param0: android.widget.TextView, param1: android.text.Spannable): boolean;
				public onKeyOther(param0: android.widget.TextView, param1: android.text.Spannable, param2: android.view.KeyEvent): boolean;
				public constructor();
				public onTouchEvent(param0: android.widget.TextView, param1: android.text.Spannable, param2: android.view.MotionEvent): boolean;
			}
		}
	}
}

declare module android {
	export module text {
		export module method {
			export abstract class MetaKeyKeyListener extends java.lang.Object {
				public static class: java.lang.Class<android.text.method.MetaKeyKeyListener>;
				public static META_SHIFT_ON: number;
				public static META_ALT_ON: number;
				public static META_SYM_ON: number;
				public static META_CAP_LOCKED: number;
				public static META_ALT_LOCKED: number;
				public static META_SYM_LOCKED: number;
				public clearMetaKeyState(param0: android.view.View, param1: android.text.Editable, param2: number): void;
				public onKeyUp(param0: android.view.View, param1: android.text.Editable, param2: number, param3: android.view.KeyEvent): boolean;
				public clearMetaKeyState(param0: number, param1: number): number;
				public static handleKeyUp(param0: number, param1: number, param2: android.view.KeyEvent): number;
				public static adjustMetaAfterKeypress(param0: android.text.Spannable): void;
				public static isSelectingMetaTracker(param0: string, param1: any): boolean;
				public onKeyDown(param0: android.view.View, param1: android.text.Editable, param2: number, param3: android.view.KeyEvent): boolean;
				public constructor();
				public static resetMetaState(param0: android.text.Spannable): void;
				public static resetLockedMeta(param0: number): number;
				public static getMetaState(param0: string): number;
				public static resetLockedMeta(param0: android.text.Spannable): void;
				public static clearMetaKeyState(param0: android.text.Editable, param1: number): void;
				public static handleKeyDown(param0: number, param1: number, param2: android.view.KeyEvent): number;
				public static isMetaTracker(param0: string, param1: any): boolean;
				public static getMetaState(param0: number, param1: number): number;
				public static adjustMetaAfterKeypress(param0: number): number;
				public static getMetaState(param0: string, param1: number): number;
				public static getMetaState(param0: number): number;
			}
		}
	}
}

declare module android {
	export module text {
		export module method {
			export class MovementMethod extends java.lang.Object {
				public static class: java.lang.Class<android.text.method.MovementMethod>;
				/**
				 * Constructs a new instance of the android.text.method.MovementMethod interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					initialize(param0: android.widget.TextView, param1: android.text.Spannable): void;
					onKeyDown(param0: android.widget.TextView, param1: android.text.Spannable, param2: number, param3: android.view.KeyEvent): boolean;
					onKeyUp(param0: android.widget.TextView, param1: android.text.Spannable, param2: number, param3: android.view.KeyEvent): boolean;
					onKeyOther(param0: android.widget.TextView, param1: android.text.Spannable, param2: android.view.KeyEvent): boolean;
					onTakeFocus(param0: android.widget.TextView, param1: android.text.Spannable, param2: number): void;
					onTrackballEvent(param0: android.widget.TextView, param1: android.text.Spannable, param2: android.view.MotionEvent): boolean;
					onTouchEvent(param0: android.widget.TextView, param1: android.text.Spannable, param2: android.view.MotionEvent): boolean;
					onGenericMotionEvent(param0: android.widget.TextView, param1: android.text.Spannable, param2: android.view.MotionEvent): boolean;
					canSelectArbitrarily(): boolean;
				});
				public constructor();
				public initialize(param0: android.widget.TextView, param1: android.text.Spannable): void;
				public onGenericMotionEvent(param0: android.widget.TextView, param1: android.text.Spannable, param2: android.view.MotionEvent): boolean;
				public onTrackballEvent(param0: android.widget.TextView, param1: android.text.Spannable, param2: android.view.MotionEvent): boolean;
				public onKeyDown(param0: android.widget.TextView, param1: android.text.Spannable, param2: number, param3: android.view.KeyEvent): boolean;
				public onKeyUp(param0: android.widget.TextView, param1: android.text.Spannable, param2: number, param3: android.view.KeyEvent): boolean;
				public onTouchEvent(param0: android.widget.TextView, param1: android.text.Spannable, param2: android.view.MotionEvent): boolean;
				public canSelectArbitrarily(): boolean;
				public onTakeFocus(param0: android.widget.TextView, param1: android.text.Spannable, param2: number): void;
				public onKeyOther(param0: android.widget.TextView, param1: android.text.Spannable, param2: android.view.KeyEvent): boolean;
			}
		}
	}
}

declare module android {
	export module text {
		export module method {
			export class MultiTapKeyListener extends android.text.method.BaseKeyListener implements android.text.SpanWatcher {
				public static class: java.lang.Class<android.text.method.MultiTapKeyListener>;
				public onSpanChanged(param0: android.text.Spannable, param1: any, param2: number, param3: number, param4: number, param5: number): void;
				public clearMetaKeyState(param0: android.view.View, param1: android.text.Editable, param2: number): void;
				public onKeyUp(param0: android.view.View, param1: android.text.Editable, param2: number, param3: android.view.KeyEvent): boolean;
				public onSpanAdded(param0: android.text.Spannable, param1: any, param2: number, param3: number): void;
				public constructor(param0: android.text.method.TextKeyListener.Capitalize, param1: boolean);
				public clearMetaKeyState(param0: number, param1: number): number;
				public onKeyDown(param0: android.view.View, param1: android.text.Editable, param2: number, param3: android.view.KeyEvent): boolean;
				public constructor();
				public getInputType(): number;
				public static clearMetaKeyState(param0: android.text.Editable, param1: number): void;
				public onSpanRemoved(param0: android.text.Spannable, param1: any, param2: number, param3: number): void;
				public static getInstance(param0: boolean, param1: android.text.method.TextKeyListener.Capitalize): android.text.method.MultiTapKeyListener;
				public onKeyOther(param0: android.view.View, param1: android.text.Editable, param2: android.view.KeyEvent): boolean;
			}
		}
	}
}

declare module android {
	export module text {
		export module method {
			export abstract class NumberKeyListener extends android.text.method.BaseKeyListener implements android.text.InputFilter {
				public static class: java.lang.Class<android.text.method.NumberKeyListener>;
				public getAcceptedChars(): native.Array<string>;
				public clearMetaKeyState(param0: android.view.View, param1: android.text.Editable, param2: number): void;
				public onKeyUp(param0: android.view.View, param1: android.text.Editable, param2: number, param3: android.view.KeyEvent): boolean;
				public getInputType(): number;
				public static clearMetaKeyState(param0: android.text.Editable, param1: number): void;
				public clearMetaKeyState(param0: number, param1: number): number;
				public lookup(param0: android.view.KeyEvent, param1: android.text.Spannable): number;
				public static ok(param0: native.Array<string>, param1: string): boolean;
				public onKeyOther(param0: android.view.View, param1: android.text.Editable, param2: android.view.KeyEvent): boolean;
				public onKeyDown(param0: android.view.View, param1: android.text.Editable, param2: number, param3: android.view.KeyEvent): boolean;
				public filter(param0: string, param1: number, param2: number, param3: android.text.Spanned, param4: number, param5: number): string;
				public constructor();
			}
		}
	}
}

declare module android {
	export module text {
		export module method {
			export class PasswordTransformationMethod extends java.lang.Object implements android.text.method.TransformationMethod, android.text.TextWatcher {
				public static class: java.lang.Class<android.text.method.PasswordTransformationMethod>;
				public getTransformation(param0: string, param1: android.view.View): string;
				public onTextChanged(param0: string, param1: number, param2: number, param3: number): void;
				public onFocusChanged(param0: android.view.View, param1: string, param2: boolean, param3: number, param4: android.graphics.Rect): void;
				public static getInstance(): android.text.method.PasswordTransformationMethod;
				public beforeTextChanged(param0: string, param1: number, param2: number, param3: number): void;
				public constructor();
				public afterTextChanged(param0: android.text.Editable): void;
			}
		}
	}
}

declare module android {
	export module text {
		export module method {
			export class QwertyKeyListener extends android.text.method.BaseKeyListener {
				public static class: java.lang.Class<android.text.method.QwertyKeyListener>;
				public static markAsReplaced(param0: android.text.Spannable, param1: number, param2: number, param3: string): void;
				public clearMetaKeyState(param0: android.view.View, param1: android.text.Editable, param2: number): void;
				public onKeyUp(param0: android.view.View, param1: android.text.Editable, param2: number, param3: android.view.KeyEvent): boolean;
				public constructor(param0: android.text.method.TextKeyListener.Capitalize, param1: boolean);
				public getInputType(): number;
				public static clearMetaKeyState(param0: android.text.Editable, param1: number): void;
				public clearMetaKeyState(param0: number, param1: number): number;
				public static getInstance(param0: boolean, param1: android.text.method.TextKeyListener.Capitalize): android.text.method.QwertyKeyListener;
				public onKeyOther(param0: android.view.View, param1: android.text.Editable, param2: android.view.KeyEvent): boolean;
				public onKeyDown(param0: android.view.View, param1: android.text.Editable, param2: number, param3: android.view.KeyEvent): boolean;
				public constructor();
				public static getInstanceForFullKeyboard(): android.text.method.QwertyKeyListener;
			}
		}
	}
}

declare module android {
	export module text {
		export module method {
			export abstract class ReplacementTransformationMethod extends java.lang.Object implements android.text.method.TransformationMethod {
				public static class: java.lang.Class<android.text.method.ReplacementTransformationMethod>;
				public getReplacement(): native.Array<string>;
				public getTransformation(param0: string, param1: android.view.View): string;
				public getOriginal(): native.Array<string>;
				public onFocusChanged(param0: android.view.View, param1: string, param2: boolean, param3: number, param4: android.graphics.Rect): void;
				public constructor();
			}
		}
	}
}

declare module android {
	export module text {
		export module method {
			export class ScrollingMovementMethod extends android.text.method.BaseMovementMethod implements android.text.method.MovementMethod {
				public static class: java.lang.Class<android.text.method.ScrollingMovementMethod>;
				public lineStart(param0: android.widget.TextView, param1: android.text.Spannable): boolean;
				public up(param0: android.widget.TextView, param1: android.text.Spannable): boolean;
				public down(param0: android.widget.TextView, param1: android.text.Spannable): boolean;
				public initialize(param0: android.widget.TextView, param1: android.text.Spannable): void;
				public home(param0: android.widget.TextView, param1: android.text.Spannable): boolean;
				public static getInstance(): android.text.method.MovementMethod;
				public onGenericMotionEvent(param0: android.widget.TextView, param1: android.text.Spannable, param2: android.view.MotionEvent): boolean;
				public bottom(param0: android.widget.TextView, param1: android.text.Spannable): boolean;
				public onTrackballEvent(param0: android.widget.TextView, param1: android.text.Spannable, param2: android.view.MotionEvent): boolean;
				public onKeyDown(param0: android.widget.TextView, param1: android.text.Spannable, param2: number, param3: android.view.KeyEvent): boolean;
				public onKeyUp(param0: android.widget.TextView, param1: android.text.Spannable, param2: number, param3: android.view.KeyEvent): boolean;
				public canSelectArbitrarily(): boolean;
				public end(param0: android.widget.TextView, param1: android.text.Spannable): boolean;
				public onTakeFocus(param0: android.widget.TextView, param1: android.text.Spannable, param2: number): void;
				public left(param0: android.widget.TextView, param1: android.text.Spannable): boolean;
				public right(param0: android.widget.TextView, param1: android.text.Spannable): boolean;
				public lineEnd(param0: android.widget.TextView, param1: android.text.Spannable): boolean;
				public onKeyOther(param0: android.widget.TextView, param1: android.text.Spannable, param2: android.view.KeyEvent): boolean;
				public constructor();
				public pageUp(param0: android.widget.TextView, param1: android.text.Spannable): boolean;
				public top(param0: android.widget.TextView, param1: android.text.Spannable): boolean;
				public pageDown(param0: android.widget.TextView, param1: android.text.Spannable): boolean;
				public onTouchEvent(param0: android.widget.TextView, param1: android.text.Spannable, param2: android.view.MotionEvent): boolean;
			}
		}
	}
}

declare module android {
	export module text {
		export module method {
			export class SingleLineTransformationMethod extends android.text.method.ReplacementTransformationMethod {
				public static class: java.lang.Class<android.text.method.SingleLineTransformationMethod>;
				public getReplacement(): native.Array<string>;
				public getTransformation(param0: string, param1: android.view.View): string;
				public getOriginal(): native.Array<string>;
				public static getInstance(): android.text.method.SingleLineTransformationMethod;
				public onFocusChanged(param0: android.view.View, param1: string, param2: boolean, param3: number, param4: android.graphics.Rect): void;
				public constructor();
			}
		}
	}
}

declare module android {
	export module text {
		export module method {
			export class TextKeyListener extends android.text.method.BaseKeyListener implements android.text.SpanWatcher {
				public static class: java.lang.Class<android.text.method.TextKeyListener>;
				public static getInstance(): android.text.method.TextKeyListener;
				public onSpanChanged(param0: android.text.Spannable, param1: any, param2: number, param3: number, param4: number, param5: number): void;
				public clearMetaKeyState(param0: android.view.View, param1: android.text.Editable, param2: number): void;
				public onKeyUp(param0: android.view.View, param1: android.text.Editable, param2: number, param3: android.view.KeyEvent): boolean;
				public release(): void;
				public onSpanAdded(param0: android.text.Spannable, param1: any, param2: number, param3: number): void;
				public constructor(param0: android.text.method.TextKeyListener.Capitalize, param1: boolean);
				public clearMetaKeyState(param0: number, param1: number): number;
				public static clear(param0: android.text.Editable): void;
				public onKeyDown(param0: android.view.View, param1: android.text.Editable, param2: number, param3: android.view.KeyEvent): boolean;
				public constructor();
				public static shouldCap(param0: android.text.method.TextKeyListener.Capitalize, param1: string, param2: number): boolean;
				public getInputType(): number;
				public static clearMetaKeyState(param0: android.text.Editable, param1: number): void;
				public onSpanRemoved(param0: android.text.Spannable, param1: any, param2: number, param3: number): void;
				public onKeyOther(param0: android.view.View, param1: android.text.Editable, param2: android.view.KeyEvent): boolean;
				public static getInstance(param0: boolean, param1: android.text.method.TextKeyListener.Capitalize): android.text.method.TextKeyListener;
			}
			export module TextKeyListener {
				export class Capitalize {
					public static class: java.lang.Class<android.text.method.TextKeyListener.Capitalize>;
					public static CHARACTERS: android.text.method.TextKeyListener.Capitalize;
					public static NONE: android.text.method.TextKeyListener.Capitalize;
					public static SENTENCES: android.text.method.TextKeyListener.Capitalize;
					public static WORDS: android.text.method.TextKeyListener.Capitalize;
					public static values(): native.Array<android.text.method.TextKeyListener.Capitalize>;
					public static valueOf(param0: string): android.text.method.TextKeyListener.Capitalize;
					public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
				}
			}
		}
	}
}

declare module android {
	export module text {
		export module method {
			export class TimeKeyListener extends android.text.method.NumberKeyListener {
				public static class: java.lang.Class<android.text.method.TimeKeyListener>;
				public static CHARACTERS: native.Array<string>;
				public getAcceptedChars(): native.Array<string>;
				public clearMetaKeyState(param0: android.view.View, param1: android.text.Editable, param2: number): void;
				public onKeyUp(param0: android.view.View, param1: android.text.Editable, param2: number, param3: android.view.KeyEvent): boolean;
				public getInputType(): number;
				public static clearMetaKeyState(param0: android.text.Editable, param1: number): void;
				public clearMetaKeyState(param0: number, param1: number): number;
				public static getInstance(): android.text.method.TimeKeyListener;
				public onKeyOther(param0: android.view.View, param1: android.text.Editable, param2: android.view.KeyEvent): boolean;
				public onKeyDown(param0: android.view.View, param1: android.text.Editable, param2: number, param3: android.view.KeyEvent): boolean;
				public filter(param0: string, param1: number, param2: number, param3: android.text.Spanned, param4: number, param5: number): string;
				public constructor();
			}
		}
	}
}

declare module android {
	export module text {
		export module method {
			export class Touch extends java.lang.Object {
				public static class: java.lang.Class<android.text.method.Touch>;
				public static scrollTo(param0: android.widget.TextView, param1: android.text.Layout, param2: number, param3: number): void;
				public static getInitialScrollX(param0: android.widget.TextView, param1: android.text.Spannable): number;
				public static getInitialScrollY(param0: android.widget.TextView, param1: android.text.Spannable): number;
				public static onTouchEvent(param0: android.widget.TextView, param1: android.text.Spannable, param2: android.view.MotionEvent): boolean;
			}
		}
	}
}

declare module android {
	export module text {
		export module method {
			export class TransformationMethod extends java.lang.Object {
				public static class: java.lang.Class<android.text.method.TransformationMethod>;
				/**
				 * Constructs a new instance of the android.text.method.TransformationMethod interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getTransformation(param0: string, param1: android.view.View): string;
					onFocusChanged(param0: android.view.View, param1: string, param2: boolean, param3: number, param4: android.graphics.Rect): void;
				});
				public constructor();
				public getTransformation(param0: string, param1: android.view.View): string;
				public onFocusChanged(param0: android.view.View, param1: string, param2: boolean, param3: number, param4: android.graphics.Rect): void;
			}
		}
	}
}

declare module android {
	export module text {
		export module style {
			export class AbsoluteSizeSpan extends android.text.style.MetricAffectingSpan implements android.text.ParcelableSpan {
				public static class: java.lang.Class<android.text.style.AbsoluteSizeSpan>;
				public updateDrawState(param0: android.text.TextPaint): void;
				public constructor(param0: android.os.Parcel);
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public getSize(): number;
				public getSpanTypeId(): number;
				public describeContents(): number;
				public updateMeasureState(param0: android.text.TextPaint): void;
				public constructor(param0: number);
				public constructor(param0: number, param1: boolean);
				public getDip(): boolean;
				public constructor();
			}
		}
	}
}

declare module android {
	export module text {
		export module style {
			export class AlignmentSpan extends java.lang.Object implements android.text.style.ParagraphStyle {
				public static class: java.lang.Class<android.text.style.AlignmentSpan>;
				/**
				 * Constructs a new instance of the android.text.style.AlignmentSpan interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getAlignment(): android.text.Layout.Alignment;
				});
				public constructor();
				public getAlignment(): android.text.Layout.Alignment;
			}
			export module AlignmentSpan {
				export class Standard extends java.lang.Object implements android.text.style.AlignmentSpan, android.text.ParcelableSpan {
					public static class: java.lang.Class<android.text.style.AlignmentSpan.Standard>;
					public getAlignment(): android.text.Layout.Alignment;
					public constructor(param0: android.os.Parcel);
					public describeContents(): number;
					public getSpanTypeId(): number;
					public constructor(param0: android.text.Layout.Alignment);
					public writeToParcel(param0: android.os.Parcel, param1: number): void;
				}
			}
		}
	}
}

declare module android {
	export module text {
		export module style {
			export class BackgroundColorSpan extends android.text.style.CharacterStyle implements android.text.style.UpdateAppearance, android.text.ParcelableSpan {
				public static class: java.lang.Class<android.text.style.BackgroundColorSpan>;
				public getBackgroundColor(): number;
				public updateDrawState(param0: android.text.TextPaint): void;
				public constructor(param0: android.os.Parcel);
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public getSpanTypeId(): number;
				public describeContents(): number;
				public constructor(param0: number);
				public constructor();
			}
		}
	}
}

declare module android {
	export module text {
		export module style {
			export class BulletSpan extends java.lang.Object implements android.text.style.LeadingMarginSpan, android.text.ParcelableSpan {
				public static class: java.lang.Class<android.text.style.BulletSpan>;
				public static STANDARD_GAP_WIDTH: number;
				public constructor(param0: number, param1: number);
				public constructor(param0: android.os.Parcel);
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public getSpanTypeId(): number;
				public describeContents(): number;
				public constructor(param0: number);
				public drawLeadingMargin(param0: android.graphics.Canvas, param1: android.graphics.Paint, param2: number, param3: number, param4: number, param5: number, param6: number, param7: string, param8: number, param9: number, param10: boolean, param11: android.text.Layout): void;
				public constructor();
				public getLeadingMargin(param0: boolean): number;
			}
		}
	}
}

declare module android {
	export module text {
		export module style {
			export abstract class CharacterStyle extends java.lang.Object {
				public static class: java.lang.Class<android.text.style.CharacterStyle>;
				public getUnderlying(): android.text.style.CharacterStyle;
				public updateDrawState(param0: android.text.TextPaint): void;
				public static wrap(param0: android.text.style.CharacterStyle): android.text.style.CharacterStyle;
				public constructor();
			}
		}
	}
}

declare module android {
	export module text {
		export module style {
			export abstract class ClickableSpan extends android.text.style.CharacterStyle implements android.text.style.UpdateAppearance {
				public static class: java.lang.Class<android.text.style.ClickableSpan>;
				public onClick(param0: android.view.View): void;
				public updateDrawState(param0: android.text.TextPaint): void;
				public constructor();
			}
		}
	}
}

declare module android {
	export module text {
		export module style {
			export class DrawableMarginSpan extends java.lang.Object implements android.text.style.LeadingMarginSpan, android.text.style.LineHeightSpan {
				public static class: java.lang.Class<android.text.style.DrawableMarginSpan>;
				public constructor(param0: android.graphics.drawable.Drawable);
				public constructor(param0: android.graphics.drawable.Drawable, param1: number);
				public chooseHeight(param0: string, param1: number, param2: number, param3: number, param4: number, param5: android.graphics.Paint.FontMetricsInt): void;
				public drawLeadingMargin(param0: android.graphics.Canvas, param1: android.graphics.Paint, param2: number, param3: number, param4: number, param5: number, param6: number, param7: string, param8: number, param9: number, param10: boolean, param11: android.text.Layout): void;
				public getLeadingMargin(param0: boolean): number;
			}
		}
	}
}

declare module android {
	export module text {
		export module style {
			export abstract class DynamicDrawableSpan extends android.text.style.ReplacementSpan {
				public static class: java.lang.Class<android.text.style.DynamicDrawableSpan>;
				public static ALIGN_BOTTOM: number;
				public static ALIGN_BASELINE: number;
				public mVerticalAlignment: number;
				public getDrawable(): android.graphics.drawable.Drawable;
				public getSize(param0: android.graphics.Paint, param1: string, param2: number, param3: number, param4: android.graphics.Paint.FontMetricsInt): number;
				public draw(param0: android.graphics.Canvas, param1: string, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number, param8: android.graphics.Paint): void;
				public constructor(param0: number);
				public getVerticalAlignment(): number;
				public constructor();
			}
		}
	}
}

declare module android {
	export module text {
		export module style {
			export class EasyEditSpan extends java.lang.Object implements android.text.ParcelableSpan {
				public static class: java.lang.Class<android.text.style.EasyEditSpan>;
				public static EXTRA_TEXT_CHANGED_TYPE: string;
				public static TEXT_DELETED: number;
				public static TEXT_MODIFIED: number;
				public constructor(param0: android.app.PendingIntent);
				public constructor(param0: android.os.Parcel);
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public describeContents(): number;
				public getSpanTypeId(): number;
				public constructor();
			}
		}
	}
}

declare module android {
	export module text {
		export module style {
			export class ForegroundColorSpan extends android.text.style.CharacterStyle implements android.text.style.UpdateAppearance, android.text.ParcelableSpan {
				public static class: java.lang.Class<android.text.style.ForegroundColorSpan>;
				public updateDrawState(param0: android.text.TextPaint): void;
				public constructor(param0: android.os.Parcel);
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public getForegroundColor(): number;
				public getSpanTypeId(): number;
				public describeContents(): number;
				public constructor(param0: number);
				public constructor();
			}
		}
	}
}

declare module android {
	export module text {
		export module style {
			export class IconMarginSpan extends java.lang.Object implements android.text.style.LeadingMarginSpan, android.text.style.LineHeightSpan {
				public static class: java.lang.Class<android.text.style.IconMarginSpan>;
				public chooseHeight(param0: string, param1: number, param2: number, param3: number, param4: number, param5: android.graphics.Paint.FontMetricsInt): void;
				public constructor(param0: android.graphics.Bitmap, param1: number);
				public drawLeadingMargin(param0: android.graphics.Canvas, param1: android.graphics.Paint, param2: number, param3: number, param4: number, param5: number, param6: number, param7: string, param8: number, param9: number, param10: boolean, param11: android.text.Layout): void;
				public constructor(param0: android.graphics.Bitmap);
				public getLeadingMargin(param0: boolean): number;
			}
		}
	}
}

declare module android {
	export module text {
		export module style {
			export class ImageSpan extends android.text.style.DynamicDrawableSpan {
				public static class: java.lang.Class<android.text.style.ImageSpan>;
				public constructor(param0: android.graphics.drawable.Drawable, param1: number);
				public constructor(param0: android.content.Context, param1: number);
				public getDrawable(): android.graphics.drawable.Drawable;
				/** @deprecated */
				public constructor(param0: android.graphics.Bitmap, param1: number);
				public constructor(param0: android.graphics.drawable.Drawable, param1: string);
				/** @deprecated */
				public constructor(param0: android.graphics.Bitmap);
				public constructor();
				public constructor(param0: android.graphics.drawable.Drawable);
				public constructor(param0: android.content.Context, param1: number, param2: number);
				public constructor(param0: android.graphics.drawable.Drawable, param1: string, param2: number);
				public constructor(param0: android.content.Context, param1: android.graphics.Bitmap);
				public constructor(param0: number);
				public getSource(): string;
				public constructor(param0: android.content.Context, param1: android.graphics.Bitmap, param2: number);
				public constructor(param0: android.content.Context, param1: android.net.Uri, param2: number);
				public constructor(param0: android.content.Context, param1: android.net.Uri);
			}
		}
	}
}

declare module android {
	export module text {
		export module style {
			export class LeadingMarginSpan extends java.lang.Object implements android.text.style.ParagraphStyle {
				public static class: java.lang.Class<android.text.style.LeadingMarginSpan>;
				/**
				 * Constructs a new instance of the android.text.style.LeadingMarginSpan interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getLeadingMargin(param0: boolean): number;
					drawLeadingMargin(param0: android.graphics.Canvas, param1: android.graphics.Paint, param2: number, param3: number, param4: number, param5: number, param6: number, param7: string, param8: number, param9: number, param10: boolean, param11: android.text.Layout): void;
				});
				public constructor();
				public drawLeadingMargin(param0: android.graphics.Canvas, param1: android.graphics.Paint, param2: number, param3: number, param4: number, param5: number, param6: number, param7: string, param8: number, param9: number, param10: boolean, param11: android.text.Layout): void;
				public getLeadingMargin(param0: boolean): number;
			}
			export module LeadingMarginSpan {
				export class LeadingMarginSpan2 extends java.lang.Object implements android.text.style.LeadingMarginSpan, android.text.style.WrapTogetherSpan {
					public static class: java.lang.Class<android.text.style.LeadingMarginSpan.LeadingMarginSpan2>;
					/**
					 * Constructs a new instance of the android.text.style.LeadingMarginSpan$LeadingMarginSpan2 interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						getLeadingMarginLineCount(): number;
						getLeadingMargin(param0: boolean): number;
						drawLeadingMargin(param0: android.graphics.Canvas, param1: android.graphics.Paint, param2: number, param3: number, param4: number, param5: number, param6: number, param7: string, param8: number, param9: number, param10: boolean, param11: android.text.Layout): void;
					});
					public constructor();
					public getLeadingMargin(param0: boolean): number;
					public getLeadingMarginLineCount(): number;
					public drawLeadingMargin(param0: android.graphics.Canvas, param1: android.graphics.Paint, param2: number, param3: number, param4: number, param5: number, param6: number, param7: string, param8: number, param9: number, param10: boolean, param11: android.text.Layout): void;
				}
				export class Standard extends java.lang.Object implements android.text.style.LeadingMarginSpan, android.text.ParcelableSpan {
					public static class: java.lang.Class<android.text.style.LeadingMarginSpan.Standard>;
					public constructor(param0: android.os.Parcel);
					public getLeadingMargin(param0: boolean): number;
					public describeContents(): number;
					public getSpanTypeId(): number;
					public drawLeadingMargin(param0: android.graphics.Canvas, param1: android.graphics.Paint, param2: number, param3: number, param4: number, param5: number, param6: number, param7: string, param8: number, param9: number, param10: boolean, param11: android.text.Layout): void;
					public constructor(param0: number);
					public constructor(param0: number, param1: number);
					public writeToParcel(param0: android.os.Parcel, param1: number): void;
				}
			}
		}
	}
}

declare module android {
	export module text {
		export module style {
			export class LineBackgroundSpan extends java.lang.Object implements android.text.style.ParagraphStyle {
				public static class: java.lang.Class<android.text.style.LineBackgroundSpan>;
				/**
				 * Constructs a new instance of the android.text.style.LineBackgroundSpan interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					drawBackground(param0: android.graphics.Canvas, param1: android.graphics.Paint, param2: number, param3: number, param4: number, param5: number, param6: number, param7: string, param8: number, param9: number, param10: number): void;
				});
				public constructor();
				public drawBackground(param0: android.graphics.Canvas, param1: android.graphics.Paint, param2: number, param3: number, param4: number, param5: number, param6: number, param7: string, param8: number, param9: number, param10: number): void;
			}
		}
	}
}

declare module android {
	export module text {
		export module style {
			export class LineHeightSpan extends java.lang.Object implements android.text.style.ParagraphStyle, android.text.style.WrapTogetherSpan {
				public static class: java.lang.Class<android.text.style.LineHeightSpan>;
				/**
				 * Constructs a new instance of the android.text.style.LineHeightSpan interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					chooseHeight(param0: string, param1: number, param2: number, param3: number, param4: number, param5: android.graphics.Paint.FontMetricsInt): void;
				});
				public constructor();
				public chooseHeight(param0: string, param1: number, param2: number, param3: number, param4: number, param5: android.graphics.Paint.FontMetricsInt): void;
			}
			export module LineHeightSpan {
				export class WithDensity extends java.lang.Object implements android.text.style.LineHeightSpan {
					public static class: java.lang.Class<android.text.style.LineHeightSpan.WithDensity>;
					/**
					 * Constructs a new instance of the android.text.style.LineHeightSpan$WithDensity interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						chooseHeight(param0: string, param1: number, param2: number, param3: number, param4: number, param5: android.graphics.Paint.FontMetricsInt, param6: android.text.TextPaint): void;
						chooseHeight(param0: string, param1: number, param2: number, param3: number, param4: number, param5: android.graphics.Paint.FontMetricsInt): void;
					});
					public constructor();
					public chooseHeight(param0: string, param1: number, param2: number, param3: number, param4: number, param5: android.graphics.Paint.FontMetricsInt): void;
					public chooseHeight(param0: string, param1: number, param2: number, param3: number, param4: number, param5: android.graphics.Paint.FontMetricsInt, param6: android.text.TextPaint): void;
				}
			}
		}
	}
}

declare module android {
	export module text {
		export module style {
			export class LocaleSpan extends android.text.style.MetricAffectingSpan implements android.text.ParcelableSpan {
				public static class: java.lang.Class<android.text.style.LocaleSpan>;
				public updateDrawState(param0: android.text.TextPaint): void;
				public constructor(param0: android.os.Parcel);
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public constructor(param0: java.util.Locale);
				public getSpanTypeId(): number;
				public describeContents(): number;
				public getLocale(): java.util.Locale;
				public updateMeasureState(param0: android.text.TextPaint): void;
				public constructor();
			}
		}
	}
}

declare module android {
	export module text {
		export module style {
			export class MaskFilterSpan extends android.text.style.CharacterStyle implements android.text.style.UpdateAppearance {
				public static class: java.lang.Class<android.text.style.MaskFilterSpan>;
				public updateDrawState(param0: android.text.TextPaint): void;
				public constructor(param0: android.graphics.MaskFilter);
				public getMaskFilter(): android.graphics.MaskFilter;
				public constructor();
			}
		}
	}
}

declare module android {
	export module text {
		export module style {
			export abstract class MetricAffectingSpan extends android.text.style.CharacterStyle implements android.text.style.UpdateLayout {
				public static class: java.lang.Class<android.text.style.MetricAffectingSpan>;
				public getUnderlying(): android.text.style.CharacterStyle;
				public updateMeasureState(param0: android.text.TextPaint): void;
				public getUnderlying(): android.text.style.MetricAffectingSpan;
				public constructor();
			}
		}
	}
}

declare module android {
	export module text {
		export module style {
			export class ParagraphStyle extends java.lang.Object {
				public static class: java.lang.Class<android.text.style.ParagraphStyle>;
				/**
				 * Constructs a new instance of the android.text.style.ParagraphStyle interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
			}
		}
	}
}

declare module android {
	export module text {
		export module style {
			export class QuoteSpan extends java.lang.Object implements android.text.style.LeadingMarginSpan, android.text.ParcelableSpan {
				public static class: java.lang.Class<android.text.style.QuoteSpan>;
				public getColor(): number;
				public constructor(param0: android.os.Parcel);
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public getSpanTypeId(): number;
				public describeContents(): number;
				public constructor(param0: number);
				public drawLeadingMargin(param0: android.graphics.Canvas, param1: android.graphics.Paint, param2: number, param3: number, param4: number, param5: number, param6: number, param7: string, param8: number, param9: number, param10: boolean, param11: android.text.Layout): void;
				public constructor();
				public getLeadingMargin(param0: boolean): number;
			}
		}
	}
}

declare module android {
	export module text {
		export module style {
			export class RasterizerSpan extends android.text.style.CharacterStyle implements android.text.style.UpdateAppearance {
				public static class: java.lang.Class<android.text.style.RasterizerSpan>;
				public updateDrawState(param0: android.text.TextPaint): void;
				public constructor(param0: android.graphics.Rasterizer);
				public getRasterizer(): android.graphics.Rasterizer;
				public constructor();
			}
		}
	}
}

declare module android {
	export module text {
		export module style {
			export class RelativeSizeSpan extends android.text.style.MetricAffectingSpan implements android.text.ParcelableSpan {
				public static class: java.lang.Class<android.text.style.RelativeSizeSpan>;
				public updateDrawState(param0: android.text.TextPaint): void;
				public constructor(param0: android.os.Parcel);
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public getSpanTypeId(): number;
				public describeContents(): number;
				public updateMeasureState(param0: android.text.TextPaint): void;
				public constructor(param0: number);
				public getSizeChange(): number;
				public constructor();
			}
		}
	}
}

declare module android {
	export module text {
		export module style {
			export abstract class ReplacementSpan extends android.text.style.MetricAffectingSpan {
				public static class: java.lang.Class<android.text.style.ReplacementSpan>;
				public updateDrawState(param0: android.text.TextPaint): void;
				public getSize(param0: android.graphics.Paint, param1: string, param2: number, param3: number, param4: android.graphics.Paint.FontMetricsInt): number;
				public draw(param0: android.graphics.Canvas, param1: string, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number, param8: android.graphics.Paint): void;
				public updateMeasureState(param0: android.text.TextPaint): void;
				public constructor();
			}
		}
	}
}

declare module android {
	export module text {
		export module style {
			export class ScaleXSpan extends android.text.style.MetricAffectingSpan implements android.text.ParcelableSpan {
				public static class: java.lang.Class<android.text.style.ScaleXSpan>;
				public updateDrawState(param0: android.text.TextPaint): void;
				public constructor(param0: android.os.Parcel);
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public getSpanTypeId(): number;
				public describeContents(): number;
				public updateMeasureState(param0: android.text.TextPaint): void;
				public constructor(param0: number);
				public getScaleX(): number;
				public constructor();
			}
		}
	}
}

declare module android {
	export module text {
		export module style {
			export class StrikethroughSpan extends android.text.style.CharacterStyle implements android.text.style.UpdateAppearance, android.text.ParcelableSpan {
				public static class: java.lang.Class<android.text.style.StrikethroughSpan>;
				public updateDrawState(param0: android.text.TextPaint): void;
				public constructor(param0: android.os.Parcel);
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public getSpanTypeId(): number;
				public describeContents(): number;
				public constructor();
			}
		}
	}
}

declare module android {
	export module text {
		export module style {
			export class StyleSpan extends android.text.style.MetricAffectingSpan implements android.text.ParcelableSpan {
				public static class: java.lang.Class<android.text.style.StyleSpan>;
				public updateDrawState(param0: android.text.TextPaint): void;
				public constructor(param0: android.os.Parcel);
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public getSpanTypeId(): number;
				public describeContents(): number;
				public updateMeasureState(param0: android.text.TextPaint): void;
				public constructor(param0: number);
				public getStyle(): number;
				public constructor();
			}
		}
	}
}

declare module android {
	export module text {
		export module style {
			export class SubscriptSpan extends android.text.style.MetricAffectingSpan implements android.text.ParcelableSpan {
				public static class: java.lang.Class<android.text.style.SubscriptSpan>;
				public updateDrawState(param0: android.text.TextPaint): void;
				public constructor(param0: android.os.Parcel);
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public getSpanTypeId(): number;
				public describeContents(): number;
				public updateMeasureState(param0: android.text.TextPaint): void;
				public constructor();
			}
		}
	}
}

declare module android {
	export module text {
		export module style {
			export class SuggestionSpan extends android.text.style.CharacterStyle implements android.text.ParcelableSpan {
				public static class: java.lang.Class<android.text.style.SuggestionSpan>;
				public static FLAG_EASY_CORRECT: number;
				public static FLAG_MISSPELLED: number;
				public static FLAG_AUTO_CORRECTION: number;
				public static ACTION_SUGGESTION_PICKED: string;
				public static SUGGESTION_SPAN_PICKED_AFTER: string;
				public static SUGGESTION_SPAN_PICKED_BEFORE: string;
				public static SUGGESTION_SPAN_PICKED_HASHCODE: string;
				public static SUGGESTIONS_MAX_SIZE: number;
				public static CREATOR: android.os.Parcelable.Creator<android.text.style.SuggestionSpan>;
				public getSuggestions(): native.Array<string>;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public getSpanTypeId(): number;
				public getLocale(): string;
				public setFlags(param0: number): void;
				public constructor();
				public constructor(param0: java.util.Locale, param1: native.Array<string>, param2: number);
				public updateDrawState(param0: android.text.TextPaint): void;
				public constructor(param0: android.os.Parcel);
				public constructor(param0: android.content.Context, param1: native.Array<string>, param2: number);
				public hashCode(): number;
				public constructor(param0: android.content.Context, param1: java.util.Locale, param2: native.Array<string>, param3: number, param4: java.lang.Class<any>);
				public describeContents(): number;
				public equals(param0: any): boolean;
				public getFlags(): number;
			}
		}
	}
}

declare module android {
	export module text {
		export module style {
			export class SuperscriptSpan extends android.text.style.MetricAffectingSpan implements android.text.ParcelableSpan {
				public static class: java.lang.Class<android.text.style.SuperscriptSpan>;
				public updateDrawState(param0: android.text.TextPaint): void;
				public constructor(param0: android.os.Parcel);
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public getSpanTypeId(): number;
				public describeContents(): number;
				public updateMeasureState(param0: android.text.TextPaint): void;
				public constructor();
			}
		}
	}
}

declare module android {
	export module text {
		export module style {
			export class TabStopSpan extends java.lang.Object implements android.text.style.ParagraphStyle {
				public static class: java.lang.Class<android.text.style.TabStopSpan>;
				/**
				 * Constructs a new instance of the android.text.style.TabStopSpan interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getTabStop(): number;
				});
				public constructor();
				public getTabStop(): number;
			}
			export module TabStopSpan {
				export class Standard extends java.lang.Object implements android.text.style.TabStopSpan {
					public static class: java.lang.Class<android.text.style.TabStopSpan.Standard>;
					public getTabStop(): number;
					public constructor(param0: number);
				}
			}
		}
	}
}

declare module android {
	export module text {
		export module style {
			export class TextAppearanceSpan extends android.text.style.MetricAffectingSpan implements android.text.ParcelableSpan {
				public static class: java.lang.Class<android.text.style.TextAppearanceSpan>;
				public constructor(param0: android.content.Context, param1: number);
				public getTextStyle(): number;
				public constructor(param0: string, param1: number, param2: number, param3: android.content.res.ColorStateList, param4: android.content.res.ColorStateList);
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public getSpanTypeId(): number;
				public getTextColor(): android.content.res.ColorStateList;
				public updateMeasureState(param0: android.text.TextPaint): void;
				public getFamily(): string;
				public constructor();
				public constructor(param0: android.content.Context, param1: number, param2: number);
				public getTextSize(): number;
				public updateDrawState(param0: android.text.TextPaint): void;
				public constructor(param0: android.os.Parcel);
				public getLinkTextColor(): android.content.res.ColorStateList;
				public describeContents(): number;
			}
		}
	}
}

declare module android {
	export module text {
		export module style {
			export class TypefaceSpan extends android.text.style.MetricAffectingSpan implements android.text.ParcelableSpan {
				public static class: java.lang.Class<android.text.style.TypefaceSpan>;
				public updateDrawState(param0: android.text.TextPaint): void;
				public constructor(param0: android.os.Parcel);
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public getSpanTypeId(): number;
				public describeContents(): number;
				public updateMeasureState(param0: android.text.TextPaint): void;
				public getFamily(): string;
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module android {
	export module text {
		export module style {
			export class URLSpan extends android.text.style.ClickableSpan implements android.text.ParcelableSpan {
				public static class: java.lang.Class<android.text.style.URLSpan>;
				public getURL(): string;
				public onClick(param0: android.view.View): void;
				public constructor(param0: android.os.Parcel);
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public getSpanTypeId(): number;
				public describeContents(): number;
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module android {
	export module text {
		export module style {
			export class UnderlineSpan extends android.text.style.CharacterStyle implements android.text.style.UpdateAppearance, android.text.ParcelableSpan {
				public static class: java.lang.Class<android.text.style.UnderlineSpan>;
				public updateDrawState(param0: android.text.TextPaint): void;
				public constructor(param0: android.os.Parcel);
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public getSpanTypeId(): number;
				public describeContents(): number;
				public constructor();
			}
		}
	}
}

declare module android {
	export module text {
		export module style {
			export class UpdateAppearance extends java.lang.Object {
				public static class: java.lang.Class<android.text.style.UpdateAppearance>;
				/**
				 * Constructs a new instance of the android.text.style.UpdateAppearance interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
			}
		}
	}
}

declare module android {
	export module text {
		export module style {
			export class UpdateLayout extends java.lang.Object implements android.text.style.UpdateAppearance {
				public static class: java.lang.Class<android.text.style.UpdateLayout>;
				/**
				 * Constructs a new instance of the android.text.style.UpdateLayout interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
			}
		}
	}
}

declare module android {
	export module text {
		export module style {
			export class WrapTogetherSpan extends java.lang.Object implements android.text.style.ParagraphStyle {
				public static class: java.lang.Class<android.text.style.WrapTogetherSpan>;
				/**
				 * Constructs a new instance of the android.text.style.WrapTogetherSpan interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
			}
		}
	}
}

declare module android {
	export module text {
		export module util {
			export class Linkify extends java.lang.Object {
				public static class: java.lang.Class<android.text.util.Linkify>;
				public static WEB_URLS: number;
				public static EMAIL_ADDRESSES: number;
				public static PHONE_NUMBERS: number;
				public static MAP_ADDRESSES: number;
				public static ALL: number;
				public static sUrlMatchFilter: android.text.util.Linkify.MatchFilter;
				public static sPhoneNumberMatchFilter: android.text.util.Linkify.MatchFilter;
				public static sPhoneNumberTransformFilter: android.text.util.Linkify.TransformFilter;
				public static addLinks(param0: android.text.Spannable, param1: number): boolean;
				public static addLinks(param0: android.text.Spannable, param1: java.util.regex.Pattern, param2: string, param3: android.text.util.Linkify.MatchFilter, param4: android.text.util.Linkify.TransformFilter): boolean;
				public static addLinks(param0: android.widget.TextView, param1: number): boolean;
				public static addLinks(param0: android.widget.TextView, param1: java.util.regex.Pattern, param2: string): void;
				public static addLinks(param0: android.widget.TextView, param1: java.util.regex.Pattern, param2: string, param3: android.text.util.Linkify.MatchFilter, param4: android.text.util.Linkify.TransformFilter): void;
				public static addLinks(param0: android.text.Spannable, param1: java.util.regex.Pattern, param2: string): boolean;
				public constructor();
			}
			export module Linkify {
				export class MatchFilter extends java.lang.Object {
					public static class: java.lang.Class<android.text.util.Linkify.MatchFilter>;
					/**
					 * Constructs a new instance of the android.text.util.Linkify$MatchFilter interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						acceptMatch(param0: string, param1: number, param2: number): boolean;
					});
					public constructor();
					public acceptMatch(param0: string, param1: number, param2: number): boolean;
				}
				export class TransformFilter extends java.lang.Object {
					public static class: java.lang.Class<android.text.util.Linkify.TransformFilter>;
					/**
					 * Constructs a new instance of the android.text.util.Linkify$TransformFilter interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						transformUrl(param0: java.util.regex.Matcher, param1: string): string;
					});
					public constructor();
					public transformUrl(param0: java.util.regex.Matcher, param1: string): string;
				}
			}
		}
	}
}

declare module android {
	export module text {
		export module util {
			export class Rfc822Token extends java.lang.Object {
				public static class: java.lang.Class<android.text.util.Rfc822Token>;
				public setName(param0: string): void;
				public setComment(param0: string): void;
				public constructor(param0: string, param1: string, param2: string);
				public getName(): string;
				public toString(): string;
				public static quoteName(param0: string): string;
				public static quoteComment(param0: string): string;
				public hashCode(): number;
				public static quoteNameIfNecessary(param0: string): string;
				public equals(param0: any): boolean;
				public setAddress(param0: string): void;
				public getAddress(): string;
				public getComment(): string;
			}
		}
	}
}

declare module android {
	export module text {
		export module util {
			export class Rfc822Tokenizer extends java.lang.Object implements android.widget.MultiAutoCompleteTextView.Tokenizer {
				public static class: java.lang.Class<android.text.util.Rfc822Tokenizer>;
				public static tokenize(param0: string, param1: java.util.Collection<android.text.util.Rfc822Token>): void;
				public findTokenStart(param0: string, param1: number): number;
				public static tokenize(param0: string): native.Array<android.text.util.Rfc822Token>;
				public terminateToken(param0: string): string;
				public findTokenEnd(param0: string, param1: number): number;
				public constructor();
			}
		}
	}
}

declare module android {
	export module util {
		export class AndroidException extends java.lang.Exception {
			public static class: java.lang.Class<android.util.AndroidException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
			public constructor(param0: java.lang.Exception);
		}
	}
}

declare module android {
	export module util {
		export class AndroidRuntimeException extends java.lang.RuntimeException {
			public static class: java.lang.Class<android.util.AndroidRuntimeException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
			public constructor(param0: java.lang.Exception);
		}
	}
}

declare module android {
	export module util {
		export class AtomicFile extends java.lang.Object {
			public static class: java.lang.Class<android.util.AtomicFile>;
			public delete(): void;
			public startWrite(): java.io.FileOutputStream;
			public getBaseFile(): java.io.File;
			public constructor(param0: java.io.File);
			public openRead(): java.io.FileInputStream;
			public finishWrite(param0: java.io.FileOutputStream): void;
			public failWrite(param0: java.io.FileOutputStream): void;
			public readFully(): native.Array<number>;
		}
	}
}

declare module android {
	export module util {
		export class AttributeSet extends java.lang.Object {
			public static class: java.lang.Class<android.util.AttributeSet>;
			/**
			 * Constructs a new instance of the android.util.AttributeSet interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				getAttributeCount(): number;
				getAttributeName(param0: number): string;
				getAttributeValue(param0: number): string;
				getAttributeValue(param0: string, param1: string): string;
				getPositionDescription(): string;
				getAttributeNameResource(param0: number): number;
				getAttributeListValue(param0: string, param1: string, param2: native.Array<string>, param3: number): number;
				getAttributeBooleanValue(param0: string, param1: string, param2: boolean): boolean;
				getAttributeResourceValue(param0: string, param1: string, param2: number): number;
				getAttributeIntValue(param0: string, param1: string, param2: number): number;
				getAttributeUnsignedIntValue(param0: string, param1: string, param2: number): number;
				getAttributeFloatValue(param0: string, param1: string, param2: number): number;
				getAttributeListValue(param0: number, param1: native.Array<string>, param2: number): number;
				getAttributeBooleanValue(param0: number, param1: boolean): boolean;
				getAttributeResourceValue(param0: number, param1: number): number;
				getAttributeIntValue(param0: number, param1: number): number;
				getAttributeUnsignedIntValue(param0: number, param1: number): number;
				getAttributeFloatValue(param0: number, param1: number): number;
				getIdAttribute(): string;
				getClassAttribute(): string;
				getIdAttributeResourceValue(param0: number): number;
				getStyleAttribute(): number;
			});
			public constructor();
			public getAttributeFloatValue(param0: number, param1: number): number;
			public getAttributeUnsignedIntValue(param0: string, param1: string, param2: number): number;
			public getAttributeBooleanValue(param0: string, param1: string, param2: boolean): boolean;
			public getAttributeIntValue(param0: number, param1: number): number;
			public getPositionDescription(): string;
			public getAttributeListValue(param0: number, param1: native.Array<string>, param2: number): number;
			public getAttributeResourceValue(param0: number, param1: number): number;
			public getAttributeUnsignedIntValue(param0: number, param1: number): number;
			public getAttributeName(param0: number): string;
			public getAttributeValue(param0: string, param1: string): string;
			public getAttributeFloatValue(param0: string, param1: string, param2: number): number;
			public getAttributeNameResource(param0: number): number;
			public getAttributeResourceValue(param0: string, param1: string, param2: number): number;
			public getAttributeListValue(param0: string, param1: string, param2: native.Array<string>, param3: number): number;
			public getAttributeValue(param0: number): string;
			public getAttributeCount(): number;
			public getIdAttributeResourceValue(param0: number): number;
			public getAttributeIntValue(param0: string, param1: string, param2: number): number;
			public getAttributeBooleanValue(param0: number, param1: boolean): boolean;
			public getIdAttribute(): string;
			public getClassAttribute(): string;
			public getStyleAttribute(): number;
		}
	}
}

declare module android {
	export module util {
		export class Base64 extends java.lang.Object {
			public static class: java.lang.Class<android.util.Base64>;
			public static DEFAULT: number;
			public static NO_PADDING: number;
			public static NO_WRAP: number;
			public static CRLF: number;
			public static URL_SAFE: number;
			public static NO_CLOSE: number;
			public static decode(param0: native.Array<number>, param1: number, param2: number, param3: number): native.Array<number>;
			public static encodeToString(param0: native.Array<number>, param1: number, param2: number, param3: number): string;
			public static decode(param0: string, param1: number): native.Array<number>;
			public static encode(param0: native.Array<number>, param1: number, param2: number, param3: number): native.Array<number>;
			public static decode(param0: native.Array<number>, param1: number): native.Array<number>;
			public static encodeToString(param0: native.Array<number>, param1: number): string;
			public static encode(param0: native.Array<number>, param1: number): native.Array<number>;
		}
	}
}

declare module android {
	export module util {
		export class Base64DataException extends java.io.IOException {
			public static class: java.lang.Class<android.util.Base64DataException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module android {
	export module util {
		export class Base64InputStream extends java.io.FilterInputStream {
			public static class: java.lang.Class<android.util.Base64InputStream>;
			public markSupported(): boolean;
			public constructor(param0: java.io.InputStream, param1: number);
			public read(param0: native.Array<number>): number;
			public skip(param0: number): number;
			public reset(): void;
			public constructor(param0: java.io.InputStream);
			public read(param0: native.Array<number>, param1: number, param2: number): number;
			public constructor();
			public close(): void;
			public mark(param0: number): void;
			public available(): number;
			public read(): number;
		}
	}
}

declare module android {
	export module util {
		export class Base64OutputStream extends java.io.FilterOutputStream {
			public static class: java.lang.Class<android.util.Base64OutputStream>;
			public flush(): void;
			public constructor(param0: java.io.OutputStream, param1: number);
			public write(param0: number): void;
			public constructor(param0: java.io.OutputStream);
			public write(param0: native.Array<number>, param1: number, param2: number): void;
			public constructor();
			public write(param0: native.Array<number>): void;
			public close(): void;
		}
	}
}

declare module android {
	export module util {
		export class Config extends java.lang.Object {
			public static class: java.lang.Class<android.util.Config>;
			public static DEBUG: boolean;
			public static RELEASE: boolean;
			public static PROFILE: boolean;
			public static LOGV: boolean;
			public static LOGD: boolean;
		}
	}
}

declare module android {
	export module util {
		export class DebugUtils extends java.lang.Object {
			public static class: java.lang.Class<android.util.DebugUtils>;
			public static isObjectSelected(param0: any): boolean;
		}
	}
}

declare module android {
	export module util {
		export class DisplayMetrics extends java.lang.Object {
			public static class: java.lang.Class<android.util.DisplayMetrics>;
			public static DENSITY_LOW: number;
			public static DENSITY_MEDIUM: number;
			public static DENSITY_TV: number;
			public static DENSITY_HIGH: number;
			public static DENSITY_XHIGH: number;
			public static DENSITY_XXHIGH: number;
			public static DENSITY_XXXHIGH: number;
			public static DENSITY_DEFAULT: number;
			public widthPixels: number;
			public heightPixels: number;
			public density: number;
			public densityDpi: number;
			public scaledDensity: number;
			public xdpi: number;
			public ydpi: number;
			public equals(param0: any): boolean;
			public setTo(param0: android.util.DisplayMetrics): void;
			public toString(): string;
			public equals(param0: android.util.DisplayMetrics): boolean;
			public setToDefaults(): void;
			public constructor();
			public hashCode(): number;
		}
	}
}

declare module android {
	export module util {
		export class EventLog extends java.lang.Object {
			public static class: java.lang.Class<android.util.EventLog>;
			public static writeEvent(param0: number, param1: string): number;
			public static getTagCode(param0: string): number;
			public static readEvents(param0: native.Array<number>, param1: java.util.Collection<android.util.EventLog.Event>): void;
			public static getTagName(param0: number): string;
			public static writeEvent(param0: number, param1: native.Array<any>): number;
			public static writeEvent(param0: number, param1: number): number;
		}
		export module EventLog {
			export class Event extends java.lang.Object {
				public static class: java.lang.Class<android.util.EventLog.Event>;
				public getProcessId(): number;
				public getTimeNanos(): number;
				public getThreadId(): number;
				public getTag(): number;
				public getData(): any;
			}
		}
	}
}

declare module android {
	export module util {
		export class EventLogTags extends java.lang.Object {
			public static class: java.lang.Class<android.util.EventLogTags>;
			public get(param0: string): android.util.EventLogTags.Description;
			public constructor(param0: java.io.BufferedReader);
			public constructor();
			public get(param0: number): android.util.EventLogTags.Description;
		}
		export module EventLogTags {
			export class Description extends java.lang.Object {
				public static class: java.lang.Class<android.util.EventLogTags.Description>;
				public mTag: number;
				public mName: string;
			}
		}
	}
}

declare module android {
	export module util {
		export class FloatMath extends java.lang.Object {
			public static class: java.lang.Class<android.util.FloatMath>;
			public static exp(param0: number): number;
			public static floor(param0: number): number;
			public static sqrt(param0: number): number;
			public static pow(param0: number, param1: number): number;
			public static hypot(param0: number, param1: number): number;
			public static sin(param0: number): number;
			public static cos(param0: number): number;
			public static ceil(param0: number): number;
		}
	}
}

declare module android {
	export module util {
		export class JsonReader extends java.lang.Object implements java.io.Closeable {
			public static class: java.lang.Class<android.util.JsonReader>;
			public beginArray(): void;
			public nextString(): string;
			public nextBoolean(): boolean;
			public isLenient(): boolean;
			public nextNull(): void;
			public hasNext(): boolean;
			public nextLong(): number;
			public nextName(): string;
			public nextDouble(): number;
			public constructor(param0: java.io.Reader);
			public endArray(): void;
			public beginObject(): void;
			public toString(): string;
			public endObject(): void;
			public setLenient(param0: boolean): void;
			public peek(): android.util.JsonToken;
			public nextInt(): number;
			public close(): void;
			public skipValue(): void;
		}
	}
}

declare module android {
	export module util {
		export class JsonToken {
			public static class: java.lang.Class<android.util.JsonToken>;
			public static BEGIN_ARRAY: android.util.JsonToken;
			public static BEGIN_OBJECT: android.util.JsonToken;
			public static BOOLEAN: android.util.JsonToken;
			public static END_ARRAY: android.util.JsonToken;
			public static END_DOCUMENT: android.util.JsonToken;
			public static END_OBJECT: android.util.JsonToken;
			public static NAME: android.util.JsonToken;
			public static NULL: android.util.JsonToken;
			public static NUMBER: android.util.JsonToken;
			public static STRING: android.util.JsonToken;
			public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			public static values(): native.Array<android.util.JsonToken>;
			public static valueOf(param0: string): android.util.JsonToken;
		}
	}
}

declare module android {
	export module util {
		export class JsonWriter extends java.lang.Object implements java.io.Closeable {
			public static class: java.lang.Class<android.util.JsonWriter>;
			public constructor(param0: java.io.Writer);
			public flush(): void;
			public beginArray(): android.util.JsonWriter;
			public isLenient(): boolean;
			public endObject(): android.util.JsonWriter;
			public value(param0: java.lang.Number): android.util.JsonWriter;
			public beginObject(): android.util.JsonWriter;
			public name(param0: string): android.util.JsonWriter;
			public value(param0: boolean): android.util.JsonWriter;
			public endArray(): android.util.JsonWriter;
			public value(param0: number): android.util.JsonWriter;
			public setLenient(param0: boolean): void;
			public nullValue(): android.util.JsonWriter;
			public setIndent(param0: string): void;
			public close(): void;
			public value(param0: string): android.util.JsonWriter;
		}
	}
}

declare module android {
	export module util {
		export class Log extends java.lang.Object {
			public static class: java.lang.Class<android.util.Log>;
			public static VERBOSE: number;
			public static DEBUG: number;
			public static INFO: number;
			public static WARN: number;
			public static ERROR: number;
			public static ASSERT: number;
			public static v(param0: string, param1: string): number;
			public static w(param0: string, param1: string): number;
			public static i(param0: string, param1: string): number;
			public static i(param0: string, param1: string, param2: java.lang.Throwable): number;
			public static d(param0: string, param1: string, param2: java.lang.Throwable): number;
			public static wtf(param0: string, param1: string, param2: java.lang.Throwable): number;
			public static v(param0: string, param1: string, param2: java.lang.Throwable): number;
			public static d(param0: string, param1: string): number;
			public static getStackTraceString(param0: java.lang.Throwable): string;
			public static println(param0: number, param1: string, param2: string): number;
			public static isLoggable(param0: string, param1: number): boolean;
			public static e(param0: string, param1: string, param2: java.lang.Throwable): number;
			public static wtf(param0: string, param1: string): number;
			public static wtf(param0: string, param1: java.lang.Throwable): number;
			public static w(param0: string, param1: string, param2: java.lang.Throwable): number;
			public static w(param0: string, param1: java.lang.Throwable): number;
			public static e(param0: string, param1: string): number;
		}
	}
}

declare module android {
	export module util {
		export class LogPrinter extends java.lang.Object implements android.util.Printer {
			public static class: java.lang.Class<android.util.LogPrinter>;
			public constructor(param0: number, param1: string);
			public println(param0: string): void;
		}
	}
}

declare module android {
	export module util {
		export class LongSparseArray<E>  extends java.lang.Cloneable {
			public static class: java.lang.Class<android.util.LongSparseArray<any>>;
			public append(param0: number, param1: any): void;
			public clear(): void;
			public put(param0: number, param1: any): void;
			public size(): number;
			public delete(param0: number): void;
			public indexOfValue(param0: any): number;
			public constructor(param0: number);
			public constructor();
			public remove(param0: number): void;
			public clone(): android.util.LongSparseArray<any>;
			public keyAt(param0: number): number;
			public clone(): any;
			public valueAt(param0: number): any;
			public get(param0: number): any;
			public removeAt(param0: number): void;
			public get(param0: number, param1: any): any;
			public setValueAt(param0: number, param1: any): void;
			public indexOfKey(param0: number): number;
		}
	}
}

declare module android {
	export module util {
		export class LruCache<K, V>  extends java.lang.Object {
			public static class: java.lang.Class<android.util.LruCache<any,any>>;
			public put(param0: K, param1: V): V;
			public size(): number;
			public putCount(): number;
			public createCount(): number;
			public constructor(param0: number);
			public evictAll(): void;
			public get(param0: K): V;
			public maxSize(): number;
			public create(param0: K): V;
			public hitCount(): number;
			public snapshot(): java.util.Map<K,V>;
			public entryRemoved(param0: boolean, param1: K, param2: V, param3: V): void;
			public toString(): string;
			public sizeOf(param0: K, param1: V): number;
			public trimToSize(param0: number): void;
			public remove(param0: K): V;
			public evictionCount(): number;
			public missCount(): number;
		}
	}
}

declare module android {
	export module util {
		export class MalformedJsonException extends java.io.IOException {
			public static class: java.lang.Class<android.util.MalformedJsonException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module android {
	export module util {
		export class MonthDisplayHelper extends java.lang.Object {
			public static class: java.lang.Class<android.util.MonthDisplayHelper>;
			public constructor(param0: number, param1: number, param2: number);
			public getColumnOf(param0: number): number;
			public getOffset(): number;
			public isWithinCurrentMonth(param0: number, param1: number): boolean;
			public getDigitsForRow(param0: number): native.Array<number>;
			public previousMonth(): void;
			public getFirstDayOfMonth(): number;
			public getNumberOfDaysInMonth(): number;
			public getYear(): number;
			public getMonth(): number;
			public getRowOf(param0: number): number;
			public getDayAt(param0: number, param1: number): number;
			public constructor(param0: number, param1: number);
			public nextMonth(): void;
			public getWeekStartDay(): number;
		}
	}
}

declare module android {
	export module util {
		export class NoSuchPropertyException extends java.lang.RuntimeException {
			public static class: java.lang.Class<android.util.NoSuchPropertyException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module android {
	export module util {
		export class Pair<F, S>  extends java.lang.Object {
			public static class: java.lang.Class<android.util.Pair<any,any>>;
			public first: F;
			public second: S;
			public equals(param0: any): boolean;
			public static create(param0: any, param1: any): android.util.Pair<any,any>;
			public constructor(param0: F, param1: S);
			public hashCode(): number;
		}
	}
}

declare module android {
	export module util {
		export class Patterns extends java.lang.Object {
			public static class: java.lang.Class<android.util.Patterns>;
			public static TOP_LEVEL_DOMAIN_STR: string;
			public static TOP_LEVEL_DOMAIN: java.util.regex.Pattern;
			public static TOP_LEVEL_DOMAIN_STR_FOR_WEB_URL: string;
			public static GOOD_IRI_CHAR: string;
			public static WEB_URL: java.util.regex.Pattern;
			public static IP_ADDRESS: java.util.regex.Pattern;
			public static DOMAIN_NAME: java.util.regex.Pattern;
			public static EMAIL_ADDRESS: java.util.regex.Pattern;
			public static PHONE: java.util.regex.Pattern;
			public static concatGroups(param0: java.util.regex.Matcher): string;
			public static digitsAndPlusOnly(param0: java.util.regex.Matcher): string;
		}
	}
}

declare module android {
	export module util {
		export class PrintStreamPrinter extends java.lang.Object implements android.util.Printer {
			public static class: java.lang.Class<android.util.PrintStreamPrinter>;
			public constructor(param0: java.io.PrintStream);
			public println(param0: string): void;
		}
	}
}

declare module android {
	export module util {
		export class PrintWriterPrinter extends java.lang.Object implements android.util.Printer {
			public static class: java.lang.Class<android.util.PrintWriterPrinter>;
			public println(param0: string): void;
			public constructor(param0: java.io.PrintWriter);
		}
	}
}

declare module android {
	export module util {
		export class Printer extends java.lang.Object {
			public static class: java.lang.Class<android.util.Printer>;
			/**
			 * Constructs a new instance of the android.util.Printer interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				println(param0: string): void;
			});
			public constructor();
			public println(param0: string): void;
		}
	}
}

declare module android {
	export module util {
		export abstract class Property<T, V>  extends java.lang.Object {
			public static class: java.lang.Class<android.util.Property<any,any>>;
			public isReadOnly(): boolean;
			public set(param0: T, param1: V): void;
			public getName(): string;
			public getType(): java.lang.Class<V>;
			public constructor(param0: java.lang.Class<V>, param1: string);
			public static of(param0: java.lang.Class<any>, param1: java.lang.Class<any>, param2: string): android.util.Property<any,any>;
			public get(param0: T): V;
		}
	}
}

declare module android {
	export module util {
		export class SparseArray<E>  extends java.lang.Cloneable {
			public static class: java.lang.Class<android.util.SparseArray<any>>;
			public append(param0: number, param1: any): void;
			public clear(): void;
			public put(param0: number, param1: any): void;
			public size(): number;
			public delete(param0: number): void;
			public indexOfValue(param0: any): number;
			public constructor(param0: number);
			public constructor();
			public remove(param0: number): void;
			public keyAt(param0: number): number;
			public clone(): any;
			public valueAt(param0: number): any;
			public get(param0: number): any;
			public removeAt(param0: number): void;
			public get(param0: number, param1: any): any;
			public clone(): android.util.SparseArray<any>;
			public setValueAt(param0: number, param1: any): void;
			public indexOfKey(param0: number): number;
		}
	}
}

declare module android {
	export module util {
		export class SparseBooleanArray extends java.lang.Object implements java.lang.Cloneable {
			public static class: java.lang.Class<android.util.SparseBooleanArray>;
			public clear(): void;
			public size(): number;
			public delete(param0: number): void;
			public append(param0: number, param1: boolean): void;
			public constructor(param0: number);
			public constructor();
			public clone(): android.util.SparseBooleanArray;
			public get(param0: number, param1: boolean): boolean;
			public keyAt(param0: number): number;
			public clone(): any;
			public get(param0: number): boolean;
			public put(param0: number, param1: boolean): void;
			public valueAt(param0: number): boolean;
			public indexOfValue(param0: boolean): number;
			public indexOfKey(param0: number): number;
		}
	}
}

declare module android {
	export module util {
		export class SparseIntArray extends java.lang.Object implements java.lang.Cloneable {
			public static class: java.lang.Class<android.util.SparseIntArray>;
			public clear(): void;
			public put(param0: number, param1: number): void;
			public size(): number;
			public valueAt(param0: number): number;
			public delete(param0: number): void;
			public append(param0: number, param1: number): void;
			public constructor(param0: number);
			public constructor();
			public clone(): android.util.SparseIntArray;
			public keyAt(param0: number): number;
			public clone(): any;
			public indexOfValue(param0: number): number;
			public removeAt(param0: number): void;
			public get(param0: number): number;
			public indexOfKey(param0: number): number;
			public get(param0: number, param1: number): number;
		}
	}
}

declare module android {
	export module util {
		export class SparseLongArray extends java.lang.Object implements java.lang.Cloneable {
			public static class: java.lang.Class<android.util.SparseLongArray>;
			public clear(): void;
			public put(param0: number, param1: number): void;
			public size(): number;
			public valueAt(param0: number): number;
			public delete(param0: number): void;
			public append(param0: number, param1: number): void;
			public constructor(param0: number);
			public constructor();
			public keyAt(param0: number): number;
			public clone(): any;
			public clone(): android.util.SparseLongArray;
			public indexOfValue(param0: number): number;
			public removeAt(param0: number): void;
			public get(param0: number): number;
			public indexOfKey(param0: number): number;
			public get(param0: number, param1: number): number;
		}
	}
}

declare module android {
	export module util {
		export class StateSet extends java.lang.Object {
			public static class: java.lang.Class<android.util.StateSet>;
			public static WILD_CARD: native.Array<number>;
			public static NOTHING: native.Array<number>;
			public static isWildCard(param0: native.Array<number>): boolean;
			public static stateSetMatches(param0: native.Array<number>, param1: number): boolean;
			public static trimStateSet(param0: native.Array<number>, param1: number): native.Array<number>;
			public static dump(param0: native.Array<number>): string;
			public static stateSetMatches(param0: native.Array<number>, param1: native.Array<number>): boolean;
		}
	}
}

declare module android {
	export module util {
		export class StringBuilderPrinter extends java.lang.Object implements android.util.Printer {
			public static class: java.lang.Class<android.util.StringBuilderPrinter>;
			public println(param0: string): void;
			public constructor(param0: java.lang.StringBuilder);
		}
	}
}

declare module android {
	export module util {
		export class TimeFormatException extends java.lang.RuntimeException {
			public static class: java.lang.Class<android.util.TimeFormatException>;
		}
	}
}

declare module android {
	export module util {
		export class TimeUtils extends java.lang.Object {
			public static class: java.lang.Class<android.util.TimeUtils>;
			public static getTimeZone(param0: number, param1: boolean, param2: number, param3: string): java.util.TimeZone;
			public static getTimeZoneDatabaseVersion(): string;
		}
	}
}

declare module android {
	export module util {
		export class TimingLogger extends java.lang.Object {
			public static class: java.lang.Class<android.util.TimingLogger>;
			public constructor(param0: string, param1: string);
			public reset(param0: string, param1: string): void;
			public dumpToLog(): void;
			public reset(): void;
			public addSplit(param0: string): void;
		}
	}
}

declare module android {
	export module util {
		export class TypedValue extends java.lang.Object {
			public static class: java.lang.Class<android.util.TypedValue>;
			public static TYPE_NULL: number;
			public static TYPE_REFERENCE: number;
			public static TYPE_ATTRIBUTE: number;
			public static TYPE_STRING: number;
			public static TYPE_FLOAT: number;
			public static TYPE_DIMENSION: number;
			public static TYPE_FRACTION: number;
			public static TYPE_FIRST_INT: number;
			public static TYPE_INT_DEC: number;
			public static TYPE_INT_HEX: number;
			public static TYPE_INT_BOOLEAN: number;
			public static TYPE_FIRST_COLOR_INT: number;
			public static TYPE_INT_COLOR_ARGB8: number;
			public static TYPE_INT_COLOR_RGB8: number;
			public static TYPE_INT_COLOR_ARGB4: number;
			public static TYPE_INT_COLOR_RGB4: number;
			public static TYPE_LAST_COLOR_INT: number;
			public static TYPE_LAST_INT: number;
			public static COMPLEX_UNIT_SHIFT: number;
			public static COMPLEX_UNIT_MASK: number;
			public static COMPLEX_UNIT_PX: number;
			public static COMPLEX_UNIT_DIP: number;
			public static COMPLEX_UNIT_SP: number;
			public static COMPLEX_UNIT_PT: number;
			public static COMPLEX_UNIT_IN: number;
			public static COMPLEX_UNIT_MM: number;
			public static COMPLEX_UNIT_FRACTION: number;
			public static COMPLEX_UNIT_FRACTION_PARENT: number;
			public static COMPLEX_RADIX_SHIFT: number;
			public static COMPLEX_RADIX_MASK: number;
			public static COMPLEX_RADIX_23p0: number;
			public static COMPLEX_RADIX_16p7: number;
			public static COMPLEX_RADIX_8p15: number;
			public static COMPLEX_RADIX_0p23: number;
			public static COMPLEX_MANTISSA_SHIFT: number;
			public static COMPLEX_MANTISSA_MASK: number;
			public static DENSITY_DEFAULT: number;
			public static DENSITY_NONE: number;
			public type: number;
			public string: string;
			public data: number;
			public assetCookie: number;
			public resourceId: number;
			public changingConfigurations: number;
			public density: number;
			public static complexToDimensionNoisy(param0: number, param1: android.util.DisplayMetrics): number;
			public static applyDimension(param0: number, param1: number, param2: android.util.DisplayMetrics): number;
			public static complexToDimension(param0: number, param1: android.util.DisplayMetrics): number;
			public static complexToDimensionPixelOffset(param0: number, param1: android.util.DisplayMetrics): number;
			public constructor();
			public setTo(param0: android.util.TypedValue): void;
			public getDimension(param0: android.util.DisplayMetrics): number;
			public getFraction(param0: number, param1: number): number;
			public coerceToString(): string;
			public toString(): string;
			public static complexToFloat(param0: number): number;
			public static complexToDimensionPixelSize(param0: number, param1: android.util.DisplayMetrics): number;
			public static coerceToString(param0: number, param1: number): string;
			public static complexToFraction(param0: number, param1: number, param2: number): number;
			public getFloat(): number;
		}
	}
}

declare module android {
	export module util {
		export class Xml extends java.lang.Object {
			public static class: java.lang.Class<android.util.Xml>;
			public static FEATURE_RELAXED: string;
			public static parse(param0: java.io.InputStream, param1: android.util.Xml.Encoding, param2: org.xml.sax.ContentHandler): void;
			public static parse(param0: string, param1: org.xml.sax.ContentHandler): void;
			public static findEncodingByName(param0: string): android.util.Xml.Encoding;
			public static newSerializer(): org.xmlpull.v1.XmlSerializer;
			public static newPullParser(): org.xmlpull.v1.XmlPullParser;
			public static parse(param0: java.io.Reader, param1: org.xml.sax.ContentHandler): void;
			public static asAttributeSet(param0: org.xmlpull.v1.XmlPullParser): android.util.AttributeSet;
		}
		export module Xml {
			export class Encoding {
				public static class: java.lang.Class<android.util.Xml.Encoding>;
				public static ISO_8859_1: android.util.Xml.Encoding;
				public static US_ASCII: android.util.Xml.Encoding;
				public static UTF_16: android.util.Xml.Encoding;
				public static UTF_8: android.util.Xml.Encoding;
				public static valueOf(param0: string): android.util.Xml.Encoding;
				public static values(): native.Array<android.util.Xml.Encoding>;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			}
		}
	}
}

declare module android {
	export module view {
		export abstract class AbsSavedState extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.view.AbsSavedState>;
			public static EMPTY_STATE: android.view.AbsSavedState;
			public static CREATOR: android.os.Parcelable.Creator<android.view.AbsSavedState>;
			public constructor(param0: android.os.Parcel);
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public getSuperState(): android.os.Parcelable;
			public constructor(param0: android.os.Parcelable);
		}
	}
}

declare module android {
	export module view {
		export abstract class ActionMode extends java.lang.Object {
			public static class: java.lang.Class<android.view.ActionMode>;
			public setTag(param0: any): void;
			public getTitle(): string;
			public setTitle(param0: string): void;
			public getSubtitle(): string;
			public getMenu(): android.view.Menu;
			public getTitleOptionalHint(): boolean;
			public isTitleOptional(): boolean;
			public finish(): void;
			public setSubtitle(param0: number): void;
			public constructor();
			public setTitle(param0: number): void;
			public getMenuInflater(): android.view.MenuInflater;
			public invalidate(): void;
			public getCustomView(): android.view.View;
			public setSubtitle(param0: string): void;
			public getTag(): any;
			public setTitleOptionalHint(param0: boolean): void;
			public setCustomView(param0: android.view.View): void;
		}
		export module ActionMode {
			export class Callback extends java.lang.Object {
				public static class: java.lang.Class<android.view.ActionMode.Callback>;
				/**
				 * Constructs a new instance of the android.view.ActionMode$Callback interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onCreateActionMode(param0: android.view.ActionMode, param1: android.view.Menu): boolean;
					onPrepareActionMode(param0: android.view.ActionMode, param1: android.view.Menu): boolean;
					onActionItemClicked(param0: android.view.ActionMode, param1: android.view.MenuItem): boolean;
					onDestroyActionMode(param0: android.view.ActionMode): void;
				});
				public constructor();
				public onPrepareActionMode(param0: android.view.ActionMode, param1: android.view.Menu): boolean;
				public onActionItemClicked(param0: android.view.ActionMode, param1: android.view.MenuItem): boolean;
				public onCreateActionMode(param0: android.view.ActionMode, param1: android.view.Menu): boolean;
				public onDestroyActionMode(param0: android.view.ActionMode): void;
			}
		}
	}
}

declare module android {
	export module view {
		export abstract class ActionProvider extends java.lang.Object {
			public static class: java.lang.Class<android.view.ActionProvider>;
			public setVisibilityListener(param0: android.view.ActionProvider.VisibilityListener): void;
			/** @deprecated */
			public onCreateActionView(): android.view.View;
			public onPerformDefaultAction(): boolean;
			public constructor(param0: android.content.Context);
			public overridesItemVisibility(): boolean;
			public onPrepareSubMenu(param0: android.view.SubMenu): void;
			public refreshVisibility(): void;
			public onCreateActionView(param0: android.view.MenuItem): android.view.View;
			public hasSubMenu(): boolean;
			public isVisible(): boolean;
		}
		export module ActionProvider {
			export class VisibilityListener extends java.lang.Object {
				public static class: java.lang.Class<android.view.ActionProvider.VisibilityListener>;
				/**
				 * Constructs a new instance of the android.view.ActionProvider$VisibilityListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onActionProviderVisibilityChanged(param0: boolean): void;
				});
				public constructor();
				public onActionProviderVisibilityChanged(param0: boolean): void;
			}
		}
	}
}

declare module android {
	export module view {
		export class Choreographer extends java.lang.Object {
			public static class: java.lang.Class<android.view.Choreographer>;
			public removeFrameCallback(param0: android.view.Choreographer.FrameCallback): void;
			public postFrameCallback(param0: android.view.Choreographer.FrameCallback): void;
			public static getInstance(): android.view.Choreographer;
			public postFrameCallbackDelayed(param0: android.view.Choreographer.FrameCallback, param1: number): void;
		}
		export module Choreographer {
			export class FrameCallback extends java.lang.Object {
				public static class: java.lang.Class<android.view.Choreographer.FrameCallback>;
				/**
				 * Constructs a new instance of the android.view.Choreographer$FrameCallback interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					doFrame(param0: number): void;
				});
				public constructor();
				public doFrame(param0: number): void;
			}
		}
	}
}

declare module android {
	export module view {
		export class CollapsibleActionView extends java.lang.Object {
			public static class: java.lang.Class<android.view.CollapsibleActionView>;
			/**
			 * Constructs a new instance of the android.view.CollapsibleActionView interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				onActionViewExpanded(): void;
				onActionViewCollapsed(): void;
			});
			public constructor();
			public onActionViewCollapsed(): void;
			public onActionViewExpanded(): void;
		}
	}
}

declare module android {
	export module view {
		export class ContextMenu extends java.lang.Object implements android.view.Menu {
			public static class: java.lang.Class<android.view.ContextMenu>;
			/**
			 * Constructs a new instance of the android.view.ContextMenu interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				setHeaderTitle(param0: number): android.view.ContextMenu;
				setHeaderTitle(param0: string): android.view.ContextMenu;
				setHeaderIcon(param0: number): android.view.ContextMenu;
				setHeaderIcon(param0: android.graphics.drawable.Drawable): android.view.ContextMenu;
				setHeaderView(param0: android.view.View): android.view.ContextMenu;
				clearHeader(): void;
				add(param0: string): android.view.MenuItem;
				add(param0: number): android.view.MenuItem;
				add(param0: number, param1: number, param2: number, param3: string): android.view.MenuItem;
				add(param0: number, param1: number, param2: number, param3: number): android.view.MenuItem;
				addSubMenu(param0: string): android.view.SubMenu;
				addSubMenu(param0: number): android.view.SubMenu;
				addSubMenu(param0: number, param1: number, param2: number, param3: string): android.view.SubMenu;
				addSubMenu(param0: number, param1: number, param2: number, param3: number): android.view.SubMenu;
				addIntentOptions(param0: number, param1: number, param2: number, param3: android.content.ComponentName, param4: native.Array<android.content.Intent>, param5: android.content.Intent, param6: number, param7: native.Array<android.view.MenuItem>): number;
				removeItem(param0: number): void;
				removeGroup(param0: number): void;
				clear(): void;
				setGroupCheckable(param0: number, param1: boolean, param2: boolean): void;
				setGroupVisible(param0: number, param1: boolean): void;
				setGroupEnabled(param0: number, param1: boolean): void;
				hasVisibleItems(): boolean;
				findItem(param0: number): android.view.MenuItem;
				size(): number;
				getItem(param0: number): android.view.MenuItem;
				close(): void;
				performShortcut(param0: number, param1: android.view.KeyEvent, param2: number): boolean;
				isShortcutKey(param0: number, param1: android.view.KeyEvent): boolean;
				performIdentifierAction(param0: number, param1: number): boolean;
				setQwertyMode(param0: boolean): void;
			});
			public constructor();
			public static CATEGORY_SECONDARY: number;
			public static FLAG_APPEND_TO_GROUP: number;
			public static NONE: number;
			public static FIRST: number;
			public static CATEGORY_ALTERNATIVE: number;
			public static FLAG_ALWAYS_PERFORM_CLOSE: number;
			public static CATEGORY_CONTAINER: number;
			public static FLAG_PERFORM_NO_CLOSE: number;
			public static CATEGORY_SYSTEM: number;
			public hasVisibleItems(): boolean;
			public setHeaderTitle(param0: string): android.view.ContextMenu;
			public setGroupEnabled(param0: number, param1: boolean): void;
			public add(param0: number, param1: number, param2: number, param3: number): android.view.MenuItem;
			public addSubMenu(param0: string): android.view.SubMenu;
			public addSubMenu(param0: number): android.view.SubMenu;
			public setHeaderIcon(param0: android.graphics.drawable.Drawable): android.view.ContextMenu;
			public removeItem(param0: number): void;
			public setHeaderView(param0: android.view.View): android.view.ContextMenu;
			public setQwertyMode(param0: boolean): void;
			public addIntentOptions(param0: number, param1: number, param2: number, param3: android.content.ComponentName, param4: native.Array<android.content.Intent>, param5: android.content.Intent, param6: number, param7: native.Array<android.view.MenuItem>): number;
			public close(): void;
			public clear(): void;
			public clearHeader(): void;
			public isShortcutKey(param0: number, param1: android.view.KeyEvent): boolean;
			public setGroupCheckable(param0: number, param1: boolean, param2: boolean): void;
			public size(): number;
			public add(param0: string): android.view.MenuItem;
			public add(param0: number): android.view.MenuItem;
			public setHeaderTitle(param0: number): android.view.ContextMenu;
			public add(param0: number, param1: number, param2: number, param3: string): android.view.MenuItem;
			public removeGroup(param0: number): void;
			public getItem(param0: number): android.view.MenuItem;
			public addSubMenu(param0: number, param1: number, param2: number, param3: number): android.view.SubMenu;
			public performIdentifierAction(param0: number, param1: number): boolean;
			public performShortcut(param0: number, param1: android.view.KeyEvent, param2: number): boolean;
			public setGroupVisible(param0: number, param1: boolean): void;
			public addSubMenu(param0: number, param1: number, param2: number, param3: string): android.view.SubMenu;
			public findItem(param0: number): android.view.MenuItem;
			public setHeaderIcon(param0: number): android.view.ContextMenu;
		}
		export module ContextMenu {
			export class ContextMenuInfo extends java.lang.Object {
				public static class: java.lang.Class<android.view.ContextMenu.ContextMenuInfo>;
				/**
				 * Constructs a new instance of the android.view.ContextMenu$ContextMenuInfo interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
			}
		}
	}
}

declare module android {
	export module view {
		export class ContextThemeWrapper extends android.content.ContextWrapper {
			public static class: java.lang.Class<android.view.ContextThemeWrapper>;
			public getSystemService(param0: string): any;
			public onApplyThemeResource(param0: android.content.res.Resources.Theme, param1: number, param2: boolean): void;
			public applyOverrideConfiguration(param0: android.content.res.Configuration): void;
			public getResources(): android.content.res.Resources;
			public setTheme(param0: number): void;
			public attachBaseContext(param0: android.content.Context): void;
			public constructor(param0: android.content.Context);
			public getTheme(): android.content.res.Resources.Theme;
			public constructor();
			public constructor(param0: android.content.Context, param1: number);
		}
	}
}

declare module android {
	export module view {
		export class Display extends java.lang.Object {
			public static class: java.lang.Class<android.view.Display>;
			public static DEFAULT_DISPLAY: number;
			public static FLAG_SUPPORTS_PROTECTED_BUFFERS: number;
			public static FLAG_SECURE: number;
			public getMetrics(param0: android.util.DisplayMetrics): void;
			public getRectSize(param0: android.graphics.Rect): void;
			/** @deprecated */
			public getHeight(): number;
			public getFlags(): number;
			public getRefreshRate(): number;
			public getRotation(): number;
			/** @deprecated */
			public getPixelFormat(): number;
			public getCurrentSizeRange(param0: android.graphics.Point, param1: android.graphics.Point): void;
			/** @deprecated */
			public getOrientation(): number;
			public getRealSize(param0: android.graphics.Point): void;
			/** @deprecated */
			public getWidth(): number;
			public toString(): string;
			public getName(): string;
			public getRealMetrics(param0: android.util.DisplayMetrics): void;
			public getSize(param0: android.graphics.Point): void;
			public isValid(): boolean;
			public getDisplayId(): number;
		}
	}
}

declare module android {
	export module view {
		export class DragEvent extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.view.DragEvent>;
			public static ACTION_DRAG_STARTED: number;
			public static ACTION_DRAG_LOCATION: number;
			public static ACTION_DROP: number;
			public static ACTION_DRAG_ENDED: number;
			public static ACTION_DRAG_ENTERED: number;
			public static ACTION_DRAG_EXITED: number;
			public static CREATOR: android.os.Parcelable.Creator<android.view.DragEvent>;
			public getClipData(): android.content.ClipData;
			public toString(): string;
			public describeContents(): number;
			public getY(): number;
			public getResult(): boolean;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public getX(): number;
			public getClipDescription(): android.content.ClipDescription;
			public getLocalState(): any;
			public getAction(): number;
		}
	}
}

declare module android {
	export module view {
		export class FocusFinder extends java.lang.Object {
			public static class: java.lang.Class<android.view.FocusFinder>;
			public findNextFocusFromRect(param0: android.view.ViewGroup, param1: android.graphics.Rect, param2: number): android.view.View;
			public findNextFocus(param0: android.view.ViewGroup, param1: android.view.View, param2: number): android.view.View;
			public findNearestTouchable(param0: android.view.ViewGroup, param1: number, param2: number, param3: number, param4: native.Array<number>): android.view.View;
			public static getInstance(): android.view.FocusFinder;
		}
	}
}

declare module android {
	export module view {
		export class GestureDetector extends java.lang.Object {
			public static class: java.lang.Class<android.view.GestureDetector>;
			/** @deprecated */
			public constructor(param0: android.view.GestureDetector.OnGestureListener);
			public constructor(param0: android.content.Context, param1: android.view.GestureDetector.OnGestureListener, param2: android.os.Handler, param3: boolean);
			public isLongpressEnabled(): boolean;
			/** @deprecated */
			public constructor(param0: android.view.GestureDetector.OnGestureListener, param1: android.os.Handler);
			public setIsLongpressEnabled(param0: boolean): void;
			public constructor(param0: android.content.Context, param1: android.view.GestureDetector.OnGestureListener, param2: android.os.Handler);
			public onTouchEvent(param0: android.view.MotionEvent): boolean;
			public constructor(param0: android.content.Context, param1: android.view.GestureDetector.OnGestureListener);
			public setOnDoubleTapListener(param0: android.view.GestureDetector.OnDoubleTapListener): void;
		}
		export module GestureDetector {
			export class OnDoubleTapListener extends java.lang.Object {
				public static class: java.lang.Class<android.view.GestureDetector.OnDoubleTapListener>;
				/**
				 * Constructs a new instance of the android.view.GestureDetector$OnDoubleTapListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onSingleTapConfirmed(param0: android.view.MotionEvent): boolean;
					onDoubleTap(param0: android.view.MotionEvent): boolean;
					onDoubleTapEvent(param0: android.view.MotionEvent): boolean;
				});
				public constructor();
				public onSingleTapConfirmed(param0: android.view.MotionEvent): boolean;
				public onDoubleTap(param0: android.view.MotionEvent): boolean;
				public onDoubleTapEvent(param0: android.view.MotionEvent): boolean;
			}
			export class OnGestureListener extends java.lang.Object {
				public static class: java.lang.Class<android.view.GestureDetector.OnGestureListener>;
				/**
				 * Constructs a new instance of the android.view.GestureDetector$OnGestureListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onDown(param0: android.view.MotionEvent): boolean;
					onShowPress(param0: android.view.MotionEvent): void;
					onSingleTapUp(param0: android.view.MotionEvent): boolean;
					onScroll(param0: android.view.MotionEvent, param1: android.view.MotionEvent, param2: number, param3: number): boolean;
					onLongPress(param0: android.view.MotionEvent): void;
					onFling(param0: android.view.MotionEvent, param1: android.view.MotionEvent, param2: number, param3: number): boolean;
				});
				public constructor();
				public onFling(param0: android.view.MotionEvent, param1: android.view.MotionEvent, param2: number, param3: number): boolean;
				public onShowPress(param0: android.view.MotionEvent): void;
				public onScroll(param0: android.view.MotionEvent, param1: android.view.MotionEvent, param2: number, param3: number): boolean;
				public onLongPress(param0: android.view.MotionEvent): void;
				public onDown(param0: android.view.MotionEvent): boolean;
				public onSingleTapUp(param0: android.view.MotionEvent): boolean;
			}
			export class SimpleOnGestureListener extends java.lang.Object implements android.view.GestureDetector.OnGestureListener, android.view.GestureDetector.OnDoubleTapListener {
				public static class: java.lang.Class<android.view.GestureDetector.SimpleOnGestureListener>;
				public onFling(param0: android.view.MotionEvent, param1: android.view.MotionEvent, param2: number, param3: number): boolean;
				public onShowPress(param0: android.view.MotionEvent): void;
				public onSingleTapConfirmed(param0: android.view.MotionEvent): boolean;
				public onScroll(param0: android.view.MotionEvent, param1: android.view.MotionEvent, param2: number, param3: number): boolean;
				public onLongPress(param0: android.view.MotionEvent): void;
				public onDoubleTap(param0: android.view.MotionEvent): boolean;
				public onDoubleTapEvent(param0: android.view.MotionEvent): boolean;
				public onSingleTapUp(param0: android.view.MotionEvent): boolean;
				public onDown(param0: android.view.MotionEvent): boolean;
				public constructor();
			}
		}
	}
}

declare module android {
	export module view {
		export class Gravity extends java.lang.Object {
			public static class: java.lang.Class<android.view.Gravity>;
			public static NO_GRAVITY: number;
			public static AXIS_SPECIFIED: number;
			public static AXIS_PULL_BEFORE: number;
			public static AXIS_PULL_AFTER: number;
			public static AXIS_CLIP: number;
			public static AXIS_X_SHIFT: number;
			public static AXIS_Y_SHIFT: number;
			public static TOP: number;
			public static BOTTOM: number;
			public static LEFT: number;
			public static RIGHT: number;
			public static CENTER_VERTICAL: number;
			public static FILL_VERTICAL: number;
			public static CENTER_HORIZONTAL: number;
			public static FILL_HORIZONTAL: number;
			public static CENTER: number;
			public static FILL: number;
			public static CLIP_VERTICAL: number;
			public static CLIP_HORIZONTAL: number;
			public static RELATIVE_LAYOUT_DIRECTION: number;
			public static HORIZONTAL_GRAVITY_MASK: number;
			public static VERTICAL_GRAVITY_MASK: number;
			public static DISPLAY_CLIP_VERTICAL: number;
			public static DISPLAY_CLIP_HORIZONTAL: number;
			public static START: number;
			public static END: number;
			public static RELATIVE_HORIZONTAL_GRAVITY_MASK: number;
			public static apply(param0: number, param1: number, param2: number, param3: android.graphics.Rect, param4: android.graphics.Rect): void;
			public static apply(param0: number, param1: number, param2: number, param3: android.graphics.Rect, param4: android.graphics.Rect, param5: number): void;
			public static apply(param0: number, param1: number, param2: number, param3: android.graphics.Rect, param4: number, param5: number, param6: android.graphics.Rect): void;
			public static apply(param0: number, param1: number, param2: number, param3: android.graphics.Rect, param4: number, param5: number, param6: android.graphics.Rect, param7: number): void;
			public static isVertical(param0: number): boolean;
			public static isHorizontal(param0: number): boolean;
			public static getAbsoluteGravity(param0: number, param1: number): number;
			public static applyDisplay(param0: number, param1: android.graphics.Rect, param2: android.graphics.Rect, param3: number): void;
			public constructor();
			public static applyDisplay(param0: number, param1: android.graphics.Rect, param2: android.graphics.Rect): void;
		}
	}
}

declare module android {
	export module view {
		export class HapticFeedbackConstants extends java.lang.Object {
			public static class: java.lang.Class<android.view.HapticFeedbackConstants>;
			public static LONG_PRESS: number;
			public static VIRTUAL_KEY: number;
			public static KEYBOARD_TAP: number;
			public static FLAG_IGNORE_VIEW_SETTING: number;
			public static FLAG_IGNORE_GLOBAL_SETTING: number;
		}
	}
}

declare module android {
	export module view {
		export class InflateException extends java.lang.RuntimeException {
			public static class: java.lang.Class<android.view.InflateException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module android {
	export module view {
		export class InputDevice extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.view.InputDevice>;
			public static SOURCE_CLASS_MASK: number;
			public static SOURCE_CLASS_NONE: number;
			public static SOURCE_CLASS_BUTTON: number;
			public static SOURCE_CLASS_POINTER: number;
			public static SOURCE_CLASS_TRACKBALL: number;
			public static SOURCE_CLASS_POSITION: number;
			public static SOURCE_CLASS_JOYSTICK: number;
			public static SOURCE_UNKNOWN: number;
			public static SOURCE_KEYBOARD: number;
			public static SOURCE_DPAD: number;
			public static SOURCE_GAMEPAD: number;
			public static SOURCE_TOUCHSCREEN: number;
			public static SOURCE_MOUSE: number;
			public static SOURCE_STYLUS: number;
			public static SOURCE_TRACKBALL: number;
			public static SOURCE_TOUCHPAD: number;
			public static SOURCE_TOUCH_NAVIGATION: number;
			public static SOURCE_JOYSTICK: number;
			public static SOURCE_ANY: number;
			public static MOTION_RANGE_X: number;
			public static MOTION_RANGE_Y: number;
			public static MOTION_RANGE_PRESSURE: number;
			public static MOTION_RANGE_SIZE: number;
			public static MOTION_RANGE_TOUCH_MAJOR: number;
			public static MOTION_RANGE_TOUCH_MINOR: number;
			public static MOTION_RANGE_TOOL_MAJOR: number;
			public static MOTION_RANGE_TOOL_MINOR: number;
			public static MOTION_RANGE_ORIENTATION: number;
			public static KEYBOARD_TYPE_NONE: number;
			public static KEYBOARD_TYPE_NON_ALPHABETIC: number;
			public static KEYBOARD_TYPE_ALPHABETIC: number;
			public static CREATOR: android.os.Parcelable.Creator<android.view.InputDevice>;
			public getKeyboardType(): number;
			public isVirtual(): boolean;
			public getMotionRange(param0: number, param1: number): android.view.InputDevice.MotionRange;
			public getMotionRange(param0: number): android.view.InputDevice.MotionRange;
			public getMotionRanges(): java.util.List<android.view.InputDevice.MotionRange>;
			public toString(): string;
			public getName(): string;
			public getVibrator(): android.os.Vibrator;
			public getId(): number;
			public getDescriptor(): string;
			public static getDeviceIds(): native.Array<number>;
			public describeContents(): number;
			public getSources(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public getKeyCharacterMap(): android.view.KeyCharacterMap;
			public static getDevice(param0: number): android.view.InputDevice;
		}
		export module InputDevice {
			export class MotionRange extends java.lang.Object {
				public static class: java.lang.Class<android.view.InputDevice.MotionRange>;
				public isFromSource(param0: number): boolean;
				public getMax(): number;
				public getRange(): number;
				public getResolution(): number;
				public getMin(): number;
				public getAxis(): number;
				public getFlat(): number;
				public getFuzz(): number;
				public getSource(): number;
			}
		}
	}
}

declare module android {
	export module view {
		export abstract class InputEvent extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.view.InputEvent>;
			public static CREATOR: android.os.Parcelable.Creator<android.view.InputEvent>;
			public getDeviceId(): number;
			public getDevice(): android.view.InputDevice;
			public describeContents(): number;
			public getSource(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public isFromSource(param0: number): boolean;
			public getEventTime(): number;
		}
	}
}

declare module android {
	export module view {
		export class InputQueue extends java.lang.Object {
			public static class: java.lang.Class<android.view.InputQueue>;
			public finalize(): void;
		}
		export module InputQueue {
			export class Callback extends java.lang.Object {
				public static class: java.lang.Class<android.view.InputQueue.Callback>;
				/**
				 * Constructs a new instance of the android.view.InputQueue$Callback interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onInputQueueCreated(param0: android.view.InputQueue): void;
					onInputQueueDestroyed(param0: android.view.InputQueue): void;
				});
				public constructor();
				public onInputQueueCreated(param0: android.view.InputQueue): void;
				public onInputQueueDestroyed(param0: android.view.InputQueue): void;
			}
		}
	}
}

declare module android {
	export module view {
		export class KeyCharacterMap extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.view.KeyCharacterMap>;
			public static BUILT_IN_KEYBOARD: number;
			public static VIRTUAL_KEYBOARD: number;
			public static NUMERIC: number;
			public static PREDICTIVE: number;
			public static ALPHA: number;
			public static FULL: number;
			public static SPECIAL_FUNCTION: number;
			public static HEX_INPUT: string;
			public static PICKER_DIALOG_INPUT: string;
			public static MODIFIER_BEHAVIOR_CHORDED: number;
			public static MODIFIER_BEHAVIOR_CHORDED_OR_TOGGLED: number;
			public static COMBINING_ACCENT: number;
			public static COMBINING_ACCENT_MASK: number;
			public static CREATOR: android.os.Parcelable.Creator<android.view.KeyCharacterMap>;
			public getDisplayLabel(param0: number): string;
			public getKeyboardType(): number;
			/** @deprecated */
			public getKeyData(param0: number, param1: android.view.KeyCharacterMap.KeyData): boolean;
			public getModifierBehavior(): number;
			public static deviceHasKey(param0: number): boolean;
			public getEvents(param0: native.Array<string>): native.Array<android.view.KeyEvent>;
			public static getDeadChar(param0: number, param1: number): number;
			public getMatch(param0: number, param1: native.Array<string>): string;
			public getNumber(param0: number): string;
			public getMatch(param0: number, param1: native.Array<string>, param2: number): string;
			public describeContents(): number;
			public static deviceHasKeys(param0: native.Array<number>): native.Array<boolean>;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public isPrintingKey(param0: number): boolean;
			public finalize(): void;
			public static load(param0: number): android.view.KeyCharacterMap;
			public get(param0: number, param1: number): number;
		}
		export module KeyCharacterMap {
			export class KeyData extends java.lang.Object {
				public static class: java.lang.Class<android.view.KeyCharacterMap.KeyData>;
				public static META_LENGTH: number;
				public displayLabel: string;
				public number: string;
				public meta: native.Array<string>;
				public constructor();
			}
			export class UnavailableException extends android.util.AndroidRuntimeException {
				public static class: java.lang.Class<android.view.KeyCharacterMap.UnavailableException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Exception);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module android {
	export module view {
		export class KeyEvent extends android.view.InputEvent implements android.os.Parcelable {
			public static class: java.lang.Class<android.view.KeyEvent>;
			public static KEYCODE_UNKNOWN: number;
			public static KEYCODE_SOFT_LEFT: number;
			public static KEYCODE_SOFT_RIGHT: number;
			public static KEYCODE_HOME: number;
			public static KEYCODE_BACK: number;
			public static KEYCODE_CALL: number;
			public static KEYCODE_ENDCALL: number;
			public static KEYCODE_0: number;
			public static KEYCODE_1: number;
			public static KEYCODE_2: number;
			public static KEYCODE_3: number;
			public static KEYCODE_4: number;
			public static KEYCODE_5: number;
			public static KEYCODE_6: number;
			public static KEYCODE_7: number;
			public static KEYCODE_8: number;
			public static KEYCODE_9: number;
			public static KEYCODE_STAR: number;
			public static KEYCODE_POUND: number;
			public static KEYCODE_DPAD_UP: number;
			public static KEYCODE_DPAD_DOWN: number;
			public static KEYCODE_DPAD_LEFT: number;
			public static KEYCODE_DPAD_RIGHT: number;
			public static KEYCODE_DPAD_CENTER: number;
			public static KEYCODE_VOLUME_UP: number;
			public static KEYCODE_VOLUME_DOWN: number;
			public static KEYCODE_POWER: number;
			public static KEYCODE_CAMERA: number;
			public static KEYCODE_CLEAR: number;
			public static KEYCODE_A: number;
			public static KEYCODE_B: number;
			public static KEYCODE_C: number;
			public static KEYCODE_D: number;
			public static KEYCODE_E: number;
			public static KEYCODE_F: number;
			public static KEYCODE_G: number;
			public static KEYCODE_H: number;
			public static KEYCODE_I: number;
			public static KEYCODE_J: number;
			public static KEYCODE_K: number;
			public static KEYCODE_L: number;
			public static KEYCODE_M: number;
			public static KEYCODE_N: number;
			public static KEYCODE_O: number;
			public static KEYCODE_P: number;
			public static KEYCODE_Q: number;
			public static KEYCODE_R: number;
			public static KEYCODE_S: number;
			public static KEYCODE_T: number;
			public static KEYCODE_U: number;
			public static KEYCODE_V: number;
			public static KEYCODE_W: number;
			public static KEYCODE_X: number;
			public static KEYCODE_Y: number;
			public static KEYCODE_Z: number;
			public static KEYCODE_COMMA: number;
			public static KEYCODE_PERIOD: number;
			public static KEYCODE_ALT_LEFT: number;
			public static KEYCODE_ALT_RIGHT: number;
			public static KEYCODE_SHIFT_LEFT: number;
			public static KEYCODE_SHIFT_RIGHT: number;
			public static KEYCODE_TAB: number;
			public static KEYCODE_SPACE: number;
			public static KEYCODE_SYM: number;
			public static KEYCODE_EXPLORER: number;
			public static KEYCODE_ENVELOPE: number;
			public static KEYCODE_ENTER: number;
			public static KEYCODE_DEL: number;
			public static KEYCODE_GRAVE: number;
			public static KEYCODE_MINUS: number;
			public static KEYCODE_EQUALS: number;
			public static KEYCODE_LEFT_BRACKET: number;
			public static KEYCODE_RIGHT_BRACKET: number;
			public static KEYCODE_BACKSLASH: number;
			public static KEYCODE_SEMICOLON: number;
			public static KEYCODE_APOSTROPHE: number;
			public static KEYCODE_SLASH: number;
			public static KEYCODE_AT: number;
			public static KEYCODE_NUM: number;
			public static KEYCODE_HEADSETHOOK: number;
			public static KEYCODE_FOCUS: number;
			public static KEYCODE_PLUS: number;
			public static KEYCODE_MENU: number;
			public static KEYCODE_NOTIFICATION: number;
			public static KEYCODE_SEARCH: number;
			public static KEYCODE_MEDIA_PLAY_PAUSE: number;
			public static KEYCODE_MEDIA_STOP: number;
			public static KEYCODE_MEDIA_NEXT: number;
			public static KEYCODE_MEDIA_PREVIOUS: number;
			public static KEYCODE_MEDIA_REWIND: number;
			public static KEYCODE_MEDIA_FAST_FORWARD: number;
			public static KEYCODE_MUTE: number;
			public static KEYCODE_PAGE_UP: number;
			public static KEYCODE_PAGE_DOWN: number;
			public static KEYCODE_PICTSYMBOLS: number;
			public static KEYCODE_SWITCH_CHARSET: number;
			public static KEYCODE_BUTTON_A: number;
			public static KEYCODE_BUTTON_B: number;
			public static KEYCODE_BUTTON_C: number;
			public static KEYCODE_BUTTON_X: number;
			public static KEYCODE_BUTTON_Y: number;
			public static KEYCODE_BUTTON_Z: number;
			public static KEYCODE_BUTTON_L1: number;
			public static KEYCODE_BUTTON_R1: number;
			public static KEYCODE_BUTTON_L2: number;
			public static KEYCODE_BUTTON_R2: number;
			public static KEYCODE_BUTTON_THUMBL: number;
			public static KEYCODE_BUTTON_THUMBR: number;
			public static KEYCODE_BUTTON_START: number;
			public static KEYCODE_BUTTON_SELECT: number;
			public static KEYCODE_BUTTON_MODE: number;
			public static KEYCODE_ESCAPE: number;
			public static KEYCODE_FORWARD_DEL: number;
			public static KEYCODE_CTRL_LEFT: number;
			public static KEYCODE_CTRL_RIGHT: number;
			public static KEYCODE_CAPS_LOCK: number;
			public static KEYCODE_SCROLL_LOCK: number;
			public static KEYCODE_META_LEFT: number;
			public static KEYCODE_META_RIGHT: number;
			public static KEYCODE_FUNCTION: number;
			public static KEYCODE_SYSRQ: number;
			public static KEYCODE_BREAK: number;
			public static KEYCODE_MOVE_HOME: number;
			public static KEYCODE_MOVE_END: number;
			public static KEYCODE_INSERT: number;
			public static KEYCODE_FORWARD: number;
			public static KEYCODE_MEDIA_PLAY: number;
			public static KEYCODE_MEDIA_PAUSE: number;
			public static KEYCODE_MEDIA_CLOSE: number;
			public static KEYCODE_MEDIA_EJECT: number;
			public static KEYCODE_MEDIA_RECORD: number;
			public static KEYCODE_F1: number;
			public static KEYCODE_F2: number;
			public static KEYCODE_F3: number;
			public static KEYCODE_F4: number;
			public static KEYCODE_F5: number;
			public static KEYCODE_F6: number;
			public static KEYCODE_F7: number;
			public static KEYCODE_F8: number;
			public static KEYCODE_F9: number;
			public static KEYCODE_F10: number;
			public static KEYCODE_F11: number;
			public static KEYCODE_F12: number;
			public static KEYCODE_NUM_LOCK: number;
			public static KEYCODE_NUMPAD_0: number;
			public static KEYCODE_NUMPAD_1: number;
			public static KEYCODE_NUMPAD_2: number;
			public static KEYCODE_NUMPAD_3: number;
			public static KEYCODE_NUMPAD_4: number;
			public static KEYCODE_NUMPAD_5: number;
			public static KEYCODE_NUMPAD_6: number;
			public static KEYCODE_NUMPAD_7: number;
			public static KEYCODE_NUMPAD_8: number;
			public static KEYCODE_NUMPAD_9: number;
			public static KEYCODE_NUMPAD_DIVIDE: number;
			public static KEYCODE_NUMPAD_MULTIPLY: number;
			public static KEYCODE_NUMPAD_SUBTRACT: number;
			public static KEYCODE_NUMPAD_ADD: number;
			public static KEYCODE_NUMPAD_DOT: number;
			public static KEYCODE_NUMPAD_COMMA: number;
			public static KEYCODE_NUMPAD_ENTER: number;
			public static KEYCODE_NUMPAD_EQUALS: number;
			public static KEYCODE_NUMPAD_LEFT_PAREN: number;
			public static KEYCODE_NUMPAD_RIGHT_PAREN: number;
			public static KEYCODE_VOLUME_MUTE: number;
			public static KEYCODE_INFO: number;
			public static KEYCODE_CHANNEL_UP: number;
			public static KEYCODE_CHANNEL_DOWN: number;
			public static KEYCODE_ZOOM_IN: number;
			public static KEYCODE_ZOOM_OUT: number;
			public static KEYCODE_TV: number;
			public static KEYCODE_WINDOW: number;
			public static KEYCODE_GUIDE: number;
			public static KEYCODE_DVR: number;
			public static KEYCODE_BOOKMARK: number;
			public static KEYCODE_CAPTIONS: number;
			public static KEYCODE_SETTINGS: number;
			public static KEYCODE_TV_POWER: number;
			public static KEYCODE_TV_INPUT: number;
			public static KEYCODE_STB_POWER: number;
			public static KEYCODE_STB_INPUT: number;
			public static KEYCODE_AVR_POWER: number;
			public static KEYCODE_AVR_INPUT: number;
			public static KEYCODE_PROG_RED: number;
			public static KEYCODE_PROG_GREEN: number;
			public static KEYCODE_PROG_YELLOW: number;
			public static KEYCODE_PROG_BLUE: number;
			public static KEYCODE_APP_SWITCH: number;
			public static KEYCODE_BUTTON_1: number;
			public static KEYCODE_BUTTON_2: number;
			public static KEYCODE_BUTTON_3: number;
			public static KEYCODE_BUTTON_4: number;
			public static KEYCODE_BUTTON_5: number;
			public static KEYCODE_BUTTON_6: number;
			public static KEYCODE_BUTTON_7: number;
			public static KEYCODE_BUTTON_8: number;
			public static KEYCODE_BUTTON_9: number;
			public static KEYCODE_BUTTON_10: number;
			public static KEYCODE_BUTTON_11: number;
			public static KEYCODE_BUTTON_12: number;
			public static KEYCODE_BUTTON_13: number;
			public static KEYCODE_BUTTON_14: number;
			public static KEYCODE_BUTTON_15: number;
			public static KEYCODE_BUTTON_16: number;
			public static KEYCODE_LANGUAGE_SWITCH: number;
			public static KEYCODE_MANNER_MODE: number;
			public static KEYCODE_3D_MODE: number;
			public static KEYCODE_CONTACTS: number;
			public static KEYCODE_CALENDAR: number;
			public static KEYCODE_MUSIC: number;
			public static KEYCODE_CALCULATOR: number;
			public static KEYCODE_ZENKAKU_HANKAKU: number;
			public static KEYCODE_EISU: number;
			public static KEYCODE_MUHENKAN: number;
			public static KEYCODE_HENKAN: number;
			public static KEYCODE_KATAKANA_HIRAGANA: number;
			public static KEYCODE_YEN: number;
			public static KEYCODE_RO: number;
			public static KEYCODE_KANA: number;
			public static KEYCODE_ASSIST: number;
			public static KEYCODE_BRIGHTNESS_DOWN: number;
			public static KEYCODE_BRIGHTNESS_UP: number;
			public static MAX_KEYCODE: number;
			public static ACTION_DOWN: number;
			public static ACTION_UP: number;
			public static ACTION_MULTIPLE: number;
			public static META_ALT_ON: number;
			public static META_ALT_LEFT_ON: number;
			public static META_ALT_RIGHT_ON: number;
			public static META_SHIFT_ON: number;
			public static META_SHIFT_LEFT_ON: number;
			public static META_SHIFT_RIGHT_ON: number;
			public static META_SYM_ON: number;
			public static META_FUNCTION_ON: number;
			public static META_CTRL_ON: number;
			public static META_CTRL_LEFT_ON: number;
			public static META_CTRL_RIGHT_ON: number;
			public static META_META_ON: number;
			public static META_META_LEFT_ON: number;
			public static META_META_RIGHT_ON: number;
			public static META_CAPS_LOCK_ON: number;
			public static META_NUM_LOCK_ON: number;
			public static META_SCROLL_LOCK_ON: number;
			public static META_SHIFT_MASK: number;
			public static META_ALT_MASK: number;
			public static META_CTRL_MASK: number;
			public static META_META_MASK: number;
			public static FLAG_WOKE_HERE: number;
			public static FLAG_SOFT_KEYBOARD: number;
			public static FLAG_KEEP_TOUCH_MODE: number;
			public static FLAG_FROM_SYSTEM: number;
			public static FLAG_EDITOR_ACTION: number;
			public static FLAG_CANCELED: number;
			public static FLAG_VIRTUAL_HARD_KEY: number;
			public static FLAG_LONG_PRESS: number;
			public static FLAG_CANCELED_LONG_PRESS: number;
			public static FLAG_TRACKING: number;
			public static FLAG_FALLBACK: number;
			public static CREATOR: android.os.Parcelable.Creator<android.view.KeyEvent>;
			public static keyCodeToString(param0: number): string;
			public getDeviceId(): number;
			public isShiftPressed(): boolean;
			public static keyCodeFromString(param0: string): number;
			public constructor(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number, param8: number, param9: number);
			public static changeFlags(param0: android.view.KeyEvent, param1: number): android.view.KeyEvent;
			public isSymPressed(): boolean;
			public static metaStateHasNoModifiers(param0: number): boolean;
			public dispatch(param0: android.view.KeyEvent.Callback, param1: android.view.KeyEvent.DispatcherState, param2: any): boolean;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public isCtrlPressed(): boolean;
			public getEventTime(): number;
			public getModifiers(): number;
			public getUnicodeChar(): number;
			public getFlags(): number;
			public constructor(param0: number, param1: string, param2: number, param3: number);
			public isPrintingKey(): boolean;
			public static getModifierMetaStateMask(): number;
			public constructor(param0: android.view.KeyEvent);
			public constructor(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number);
			public isTracking(): boolean;
			public getAction(): number;
			public getScanCode(): number;
			public static isModifierKey(param0: number): boolean;
			public isNumLockOn(): boolean;
			public isScrollLockOn(): boolean;
			public static isGamepadButton(param0: number): boolean;
			public getDisplayLabel(): string;
			public describeContents(): number;
			public getSource(): number;
			public isCanceled(): boolean;
			public getRepeatCount(): number;
			public static changeAction(param0: android.view.KeyEvent, param1: number): android.view.KeyEvent;
			public getMatch(param0: native.Array<string>, param1: number): string;
			/** @deprecated */
			public constructor(param0: android.view.KeyEvent, param1: number, param2: number);
			public static normalizeMetaState(param0: number): number;
			public isCapsLockOn(): boolean;
			public constructor(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number, param8: number);
			public getDownTime(): number;
			public static getMaxKeyCode(): number;
			public constructor(param0: number, param1: number, param2: number, param3: number, param4: number);
			public getKeyCharacterMap(): android.view.KeyCharacterMap;
			public static metaStateHasModifiers(param0: number, param1: number): boolean;
			public getCharacters(): string;
			public constructor(param0: number, param1: number);
			public static changeTimeRepeat(param0: android.view.KeyEvent, param1: number, param2: number): android.view.KeyEvent;
			public hasModifiers(param0: number): boolean;
			public startTracking(): void;
			public getNumber(): string;
			public setSource(param0: number): void;
			public getMetaState(): number;
			/** @deprecated */
			public dispatch(param0: android.view.KeyEvent.Callback): boolean;
			public isMetaPressed(): boolean;
			public isAltPressed(): boolean;
			/** @deprecated */
			public getKeyData(param0: android.view.KeyCharacterMap.KeyData): boolean;
			public constructor(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number);
			public hasNoModifiers(): boolean;
			public isLongPress(): boolean;
			public static getDeadChar(param0: number, param1: number): number;
			public static changeTimeRepeat(param0: android.view.KeyEvent, param1: number, param2: number, param3: number): android.view.KeyEvent;
			public toString(): string;
			public isFunctionPressed(): boolean;
			public getMatch(param0: native.Array<string>): string;
			public getKeyCode(): number;
			public getUnicodeChar(param0: number): number;
			public isSystem(): boolean;
		}
		export module KeyEvent {
			export class Callback extends java.lang.Object {
				public static class: java.lang.Class<android.view.KeyEvent.Callback>;
				/**
				 * Constructs a new instance of the android.view.KeyEvent$Callback interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
					onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
					onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
					onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
				});
				public constructor();
				public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
				public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
				public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
				public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			}
			export class DispatcherState extends java.lang.Object {
				public static class: java.lang.Class<android.view.KeyEvent.DispatcherState>;
				public reset(): void;
				public performedLongPress(param0: android.view.KeyEvent): void;
				public reset(param0: any): void;
				public handleUpEvent(param0: android.view.KeyEvent): void;
				public isTracking(param0: android.view.KeyEvent): boolean;
				public constructor();
				public startTracking(param0: android.view.KeyEvent, param1: any): void;
			}
		}
	}
}

declare module android {
	export module view {
		export abstract class LayoutInflater extends java.lang.Object {
			public static class: java.lang.Class<android.view.LayoutInflater>;
			public constructor(param0: android.view.LayoutInflater, param1: android.content.Context);
			public inflate(param0: number, param1: android.view.ViewGroup, param2: boolean): android.view.View;
			public cloneInContext(param0: android.content.Context): android.view.LayoutInflater;
			public setFilter(param0: android.view.LayoutInflater.Filter): void;
			public setFactory2(param0: android.view.LayoutInflater.Factory2): void;
			public onCreateView(param0: string, param1: android.util.AttributeSet): android.view.View;
			public inflate(param0: org.xmlpull.v1.XmlPullParser, param1: android.view.ViewGroup, param2: boolean): android.view.View;
			public constructor(param0: android.content.Context);
			public inflate(param0: number, param1: android.view.ViewGroup): android.view.View;
			public inflate(param0: org.xmlpull.v1.XmlPullParser, param1: android.view.ViewGroup): android.view.View;
			public getContext(): android.content.Context;
			public getFactory2(): android.view.LayoutInflater.Factory2;
			public getFilter(): android.view.LayoutInflater.Filter;
			public onCreateView(param0: android.view.View, param1: string, param2: android.util.AttributeSet): android.view.View;
			public getFactory(): android.view.LayoutInflater.Factory;
			public static from(param0: android.content.Context): android.view.LayoutInflater;
			public setFactory(param0: android.view.LayoutInflater.Factory): void;
			public createView(param0: string, param1: string, param2: android.util.AttributeSet): android.view.View;
		}
		export module LayoutInflater {
			export class Factory extends java.lang.Object {
				public static class: java.lang.Class<android.view.LayoutInflater.Factory>;
				/**
				 * Constructs a new instance of the android.view.LayoutInflater$Factory interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onCreateView(param0: string, param1: android.content.Context, param2: android.util.AttributeSet): android.view.View;
				});
				public constructor();
				public onCreateView(param0: string, param1: android.content.Context, param2: android.util.AttributeSet): android.view.View;
			}
			export class Factory2 extends java.lang.Object implements android.view.LayoutInflater.Factory {
				public static class: java.lang.Class<android.view.LayoutInflater.Factory2>;
				/**
				 * Constructs a new instance of the android.view.LayoutInflater$Factory2 interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onCreateView(param0: android.view.View, param1: string, param2: android.content.Context, param3: android.util.AttributeSet): android.view.View;
					onCreateView(param0: string, param1: android.content.Context, param2: android.util.AttributeSet): android.view.View;
				});
				public constructor();
				public onCreateView(param0: android.view.View, param1: string, param2: android.content.Context, param3: android.util.AttributeSet): android.view.View;
				public onCreateView(param0: string, param1: android.content.Context, param2: android.util.AttributeSet): android.view.View;
			}
			export class Filter extends java.lang.Object {
				public static class: java.lang.Class<android.view.LayoutInflater.Filter>;
				/**
				 * Constructs a new instance of the android.view.LayoutInflater$Filter interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onLoadClass(param0: java.lang.Class<any>): boolean;
				});
				public constructor();
				public onLoadClass(param0: java.lang.Class<any>): boolean;
			}
		}
	}
}

declare module android {
	export module view {
		export class Menu extends java.lang.Object {
			public static class: java.lang.Class<android.view.Menu>;
			/**
			 * Constructs a new instance of the android.view.Menu interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				add(param0: string): android.view.MenuItem;
				add(param0: number): android.view.MenuItem;
				add(param0: number, param1: number, param2: number, param3: string): android.view.MenuItem;
				add(param0: number, param1: number, param2: number, param3: number): android.view.MenuItem;
				addSubMenu(param0: string): android.view.SubMenu;
				addSubMenu(param0: number): android.view.SubMenu;
				addSubMenu(param0: number, param1: number, param2: number, param3: string): android.view.SubMenu;
				addSubMenu(param0: number, param1: number, param2: number, param3: number): android.view.SubMenu;
				addIntentOptions(param0: number, param1: number, param2: number, param3: android.content.ComponentName, param4: native.Array<android.content.Intent>, param5: android.content.Intent, param6: number, param7: native.Array<android.view.MenuItem>): number;
				removeItem(param0: number): void;
				removeGroup(param0: number): void;
				clear(): void;
				setGroupCheckable(param0: number, param1: boolean, param2: boolean): void;
				setGroupVisible(param0: number, param1: boolean): void;
				setGroupEnabled(param0: number, param1: boolean): void;
				hasVisibleItems(): boolean;
				findItem(param0: number): android.view.MenuItem;
				size(): number;
				getItem(param0: number): android.view.MenuItem;
				close(): void;
				performShortcut(param0: number, param1: android.view.KeyEvent, param2: number): boolean;
				isShortcutKey(param0: number, param1: android.view.KeyEvent): boolean;
				performIdentifierAction(param0: number, param1: number): boolean;
				setQwertyMode(param0: boolean): void;
			});
			public constructor();
			public static CATEGORY_SECONDARY: number;
			public static FLAG_APPEND_TO_GROUP: number;
			public static NONE: number;
			public static FIRST: number;
			public static CATEGORY_ALTERNATIVE: number;
			public static FLAG_ALWAYS_PERFORM_CLOSE: number;
			public static CATEGORY_CONTAINER: number;
			public static FLAG_PERFORM_NO_CLOSE: number;
			public static CATEGORY_SYSTEM: number;
			public clear(): void;
			public hasVisibleItems(): boolean;
			public isShortcutKey(param0: number, param1: android.view.KeyEvent): boolean;
			public setGroupCheckable(param0: number, param1: boolean, param2: boolean): void;
			public size(): number;
			public add(param0: string): android.view.MenuItem;
			public add(param0: number): android.view.MenuItem;
			public add(param0: number, param1: number, param2: number, param3: string): android.view.MenuItem;
			public removeGroup(param0: number): void;
			public setGroupEnabled(param0: number, param1: boolean): void;
			public getItem(param0: number): android.view.MenuItem;
			public add(param0: number, param1: number, param2: number, param3: number): android.view.MenuItem;
			public addSubMenu(param0: string): android.view.SubMenu;
			public addSubMenu(param0: number): android.view.SubMenu;
			public removeItem(param0: number): void;
			public addSubMenu(param0: number, param1: number, param2: number, param3: number): android.view.SubMenu;
			public performIdentifierAction(param0: number, param1: number): boolean;
			public performShortcut(param0: number, param1: android.view.KeyEvent, param2: number): boolean;
			public setQwertyMode(param0: boolean): void;
			public setGroupVisible(param0: number, param1: boolean): void;
			public addIntentOptions(param0: number, param1: number, param2: number, param3: android.content.ComponentName, param4: native.Array<android.content.Intent>, param5: android.content.Intent, param6: number, param7: native.Array<android.view.MenuItem>): number;
			public close(): void;
			public addSubMenu(param0: number, param1: number, param2: number, param3: string): android.view.SubMenu;
			public findItem(param0: number): android.view.MenuItem;
		}
	}
}

declare module android {
	export module view {
		export class MenuInflater extends java.lang.Object {
			public static class: java.lang.Class<android.view.MenuInflater>;
			public constructor(param0: android.content.Context);
			public inflate(param0: number, param1: android.view.Menu): void;
		}
	}
}

declare module android {
	export module view {
		export class MenuItem extends java.lang.Object {
			public static class: java.lang.Class<android.view.MenuItem>;
			/**
			 * Constructs a new instance of the android.view.MenuItem interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				getItemId(): number;
				getGroupId(): number;
				getOrder(): number;
				setTitle(param0: string): android.view.MenuItem;
				setTitle(param0: number): android.view.MenuItem;
				getTitle(): string;
				setTitleCondensed(param0: string): android.view.MenuItem;
				getTitleCondensed(): string;
				setIcon(param0: android.graphics.drawable.Drawable): android.view.MenuItem;
				setIcon(param0: number): android.view.MenuItem;
				getIcon(): android.graphics.drawable.Drawable;
				setIntent(param0: android.content.Intent): android.view.MenuItem;
				getIntent(): android.content.Intent;
				setShortcut(param0: string, param1: string): android.view.MenuItem;
				setNumericShortcut(param0: string): android.view.MenuItem;
				getNumericShortcut(): string;
				setAlphabeticShortcut(param0: string): android.view.MenuItem;
				getAlphabeticShortcut(): string;
				setCheckable(param0: boolean): android.view.MenuItem;
				isCheckable(): boolean;
				setChecked(param0: boolean): android.view.MenuItem;
				isChecked(): boolean;
				setVisible(param0: boolean): android.view.MenuItem;
				isVisible(): boolean;
				setEnabled(param0: boolean): android.view.MenuItem;
				isEnabled(): boolean;
				hasSubMenu(): boolean;
				getSubMenu(): android.view.SubMenu;
				setOnMenuItemClickListener(param0: android.view.MenuItem.OnMenuItemClickListener): android.view.MenuItem;
				getMenuInfo(): android.view.ContextMenu.ContextMenuInfo;
				setShowAsAction(param0: number): void;
				setShowAsActionFlags(param0: number): android.view.MenuItem;
				setActionView(param0: android.view.View): android.view.MenuItem;
				setActionView(param0: number): android.view.MenuItem;
				getActionView(): android.view.View;
				setActionProvider(param0: android.view.ActionProvider): android.view.MenuItem;
				getActionProvider(): android.view.ActionProvider;
				expandActionView(): boolean;
				collapseActionView(): boolean;
				isActionViewExpanded(): boolean;
				setOnActionExpandListener(param0: android.view.MenuItem.OnActionExpandListener): android.view.MenuItem;
			});
			public constructor();
			public static SHOW_AS_ACTION_WITH_TEXT: number;
			public static SHOW_AS_ACTION_ALWAYS: number;
			public static SHOW_AS_ACTION_NEVER: number;
			public static SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW: number;
			public static SHOW_AS_ACTION_IF_ROOM: number;
			public setActionProvider(param0: android.view.ActionProvider): android.view.MenuItem;
			public getIntent(): android.content.Intent;
			public isCheckable(): boolean;
			public getMenuInfo(): android.view.ContextMenu.ContextMenuInfo;
			public getActionView(): android.view.View;
			public collapseActionView(): boolean;
			public setOnActionExpandListener(param0: android.view.MenuItem.OnActionExpandListener): android.view.MenuItem;
			public getAlphabeticShortcut(): string;
			public isActionViewExpanded(): boolean;
			public getActionProvider(): android.view.ActionProvider;
			public getNumericShortcut(): string;
			public setIntent(param0: android.content.Intent): android.view.MenuItem;
			public getSubMenu(): android.view.SubMenu;
			public setIcon(param0: number): android.view.MenuItem;
			public setTitle(param0: number): android.view.MenuItem;
			public setCheckable(param0: boolean): android.view.MenuItem;
			public getTitle(): string;
			public setEnabled(param0: boolean): android.view.MenuItem;
			public setActionView(param0: android.view.View): android.view.MenuItem;
			public setIcon(param0: android.graphics.drawable.Drawable): android.view.MenuItem;
			public isChecked(): boolean;
			public getTitleCondensed(): string;
			public setActionView(param0: number): android.view.MenuItem;
			public getOrder(): number;
			public setTitleCondensed(param0: string): android.view.MenuItem;
			public setChecked(param0: boolean): android.view.MenuItem;
			public isVisible(): boolean;
			public expandActionView(): boolean;
			public getGroupId(): number;
			public setShowAsActionFlags(param0: number): android.view.MenuItem;
			public getItemId(): number;
			public setShowAsAction(param0: number): void;
			public getIcon(): android.graphics.drawable.Drawable;
			public isEnabled(): boolean;
			public setShortcut(param0: string, param1: string): android.view.MenuItem;
			public setAlphabeticShortcut(param0: string): android.view.MenuItem;
			public setVisible(param0: boolean): android.view.MenuItem;
			public setOnMenuItemClickListener(param0: android.view.MenuItem.OnMenuItemClickListener): android.view.MenuItem;
			public setNumericShortcut(param0: string): android.view.MenuItem;
			public hasSubMenu(): boolean;
			public setTitle(param0: string): android.view.MenuItem;
		}
		export module MenuItem {
			export class OnActionExpandListener extends java.lang.Object {
				public static class: java.lang.Class<android.view.MenuItem.OnActionExpandListener>;
				/**
				 * Constructs a new instance of the android.view.MenuItem$OnActionExpandListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onMenuItemActionExpand(param0: android.view.MenuItem): boolean;
					onMenuItemActionCollapse(param0: android.view.MenuItem): boolean;
				});
				public constructor();
				public onMenuItemActionExpand(param0: android.view.MenuItem): boolean;
				public onMenuItemActionCollapse(param0: android.view.MenuItem): boolean;
			}
			export class OnMenuItemClickListener extends java.lang.Object {
				public static class: java.lang.Class<android.view.MenuItem.OnMenuItemClickListener>;
				/**
				 * Constructs a new instance of the android.view.MenuItem$OnMenuItemClickListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onMenuItemClick(param0: android.view.MenuItem): boolean;
				});
				public constructor();
				public onMenuItemClick(param0: android.view.MenuItem): boolean;
			}
		}
	}
}

declare module android {
	export module view {
		export class MotionEvent extends android.view.InputEvent implements android.os.Parcelable {
			public static class: java.lang.Class<android.view.MotionEvent>;
			public static INVALID_POINTER_ID: number;
			public static ACTION_MASK: number;
			public static ACTION_DOWN: number;
			public static ACTION_UP: number;
			public static ACTION_MOVE: number;
			public static ACTION_CANCEL: number;
			public static ACTION_OUTSIDE: number;
			public static ACTION_POINTER_DOWN: number;
			public static ACTION_POINTER_UP: number;
			public static ACTION_HOVER_MOVE: number;
			public static ACTION_SCROLL: number;
			public static ACTION_HOVER_ENTER: number;
			public static ACTION_HOVER_EXIT: number;
			public static ACTION_POINTER_INDEX_MASK: number;
			public static ACTION_POINTER_INDEX_SHIFT: number;
			public static ACTION_POINTER_1_DOWN: number;
			public static ACTION_POINTER_2_DOWN: number;
			public static ACTION_POINTER_3_DOWN: number;
			public static ACTION_POINTER_1_UP: number;
			public static ACTION_POINTER_2_UP: number;
			public static ACTION_POINTER_3_UP: number;
			public static ACTION_POINTER_ID_MASK: number;
			public static ACTION_POINTER_ID_SHIFT: number;
			public static FLAG_WINDOW_IS_OBSCURED: number;
			public static EDGE_TOP: number;
			public static EDGE_BOTTOM: number;
			public static EDGE_LEFT: number;
			public static EDGE_RIGHT: number;
			public static AXIS_X: number;
			public static AXIS_Y: number;
			public static AXIS_PRESSURE: number;
			public static AXIS_SIZE: number;
			public static AXIS_TOUCH_MAJOR: number;
			public static AXIS_TOUCH_MINOR: number;
			public static AXIS_TOOL_MAJOR: number;
			public static AXIS_TOOL_MINOR: number;
			public static AXIS_ORIENTATION: number;
			public static AXIS_VSCROLL: number;
			public static AXIS_HSCROLL: number;
			public static AXIS_Z: number;
			public static AXIS_RX: number;
			public static AXIS_RY: number;
			public static AXIS_RZ: number;
			public static AXIS_HAT_X: number;
			public static AXIS_HAT_Y: number;
			public static AXIS_LTRIGGER: number;
			public static AXIS_RTRIGGER: number;
			public static AXIS_THROTTLE: number;
			public static AXIS_RUDDER: number;
			public static AXIS_WHEEL: number;
			public static AXIS_GAS: number;
			public static AXIS_BRAKE: number;
			public static AXIS_DISTANCE: number;
			public static AXIS_TILT: number;
			public static AXIS_GENERIC_1: number;
			public static AXIS_GENERIC_2: number;
			public static AXIS_GENERIC_3: number;
			public static AXIS_GENERIC_4: number;
			public static AXIS_GENERIC_5: number;
			public static AXIS_GENERIC_6: number;
			public static AXIS_GENERIC_7: number;
			public static AXIS_GENERIC_8: number;
			public static AXIS_GENERIC_9: number;
			public static AXIS_GENERIC_10: number;
			public static AXIS_GENERIC_11: number;
			public static AXIS_GENERIC_12: number;
			public static AXIS_GENERIC_13: number;
			public static AXIS_GENERIC_14: number;
			public static AXIS_GENERIC_15: number;
			public static AXIS_GENERIC_16: number;
			public static BUTTON_PRIMARY: number;
			public static BUTTON_SECONDARY: number;
			public static BUTTON_TERTIARY: number;
			public static BUTTON_BACK: number;
			public static BUTTON_FORWARD: number;
			public static TOOL_TYPE_UNKNOWN: number;
			public static TOOL_TYPE_FINGER: number;
			public static TOOL_TYPE_STYLUS: number;
			public static TOOL_TYPE_MOUSE: number;
			public static TOOL_TYPE_ERASER: number;
			public static CREATOR: android.os.Parcelable.Creator<android.view.MotionEvent>;
			public getAxisValue(param0: number): number;
			public getPointerCount(): number;
			/** @deprecated */
			public static obtain(param0: number, param1: number, param2: number, param3: number, param4: native.Array<number>, param5: native.Array<android.view.MotionEvent.PointerCoords>, param6: number, param7: number, param8: number, param9: number, param10: number, param11: number, param12: number): android.view.MotionEvent;
			public getRawX(): number;
			public getXPrecision(): number;
			public getDeviceId(): number;
			public getToolMajor(param0: number): number;
			public getHistoricalToolMajor(param0: number): number;
			public setAction(param0: number): void;
			public getX(param0: number): number;
			public getHistoricalSize(param0: number, param1: number): number;
			public recycle(): void;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public getActionMasked(): number;
			public getX(): number;
			public getEventTime(): number;
			public getHistoricalX(param0: number): number;
			public getHistoricalToolMajor(param0: number, param1: number): number;
			public addBatch(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): void;
			public static obtain(param0: number, param1: number, param2: number, param3: number, param4: native.Array<android.view.MotionEvent.PointerProperties>, param5: native.Array<android.view.MotionEvent.PointerCoords>, param6: number, param7: number, param8: number, param9: number, param10: number, param11: number, param12: number, param13: number): android.view.MotionEvent;
			public getHistoricalPressure(param0: number): number;
			/** @deprecated */
			public static obtain(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number, param8: number, param9: number, param10: number, param11: number, param12: number): android.view.MotionEvent;
			public static axisFromString(param0: string): number;
			public getFlags(): number;
			public offsetLocation(param0: number, param1: number): void;
			public getTouchMinor(param0: number): number;
			public getHistoricalTouchMinor(param0: number): number;
			public getAction(): number;
			public getActionIndex(): number;
			public getHistoricalEventTime(param0: number): number;
			public getTouchMajor(): number;
			public describeContents(): number;
			public getSource(): number;
			public getPressure(): number;
			public getHistoricalTouchMajor(param0: number, param1: number): number;
			public getPointerCoords(param0: number, param1: android.view.MotionEvent.PointerCoords): void;
			public getToolMinor(): number;
			public getEdgeFlags(): number;
			public getHistoricalAxisValue(param0: number, param1: number, param2: number): number;
			public getPointerId(param0: number): number;
			public getHistoricalTouchMinor(param0: number, param1: number): number;
			public getHistoricalOrientation(param0: number, param1: number): number;
			public static obtainNoHistory(param0: android.view.MotionEvent): android.view.MotionEvent;
			public getY(): number;
			public static obtain(param0: android.view.MotionEvent): android.view.MotionEvent;
			public getToolMajor(): number;
			public getSize(): number;
			public getToolType(param0: number): number;
			public getAxisValue(param0: number, param1: number): number;
			public getDownTime(): number;
			public getHistoricalY(param0: number): number;
			public getY(param0: number): number;
			public getHistorySize(): number;
			public getHistoricalToolMinor(param0: number): number;
			public getToolMinor(param0: number): number;
			public getHistoricalPressure(param0: number, param1: number): number;
			public getHistoricalToolMinor(param0: number, param1: number): number;
			public getHistoricalSize(param0: number): number;
			public getOrientation(): number;
			public getPointerProperties(param0: number, param1: android.view.MotionEvent.PointerProperties): void;
			public getHistoricalPointerCoords(param0: number, param1: number, param2: android.view.MotionEvent.PointerCoords): void;
			public addBatch(param0: number, param1: native.Array<android.view.MotionEvent.PointerCoords>, param2: number): void;
			public finalize(): void;
			public getTouchMinor(): number;
			public transform(param0: android.graphics.Matrix): void;
			public getOrientation(param0: number): number;
			public setSource(param0: number): void;
			public getSize(param0: number): number;
			public setEdgeFlags(param0: number): void;
			public getMetaState(): number;
			public getYPrecision(): number;
			public static axisToString(param0: number): string;
			public getTouchMajor(param0: number): number;
			public setLocation(param0: number, param1: number): void;
			public static obtain(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number, param8: number, param9: number, param10: number, param11: number): android.view.MotionEvent;
			public toString(): string;
			public getHistoricalAxisValue(param0: number, param1: number): number;
			public findPointerIndex(param0: number): number;
			public getHistoricalY(param0: number, param1: number): number;
			public getButtonState(): number;
			public getRawY(): number;
			public static obtain(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): android.view.MotionEvent;
			public getPressure(param0: number): number;
			public getHistoricalTouchMajor(param0: number): number;
			public getHistoricalX(param0: number, param1: number): number;
			public getHistoricalOrientation(param0: number): number;
		}
		export module MotionEvent {
			export class PointerCoords extends java.lang.Object {
				public static class: java.lang.Class<android.view.MotionEvent.PointerCoords>;
				public x: number;
				public y: number;
				public pressure: number;
				public size: number;
				public touchMajor: number;
				public touchMinor: number;
				public toolMajor: number;
				public toolMinor: number;
				public orientation: number;
				public copyFrom(param0: android.view.MotionEvent.PointerCoords): void;
				public constructor(param0: android.view.MotionEvent.PointerCoords);
				public clear(): void;
				public getAxisValue(param0: number): number;
				public setAxisValue(param0: number, param1: number): void;
				public constructor();
			}
			export class PointerProperties extends java.lang.Object {
				public static class: java.lang.Class<android.view.MotionEvent.PointerProperties>;
				public id: number;
				public toolType: number;
				public constructor(param0: android.view.MotionEvent.PointerProperties);
				public hashCode(): number;
				public copyFrom(param0: android.view.MotionEvent.PointerProperties): void;
				public clear(): void;
				public equals(param0: any): boolean;
				public constructor();
			}
		}
	}
}

declare module android {
	export module view {
		export abstract class OrientationEventListener extends java.lang.Object {
			public static class: java.lang.Class<android.view.OrientationEventListener>;
			public static ORIENTATION_UNKNOWN: number;
			public disable(): void;
			public onOrientationChanged(param0: number): void;
			public constructor(param0: android.content.Context);
			public enable(): void;
			public constructor(param0: android.content.Context, param1: number);
			public canDetectOrientation(): boolean;
		}
	}
}

declare module android {
	export module view {
		export abstract class OrientationListener extends java.lang.Object implements android.hardware.SensorListener {
			public static class: java.lang.Class<android.view.OrientationListener>;
			public static ORIENTATION_UNKNOWN: number;
			public onSensorChanged(param0: number, param1: native.Array<number>): void;
			public disable(): void;
			public onOrientationChanged(param0: number): void;
			public constructor(param0: android.content.Context);
			public onAccuracyChanged(param0: number, param1: number): void;
			public enable(): void;
			public constructor(param0: android.content.Context, param1: number);
		}
	}
}

declare module android {
	export module view {
		export class ScaleGestureDetector extends java.lang.Object {
			public static class: java.lang.Class<android.view.ScaleGestureDetector>;
			public getCurrentSpan(): number;
			public getPreviousSpan(): number;
			public constructor(param0: android.content.Context, param1: android.view.ScaleGestureDetector.OnScaleGestureListener);
			public getFocusX(): number;
			public getCurrentSpanX(): number;
			public getPreviousSpanY(): number;
			public onTouchEvent(param0: android.view.MotionEvent): boolean;
			public getCurrentSpanY(): number;
			public getPreviousSpanX(): number;
			public getScaleFactor(): number;
			public getTimeDelta(): number;
			public isInProgress(): boolean;
			public getFocusY(): number;
			public getEventTime(): number;
		}
		export module ScaleGestureDetector {
			export class OnScaleGestureListener extends java.lang.Object {
				public static class: java.lang.Class<android.view.ScaleGestureDetector.OnScaleGestureListener>;
				/**
				 * Constructs a new instance of the android.view.ScaleGestureDetector$OnScaleGestureListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onScale(param0: android.view.ScaleGestureDetector): boolean;
					onScaleBegin(param0: android.view.ScaleGestureDetector): boolean;
					onScaleEnd(param0: android.view.ScaleGestureDetector): void;
				});
				public constructor();
				public onScale(param0: android.view.ScaleGestureDetector): boolean;
				public onScaleEnd(param0: android.view.ScaleGestureDetector): void;
				public onScaleBegin(param0: android.view.ScaleGestureDetector): boolean;
			}
			export class SimpleOnScaleGestureListener extends java.lang.Object implements android.view.ScaleGestureDetector.OnScaleGestureListener {
				public static class: java.lang.Class<android.view.ScaleGestureDetector.SimpleOnScaleGestureListener>;
				public onScale(param0: android.view.ScaleGestureDetector): boolean;
				public onScaleEnd(param0: android.view.ScaleGestureDetector): void;
				public onScaleBegin(param0: android.view.ScaleGestureDetector): boolean;
				public constructor();
			}
		}
	}
}

declare module android {
	export module view {
		export class SoundEffectConstants extends java.lang.Object {
			public static class: java.lang.Class<android.view.SoundEffectConstants>;
			public static CLICK: number;
			public static NAVIGATION_LEFT: number;
			public static NAVIGATION_UP: number;
			public static NAVIGATION_RIGHT: number;
			public static NAVIGATION_DOWN: number;
			public static getContantForFocusDirection(param0: number): number;
		}
	}
}

declare module android {
	export module view {
		export class SubMenu extends java.lang.Object implements android.view.Menu {
			public static class: java.lang.Class<android.view.SubMenu>;
			/**
			 * Constructs a new instance of the android.view.SubMenu interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				setHeaderTitle(param0: number): android.view.SubMenu;
				setHeaderTitle(param0: string): android.view.SubMenu;
				setHeaderIcon(param0: number): android.view.SubMenu;
				setHeaderIcon(param0: android.graphics.drawable.Drawable): android.view.SubMenu;
				setHeaderView(param0: android.view.View): android.view.SubMenu;
				clearHeader(): void;
				setIcon(param0: number): android.view.SubMenu;
				setIcon(param0: android.graphics.drawable.Drawable): android.view.SubMenu;
				getItem(): android.view.MenuItem;
				add(param0: string): android.view.MenuItem;
				add(param0: number): android.view.MenuItem;
				add(param0: number, param1: number, param2: number, param3: string): android.view.MenuItem;
				add(param0: number, param1: number, param2: number, param3: number): android.view.MenuItem;
				addSubMenu(param0: string): android.view.SubMenu;
				addSubMenu(param0: number): android.view.SubMenu;
				addSubMenu(param0: number, param1: number, param2: number, param3: string): android.view.SubMenu;
				addSubMenu(param0: number, param1: number, param2: number, param3: number): android.view.SubMenu;
				addIntentOptions(param0: number, param1: number, param2: number, param3: android.content.ComponentName, param4: native.Array<android.content.Intent>, param5: android.content.Intent, param6: number, param7: native.Array<android.view.MenuItem>): number;
				removeItem(param0: number): void;
				removeGroup(param0: number): void;
				clear(): void;
				setGroupCheckable(param0: number, param1: boolean, param2: boolean): void;
				setGroupVisible(param0: number, param1: boolean): void;
				setGroupEnabled(param0: number, param1: boolean): void;
				hasVisibleItems(): boolean;
				findItem(param0: number): android.view.MenuItem;
				size(): number;
				getItem(param0: number): android.view.MenuItem;
				close(): void;
				performShortcut(param0: number, param1: android.view.KeyEvent, param2: number): boolean;
				isShortcutKey(param0: number, param1: android.view.KeyEvent): boolean;
				performIdentifierAction(param0: number, param1: number): boolean;
				setQwertyMode(param0: boolean): void;
			});
			public constructor();
			public static CATEGORY_SECONDARY: number;
			public static FLAG_APPEND_TO_GROUP: number;
			public static NONE: number;
			public static FIRST: number;
			public static CATEGORY_ALTERNATIVE: number;
			public static FLAG_ALWAYS_PERFORM_CLOSE: number;
			public static CATEGORY_CONTAINER: number;
			public static FLAG_PERFORM_NO_CLOSE: number;
			public static CATEGORY_SYSTEM: number;
			public hasVisibleItems(): boolean;
			public setIcon(param0: number): android.view.SubMenu;
			public getItem(): android.view.MenuItem;
			public setGroupEnabled(param0: number, param1: boolean): void;
			public add(param0: number, param1: number, param2: number, param3: number): android.view.MenuItem;
			public setHeaderIcon(param0: number): android.view.SubMenu;
			public addSubMenu(param0: string): android.view.SubMenu;
			public addSubMenu(param0: number): android.view.SubMenu;
			public removeItem(param0: number): void;
			public setQwertyMode(param0: boolean): void;
			public addIntentOptions(param0: number, param1: number, param2: number, param3: android.content.ComponentName, param4: native.Array<android.content.Intent>, param5: android.content.Intent, param6: number, param7: native.Array<android.view.MenuItem>): number;
			public close(): void;
			public clear(): void;
			public clearHeader(): void;
			public isShortcutKey(param0: number, param1: android.view.KeyEvent): boolean;
			public setGroupCheckable(param0: number, param1: boolean, param2: boolean): void;
			public size(): number;
			public add(param0: string): android.view.MenuItem;
			public add(param0: number): android.view.MenuItem;
			public setIcon(param0: android.graphics.drawable.Drawable): android.view.SubMenu;
			public add(param0: number, param1: number, param2: number, param3: string): android.view.MenuItem;
			public removeGroup(param0: number): void;
			public getItem(param0: number): android.view.MenuItem;
			public setHeaderView(param0: android.view.View): android.view.SubMenu;
			public setHeaderTitle(param0: number): android.view.SubMenu;
			public addSubMenu(param0: number, param1: number, param2: number, param3: number): android.view.SubMenu;
			public setHeaderTitle(param0: string): android.view.SubMenu;
			public performIdentifierAction(param0: number, param1: number): boolean;
			public performShortcut(param0: number, param1: android.view.KeyEvent, param2: number): boolean;
			public setGroupVisible(param0: number, param1: boolean): void;
			public addSubMenu(param0: number, param1: number, param2: number, param3: string): android.view.SubMenu;
			public findItem(param0: number): android.view.MenuItem;
			public setHeaderIcon(param0: android.graphics.drawable.Drawable): android.view.SubMenu;
		}
	}
}

declare module android {
	export module view {
		export class Surface extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.view.Surface>;
			public static CREATOR: android.os.Parcelable.Creator<android.view.Surface>;
			public static ROTATION_0: number;
			public static ROTATION_90: number;
			public static ROTATION_180: number;
			public static ROTATION_270: number;
			public constructor(param0: android.graphics.SurfaceTexture);
			public toString(): string;
			public unlockCanvasAndPost(param0: android.graphics.Canvas): void;
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public isValid(): boolean;
			public lockCanvas(param0: android.graphics.Rect): android.graphics.Canvas;
			/** @deprecated */
			public unlockCanvas(param0: android.graphics.Canvas): void;
			public finalize(): void;
			public release(): void;
			public readFromParcel(param0: android.os.Parcel): void;
		}
		export module Surface {
			export class OutOfResourcesException extends java.lang.Exception {
				public static class: java.lang.Class<android.view.Surface.OutOfResourcesException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module android {
	export module view {
		export class SurfaceHolder extends java.lang.Object {
			public static class: java.lang.Class<android.view.SurfaceHolder>;
			/**
			 * Constructs a new instance of the android.view.SurfaceHolder interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				addCallback(param0: android.view.SurfaceHolder.Callback): void;
				removeCallback(param0: android.view.SurfaceHolder.Callback): void;
				isCreating(): boolean;
				setType(param0: number): void;
				setFixedSize(param0: number, param1: number): void;
				setSizeFromLayout(): void;
				setFormat(param0: number): void;
				setKeepScreenOn(param0: boolean): void;
				lockCanvas(): android.graphics.Canvas;
				lockCanvas(param0: android.graphics.Rect): android.graphics.Canvas;
				unlockCanvasAndPost(param0: android.graphics.Canvas): void;
				getSurfaceFrame(): android.graphics.Rect;
				getSurface(): android.view.Surface;
			});
			public constructor();
			public static SURFACE_TYPE_HARDWARE: number;
			public static SURFACE_TYPE_GPU: number;
			public static SURFACE_TYPE_PUSH_BUFFERS: number;
			public static SURFACE_TYPE_NORMAL: number;
			public setFixedSize(param0: number, param1: number): void;
			public lockCanvas(): android.graphics.Canvas;
			public unlockCanvasAndPost(param0: android.graphics.Canvas): void;
			/** @deprecated */
			public setType(param0: number): void;
			public setSizeFromLayout(): void;
			public lockCanvas(param0: android.graphics.Rect): android.graphics.Canvas;
			public getSurfaceFrame(): android.graphics.Rect;
			public addCallback(param0: android.view.SurfaceHolder.Callback): void;
			public getSurface(): android.view.Surface;
			public removeCallback(param0: android.view.SurfaceHolder.Callback): void;
			public isCreating(): boolean;
			public setKeepScreenOn(param0: boolean): void;
			public setFormat(param0: number): void;
		}
		export module SurfaceHolder {
			export class BadSurfaceTypeException extends java.lang.RuntimeException {
				public static class: java.lang.Class<android.view.SurfaceHolder.BadSurfaceTypeException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
			export class Callback extends java.lang.Object {
				public static class: java.lang.Class<android.view.SurfaceHolder.Callback>;
				/**
				 * Constructs a new instance of the android.view.SurfaceHolder$Callback interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					surfaceCreated(param0: android.view.SurfaceHolder): void;
					surfaceChanged(param0: android.view.SurfaceHolder, param1: number, param2: number, param3: number): void;
					surfaceDestroyed(param0: android.view.SurfaceHolder): void;
				});
				public constructor();
				public surfaceCreated(param0: android.view.SurfaceHolder): void;
				public surfaceChanged(param0: android.view.SurfaceHolder, param1: number, param2: number, param3: number): void;
				public surfaceDestroyed(param0: android.view.SurfaceHolder): void;
			}
			export class Callback2 extends java.lang.Object implements android.view.SurfaceHolder.Callback {
				public static class: java.lang.Class<android.view.SurfaceHolder.Callback2>;
				/**
				 * Constructs a new instance of the android.view.SurfaceHolder$Callback2 interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					surfaceRedrawNeeded(param0: android.view.SurfaceHolder): void;
					surfaceCreated(param0: android.view.SurfaceHolder): void;
					surfaceChanged(param0: android.view.SurfaceHolder, param1: number, param2: number, param3: number): void;
					surfaceDestroyed(param0: android.view.SurfaceHolder): void;
				});
				public constructor();
				public surfaceRedrawNeeded(param0: android.view.SurfaceHolder): void;
				public surfaceCreated(param0: android.view.SurfaceHolder): void;
				public surfaceChanged(param0: android.view.SurfaceHolder, param1: number, param2: number, param3: number): void;
				public surfaceDestroyed(param0: android.view.SurfaceHolder): void;
			}
		}
	}
}

declare module android {
	export module view {
		export class SurfaceView extends android.view.View {
			public static class: java.lang.Class<android.view.SurfaceView>;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onMeasure(param0: number, param1: number): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public getHolder(): android.view.SurfaceHolder;
			public gatherTransparentRegion(param0: android.graphics.Region): boolean;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public onWindowVisibilityChanged(param0: number): void;
			public setZOrderOnTop(param0: boolean): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public onDetachedFromWindow(): void;
			public draw(param0: android.graphics.Canvas): void;
			public sendAccessibilityEvent(param0: number): void;
			public setVisibility(param0: number): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public dispatchDraw(param0: android.graphics.Canvas): void;
			public constructor(param0: android.content.Context);
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public onAttachedToWindow(): void;
			public setSecure(param0: boolean): void;
			public setZOrderMediaOverlay(param0: boolean): void;
		}
	}
}

declare module android {
	export module view {
		export class TextureView extends android.view.View {
			public static class: java.lang.Class<android.view.TextureView>;
			public setLayerType(param0: number, param1: android.graphics.Paint): void;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public onSizeChanged(param0: number, param1: number, param2: number, param3: number): void;
			public lockCanvas(): android.graphics.Canvas;
			public lockCanvas(param0: android.graphics.Rect): android.graphics.Canvas;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public setOpaque(param0: boolean): void;
			public setTransform(param0: android.graphics.Matrix): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public getSurfaceTexture(): android.graphics.SurfaceTexture;
			public getLayerType(): number;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public setSurfaceTexture(param0: android.graphics.SurfaceTexture): void;
			public isOpaque(): boolean;
			public onDetachedFromWindow(): void;
			public draw(param0: android.graphics.Canvas): void;
			public sendAccessibilityEvent(param0: number): void;
			public getBitmap(param0: number, param1: number): android.graphics.Bitmap;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public unlockCanvasAndPost(param0: android.graphics.Canvas): void;
			public getBitmap(): android.graphics.Bitmap;
			public getBitmap(param0: android.graphics.Bitmap): android.graphics.Bitmap;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public onVisibilityChanged(param0: android.view.View, param1: number): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public getSurfaceTextureListener(): android.view.TextureView.SurfaceTextureListener;
			public constructor(param0: android.content.Context);
			public buildLayer(): void;
			public setSurfaceTextureListener(param0: android.view.TextureView.SurfaceTextureListener): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public onDraw(param0: android.graphics.Canvas): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public onAttachedToWindow(): void;
			public getTransform(param0: android.graphics.Matrix): android.graphics.Matrix;
			public isAvailable(): boolean;
		}
		export module TextureView {
			export class SurfaceTextureListener extends java.lang.Object {
				public static class: java.lang.Class<android.view.TextureView.SurfaceTextureListener>;
				/**
				 * Constructs a new instance of the android.view.TextureView$SurfaceTextureListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onSurfaceTextureAvailable(param0: android.graphics.SurfaceTexture, param1: number, param2: number): void;
					onSurfaceTextureSizeChanged(param0: android.graphics.SurfaceTexture, param1: number, param2: number): void;
					onSurfaceTextureDestroyed(param0: android.graphics.SurfaceTexture): boolean;
					onSurfaceTextureUpdated(param0: android.graphics.SurfaceTexture): void;
				});
				public constructor();
				public onSurfaceTextureUpdated(param0: android.graphics.SurfaceTexture): void;
				public onSurfaceTextureAvailable(param0: android.graphics.SurfaceTexture, param1: number, param2: number): void;
				public onSurfaceTextureSizeChanged(param0: android.graphics.SurfaceTexture, param1: number, param2: number): void;
				public onSurfaceTextureDestroyed(param0: android.graphics.SurfaceTexture): boolean;
			}
		}
	}
}

declare module android {
	export module view {
		export class TouchDelegate extends java.lang.Object {
			public static class: java.lang.Class<android.view.TouchDelegate>;
			public static ABOVE: number;
			public static BELOW: number;
			public static TO_LEFT: number;
			public static TO_RIGHT: number;
			public constructor(param0: android.graphics.Rect, param1: android.view.View);
			public onTouchEvent(param0: android.view.MotionEvent): boolean;
		}
	}
}

declare module android {
	export module view {
		export class VelocityTracker extends java.lang.Object {
			public static class: java.lang.Class<android.view.VelocityTracker>;
			public clear(): void;
			public computeCurrentVelocity(param0: number): void;
			public getXVelocity(): number;
			public getYVelocity(param0: number): number;
			public getYVelocity(): number;
			public recycle(): void;
			public static obtain(): android.view.VelocityTracker;
			public getXVelocity(param0: number): number;
			public finalize(): void;
			public addMovement(param0: android.view.MotionEvent): void;
			public computeCurrentVelocity(param0: number, param1: number): void;
		}
	}
}

declare module android {
	export module view {
		export class View extends java.lang.Object implements android.graphics.drawable.Drawable.Callback, android.view.KeyEvent.Callback, android.view.accessibility.AccessibilityEventSource {
			public static class: java.lang.Class<android.view.View>;
			public static VIEW_LOG_TAG: string;
			public static NO_ID: number;
			public static VISIBLE: number;
			public static INVISIBLE: number;
			public static GONE: number;
			public static DRAWING_CACHE_QUALITY_LOW: number;
			public static DRAWING_CACHE_QUALITY_HIGH: number;
			public static DRAWING_CACHE_QUALITY_AUTO: number;
			public static SCROLLBARS_INSIDE_OVERLAY: number;
			public static SCROLLBARS_INSIDE_INSET: number;
			public static SCROLLBARS_OUTSIDE_OVERLAY: number;
			public static SCROLLBARS_OUTSIDE_INSET: number;
			public static KEEP_SCREEN_ON: number;
			public static SOUND_EFFECTS_ENABLED: number;
			public static HAPTIC_FEEDBACK_ENABLED: number;
			public static FOCUSABLES_ALL: number;
			public static FOCUSABLES_TOUCH_MODE: number;
			public static FOCUS_BACKWARD: number;
			public static FOCUS_FORWARD: number;
			public static FOCUS_LEFT: number;
			public static FOCUS_UP: number;
			public static FOCUS_RIGHT: number;
			public static FOCUS_DOWN: number;
			public static MEASURED_SIZE_MASK: number;
			public static MEASURED_STATE_MASK: number;
			public static MEASURED_HEIGHT_STATE_SHIFT: number;
			public static MEASURED_STATE_TOO_SMALL: number;
			public static EMPTY_STATE_SET: native.Array<number>;
			public static ENABLED_STATE_SET: native.Array<number>;
			public static FOCUSED_STATE_SET: native.Array<number>;
			public static SELECTED_STATE_SET: native.Array<number>;
			public static WINDOW_FOCUSED_STATE_SET: native.Array<number>;
			public static ENABLED_FOCUSED_STATE_SET: native.Array<number>;
			public static ENABLED_SELECTED_STATE_SET: native.Array<number>;
			public static ENABLED_WINDOW_FOCUSED_STATE_SET: native.Array<number>;
			public static FOCUSED_SELECTED_STATE_SET: native.Array<number>;
			public static FOCUSED_WINDOW_FOCUSED_STATE_SET: native.Array<number>;
			public static SELECTED_WINDOW_FOCUSED_STATE_SET: native.Array<number>;
			public static ENABLED_FOCUSED_SELECTED_STATE_SET: native.Array<number>;
			public static ENABLED_FOCUSED_WINDOW_FOCUSED_STATE_SET: native.Array<number>;
			public static ENABLED_SELECTED_WINDOW_FOCUSED_STATE_SET: native.Array<number>;
			public static FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET: native.Array<number>;
			public static ENABLED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET: native.Array<number>;
			public static PRESSED_WINDOW_FOCUSED_STATE_SET: native.Array<number>;
			public static PRESSED_SELECTED_STATE_SET: native.Array<number>;
			public static PRESSED_SELECTED_WINDOW_FOCUSED_STATE_SET: native.Array<number>;
			public static PRESSED_FOCUSED_STATE_SET: native.Array<number>;
			public static PRESSED_FOCUSED_WINDOW_FOCUSED_STATE_SET: native.Array<number>;
			public static PRESSED_FOCUSED_SELECTED_STATE_SET: native.Array<number>;
			public static PRESSED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET: native.Array<number>;
			public static PRESSED_ENABLED_STATE_SET: native.Array<number>;
			public static PRESSED_ENABLED_WINDOW_FOCUSED_STATE_SET: native.Array<number>;
			public static PRESSED_ENABLED_SELECTED_STATE_SET: native.Array<number>;
			public static PRESSED_ENABLED_SELECTED_WINDOW_FOCUSED_STATE_SET: native.Array<number>;
			public static PRESSED_ENABLED_FOCUSED_STATE_SET: native.Array<number>;
			public static PRESSED_ENABLED_FOCUSED_WINDOW_FOCUSED_STATE_SET: native.Array<number>;
			public static PRESSED_ENABLED_FOCUSED_SELECTED_STATE_SET: native.Array<number>;
			public static PRESSED_ENABLED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET: native.Array<number>;
			public static LAYOUT_DIRECTION_LTR: number;
			public static LAYOUT_DIRECTION_RTL: number;
			public static LAYOUT_DIRECTION_INHERIT: number;
			public static LAYOUT_DIRECTION_LOCALE: number;
			public static TEXT_DIRECTION_INHERIT: number;
			public static TEXT_DIRECTION_FIRST_STRONG: number;
			public static TEXT_DIRECTION_ANY_RTL: number;
			public static TEXT_DIRECTION_LTR: number;
			public static TEXT_DIRECTION_RTL: number;
			public static TEXT_DIRECTION_LOCALE: number;
			public static TEXT_ALIGNMENT_INHERIT: number;
			public static TEXT_ALIGNMENT_GRAVITY: number;
			public static TEXT_ALIGNMENT_TEXT_START: number;
			public static TEXT_ALIGNMENT_TEXT_END: number;
			public static TEXT_ALIGNMENT_CENTER: number;
			public static TEXT_ALIGNMENT_VIEW_START: number;
			public static TEXT_ALIGNMENT_VIEW_END: number;
			public static IMPORTANT_FOR_ACCESSIBILITY_AUTO: number;
			public static IMPORTANT_FOR_ACCESSIBILITY_YES: number;
			public static IMPORTANT_FOR_ACCESSIBILITY_NO: number;
			public static OVER_SCROLL_ALWAYS: number;
			public static OVER_SCROLL_IF_CONTENT_SCROLLS: number;
			public static OVER_SCROLL_NEVER: number;
			public static SYSTEM_UI_FLAG_VISIBLE: number;
			public static SYSTEM_UI_FLAG_LOW_PROFILE: number;
			public static SYSTEM_UI_FLAG_HIDE_NAVIGATION: number;
			public static SYSTEM_UI_FLAG_FULLSCREEN: number;
			public static SYSTEM_UI_FLAG_LAYOUT_STABLE: number;
			public static SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION: number;
			public static SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN: number;
			public static STATUS_BAR_HIDDEN: number;
			public static STATUS_BAR_VISIBLE: number;
			public static SYSTEM_UI_LAYOUT_FLAGS: number;
			public static FIND_VIEWS_WITH_TEXT: number;
			public static FIND_VIEWS_WITH_CONTENT_DESCRIPTION: number;
			public static SCREEN_STATE_OFF: number;
			public static SCREEN_STATE_ON: number;
			public static SCROLLBAR_POSITION_DEFAULT: number;
			public static SCROLLBAR_POSITION_LEFT: number;
			public static SCROLLBAR_POSITION_RIGHT: number;
			public static LAYER_TYPE_NONE: number;
			public static LAYER_TYPE_SOFTWARE: number;
			public static LAYER_TYPE_HARDWARE: number;
			public static ALPHA: android.util.Property<android.view.View,java.lang.Float>;
			public static TRANSLATION_X: android.util.Property<android.view.View,java.lang.Float>;
			public static TRANSLATION_Y: android.util.Property<android.view.View,java.lang.Float>;
			public static X: android.util.Property<android.view.View,java.lang.Float>;
			public static Y: android.util.Property<android.view.View,java.lang.Float>;
			public static ROTATION: android.util.Property<android.view.View,java.lang.Float>;
			public static ROTATION_X: android.util.Property<android.view.View,java.lang.Float>;
			public static ROTATION_Y: android.util.Property<android.view.View,java.lang.Float>;
			public static SCALE_X: android.util.Property<android.view.View,java.lang.Float>;
			public static SCALE_Y: android.util.Property<android.view.View,java.lang.Float>;
			public initializeFadingEdge(param0: android.content.res.TypedArray): void;
			public setLayerType(param0: number, param1: android.graphics.Paint): void;
			public getRight(): number;
			public getTag(param0: number): any;
			public getDrawingCacheBackgroundColor(): number;
			public setNextFocusRightId(param0: number): void;
			public setSystemUiVisibility(param0: number): void;
			public setLayoutParams(param0: android.view.ViewGroup.LayoutParams): void;
			public getX(): number;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public scrollTo(param0: number, param1: number): void;
			public isFocusable(): boolean;
			public setVisibility(param0: number): void;
			public isLongClickable(): boolean;
			public setHapticFeedbackEnabled(param0: boolean): void;
			public computeVerticalScrollRange(): number;
			public getNextFocusRightId(): number;
			public isFocusableInTouchMode(): boolean;
			public canScrollVertically(param0: number): boolean;
			public onKeyPreIme(param0: number, param1: android.view.KeyEvent): boolean;
			public refreshDrawableState(): void;
			public setBackgroundResource(param0: number): void;
			public getOverlay(): android.view.ViewOverlay;
			public setActivated(param0: boolean): void;
			public getDrawingRect(param0: android.graphics.Rect): void;
			public getApplicationWindowToken(): android.os.IBinder;
			public setBackground(param0: android.graphics.drawable.Drawable): void;
			public awakenScrollBars(): boolean;
			public playSoundEffect(param0: number): void;
			public getVerticalScrollbarPosition(): number;
			public static resolveSize(param0: number, param1: number): number;
			public setSoundEffectsEnabled(param0: boolean): void;
			public setFadingEdgeLength(param0: number): void;
			public static inflate(param0: android.content.Context, param1: number, param2: android.view.ViewGroup): android.view.View;
			public setImportantForAccessibility(param0: number): void;
			public getScrollY(): number;
			public static generateViewId(): number;
			public onHoverChanged(param0: boolean): void;
			public setScrollBarStyle(param0: number): void;
			public addTouchables(param0: java.util.ArrayList<android.view.View>): void;
			public onConfigurationChanged(param0: android.content.res.Configuration): void;
			public requestLayout(): void;
			public getHorizontalFadingEdgeLength(): number;
			public getViewTreeObserver(): android.view.ViewTreeObserver;
			public startAnimation(param0: android.view.animation.Animation): void;
			public setLayoutDirection(param0: number): void;
			public requestFitSystemWindows(): void;
			public onOverScrolled(param0: number, param1: number, param2: boolean, param3: boolean): void;
			public setFocusable(param0: boolean): void;
			public isHardwareAccelerated(): boolean;
			public drawableStateChanged(): void;
			public findViewById(param0: number): android.view.View;
			public setMeasuredDimension(param0: number, param1: number): void;
			public dispatchConfigurationChanged(param0: android.content.res.Configuration): void;
			public isSelected(): boolean;
			public getId(): number;
			public getScrollBarFadeDuration(): number;
			public setHorizontalScrollBarEnabled(param0: boolean): void;
			public setDrawingCacheBackgroundColor(param0: number): void;
			public isInTouchMode(): boolean;
			public onKeyShortcut(param0: number, param1: android.view.KeyEvent): boolean;
			public getFilterTouchesWhenObscured(): boolean;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public getVerticalFadingEdgeLength(): number;
			public isShown(): boolean;
			public getPaddingEnd(): number;
			public onTrackballEvent(param0: android.view.MotionEvent): boolean;
			public setNextFocusLeftId(param0: number): void;
			public getNextFocusUpId(): number;
			public setScaleY(param0: number): void;
			public getTextAlignment(): number;
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public static resolveSizeAndState(param0: number, param1: number, param2: number): number;
			public onWindowFocusChanged(param0: boolean): void;
			public setSaveEnabled(param0: boolean): void;
			public setClickable(param0: boolean): void;
			public getAccessibilityNodeProvider(): android.view.accessibility.AccessibilityNodeProvider;
			public hasFocusable(): boolean;
			public setScrollX(param0: number): void;
			public static combineMeasuredStates(param0: number, param1: number): number;
			public getSystemUiVisibility(): number;
			public onCheckIsTextEditor(): boolean;
			public setClipBounds(param0: android.graphics.Rect): void;
			public isDrawingCacheEnabled(): boolean;
			public getPaddingTop(): number;
			public setY(param0: number): void;
			public invalidate(param0: android.graphics.Rect): void;
			public animate(): android.view.ViewPropertyAnimator;
			public setTag(param0: any): void;
			public setOnHoverListener(param0: android.view.View.OnHoverListener): void;
			public getRotation(): number;
			public startDrag(param0: android.content.ClipData, param1: android.view.View.DragShadowBuilder, param2: any, param3: number): boolean;
			public addChildrenForAccessibility(param0: java.util.ArrayList<android.view.View>): void;
			public setScrollBarFadeDuration(param0: number): void;
			public getTextDirection(): number;
			public onTouchEvent(param0: android.view.MotionEvent): boolean;
			public measure(param0: number, param1: number): void;
			public setFilterTouchesWhenObscured(param0: boolean): void;
			public addOnAttachStateChangeListener(param0: android.view.View.OnAttachStateChangeListener): void;
			public dispatchTrackballEvent(param0: android.view.MotionEvent): boolean;
			public dispatchKeyEvent(param0: android.view.KeyEvent): boolean;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public dispatchPopulateAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): boolean;
			public computeHorizontalScrollExtent(): number;
			public onHoverEvent(param0: android.view.MotionEvent): boolean;
			public dispatchSetActivated(param0: boolean): void;
			public getHitRect(param0: android.graphics.Rect): void;
			public setScrollBarDefaultDelayBeforeFade(param0: number): void;
			public onScreenStateChanged(param0: number): void;
			public requestFocusFromTouch(): boolean;
			public setId(param0: number): void;
			public dispatchHoverEvent(param0: android.view.MotionEvent): boolean;
			/** @deprecated */
			public setBackgroundDrawable(param0: android.graphics.drawable.Drawable): void;
			public overScrollBy(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number, param8: boolean): boolean;
			public onPopulateAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public getSuggestedMinimumHeight(): number;
			public getPaddingRight(): number;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public forceLayout(): void;
			public getContext(): android.content.Context;
			public setVerticalScrollBarEnabled(param0: boolean): void;
			public setEnabled(param0: boolean): void;
			public onDetachedFromWindow(): void;
			public dispatchVisibilityChanged(param0: android.view.View, param1: number): void;
			public isVerticalScrollBarEnabled(): boolean;
			public setHorizontalFadingEdgeEnabled(param0: boolean): void;
			public getNextFocusLeftId(): number;
			public isScrollbarFadingEnabled(): boolean;
			public getLocalVisibleRect(param0: android.graphics.Rect): boolean;
			public setBottom(param0: number): void;
			public getLeft(): number;
			public performClick(): boolean;
			public setCameraDistance(param0: number): void;
			public hasFocus(): boolean;
			public computeVerticalScrollExtent(): number;
			public onDragEvent(param0: android.view.DragEvent): boolean;
			public getMeasuredHeightAndState(): number;
			public getRightPaddingOffset(): number;
			public setVerticalScrollbarPosition(param0: number): void;
			public getKeyDispatcherState(): android.view.KeyEvent.DispatcherState;
			public setLayerPaint(param0: android.graphics.Paint): void;
			public setVerticalFadingEdgeEnabled(param0: boolean): void;
			public getTopFadingEdgeStrength(): number;
			public onWindowVisibilityChanged(param0: number): void;
			public isHorizontalFadingEdgeEnabled(): boolean;
			public getLayerType(): number;
			public findFocus(): android.view.View;
			public postInvalidate(): void;
			public destroyDrawingCache(): void;
			public requestRectangleOnScreen(param0: android.graphics.Rect, param1: boolean): boolean;
			public getFitsSystemWindows(): boolean;
			public setLeft(param0: number): void;
			public onDisplayHint(param0: number): void;
			public setTag(param0: number, param1: any): void;
			public setAccessibilityDelegate(param0: any): void;
			public onVisibilityChanged(param0: android.view.View, param1: number): void;
			public setOnSystemUiVisibilityChangeListener(param0: android.view.View.OnSystemUiVisibilityChangeListener): void;
			public removeOnLayoutChangeListener(param0: android.view.View.OnLayoutChangeListener): void;
			public constructor(param0: android.content.Context);
			public findViewWithTag(param0: any): android.view.View;
			public setOnFocusChangeListener(param0: android.view.View.OnFocusChangeListener): void;
			public setContentDescription(param0: string): void;
			public setFocusableInTouchMode(param0: boolean): void;
			public addOnLayoutChangeListener(param0: android.view.View.OnLayoutChangeListener): void;
			public postDelayed(param0: java.lang.Runnable, param1: number): boolean;
			public createContextMenu(param0: android.view.ContextMenu): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public onAnimationEnd(): void;
			public setOnTouchListener(param0: android.view.View.OnTouchListener): void;
			public getContentDescription(): string;
			public offsetTopAndBottom(param0: number): void;
			public onFinishTemporaryDetach(): void;
			public postInvalidateOnAnimation(param0: number, param1: number, param2: number, param3: number): void;
			public setDuplicateParentStateEnabled(param0: boolean): void;
			public setPadding(param0: number, param1: number, param2: number, param3: number): void;
			public checkInputConnectionProxy(param0: android.view.View): boolean;
			public draw(param0: android.graphics.Canvas): void;
			public onRestoreInstanceState(param0: android.os.Parcelable): void;
			public getMeasuredState(): number;
			public setScrollContainer(param0: boolean): void;
			public getParentForAccessibility(): android.view.ViewParent;
			public isDirty(): boolean;
			public getCameraDistance(): number;
			public requestFocus(param0: number): boolean;
			public onDrawScrollBars(param0: android.graphics.Canvas): void;
			public scrollBy(param0: number, param1: number): void;
			public getAnimation(): android.view.animation.Animation;
			public dispatchTouchEvent(param0: android.view.MotionEvent): boolean;
			public hasWindowFocus(): boolean;
			public setLabelFor(param0: number): void;
			public getLabelFor(): number;
			public buildLayer(): void;
			public setDrawingCacheEnabled(param0: boolean): void;
			public onScrollChanged(param0: number, param1: number, param2: number, param3: number): void;
			public performAccessibilityAction(param0: number, param1: android.os.Bundle): boolean;
			public onGenericMotionEvent(param0: android.view.MotionEvent): boolean;
			public setSaveFromParentEnabled(param0: boolean): void;
			public setScrollbarFadingEnabled(param0: boolean): void;
			public getScrollBarStyle(): number;
			public getRootView(): android.view.View;
			public jumpDrawablesToCurrentState(): void;
			public computeHorizontalScrollOffset(): number;
			public computeScroll(): void;
			public onFilterTouchEventForSecurity(param0: android.view.MotionEvent): boolean;
			public getLocationOnScreen(param0: native.Array<number>): void;
			public setWillNotDraw(param0: boolean): void;
			public setScrollY(param0: number): void;
			public invalidate(param0: number, param1: number, param2: number, param3: number): void;
			public isFocused(): boolean;
			public setTouchDelegate(param0: android.view.TouchDelegate): void;
			public buildDrawingCache(param0: boolean): void;
			public announceForAccessibility(param0: string): void;
			public getTop(): number;
			public getScaleX(): number;
			public postInvalidateDelayed(param0: number, param1: number, param2: number, param3: number, param4: number): void;
			public getScrollX(): number;
			public getAlpha(): number;
			public getWidth(): number;
			public getOnFocusChangeListener(): android.view.View.OnFocusChangeListener;
			public onMeasure(param0: number, param1: number): void;
			public restoreHierarchyState(param0: android.util.SparseArray<android.os.Parcelable>): void;
			public requestFocus(): boolean;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public getDrawingCache(param0: boolean): android.graphics.Bitmap;
			public setTranslationX(param0: number): void;
			public getWindowVisibleDisplayFrame(param0: android.graphics.Rect): void;
			public setOnCreateContextMenuListener(param0: android.view.View.OnCreateContextMenuListener): void;
			public setTop(param0: number): void;
			public getPivotX(): number;
			public dispatchGenericMotionEvent(param0: android.view.MotionEvent): boolean;
			public setFitsSystemWindows(param0: boolean): void;
			public isHapticFeedbackEnabled(): boolean;
			public getWindowVisibility(): number;
			public sendAccessibilityEvent(param0: number): void;
			public getHeight(): number;
			public dispatchRestoreInstanceState(param0: android.util.SparseArray<android.os.Parcelable>): void;
			public getMinimumHeight(): number;
			public onSetAlpha(param0: number): boolean;
			public setMinimumHeight(param0: number): void;
			public setNextFocusUpId(param0: number): void;
			public setPressed(param0: boolean): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public setRotationY(param0: number): void;
			public offsetLeftAndRight(param0: number): void;
			public getRightFadingEdgeStrength(): number;
			public getLayoutDirection(): number;
			public setMinimumWidth(param0: number): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public setOverScrollMode(param0: number): void;
			public getTouchDelegate(): android.view.TouchDelegate;
			public getBottom(): number;
			public hasTransientState(): boolean;
			public getY(): number;
			public requestRectangleOnScreen(param0: android.graphics.Rect): boolean;
			public getVerticalScrollbarWidth(): number;
			public willNotDraw(): boolean;
			public getWindowToken(): android.os.IBinder;
			public clearAnimation(): void;
			public dispatchKeyShortcutEvent(param0: android.view.KeyEvent): boolean;
			public onCreateContextMenu(param0: android.view.ContextMenu): void;
			public isVerticalFadingEdgeEnabled(): boolean;
			public bringToFront(): void;
			public getDisplay(): android.view.Display;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public layout(param0: number, param1: number, param2: number, param3: number): void;
			public getWindowId(): android.view.WindowId;
			public isEnabled(): boolean;
			public removeCallbacks(param0: java.lang.Runnable): boolean;
			public setBackgroundColor(param0: number): void;
			public getSolidColor(): number;
			public postOnAnimation(param0: java.lang.Runnable): void;
			public performHapticFeedback(param0: number): boolean;
			public setOnLongClickListener(param0: android.view.View.OnLongClickListener): void;
			public performLongClick(): boolean;
			public setOnGenericMotionListener(param0: android.view.View.OnGenericMotionListener): void;
			public setKeepScreenOn(param0: boolean): void;
			public onFinishInflate(): void;
			public isSaveFromParentEnabled(): boolean;
			public getRotationY(): number;
			public getDrawingTime(): number;
			public onFocusChanged(param0: boolean, param1: number, param2: android.graphics.Rect): void;
			public static getDefaultSize(param0: number, param1: number): number;
			public getScrollBarDefaultDelayBeforeFade(): number;
			public computeHorizontalScrollRange(): number;
			public getTag(): any;
			public dispatchWindowSystemUiVisiblityChanged(param0: number): void;
			public isDuplicateParentStateEnabled(): boolean;
			public performHapticFeedback(param0: number, param1: number): boolean;
			public setHovered(param0: boolean): void;
			public verifyDrawable(param0: android.graphics.drawable.Drawable): boolean;
			public isSoundEffectsEnabled(): boolean;
			public setSelected(param0: boolean): void;
			public getSuggestedMinimumWidth(): number;
			public dispatchKeyEventPreIme(param0: android.view.KeyEvent): boolean;
			public getLeftPaddingOffset(): number;
			public setAnimation(param0: android.view.animation.Animation): void;
			public setPivotY(param0: number): void;
			public isActivated(): boolean;
			public getVisibility(): number;
			public dispatchDragEvent(param0: android.view.DragEvent): boolean;
			public isPressed(): boolean;
			public getMeasuredHeight(): number;
			public onCreateDrawableState(param0: number): native.Array<number>;
			public setDrawingCacheQuality(param0: number): void;
			public onAnimationStart(): void;
			public getTranslationY(): number;
			public isSaveEnabled(): boolean;
			public isPaddingOffsetRequired(): boolean;
			public getBottomPaddingOffset(): number;
			public cancelLongPress(): void;
			public getWindowAttachCount(): number;
			public setOnKeyListener(param0: android.view.View.OnKeyListener): void;
			public isOpaque(): boolean;
			public getScaleY(): number;
			public setPaddingRelative(param0: number, param1: number, param2: number, param3: number): void;
			public awakenScrollBars(param0: number): boolean;
			public dispatchDisplayHint(param0: number): void;
			public toString(): string;
			public startActionMode(param0: android.view.ActionMode.Callback): android.view.ActionMode;
			public onWindowSystemUiVisibilityChanged(param0: number): void;
			public dispatchSaveInstanceState(param0: android.util.SparseArray<android.os.Parcelable>): void;
			public getFocusables(param0: number): java.util.ArrayList<android.view.View>;
			public getBackground(): android.graphics.drawable.Drawable;
			public onCreateInputConnection(param0: android.view.inputmethod.EditorInfo): android.view.inputmethod.InputConnection;
			public getHorizontalScrollbarHeight(): number;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public getDrawingCacheQuality(): number;
			public postInvalidateDelayed(param0: number): void;
			public getBottomFadingEdgeStrength(): number;
			public setRotationX(param0: number): void;
			public isHovered(): boolean;
			public setRight(param0: number): void;
			public postOnAnimationDelayed(param0: java.lang.Runnable, param1: number): void;
			public showContextMenu(): boolean;
			public hasOnClickListeners(): boolean;
			public isInEditMode(): boolean;
			public getRotationX(): number;
			public getPaddingStart(): number;
			public getParent(): android.view.ViewParent;
			public initializeScrollbars(param0: android.content.res.TypedArray): void;
			public dispatchDraw(param0: android.graphics.Canvas): void;
			public getLeftFadingEdgeStrength(): number;
			public isScrollContainer(): boolean;
			public setTextAlignment(param0: number): void;
			public isClickable(): boolean;
			public dispatchWindowFocusChanged(param0: boolean): void;
			public getKeepScreenOn(): boolean;
			public setScrollBarSize(param0: number): void;
			public getMatrix(): android.graphics.Matrix;
			public static mergeDrawableStates(param0: native.Array<number>, param1: native.Array<number>): native.Array<number>;
			public setTranslationY(param0: number): void;
			public focusSearch(param0: number): android.view.View;
			public getImportantForAccessibility(): number;
			public getMeasuredWidth(): number;
			public setTextDirection(param0: number): void;
			public getResources(): android.content.res.Resources;
			public isLayoutRequested(): boolean;
			public requestFocus(param0: number, param1: android.graphics.Rect): boolean;
			public getHandler(): android.os.Handler;
			public post(param0: java.lang.Runnable): boolean;
			public getMinimumWidth(): number;
			public dispatchGenericFocusedEvent(param0: android.view.MotionEvent): boolean;
			public removeOnAttachStateChangeListener(param0: android.view.View.OnAttachStateChangeListener): void;
			public saveHierarchyState(param0: android.util.SparseArray<android.os.Parcelable>): void;
			public dispatchSetSelected(param0: boolean): void;
			public getTouchables(): java.util.ArrayList<android.view.View>;
			public getDrawingCache(): android.graphics.Bitmap;
			public setOnDragListener(param0: android.view.View.OnDragListener): void;
			public setHasTransientState(param0: boolean): void;
			public findViewsWithText(param0: java.util.ArrayList<android.view.View>, param1: string, param2: number): void;
			public setAlpha(param0: number): void;
			public fitSystemWindows(param0: android.graphics.Rect): boolean;
			public getClipBounds(): android.graphics.Rect;
			public getOverScrollMode(): number;
			public getMeasuredWidthAndState(): number;
			public addFocusables(param0: java.util.ArrayList<android.view.View>, param1: number, param2: number): void;
			public onRtlPropertiesChanged(param0: number): void;
			public getTopPaddingOffset(): number;
			public isHorizontalScrollBarEnabled(): boolean;
			public onLayout(param0: boolean, param1: number, param2: number, param3: number, param4: number): void;
			public setNextFocusForwardId(param0: number): void;
			public getGlobalVisibleRect(param0: android.graphics.Rect, param1: android.graphics.Point): boolean;
			public createAccessibilityNodeInfo(): android.view.accessibility.AccessibilityNodeInfo;
			public getDrawableState(): native.Array<number>;
			public willNotCacheDrawing(): boolean;
			public getLayoutParams(): android.view.ViewGroup.LayoutParams;
			public getWindowSystemUiVisibility(): number;
			public setWillNotCacheDrawing(param0: boolean): void;
			public setOnClickListener(param0: android.view.View.OnClickListener): void;
			public dispatchSetPressed(param0: boolean): void;
			public isInLayout(): boolean;
			public onStartTemporaryDetach(): void;
			public getFocusedRect(param0: android.graphics.Rect): void;
			public getNextFocusForwardId(): number;
			public setRotation(param0: number): void;
			public getContextMenuInfo(): android.view.ContextMenu.ContextMenuInfo;
			public awakenScrollBars(param0: number, param1: boolean): boolean;
			public getScrollBarSize(): number;
			public getPivotY(): number;
			public getTranslationX(): number;
			public isPaddingRelative(): boolean;
			public setLongClickable(param0: boolean): void;
			public computeVerticalScrollOffset(): number;
			public getNextFocusDownId(): number;
			public getGlobalVisibleRect(param0: android.graphics.Rect): boolean;
			public setX(param0: number): void;
			public onDraw(param0: android.graphics.Canvas): void;
			public onSaveInstanceState(): android.os.Parcelable;
			public callOnClick(): boolean;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public canScrollHorizontally(param0: number): boolean;
			public hasOverlappingRendering(): boolean;
			public onSizeChanged(param0: number, param1: number, param2: number, param3: number): void;
			public setNextFocusDownId(param0: number): void;
			public buildDrawingCache(): void;
			public getPaddingBottom(): number;
			public setScaleX(param0: number): void;
			public invalidate(): void;
			public getPaddingLeft(): number;
			public dispatchWindowVisibilityChanged(param0: number): void;
			public clearFocus(): void;
			public getBaseline(): number;
			public setPivotX(param0: number): void;
			public dispatchGenericPointerEvent(param0: android.view.MotionEvent): boolean;
			public postInvalidate(param0: number, param1: number, param2: number, param3: number): void;
			public dispatchSystemUiVisibilityChanged(param0: number): void;
			public postInvalidateOnAnimation(): void;
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public onAttachedToWindow(): void;
			public dispatchUnhandledMove(param0: android.view.View, param1: number): boolean;
			public addFocusables(param0: java.util.ArrayList<android.view.View>, param1: number): void;
			public getLocationInWindow(param0: native.Array<number>): void;
		}
		export module View {
			export class androidviewViewAccessibilityDelegate extends java.lang.Object {
				public static class: java.lang.Class<android.view.View.AccessibilityDelegate>;
				public sendAccessibilityEvent(param0: android.view.View, param1: number): void;
				public getAccessibilityNodeProvider(param0: android.view.View): android.view.accessibility.AccessibilityNodeProvider;
				public dispatchPopulateAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
				public onInitializeAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): void;
				public onRequestSendAccessibilityEvent(param0: android.view.ViewGroup, param1: android.view.View, param2: android.view.accessibility.AccessibilityEvent): boolean;
				public performAccessibilityAction(param0: android.view.View, param1: number, param2: android.os.Bundle): boolean;
				public onInitializeAccessibilityNodeInfo(param0: android.view.View, param1: android.view.accessibility.AccessibilityNodeInfo): void;
				public constructor();
				public sendAccessibilityEventUnchecked(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): void;
				public onPopulateAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): void;
			}
			export type AccessibilityDelegate = androidviewViewAccessibilityDelegate
			export class BaseSavedState extends android.view.AbsSavedState {
				public static class: java.lang.Class<android.view.View.BaseSavedState>;
				public static CREATOR: android.os.Parcelable.Creator<android.view.View.BaseSavedState>;
				public constructor(param0: android.os.Parcel);
				public constructor(param0: android.os.Parcelable);
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public describeContents(): number;
			}
			export class DragShadowBuilder extends java.lang.Object {
				public static class: java.lang.Class<android.view.View.DragShadowBuilder>;
				public constructor(param0: android.view.View);
				public onProvideShadowMetrics(param0: android.graphics.Point, param1: android.graphics.Point): void;
				public onDrawShadow(param0: android.graphics.Canvas): void;
				public getView(): android.view.View;
				public constructor();
			}
			export class MeasureSpec extends java.lang.Object {
				public static class: java.lang.Class<android.view.View.MeasureSpec>;
				public static UNSPECIFIED: number;
				public static EXACTLY: number;
				public static AT_MOST: number;
				public static getSize(param0: number): number;
				public static toString(param0: number): string;
				public static makeMeasureSpec(param0: number, param1: number): number;
				public toString(): string;
				public constructor();
				public static getMode(param0: number): number;
			}
			export class OnAttachStateChangeListener extends java.lang.Object {
				public static class: java.lang.Class<android.view.View.OnAttachStateChangeListener>;
				/**
				 * Constructs a new instance of the android.view.View$OnAttachStateChangeListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onViewAttachedToWindow(param0: android.view.View): void;
					onViewDetachedFromWindow(param0: android.view.View): void;
				});
				public constructor();
				public onViewDetachedFromWindow(param0: android.view.View): void;
				public onViewAttachedToWindow(param0: android.view.View): void;
			}
			export class OnClickListener extends java.lang.Object {
				public static class: java.lang.Class<android.view.View.OnClickListener>;
				/**
				 * Constructs a new instance of the android.view.View$OnClickListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onClick(param0: android.view.View): void;
				});
				public constructor();
				public onClick(param0: android.view.View): void;
			}
			export class OnCreateContextMenuListener extends java.lang.Object {
				public static class: java.lang.Class<android.view.View.OnCreateContextMenuListener>;
				/**
				 * Constructs a new instance of the android.view.View$OnCreateContextMenuListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onCreateContextMenu(param0: android.view.ContextMenu, param1: android.view.View, param2: android.view.ContextMenu.ContextMenuInfo): void;
				});
				public constructor();
				public onCreateContextMenu(param0: android.view.ContextMenu, param1: android.view.View, param2: android.view.ContextMenu.ContextMenuInfo): void;
			}
			export class OnDragListener extends java.lang.Object {
				public static class: java.lang.Class<android.view.View.OnDragListener>;
				/**
				 * Constructs a new instance of the android.view.View$OnDragListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onDrag(param0: android.view.View, param1: android.view.DragEvent): boolean;
				});
				public constructor();
				public onDrag(param0: android.view.View, param1: android.view.DragEvent): boolean;
			}
			export class OnFocusChangeListener extends java.lang.Object {
				public static class: java.lang.Class<android.view.View.OnFocusChangeListener>;
				/**
				 * Constructs a new instance of the android.view.View$OnFocusChangeListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onFocusChange(param0: android.view.View, param1: boolean): void;
				});
				public constructor();
				public onFocusChange(param0: android.view.View, param1: boolean): void;
			}
			export class OnGenericMotionListener extends java.lang.Object {
				public static class: java.lang.Class<android.view.View.OnGenericMotionListener>;
				/**
				 * Constructs a new instance of the android.view.View$OnGenericMotionListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onGenericMotion(param0: android.view.View, param1: android.view.MotionEvent): boolean;
				});
				public constructor();
				public onGenericMotion(param0: android.view.View, param1: android.view.MotionEvent): boolean;
			}
			export class OnHoverListener extends java.lang.Object {
				public static class: java.lang.Class<android.view.View.OnHoverListener>;
				/**
				 * Constructs a new instance of the android.view.View$OnHoverListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onHover(param0: android.view.View, param1: android.view.MotionEvent): boolean;
				});
				public constructor();
				public onHover(param0: android.view.View, param1: android.view.MotionEvent): boolean;
			}
			export class OnKeyListener extends java.lang.Object {
				public static class: java.lang.Class<android.view.View.OnKeyListener>;
				/**
				 * Constructs a new instance of the android.view.View$OnKeyListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onKey(param0: android.view.View, param1: number, param2: android.view.KeyEvent): boolean;
				});
				public constructor();
				public onKey(param0: android.view.View, param1: number, param2: android.view.KeyEvent): boolean;
			}
			export class OnLayoutChangeListener extends java.lang.Object {
				public static class: java.lang.Class<android.view.View.OnLayoutChangeListener>;
				/**
				 * Constructs a new instance of the android.view.View$OnLayoutChangeListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onLayoutChange(param0: android.view.View, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number, param8: number): void;
				});
				public constructor();
				public onLayoutChange(param0: android.view.View, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number, param8: number): void;
			}
			export class OnLongClickListener extends java.lang.Object {
				public static class: java.lang.Class<android.view.View.OnLongClickListener>;
				/**
				 * Constructs a new instance of the android.view.View$OnLongClickListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onLongClick(param0: android.view.View): boolean;
				});
				public constructor();
				public onLongClick(param0: android.view.View): boolean;
			}
			export class OnSystemUiVisibilityChangeListener extends java.lang.Object {
				public static class: java.lang.Class<android.view.View.OnSystemUiVisibilityChangeListener>;
				/**
				 * Constructs a new instance of the android.view.View$OnSystemUiVisibilityChangeListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onSystemUiVisibilityChange(param0: number): void;
				});
				public constructor();
				public onSystemUiVisibilityChange(param0: number): void;
			}
			export class OnTouchListener extends java.lang.Object {
				public static class: java.lang.Class<android.view.View.OnTouchListener>;
				/**
				 * Constructs a new instance of the android.view.View$OnTouchListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onTouch(param0: android.view.View, param1: android.view.MotionEvent): boolean;
				});
				public constructor();
				public onTouch(param0: android.view.View, param1: android.view.MotionEvent): boolean;
			}
		}
	}
}

declare module android {
	export module view {
		export class ViewConfiguration extends java.lang.Object {
			public static class: java.lang.Class<android.view.ViewConfiguration>;
			public getScaledWindowTouchSlop(): number;
			public static getScrollDefaultDelay(): number;
			/** @deprecated */
			public static getMaximumFlingVelocity(): number;
			/** @deprecated */
			public static getFadingEdgeLength(): number;
			public getScaledMinimumFlingVelocity(): number;
			public getScaledOverflingDistance(): number;
			/** @deprecated */
			public static getEdgeSlop(): number;
			public getScaledPagingTouchSlop(): number;
			public static getKeyRepeatTimeout(): number;
			public static getDoubleTapTimeout(): number;
			public getScaledOverscrollDistance(): number;
			/** @deprecated */
			public static getMaximumDrawingCacheSize(): number;
			public getScaledFadingEdgeLength(): number;
			/** @deprecated */
			public static getWindowTouchSlop(): number;
			/** @deprecated */
			public constructor();
			public getScaledTouchSlop(): number;
			public static getKeyRepeatDelay(): number;
			public static getJumpTapTimeout(): number;
			public static getPressedStateDuration(): number;
			public getScaledMaximumDrawingCacheSize(): number;
			public hasPermanentMenuKey(): boolean;
			public static getScrollFriction(): number;
			public static getGlobalActionKeyTimeout(): number;
			public getScaledMaximumFlingVelocity(): number;
			/** @deprecated */
			public static getScrollBarSize(): number;
			public getScaledEdgeSlop(): number;
			/** @deprecated */
			public static getTouchSlop(): number;
			public getScaledDoubleTapSlop(): number;
			public static getTapTimeout(): number;
			public static get(param0: android.content.Context): android.view.ViewConfiguration;
			public getScaledScrollBarSize(): number;
			/** @deprecated */
			public static getMinimumFlingVelocity(): number;
			public static getScrollBarFadeDuration(): number;
			public static getZoomControlsTimeout(): number;
			public static getLongPressTimeout(): number;
		}
	}
}

declare module android {
	export module view {
		export class ViewDebug extends java.lang.Object {
			public static class: java.lang.Class<android.view.ViewDebug>;
			public static TRACE_HIERARCHY: boolean;
			public static TRACE_RECYCLER: boolean;
			public static dumpCapturedView(param0: string, param1: any): void;
			/** @deprecated */
			public static startHierarchyTracing(param0: string, param1: android.view.View): void;
			/** @deprecated */
			public static trace(param0: android.view.View, param1: android.view.ViewDebug.RecyclerTraceType, param2: native.Array<number>): void;
			/** @deprecated */
			public static startRecyclerTracing(param0: string, param1: android.view.View): void;
			/** @deprecated */
			public static stopHierarchyTracing(): void;
			/** @deprecated */
			public static trace(param0: android.view.View, param1: android.view.ViewDebug.HierarchyTraceType): void;
			public constructor();
			/** @deprecated */
			public static stopRecyclerTracing(): void;
		}
		export module ViewDebug {
			export class CapturedViewProperty extends java.lang.Object implements java.lang.annotation.Annotation {
				public static class: java.lang.Class<android.view.ViewDebug.CapturedViewProperty>;
				/**
				 * Constructs a new instance of the android.view.ViewDebug$CapturedViewProperty interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					retrieveReturn(): boolean;
					annotationType(): java.lang.Class<any>;
					equals(param0: any): boolean;
					hashCode(): number;
					toString(): string;
				});
				public constructor();
				public hashCode(): number;
				public equals(param0: any): boolean;
				public annotationType(): java.lang.Class<any>;
				public retrieveReturn(): boolean;
				public toString(): string;
			}
			export class ExportedProperty extends java.lang.Object implements java.lang.annotation.Annotation {
				public static class: java.lang.Class<android.view.ViewDebug.ExportedProperty>;
				/**
				 * Constructs a new instance of the android.view.ViewDebug$ExportedProperty interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					resolveId(): boolean;
					mapping(): native.Array<android.view.ViewDebug.IntToString>;
					indexMapping(): native.Array<android.view.ViewDebug.IntToString>;
					flagMapping(): native.Array<android.view.ViewDebug.FlagToString>;
					deepExport(): boolean;
					prefix(): string;
					category(): string;
					annotationType(): java.lang.Class<any>;
					equals(param0: any): boolean;
					hashCode(): number;
					toString(): string;
				});
				public constructor();
				public resolveId(): boolean;
				public indexMapping(): native.Array<android.view.ViewDebug.IntToString>;
				public deepExport(): boolean;
				public category(): string;
				public hashCode(): number;
				public equals(param0: any): boolean;
				public flagMapping(): native.Array<android.view.ViewDebug.FlagToString>;
				public annotationType(): java.lang.Class<any>;
				public prefix(): string;
				public toString(): string;
				public mapping(): native.Array<android.view.ViewDebug.IntToString>;
			}
			export class FlagToString extends java.lang.Object implements java.lang.annotation.Annotation {
				public static class: java.lang.Class<android.view.ViewDebug.FlagToString>;
				/**
				 * Constructs a new instance of the android.view.ViewDebug$FlagToString interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					mask(): number;
					equals(): number;
					name(): string;
					outputIf(): boolean;
					annotationType(): java.lang.Class<any>;
					equals(param0: any): boolean;
					hashCode(): number;
					toString(): string;
				});
				public constructor();
				public outputIf(): boolean;
				public name(): string;
				public equals(): number;
				public mask(): number;
				public hashCode(): number;
				public equals(param0: any): boolean;
				public annotationType(): java.lang.Class<any>;
				public toString(): string;
			}
			export class HierarchyTraceType {
				public static class: java.lang.Class<android.view.ViewDebug.HierarchyTraceType>;
				public static BUILD_CACHE: android.view.ViewDebug.HierarchyTraceType;
				public static DRAW: android.view.ViewDebug.HierarchyTraceType;
				public static INVALIDATE: android.view.ViewDebug.HierarchyTraceType;
				public static INVALIDATE_CHILD: android.view.ViewDebug.HierarchyTraceType;
				public static INVALIDATE_CHILD_IN_PARENT: android.view.ViewDebug.HierarchyTraceType;
				public static ON_LAYOUT: android.view.ViewDebug.HierarchyTraceType;
				public static ON_MEASURE: android.view.ViewDebug.HierarchyTraceType;
				public static REQUEST_LAYOUT: android.view.ViewDebug.HierarchyTraceType;
				public static valueOf(param0: string): android.view.ViewDebug.HierarchyTraceType;
				public static values(): native.Array<android.view.ViewDebug.HierarchyTraceType>;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			}
			export class IntToString extends java.lang.Object implements java.lang.annotation.Annotation {
				public static class: java.lang.Class<android.view.ViewDebug.IntToString>;
				/**
				 * Constructs a new instance of the android.view.ViewDebug$IntToString interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					from(): number;
					to(): string;
					annotationType(): java.lang.Class<any>;
					equals(param0: any): boolean;
					hashCode(): number;
					toString(): string;
				});
				public constructor();
				public hashCode(): number;
				public equals(param0: any): boolean;
				public to(): string;
				public annotationType(): java.lang.Class<any>;
				public from(): number;
				public toString(): string;
			}
			export class RecyclerTraceType {
				public static class: java.lang.Class<android.view.ViewDebug.RecyclerTraceType>;
				public static BIND_VIEW: android.view.ViewDebug.RecyclerTraceType;
				public static MOVE_FROM_ACTIVE_TO_SCRAP_HEAP: android.view.ViewDebug.RecyclerTraceType;
				public static MOVE_TO_SCRAP_HEAP: android.view.ViewDebug.RecyclerTraceType;
				public static NEW_VIEW: android.view.ViewDebug.RecyclerTraceType;
				public static RECYCLE_FROM_ACTIVE_HEAP: android.view.ViewDebug.RecyclerTraceType;
				public static RECYCLE_FROM_SCRAP_HEAP: android.view.ViewDebug.RecyclerTraceType;
				public static values(): native.Array<android.view.ViewDebug.RecyclerTraceType>;
				public static valueOf(param0: string): android.view.ViewDebug.RecyclerTraceType;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			}
		}
	}
}

declare module android {
	export module view {
		export abstract class ViewGroup extends android.view.View implements android.view.ViewParent, android.view.ViewManager {
			public static class: java.lang.Class<android.view.ViewGroup>;
			public static FOCUS_BEFORE_DESCENDANTS: number;
			public static FOCUS_AFTER_DESCENDANTS: number;
			public static FOCUS_BLOCK_DESCENDANTS: number;
			public static PERSISTENT_NO_CACHE: number;
			public static PERSISTENT_ANIMATION_CACHE: number;
			public static PERSISTENT_SCROLLING_CACHE: number;
			public static PERSISTENT_ALL_CACHES: number;
			public static LAYOUT_MODE_CLIP_BOUNDS: number;
			public static LAYOUT_MODE_OPTICAL_BOUNDS: number;
			public static CLIP_TO_PADDING_MASK: number;
			public getClipChildren(): boolean;
			public addViewInLayout(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams): boolean;
			public dispatchHoverEvent(param0: android.view.MotionEvent): boolean;
			public generateLayoutParams(param0: android.util.AttributeSet): android.view.ViewGroup.LayoutParams;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public setChildrenDrawingCacheEnabled(param0: boolean): void;
			public requestFocus(): boolean;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public addView(param0: android.view.View, param1: number, param2: number): void;
			public requestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public isAlwaysDrawnWithCacheEnabled(): boolean;
			public setAnimationCacheEnabled(param0: boolean): void;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public showContextMenuForChild(param0: android.view.View): boolean;
			public getFocusedChild(): android.view.View;
			public bringChildToFront(param0: android.view.View): void;
			public dispatchThawSelfOnly(param0: android.util.SparseArray<android.os.Parcelable>): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public setLayoutMode(param0: number): void;
			public startViewTransition(param0: android.view.View): void;
			public sendAccessibilityEvent(param0: number): void;
			public dispatchVisibilityChanged(param0: android.view.View, param1: number): void;
			public removeViewsInLayout(param0: number, param1: number): void;
			public requestTransparentRegion(param0: android.view.View): void;
			public drawChild(param0: android.graphics.Canvas, param1: android.view.View, param2: number): boolean;
			public getParent(): android.view.ViewParent;
			public dispatchRestoreInstanceState(param0: android.util.SparseArray<android.os.Parcelable>): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public attachLayoutAnimationParameters(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams, param2: number, param3: number): void;
			public dispatchDraw(param0: android.graphics.Canvas): void;
			public dispatchWindowFocusChanged(param0: boolean): void;
			public requestChildFocus(param0: android.view.View, param1: android.view.View): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public getOverlay(): android.view.ViewOverlay;
			public attachViewToParent(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams): void;
			public hasFocus(): boolean;
			public focusSearch(param0: number): android.view.View;
			public isChildrenDrawingOrderEnabled(): boolean;
			public recomputeViewAttributes(param0: android.view.View): void;
			public onInterceptTouchEvent(param0: android.view.MotionEvent): boolean;
			public isLayoutRequested(): boolean;
			public setAddStatesFromChildren(param0: boolean): void;
			public getOverlay(): android.view.ViewGroupOverlay;
			public cleanupLayoutState(param0: android.view.View): void;
			public requestFocus(param0: number, param1: android.graphics.Rect): boolean;
			public detachViewFromParent(param0: android.view.View): void;
			public setClipChildren(param0: boolean): void;
			public addViewInLayout(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams, param3: boolean): boolean;
			public getChildStaticTransformation(param0: android.view.View, param1: android.view.animation.Transformation): boolean;
			public removeViews(param0: number, param1: number): void;
			public invalidateChild(param0: android.view.View, param1: android.graphics.Rect): void;
			public dispatchGenericFocusedEvent(param0: android.view.MotionEvent): boolean;
			public measureChildren(param0: number, param1: number): void;
			public clearDisappearingChildren(): void;
			public removeAllViews(): void;
			public startLayoutAnimation(): void;
			public scheduleLayoutAnimation(): void;
			public getDescendantFocusability(): number;
			public dispatchSetSelected(param0: boolean): void;
			public getChildDrawingOrder(param0: number, param1: number): number;
			public getPersistentDrawingCache(): number;
			public debug(param0: number): void;
			public findFocus(): android.view.View;
			public findViewsWithText(param0: java.util.ArrayList<android.view.View>, param1: string, param2: number): void;
			public addTouchables(param0: java.util.ArrayList<android.view.View>): void;
			public dispatchKeyShortcutEvent(param0: android.view.KeyEvent): boolean;
			public requestLayout(): void;
			public addView(param0: android.view.View): void;
			public childDrawableStateChanged(param0: android.view.View): void;
			public fitSystemWindows(param0: android.graphics.Rect): boolean;
			public isMotionEventSplittingEnabled(): boolean;
			public getChildVisibleRect(param0: android.view.View, param1: android.graphics.Rect, param2: android.graphics.Point): boolean;
			public layout(param0: number, param1: number, param2: number, param3: number): void;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public offsetRectIntoDescendantCoords(param0: android.view.View, param1: android.graphics.Rect): void;
			public constructor(param0: android.content.Context);
			public addFocusables(param0: java.util.ArrayList<android.view.View>, param1: number, param2: number): void;
			public addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public addView(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams): void;
			public requestFitSystemWindows(): void;
			public setStaticTransformationsEnabled(param0: boolean): void;
			public offsetDescendantRectToMyCoords(param0: android.view.View, param1: android.graphics.Rect): void;
			public onLayout(param0: boolean, param1: number, param2: number, param3: number, param4: number): void;
			public measureChildWithMargins(param0: android.view.View, param1: number, param2: number, param3: number, param4: number): void;
			public focusableViewAvailable(param0: android.view.View): void;
			public static getChildMeasureSpec(param0: number, param1: number, param2: number): number;
			public drawableStateChanged(): void;
			public createContextMenu(param0: android.view.ContextMenu): void;
			public shouldDelayChildPressedState(): boolean;
			public dispatchConfigurationChanged(param0: android.content.res.Configuration): void;
			public onAnimationEnd(): void;
			public dispatchSetPressed(param0: boolean): void;
			public focusSearch(param0: android.view.View, param1: number): android.view.View;
			public isChildrenDrawnWithCacheEnabled(): boolean;
			public dispatchFreezeSelfOnly(param0: android.util.SparseArray<android.os.Parcelable>): void;
			public setLayoutAnimationListener(param0: android.view.animation.Animation.AnimationListener): void;
			public canAnimate(): boolean;
			public detachAllViewsFromParent(): void;
			public setLayoutTransition(param0: android.animation.LayoutTransition): void;
			public dispatchWindowSystemUiVisiblityChanged(param0: number): void;
			public onInterceptHoverEvent(param0: android.view.MotionEvent): boolean;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public getParentForAccessibility(): android.view.ViewParent;
			public onRequestFocusInDescendants(param0: number, param1: android.graphics.Rect): boolean;
			public setLayoutAnimation(param0: android.view.animation.LayoutAnimationController): void;
			public detachViewFromParent(param0: number): void;
			public requestFocus(param0: number): boolean;
			public startActionModeForChild(param0: android.view.View, param1: android.view.ActionMode.Callback): android.view.ActionMode;
			public setClipToPadding(param0: boolean): void;
			public endViewTransition(param0: android.view.View): void;
			public removeViewInLayout(param0: android.view.View): void;
			public dispatchKeyEventPreIme(param0: android.view.KeyEvent): boolean;
			public dispatchTouchEvent(param0: android.view.MotionEvent): boolean;
			public setChildrenDrawingOrderEnabled(param0: boolean): void;
			public isAnimationCacheEnabled(): boolean;
			public generateLayoutParams(param0: android.view.ViewGroup.LayoutParams): android.view.ViewGroup.LayoutParams;
			public requestChildRectangleOnScreen(param0: android.view.View, param1: android.graphics.Rect, param2: boolean): boolean;
			public generateDefaultLayoutParams(): android.view.ViewGroup.LayoutParams;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public dispatchDragEvent(param0: android.view.DragEvent): boolean;
			public detachViewsFromParent(param0: number, param1: number): void;
			public setMotionEventSplittingEnabled(param0: boolean): void;
			public setChildrenDrawnWithCacheEnabled(param0: boolean): void;
			public hasFocusable(): boolean;
			public getLayoutTransition(): android.animation.LayoutTransition;
			public removeAllViewsInLayout(): void;
			public getLayoutAnimation(): android.view.animation.LayoutAnimationController;
			public onCreateDrawableState(param0: number): native.Array<number>;
			public getChildCount(): number;
			public onAnimationStart(): void;
			public addStatesFromChildren(): boolean;
			public removeViewAt(param0: number): void;
			public invalidateChildInParent(param0: native.Array<number>, param1: android.graphics.Rect): android.view.ViewParent;
			public gatherTransparentRegion(param0: android.graphics.Region): boolean;
			public dispatchWindowVisibilityChanged(param0: number): void;
			public jumpDrawablesToCurrentState(): void;
			public removeDetachedView(param0: android.view.View, param1: boolean): void;
			public setPersistentDrawingCache(param0: number): void;
			public getLayoutAnimationListener(): android.view.animation.Animation.AnimationListener;
			public clearFocus(): void;
			public setOnHierarchyChangeListener(param0: android.view.ViewGroup.OnHierarchyChangeListener): void;
			public getChildAt(param0: number): android.view.View;
			public dispatchGenericPointerEvent(param0: android.view.MotionEvent): boolean;
			public checkLayoutParams(param0: android.view.ViewGroup.LayoutParams): boolean;
			public removeView(param0: android.view.View): void;
			public clearChildFocus(param0: android.view.View): void;
			public dispatchDisplayHint(param0: number): void;
			public addChildrenForAccessibility(param0: java.util.ArrayList<android.view.View>): void;
			public updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public indexOfChild(param0: android.view.View): number;
			public onRequestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public requestDisallowInterceptTouchEvent(param0: boolean): void;
			public dispatchSystemUiVisibilityChanged(param0: number): void;
			public setAlwaysDrawnWithCacheEnabled(param0: boolean): void;
			public measureChild(param0: android.view.View, param1: number, param2: number): void;
			public dispatchTrackballEvent(param0: android.view.MotionEvent): boolean;
			public dispatchSaveInstanceState(param0: android.util.SparseArray<android.os.Parcelable>): void;
			public dispatchKeyEvent(param0: android.view.KeyEvent): boolean;
			public getLayoutMode(): number;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public dispatchSetActivated(param0: boolean): void;
			public dispatchUnhandledMove(param0: android.view.View, param1: number): boolean;
			public setDescendantFocusability(param0: number): void;
			public addFocusables(param0: java.util.ArrayList<android.view.View>, param1: number): void;
			public addView(param0: android.view.View, param1: number): void;
		}
		export module ViewGroup {
			export class LayoutParams extends java.lang.Object {
				public static class: java.lang.Class<android.view.ViewGroup.LayoutParams>;
				public static FILL_PARENT: number;
				public static MATCH_PARENT: number;
				public static WRAP_CONTENT: number;
				public width: number;
				public height: number;
				public layoutAnimationParameters: android.view.animation.LayoutAnimationController.AnimationParameters;
				public constructor(param0: number, param1: number);
				public constructor(param0: android.view.ViewGroup.LayoutParams);
				public resolveLayoutDirection(param0: number): void;
				public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
				public setBaseAttributes(param0: android.content.res.TypedArray, param1: number, param2: number): void;
			}
			export class MarginLayoutParams extends android.view.ViewGroup.LayoutParams {
				public static class: java.lang.Class<android.view.ViewGroup.MarginLayoutParams>;
				public leftMargin: number;
				public topMargin: number;
				public rightMargin: number;
				public bottomMargin: number;
				public constructor(param0: number, param1: number);
				public resolveLayoutDirection(param0: number): void;
				public getLayoutDirection(): number;
				public getMarginStart(): number;
				public setMargins(param0: number, param1: number, param2: number, param3: number): void;
				public setLayoutDirection(param0: number): void;
				public constructor(param0: android.view.ViewGroup.LayoutParams);
				public constructor(param0: android.view.ViewGroup.MarginLayoutParams);
				public getMarginEnd(): number;
				public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
				public setMarginStart(param0: number): void;
				public isMarginRelative(): boolean;
				public setMarginEnd(param0: number): void;
			}
			export class OnHierarchyChangeListener extends java.lang.Object {
				public static class: java.lang.Class<android.view.ViewGroup.OnHierarchyChangeListener>;
				/**
				 * Constructs a new instance of the android.view.ViewGroup$OnHierarchyChangeListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onChildViewAdded(param0: android.view.View, param1: android.view.View): void;
					onChildViewRemoved(param0: android.view.View, param1: android.view.View): void;
				});
				public constructor();
				public onChildViewRemoved(param0: android.view.View, param1: android.view.View): void;
				public onChildViewAdded(param0: android.view.View, param1: android.view.View): void;
			}
		}
	}
}

declare module android {
	export module view {
		export class ViewGroupOverlay extends android.view.ViewOverlay {
			public static class: java.lang.Class<android.view.ViewGroupOverlay>;
			public remove(param0: android.view.View): void;
			public add(param0: android.view.View): void;
			public add(param0: android.graphics.drawable.Drawable): void;
			public remove(param0: android.graphics.drawable.Drawable): void;
		}
	}
}

declare module android {
	export module view {
		export class ViewManager extends java.lang.Object {
			public static class: java.lang.Class<android.view.ViewManager>;
			/**
			 * Constructs a new instance of the android.view.ViewManager interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
				updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
				removeView(param0: android.view.View): void;
			});
			public constructor();
			public removeView(param0: android.view.View): void;
			public updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
		}
	}
}

declare module android {
	export module view {
		export class ViewOverlay extends java.lang.Object {
			public static class: java.lang.Class<android.view.ViewOverlay>;
			public clear(): void;
			public add(param0: android.graphics.drawable.Drawable): void;
			public remove(param0: android.graphics.drawable.Drawable): void;
		}
	}
}

declare module android {
	export module view {
		export class ViewParent extends java.lang.Object {
			public static class: java.lang.Class<android.view.ViewParent>;
			/**
			 * Constructs a new instance of the android.view.ViewParent interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				requestLayout(): void;
				isLayoutRequested(): boolean;
				requestTransparentRegion(param0: android.view.View): void;
				invalidateChild(param0: android.view.View, param1: android.graphics.Rect): void;
				invalidateChildInParent(param0: native.Array<number>, param1: android.graphics.Rect): android.view.ViewParent;
				getParent(): android.view.ViewParent;
				requestChildFocus(param0: android.view.View, param1: android.view.View): void;
				recomputeViewAttributes(param0: android.view.View): void;
				clearChildFocus(param0: android.view.View): void;
				getChildVisibleRect(param0: android.view.View, param1: android.graphics.Rect, param2: android.graphics.Point): boolean;
				focusSearch(param0: android.view.View, param1: number): android.view.View;
				bringChildToFront(param0: android.view.View): void;
				focusableViewAvailable(param0: android.view.View): void;
				showContextMenuForChild(param0: android.view.View): boolean;
				createContextMenu(param0: android.view.ContextMenu): void;
				startActionModeForChild(param0: android.view.View, param1: android.view.ActionMode.Callback): android.view.ActionMode;
				childDrawableStateChanged(param0: android.view.View): void;
				requestDisallowInterceptTouchEvent(param0: boolean): void;
				requestChildRectangleOnScreen(param0: android.view.View, param1: android.graphics.Rect, param2: boolean): boolean;
				requestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
				requestFitSystemWindows(): void;
				getParentForAccessibility(): android.view.ViewParent;
			});
			public constructor();
			public requestLayout(): void;
			public recomputeViewAttributes(param0: android.view.View): void;
			public childDrawableStateChanged(param0: android.view.View): void;
			public requestTransparentRegion(param0: android.view.View): void;
			public clearChildFocus(param0: android.view.View): void;
			public getParentForAccessibility(): android.view.ViewParent;
			public isLayoutRequested(): boolean;
			public getParent(): android.view.ViewParent;
			public focusableViewAvailable(param0: android.view.View): void;
			public createContextMenu(param0: android.view.ContextMenu): void;
			public requestDisallowInterceptTouchEvent(param0: boolean): void;
			public getChildVisibleRect(param0: android.view.View, param1: android.graphics.Rect, param2: android.graphics.Point): boolean;
			public invalidateChild(param0: android.view.View, param1: android.graphics.Rect): void;
			public startActionModeForChild(param0: android.view.View, param1: android.view.ActionMode.Callback): android.view.ActionMode;
			public focusSearch(param0: android.view.View, param1: number): android.view.View;
			public requestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public invalidateChildInParent(param0: native.Array<number>, param1: android.graphics.Rect): android.view.ViewParent;
			public requestChildFocus(param0: android.view.View, param1: android.view.View): void;
			public showContextMenuForChild(param0: android.view.View): boolean;
			public bringChildToFront(param0: android.view.View): void;
			public requestChildRectangleOnScreen(param0: android.view.View, param1: android.graphics.Rect, param2: boolean): boolean;
			public requestFitSystemWindows(): void;
		}
	}
}

declare module android {
	export module view {
		export class ViewPropertyAnimator extends java.lang.Object {
			public static class: java.lang.Class<android.view.ViewPropertyAnimator>;
			public rotationYBy(param0: number): android.view.ViewPropertyAnimator;
			public translationYBy(param0: number): android.view.ViewPropertyAnimator;
			public getDuration(): number;
			public setDuration(param0: number): android.view.ViewPropertyAnimator;
			public cancel(): void;
			public getInterpolator(): android.animation.TimeInterpolator;
			public scaleXBy(param0: number): android.view.ViewPropertyAnimator;
			public xBy(param0: number): android.view.ViewPropertyAnimator;
			public translationY(param0: number): android.view.ViewPropertyAnimator;
			public scaleY(param0: number): android.view.ViewPropertyAnimator;
			public translationX(param0: number): android.view.ViewPropertyAnimator;
			public scaleX(param0: number): android.view.ViewPropertyAnimator;
			public setStartDelay(param0: number): android.view.ViewPropertyAnimator;
			public yBy(param0: number): android.view.ViewPropertyAnimator;
			public start(): void;
			public getStartDelay(): number;
			public withLayer(): android.view.ViewPropertyAnimator;
			public x(param0: number): android.view.ViewPropertyAnimator;
			public withEndAction(param0: java.lang.Runnable): android.view.ViewPropertyAnimator;
			public setListener(param0: android.animation.Animator.AnimatorListener): android.view.ViewPropertyAnimator;
			public withStartAction(param0: java.lang.Runnable): android.view.ViewPropertyAnimator;
			public rotationBy(param0: number): android.view.ViewPropertyAnimator;
			public translationXBy(param0: number): android.view.ViewPropertyAnimator;
			public scaleYBy(param0: number): android.view.ViewPropertyAnimator;
			public y(param0: number): android.view.ViewPropertyAnimator;
			public alphaBy(param0: number): android.view.ViewPropertyAnimator;
			public rotationY(param0: number): android.view.ViewPropertyAnimator;
			public rotationX(param0: number): android.view.ViewPropertyAnimator;
			public alpha(param0: number): android.view.ViewPropertyAnimator;
			public rotation(param0: number): android.view.ViewPropertyAnimator;
			public setInterpolator(param0: android.animation.TimeInterpolator): android.view.ViewPropertyAnimator;
			public rotationXBy(param0: number): android.view.ViewPropertyAnimator;
		}
	}
}

declare module android {
	export module view {
		export class ViewStub extends android.view.View {
			public static class: java.lang.Class<android.view.ViewStub>;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public getLayoutInflater(): android.view.LayoutInflater;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onMeasure(param0: number, param1: number): void;
			public setOnInflateListener(param0: android.view.ViewStub.OnInflateListener): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public getLayoutResource(): number;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public static inflate(param0: android.content.Context, param1: number, param2: android.view.ViewGroup): android.view.View;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public getInflatedId(): number;
			public draw(param0: android.graphics.Canvas): void;
			public sendAccessibilityEvent(param0: number): void;
			public inflate(): android.view.View;
			public setVisibility(param0: number): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public constructor(param0: android.content.Context, param1: number);
			public setLayoutResource(param0: number): void;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public setInflatedId(param0: number): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public dispatchDraw(param0: android.graphics.Canvas): void;
			public setLayoutInflater(param0: android.view.LayoutInflater): void;
			public constructor(param0: android.content.Context);
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
		}
		export module ViewStub {
			export class OnInflateListener extends java.lang.Object {
				public static class: java.lang.Class<android.view.ViewStub.OnInflateListener>;
				/**
				 * Constructs a new instance of the android.view.ViewStub$OnInflateListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onInflate(param0: android.view.ViewStub, param1: android.view.View): void;
				});
				public constructor();
				public onInflate(param0: android.view.ViewStub, param1: android.view.View): void;
			}
		}
	}
}

declare module android {
	export module view {
		export class ViewTreeObserver extends java.lang.Object {
			public static class: java.lang.Class<android.view.ViewTreeObserver>;
			public addOnWindowAttachListener(param0: android.view.ViewTreeObserver.OnWindowAttachListener): void;
			public removeOnWindowAttachListener(param0: android.view.ViewTreeObserver.OnWindowAttachListener): void;
			public dispatchOnPreDraw(): boolean;
			/** @deprecated */
			public removeGlobalOnLayoutListener(param0: android.view.ViewTreeObserver.OnGlobalLayoutListener): void;
			public removeOnDrawListener(param0: android.view.ViewTreeObserver.OnDrawListener): void;
			public dispatchOnGlobalLayout(): void;
			public addOnGlobalFocusChangeListener(param0: android.view.ViewTreeObserver.OnGlobalFocusChangeListener): void;
			public removeOnPreDrawListener(param0: android.view.ViewTreeObserver.OnPreDrawListener): void;
			public removeOnGlobalFocusChangeListener(param0: android.view.ViewTreeObserver.OnGlobalFocusChangeListener): void;
			public addOnWindowFocusChangeListener(param0: android.view.ViewTreeObserver.OnWindowFocusChangeListener): void;
			public removeOnWindowFocusChangeListener(param0: android.view.ViewTreeObserver.OnWindowFocusChangeListener): void;
			public addOnDrawListener(param0: android.view.ViewTreeObserver.OnDrawListener): void;
			public removeOnScrollChangedListener(param0: android.view.ViewTreeObserver.OnScrollChangedListener): void;
			public removeOnTouchModeChangeListener(param0: android.view.ViewTreeObserver.OnTouchModeChangeListener): void;
			public addOnGlobalLayoutListener(param0: android.view.ViewTreeObserver.OnGlobalLayoutListener): void;
			public removeOnGlobalLayoutListener(param0: android.view.ViewTreeObserver.OnGlobalLayoutListener): void;
			public addOnScrollChangedListener(param0: android.view.ViewTreeObserver.OnScrollChangedListener): void;
			public addOnTouchModeChangeListener(param0: android.view.ViewTreeObserver.OnTouchModeChangeListener): void;
			public addOnPreDrawListener(param0: android.view.ViewTreeObserver.OnPreDrawListener): void;
			public isAlive(): boolean;
			public dispatchOnDraw(): void;
		}
		export module ViewTreeObserver {
			export class OnDrawListener extends java.lang.Object {
				public static class: java.lang.Class<android.view.ViewTreeObserver.OnDrawListener>;
				/**
				 * Constructs a new instance of the android.view.ViewTreeObserver$OnDrawListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onDraw(): void;
				});
				public constructor();
				public onDraw(): void;
			}
			export class OnGlobalFocusChangeListener extends java.lang.Object {
				public static class: java.lang.Class<android.view.ViewTreeObserver.OnGlobalFocusChangeListener>;
				/**
				 * Constructs a new instance of the android.view.ViewTreeObserver$OnGlobalFocusChangeListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onGlobalFocusChanged(param0: android.view.View, param1: android.view.View): void;
				});
				public constructor();
				public onGlobalFocusChanged(param0: android.view.View, param1: android.view.View): void;
			}
			export class OnGlobalLayoutListener extends java.lang.Object {
				public static class: java.lang.Class<android.view.ViewTreeObserver.OnGlobalLayoutListener>;
				/**
				 * Constructs a new instance of the android.view.ViewTreeObserver$OnGlobalLayoutListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onGlobalLayout(): void;
				});
				public constructor();
				public onGlobalLayout(): void;
			}
			export class OnPreDrawListener extends java.lang.Object {
				public static class: java.lang.Class<android.view.ViewTreeObserver.OnPreDrawListener>;
				/**
				 * Constructs a new instance of the android.view.ViewTreeObserver$OnPreDrawListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onPreDraw(): boolean;
				});
				public constructor();
				public onPreDraw(): boolean;
			}
			export class OnScrollChangedListener extends java.lang.Object {
				public static class: java.lang.Class<android.view.ViewTreeObserver.OnScrollChangedListener>;
				/**
				 * Constructs a new instance of the android.view.ViewTreeObserver$OnScrollChangedListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onScrollChanged(): void;
				});
				public constructor();
				public onScrollChanged(): void;
			}
			export class OnTouchModeChangeListener extends java.lang.Object {
				public static class: java.lang.Class<android.view.ViewTreeObserver.OnTouchModeChangeListener>;
				/**
				 * Constructs a new instance of the android.view.ViewTreeObserver$OnTouchModeChangeListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onTouchModeChanged(param0: boolean): void;
				});
				public constructor();
				public onTouchModeChanged(param0: boolean): void;
			}
			export class OnWindowAttachListener extends java.lang.Object {
				public static class: java.lang.Class<android.view.ViewTreeObserver.OnWindowAttachListener>;
				/**
				 * Constructs a new instance of the android.view.ViewTreeObserver$OnWindowAttachListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onWindowAttached(): void;
					onWindowDetached(): void;
				});
				public constructor();
				public onWindowAttached(): void;
				public onWindowDetached(): void;
			}
			export class OnWindowFocusChangeListener extends java.lang.Object {
				public static class: java.lang.Class<android.view.ViewTreeObserver.OnWindowFocusChangeListener>;
				/**
				 * Constructs a new instance of the android.view.ViewTreeObserver$OnWindowFocusChangeListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onWindowFocusChanged(param0: boolean): void;
				});
				public constructor();
				public onWindowFocusChanged(param0: boolean): void;
			}
		}
	}
}

declare module android {
	export module view {
		export abstract class Window extends java.lang.Object {
			public static class: java.lang.Class<android.view.Window>;
			public static FEATURE_OPTIONS_PANEL: number;
			public static FEATURE_NO_TITLE: number;
			public static FEATURE_PROGRESS: number;
			public static FEATURE_LEFT_ICON: number;
			public static FEATURE_RIGHT_ICON: number;
			public static FEATURE_INDETERMINATE_PROGRESS: number;
			public static FEATURE_CONTEXT_MENU: number;
			public static FEATURE_CUSTOM_TITLE: number;
			public static FEATURE_ACTION_BAR: number;
			public static FEATURE_ACTION_BAR_OVERLAY: number;
			public static FEATURE_ACTION_MODE_OVERLAY: number;
			public static PROGRESS_VISIBILITY_ON: number;
			public static PROGRESS_VISIBILITY_OFF: number;
			public static PROGRESS_INDETERMINATE_ON: number;
			public static PROGRESS_INDETERMINATE_OFF: number;
			public static PROGRESS_START: number;
			public static PROGRESS_END: number;
			public static PROGRESS_SECONDARY_START: number;
			public static PROGRESS_SECONDARY_END: number;
			public static DEFAULT_FEATURES: number;
			public static ID_ANDROID_CONTENT: number;
			public onActive(): void;
			public setTitle(param0: string): void;
			public setFeatureDrawableResource(param0: number, param1: number): void;
			public hasSoftInputMode(): boolean;
			public setContainer(param0: android.view.Window): void;
			public setType(param0: number): void;
			public getLayoutInflater(): android.view.LayoutInflater;
			public setLayout(param0: number, param1: number): void;
			public findViewById(param0: number): android.view.View;
			public setContentView(param0: android.view.View): void;
			public clearFlags(param0: number): void;
			public hasFeature(param0: number): boolean;
			public performPanelShortcut(param0: number, param1: number, param2: android.view.KeyEvent, param3: number): boolean;
			public takeSurface(param0: android.view.SurfaceHolder.Callback2): void;
			public getLocalFeatures(): number;
			public setFeatureDrawableUri(param0: number, param1: android.net.Uri): void;
			public getDecorView(): android.view.View;
			public superDispatchKeyShortcutEvent(param0: android.view.KeyEvent): boolean;
			public getContext(): android.content.Context;
			public addFlags(param0: number): void;
			public setWindowManager(param0: android.view.WindowManager, param1: android.os.IBinder, param2: string): void;
			public setContentView(param0: number): void;
			public performContextMenuIdentifierAction(param0: number, param1: number): boolean;
			public superDispatchTouchEvent(param0: android.view.MotionEvent): boolean;
			public getWindowStyle(): android.content.res.TypedArray;
			public performPanelIdentifierAction(param0: number, param1: number, param2: number): boolean;
			public isShortcutKey(param0: number, param1: android.view.KeyEvent): boolean;
			public getVolumeControlStream(): number;
			public takeKeyEvents(param0: boolean): void;
			public requestFeature(param0: number): boolean;
			public getCallback(): android.view.Window.Callback;
			public restoreHierarchyState(param0: android.os.Bundle): void;
			public getContainer(): android.view.Window;
			public setFlags(param0: number, param1: number): void;
			public getCurrentFocus(): android.view.View;
			public superDispatchKeyEvent(param0: android.view.KeyEvent): boolean;
			public peekDecorView(): android.view.View;
			public setWindowManager(param0: android.view.WindowManager, param1: android.os.IBinder, param2: string, param3: boolean): void;
			public closeAllPanels(): void;
			public setGravity(param0: number): void;
			public isActive(): boolean;
			public setCallback(param0: android.view.Window.Callback): void;
			public getForcedWindowFlags(): number;
			public setVolumeControlStream(param0: number): void;
			public setTitleColor(param0: number): void;
			public getFeatures(): number;
			public isFloating(): boolean;
			public getAttributes(): android.view.WindowManager.LayoutParams;
			public setBackgroundDrawable(param0: android.graphics.drawable.Drawable): void;
			public setFeatureDrawable(param0: number, param1: android.graphics.drawable.Drawable): void;
			public setChildDrawable(param0: number, param1: android.graphics.drawable.Drawable): void;
			public takeInputQueue(param0: android.view.InputQueue.Callback): void;
			public hasChildren(): boolean;
			public getWindowManager(): android.view.WindowManager;
			public setDefaultWindowFormat(param0: number): void;
			public setDimAmount(param0: number): void;
			public togglePanel(param0: number, param1: android.view.KeyEvent): void;
			public setFeatureInt(param0: number, param1: number): void;
			public onConfigurationChanged(param0: android.content.res.Configuration): void;
			public setUiOptions(param0: number, param1: number): void;
			public makeActive(): void;
			public openPanel(param0: number, param1: android.view.KeyEvent): void;
			public setChildInt(param0: number, param1: number): void;
			public setUiOptions(param0: number): void;
			public saveHierarchyState(): android.os.Bundle;
			public closePanel(param0: number): void;
			public superDispatchGenericMotionEvent(param0: android.view.MotionEvent): boolean;
			public addContentView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public setWindowAnimations(param0: number): void;
			public setSoftInputMode(param0: number): void;
			public setContentView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public setFeatureDrawableAlpha(param0: number, param1: number): void;
			public invalidatePanelMenu(param0: number): void;
			public setBackgroundDrawableResource(param0: number): void;
			public constructor(param0: android.content.Context);
			public superDispatchTrackballEvent(param0: android.view.MotionEvent): boolean;
			public setFormat(param0: number): void;
			public setAttributes(param0: android.view.WindowManager.LayoutParams): void;
		}
		export module Window {
			export class Callback extends java.lang.Object {
				public static class: java.lang.Class<android.view.Window.Callback>;
				/**
				 * Constructs a new instance of the android.view.Window$Callback interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					dispatchKeyEvent(param0: android.view.KeyEvent): boolean;
					dispatchKeyShortcutEvent(param0: android.view.KeyEvent): boolean;
					dispatchTouchEvent(param0: android.view.MotionEvent): boolean;
					dispatchTrackballEvent(param0: android.view.MotionEvent): boolean;
					dispatchGenericMotionEvent(param0: android.view.MotionEvent): boolean;
					dispatchPopulateAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): boolean;
					onCreatePanelView(param0: number): android.view.View;
					onCreatePanelMenu(param0: number, param1: android.view.Menu): boolean;
					onPreparePanel(param0: number, param1: android.view.View, param2: android.view.Menu): boolean;
					onMenuOpened(param0: number, param1: android.view.Menu): boolean;
					onMenuItemSelected(param0: number, param1: android.view.MenuItem): boolean;
					onWindowAttributesChanged(param0: android.view.WindowManager.LayoutParams): void;
					onContentChanged(): void;
					onWindowFocusChanged(param0: boolean): void;
					onAttachedToWindow(): void;
					onDetachedFromWindow(): void;
					onPanelClosed(param0: number, param1: android.view.Menu): void;
					onSearchRequested(): boolean;
					onWindowStartingActionMode(param0: android.view.ActionMode.Callback): android.view.ActionMode;
					onActionModeStarted(param0: android.view.ActionMode): void;
					onActionModeFinished(param0: android.view.ActionMode): void;
				});
				public constructor();
				public dispatchGenericMotionEvent(param0: android.view.MotionEvent): boolean;
				public onActionModeStarted(param0: android.view.ActionMode): void;
				public onMenuOpened(param0: number, param1: android.view.Menu): boolean;
				public onWindowStartingActionMode(param0: android.view.ActionMode.Callback): android.view.ActionMode;
				public dispatchTrackballEvent(param0: android.view.MotionEvent): boolean;
				public onActionModeFinished(param0: android.view.ActionMode): void;
				public dispatchKeyShortcutEvent(param0: android.view.KeyEvent): boolean;
				public onWindowAttributesChanged(param0: android.view.WindowManager.LayoutParams): void;
				public dispatchPopulateAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): boolean;
				public onContentChanged(): void;
				public onPreparePanel(param0: number, param1: android.view.View, param2: android.view.Menu): boolean;
				public onMenuItemSelected(param0: number, param1: android.view.MenuItem): boolean;
				public dispatchKeyEvent(param0: android.view.KeyEvent): boolean;
				public onCreatePanelMenu(param0: number, param1: android.view.Menu): boolean;
				public onDetachedFromWindow(): void;
				public onPanelClosed(param0: number, param1: android.view.Menu): void;
				public dispatchTouchEvent(param0: android.view.MotionEvent): boolean;
				public onSearchRequested(): boolean;
				public onWindowFocusChanged(param0: boolean): void;
				public onCreatePanelView(param0: number): android.view.View;
				public onAttachedToWindow(): void;
			}
		}
	}
}

declare module android {
	export module view {
		export class WindowId extends java.lang.Object implements android.os.Parcelable {
			public static class: java.lang.Class<android.view.WindowId>;
			public static CREATOR: android.os.Parcelable.Creator<android.view.WindowId>;
			public equals(param0: any): boolean;
			public toString(): string;
			public unregisterFocusObserver(param0: android.view.WindowId.FocusObserver): void;
			public describeContents(): number;
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public registerFocusObserver(param0: android.view.WindowId.FocusObserver): void;
			public isFocused(): boolean;
			public hashCode(): number;
		}
		export module WindowId {
			export abstract class FocusObserver extends java.lang.Object {
				public static class: java.lang.Class<android.view.WindowId.FocusObserver>;
				public onFocusLost(param0: android.view.WindowId): void;
				public onFocusGained(param0: android.view.WindowId): void;
				public constructor();
			}
		}
	}
}

declare module android {
	export module view {
		export class WindowManager extends java.lang.Object implements android.view.ViewManager {
			public static class: java.lang.Class<android.view.WindowManager>;
			/**
			 * Constructs a new instance of the android.view.WindowManager interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				getDefaultDisplay(): android.view.Display;
				removeViewImmediate(param0: android.view.View): void;
				addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
				updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
				removeView(param0: android.view.View): void;
			});
			public constructor();
			public removeView(param0: android.view.View): void;
			public getDefaultDisplay(): android.view.Display;
			public removeViewImmediate(param0: android.view.View): void;
			public updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
		}
		export module WindowManager {
			export class BadTokenException extends java.lang.RuntimeException {
				public static class: java.lang.Class<android.view.WindowManager.BadTokenException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
			export class InvalidDisplayException extends java.lang.RuntimeException {
				public static class: java.lang.Class<android.view.WindowManager.InvalidDisplayException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
			export class LayoutParams extends android.view.ViewGroup.LayoutParams implements android.os.Parcelable {
				public static class: java.lang.Class<android.view.WindowManager.LayoutParams>;
				public x: number;
				public y: number;
				public horizontalWeight: number;
				public verticalWeight: number;
				public type: number;
				public static FIRST_APPLICATION_WINDOW: number;
				public static TYPE_BASE_APPLICATION: number;
				public static TYPE_APPLICATION: number;
				public static TYPE_APPLICATION_STARTING: number;
				public static LAST_APPLICATION_WINDOW: number;
				public static FIRST_SUB_WINDOW: number;
				public static TYPE_APPLICATION_PANEL: number;
				public static TYPE_APPLICATION_MEDIA: number;
				public static TYPE_APPLICATION_SUB_PANEL: number;
				public static TYPE_APPLICATION_ATTACHED_DIALOG: number;
				public static LAST_SUB_WINDOW: number;
				public static FIRST_SYSTEM_WINDOW: number;
				public static TYPE_STATUS_BAR: number;
				public static TYPE_SEARCH_BAR: number;
				public static TYPE_PHONE: number;
				public static TYPE_SYSTEM_ALERT: number;
				public static TYPE_KEYGUARD: number;
				public static TYPE_TOAST: number;
				public static TYPE_SYSTEM_OVERLAY: number;
				public static TYPE_PRIORITY_PHONE: number;
				public static TYPE_SYSTEM_DIALOG: number;
				public static TYPE_KEYGUARD_DIALOG: number;
				public static TYPE_SYSTEM_ERROR: number;
				public static TYPE_INPUT_METHOD: number;
				public static TYPE_INPUT_METHOD_DIALOG: number;
				public static TYPE_WALLPAPER: number;
				public static TYPE_STATUS_BAR_PANEL: number;
				public static LAST_SYSTEM_WINDOW: number;
				public static MEMORY_TYPE_NORMAL: number;
				public static MEMORY_TYPE_HARDWARE: number;
				public static MEMORY_TYPE_GPU: number;
				public static MEMORY_TYPE_PUSH_BUFFERS: number;
				public memoryType: number;
				public static FLAG_ALLOW_LOCK_WHILE_SCREEN_ON: number;
				public static FLAG_DIM_BEHIND: number;
				public static FLAG_BLUR_BEHIND: number;
				public static FLAG_NOT_FOCUSABLE: number;
				public static FLAG_NOT_TOUCHABLE: number;
				public static FLAG_NOT_TOUCH_MODAL: number;
				public static FLAG_TOUCHABLE_WHEN_WAKING: number;
				public static FLAG_KEEP_SCREEN_ON: number;
				public static FLAG_LAYOUT_IN_SCREEN: number;
				public static FLAG_LAYOUT_NO_LIMITS: number;
				public static FLAG_FULLSCREEN: number;
				public static FLAG_FORCE_NOT_FULLSCREEN: number;
				public static FLAG_DITHER: number;
				public static FLAG_SECURE: number;
				public static FLAG_SCALED: number;
				public static FLAG_IGNORE_CHEEK_PRESSES: number;
				public static FLAG_LAYOUT_INSET_DECOR: number;
				public static FLAG_ALT_FOCUSABLE_IM: number;
				public static FLAG_WATCH_OUTSIDE_TOUCH: number;
				public static FLAG_SHOW_WHEN_LOCKED: number;
				public static FLAG_SHOW_WALLPAPER: number;
				public static FLAG_TURN_SCREEN_ON: number;
				public static FLAG_DISMISS_KEYGUARD: number;
				public static FLAG_SPLIT_TOUCH: number;
				public static FLAG_HARDWARE_ACCELERATED: number;
				public static FLAG_LAYOUT_IN_OVERSCAN: number;
				public flags: number;
				public static SOFT_INPUT_MASK_STATE: number;
				public static SOFT_INPUT_STATE_UNSPECIFIED: number;
				public static SOFT_INPUT_STATE_UNCHANGED: number;
				public static SOFT_INPUT_STATE_HIDDEN: number;
				public static SOFT_INPUT_STATE_ALWAYS_HIDDEN: number;
				public static SOFT_INPUT_STATE_VISIBLE: number;
				public static SOFT_INPUT_STATE_ALWAYS_VISIBLE: number;
				public static SOFT_INPUT_MASK_ADJUST: number;
				public static SOFT_INPUT_ADJUST_UNSPECIFIED: number;
				public static SOFT_INPUT_ADJUST_RESIZE: number;
				public static SOFT_INPUT_ADJUST_PAN: number;
				public static SOFT_INPUT_ADJUST_NOTHING: number;
				public static SOFT_INPUT_IS_FORWARD_NAVIGATION: number;
				public softInputMode: number;
				public gravity: number;
				public horizontalMargin: number;
				public verticalMargin: number;
				public format: number;
				public windowAnimations: number;
				public alpha: number;
				public dimAmount: number;
				public static BRIGHTNESS_OVERRIDE_NONE: number;
				public static BRIGHTNESS_OVERRIDE_OFF: number;
				public static BRIGHTNESS_OVERRIDE_FULL: number;
				public screenBrightness: number;
				public buttonBrightness: number;
				public static ROTATION_ANIMATION_ROTATE: number;
				public static ROTATION_ANIMATION_CROSSFADE: number;
				public static ROTATION_ANIMATION_JUMPCUT: number;
				public rotationAnimation: number;
				public token: android.os.IBinder;
				public packageName: string;
				public screenOrientation: number;
				public systemUiVisibility: number;
				public static CREATOR: android.os.Parcelable.Creator<android.view.WindowManager.LayoutParams>;
				public static LAYOUT_CHANGED: number;
				public static TYPE_CHANGED: number;
				public static FLAGS_CHANGED: number;
				public static FORMAT_CHANGED: number;
				public static ANIMATION_CHANGED: number;
				public static DIM_AMOUNT_CHANGED: number;
				public static TITLE_CHANGED: number;
				public static ALPHA_CHANGED: number;
				public static MEMORY_TYPE_CHANGED: number;
				public static SOFT_INPUT_MODE_CHANGED: number;
				public static SCREEN_ORIENTATION_CHANGED: number;
				public static SCREEN_BRIGHTNESS_CHANGED: number;
				public static ROTATION_ANIMATION_CHANGED: number;
				public constructor(param0: number, param1: number);
				public debug(param0: string): string;
				public constructor(param0: number, param1: number, param2: number);
				public constructor(param0: number, param1: number, param2: number, param3: number, param4: number);
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public copyFrom(param0: android.view.WindowManager.LayoutParams): number;
				public constructor(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number);
				public toString(): string;
				public setTitle(param0: string): void;
				public getTitle(): string;
				public constructor();
				public constructor(param0: android.view.ViewGroup.LayoutParams);
				public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
				public constructor(param0: android.os.Parcel);
				public describeContents(): number;
				public constructor(param0: number);
				public static mayUseInputMethod(param0: number): boolean;
			}
		}
	}
}

declare module android {
	export module view {
		export module accessibility {
			export class AccessibilityEvent extends android.view.accessibility.AccessibilityRecord implements android.os.Parcelable {
				public static class: java.lang.Class<android.view.accessibility.AccessibilityEvent>;
				public static INVALID_POSITION: number;
				public static MAX_TEXT_LENGTH: number;
				public static TYPE_VIEW_CLICKED: number;
				public static TYPE_VIEW_LONG_CLICKED: number;
				public static TYPE_VIEW_SELECTED: number;
				public static TYPE_VIEW_FOCUSED: number;
				public static TYPE_VIEW_TEXT_CHANGED: number;
				public static TYPE_WINDOW_STATE_CHANGED: number;
				public static TYPE_NOTIFICATION_STATE_CHANGED: number;
				public static TYPE_VIEW_HOVER_ENTER: number;
				public static TYPE_VIEW_HOVER_EXIT: number;
				public static TYPE_TOUCH_EXPLORATION_GESTURE_START: number;
				public static TYPE_TOUCH_EXPLORATION_GESTURE_END: number;
				public static TYPE_WINDOW_CONTENT_CHANGED: number;
				public static TYPE_VIEW_SCROLLED: number;
				public static TYPE_VIEW_TEXT_SELECTION_CHANGED: number;
				public static TYPE_ANNOUNCEMENT: number;
				public static TYPE_VIEW_ACCESSIBILITY_FOCUSED: number;
				public static TYPE_VIEW_ACCESSIBILITY_FOCUS_CLEARED: number;
				public static TYPE_VIEW_TEXT_TRAVERSED_AT_MOVEMENT_GRANULARITY: number;
				public static TYPE_GESTURE_DETECTION_START: number;
				public static TYPE_GESTURE_DETECTION_END: number;
				public static TYPE_TOUCH_INTERACTION_START: number;
				public static TYPE_TOUCH_INTERACTION_END: number;
				public static TYPES_ALL_MASK: number;
				public static CREATOR: android.os.Parcelable.Creator<android.view.accessibility.AccessibilityEvent>;
				public initFromParcel(param0: android.os.Parcel): void;
				public recycle(): void;
				public getEventType(): number;
				public getAction(): number;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public getPackageName(): string;
				public getEventTime(): number;
				public toString(): string;
				public static obtain(): android.view.accessibility.AccessibilityRecord;
				public static obtain(): android.view.accessibility.AccessibilityEvent;
				public static obtain(param0: android.view.accessibility.AccessibilityRecord): android.view.accessibility.AccessibilityRecord;
				public setPackageName(param0: string): void;
				public static eventTypeToString(param0: number): string;
				public appendRecord(param0: android.view.accessibility.AccessibilityRecord): void;
				public static obtain(param0: number): android.view.accessibility.AccessibilityEvent;
				public setAction(param0: number): void;
				public describeContents(): number;
				public getRecordCount(): number;
				public setEventTime(param0: number): void;
				public getRecord(param0: number): android.view.accessibility.AccessibilityRecord;
				public setEventType(param0: number): void;
				public static obtain(param0: android.view.accessibility.AccessibilityEvent): android.view.accessibility.AccessibilityEvent;
				public getMovementGranularity(): number;
				public setMovementGranularity(param0: number): void;
			}
		}
	}
}

declare module android {
	export module view {
		export module accessibility {
			export class AccessibilityEventSource extends java.lang.Object {
				public static class: java.lang.Class<android.view.accessibility.AccessibilityEventSource>;
				/**
				 * Constructs a new instance of the android.view.accessibility.AccessibilityEventSource interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					sendAccessibilityEvent(param0: number): void;
					sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
				});
				public constructor();
				public sendAccessibilityEvent(param0: number): void;
				public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			}
		}
	}
}

declare module android {
	export module view {
		export module accessibility {
			export class AccessibilityManager extends java.lang.Object {
				public static class: java.lang.Class<android.view.accessibility.AccessibilityManager>;
				public getInstalledAccessibilityServiceList(): java.util.List<android.accessibilityservice.AccessibilityServiceInfo>;
				public removeAccessibilityStateChangeListener(param0: android.view.accessibility.AccessibilityManager.AccessibilityStateChangeListener): boolean;
				/** @deprecated */
				public getAccessibilityServiceList(): java.util.List<android.content.pm.ServiceInfo>;
				public addAccessibilityStateChangeListener(param0: android.view.accessibility.AccessibilityManager.AccessibilityStateChangeListener): boolean;
				public interrupt(): void;
				public getEnabledAccessibilityServiceList(param0: number): java.util.List<android.accessibilityservice.AccessibilityServiceInfo>;
				public isEnabled(): boolean;
				public isTouchExplorationEnabled(): boolean;
				public sendAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			}
			export module AccessibilityManager {
				export class AccessibilityStateChangeListener extends java.lang.Object {
					public static class: java.lang.Class<android.view.accessibility.AccessibilityManager.AccessibilityStateChangeListener>;
					/**
					 * Constructs a new instance of the android.view.accessibility.AccessibilityManager$AccessibilityStateChangeListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						onAccessibilityStateChanged(param0: boolean): void;
					});
					public constructor();
					public onAccessibilityStateChanged(param0: boolean): void;
				}
			}
		}
	}
}

declare module android {
	export module view {
		export module accessibility {
			export class AccessibilityNodeInfo extends java.lang.Object implements android.os.Parcelable {
				public static class: java.lang.Class<android.view.accessibility.AccessibilityNodeInfo>;
				public static ACTION_FOCUS: number;
				public static ACTION_CLEAR_FOCUS: number;
				public static ACTION_SELECT: number;
				public static ACTION_CLEAR_SELECTION: number;
				public static ACTION_CLICK: number;
				public static ACTION_LONG_CLICK: number;
				public static ACTION_ACCESSIBILITY_FOCUS: number;
				public static ACTION_CLEAR_ACCESSIBILITY_FOCUS: number;
				public static ACTION_NEXT_AT_MOVEMENT_GRANULARITY: number;
				public static ACTION_PREVIOUS_AT_MOVEMENT_GRANULARITY: number;
				public static ACTION_NEXT_HTML_ELEMENT: number;
				public static ACTION_PREVIOUS_HTML_ELEMENT: number;
				public static ACTION_SCROLL_FORWARD: number;
				public static ACTION_SCROLL_BACKWARD: number;
				public static ACTION_COPY: number;
				public static ACTION_PASTE: number;
				public static ACTION_CUT: number;
				public static ACTION_SET_SELECTION: number;
				public static ACTION_ARGUMENT_MOVEMENT_GRANULARITY_INT: string;
				public static ACTION_ARGUMENT_HTML_ELEMENT_STRING: string;
				public static ACTION_ARGUMENT_EXTEND_SELECTION_BOOLEAN: string;
				public static ACTION_ARGUMENT_SELECTION_START_INT: string;
				public static ACTION_ARGUMENT_SELECTION_END_INT: string;
				public static FOCUS_INPUT: number;
				public static FOCUS_ACCESSIBILITY: number;
				public static MOVEMENT_GRANULARITY_CHARACTER: number;
				public static MOVEMENT_GRANULARITY_WORD: number;
				public static MOVEMENT_GRANULARITY_LINE: number;
				public static MOVEMENT_GRANULARITY_PARAGRAPH: number;
				public static MOVEMENT_GRANULARITY_PAGE: number;
				public static CREATOR: android.os.Parcelable.Creator<android.view.accessibility.AccessibilityNodeInfo>;
				public setChecked(param0: boolean): void;
				public recycle(): void;
				public setFocusable(param0: boolean): void;
				public getClassName(): string;
				public isCheckable(): boolean;
				public findFocus(param0: number): android.view.accessibility.AccessibilityNodeInfo;
				public getContentDescription(): string;
				public setViewIdResourceName(param0: string): void;
				public setClickable(param0: boolean): void;
				public setEnabled(param0: boolean): void;
				public getTextSelectionStart(): number;
				public static obtain(param0: android.view.View): android.view.accessibility.AccessibilityNodeInfo;
				public getWindowId(): number;
				public setAccessibilityFocused(param0: boolean): void;
				public setTextSelection(param0: number, param1: number): void;
				public getBoundsInParent(param0: android.graphics.Rect): void;
				public setScrollable(param0: boolean): void;
				public isAccessibilityFocused(): boolean;
				public hashCode(): number;
				public setSelected(param0: boolean): void;
				public getActions(): number;
				public equals(param0: any): boolean;
				public setParent(param0: android.view.View, param1: number): void;
				public setClassName(param0: string): void;
				public setVisibleToUser(param0: boolean): void;
				public isScrollable(): boolean;
				public addChild(param0: android.view.View, param1: number): void;
				public getPackageName(): string;
				public addChild(param0: android.view.View): void;
				public setMovementGranularities(param0: number): void;
				public performAction(param0: number): boolean;
				public findAccessibilityNodeInfosByViewId(param0: string): java.util.List<android.view.accessibility.AccessibilityNodeInfo>;
				public toString(): string;
				public setSource(param0: android.view.View): void;
				public setEditable(param0: boolean): void;
				public getMovementGranularities(): number;
				public getParent(): android.view.accessibility.AccessibilityNodeInfo;
				public setPassword(param0: boolean): void;
				public describeContents(): number;
				public setContentDescription(param0: string): void;
				public setLabelFor(param0: android.view.View, param1: number): void;
				public setText(param0: string): void;
				public isChecked(): boolean;
				public setFocused(param0: boolean): void;
				public getLabeledBy(): android.view.accessibility.AccessibilityNodeInfo;
				public focusSearch(param0: number): android.view.accessibility.AccessibilityNodeInfo;
				public setBoundsInScreen(param0: android.graphics.Rect): void;
				public isClickable(): boolean;
				public isLongClickable(): boolean;
				public getTextSelectionEnd(): number;
				public static obtain(param0: android.view.accessibility.AccessibilityNodeInfo): android.view.accessibility.AccessibilityNodeInfo;
				public getChild(param0: number): android.view.accessibility.AccessibilityNodeInfo;
				public setLongClickable(param0: boolean): void;
				public getViewIdResourceName(): string;
				public setLabeledBy(param0: android.view.View): void;
				public static obtain(param0: android.view.View, param1: number): android.view.accessibility.AccessibilityNodeInfo;
				public isFocused(): boolean;
				public setLabelFor(param0: android.view.View): void;
				public findAccessibilityNodeInfosByText(param0: string): java.util.List<android.view.accessibility.AccessibilityNodeInfo>;
				public isPassword(): boolean;
				public setLabeledBy(param0: android.view.View, param1: number): void;
				public static obtain(): android.view.accessibility.AccessibilityNodeInfo;
				public performAction(param0: number, param1: android.os.Bundle): boolean;
				public setParent(param0: android.view.View): void;
				public setSource(param0: android.view.View, param1: number): void;
				public getChildCount(): number;
				public getBoundsInScreen(param0: android.graphics.Rect): void;
				public isSelected(): boolean;
				public getLabelFor(): android.view.accessibility.AccessibilityNodeInfo;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public setBoundsInParent(param0: android.graphics.Rect): void;
				public isVisibleToUser(): boolean;
				public isEditable(): boolean;
				public setCheckable(param0: boolean): void;
				public getText(): string;
				public setPackageName(param0: string): void;
				public isFocusable(): boolean;
				public isEnabled(): boolean;
				public addAction(param0: number): void;
				public refresh(): boolean;
			}
		}
	}
}

declare module android {
	export module view {
		export module accessibility {
			export abstract class AccessibilityNodeProvider extends java.lang.Object {
				public static class: java.lang.Class<android.view.accessibility.AccessibilityNodeProvider>;
				public findAccessibilityNodeInfosByText(param0: string, param1: number): java.util.List<android.view.accessibility.AccessibilityNodeInfo>;
				public performAction(param0: number, param1: number, param2: android.os.Bundle): boolean;
				public createAccessibilityNodeInfo(param0: number): android.view.accessibility.AccessibilityNodeInfo;
				public constructor();
			}
		}
	}
}

declare module android {
	export module view {
		export module accessibility {
			export class AccessibilityRecord extends java.lang.Object {
				public static class: java.lang.Class<android.view.accessibility.AccessibilityRecord>;
				public isChecked(): boolean;
				public setChecked(param0: boolean): void;
				public recycle(): void;
				public getClassName(): string;
				public getContentDescription(): string;
				public getParcelableData(): android.os.Parcelable;
				public setAddedCount(param0: number): void;
				public getRemovedCount(): number;
				public setEnabled(param0: boolean): void;
				public getAddedCount(): number;
				public getToIndex(): number;
				public static obtain(): android.view.accessibility.AccessibilityRecord;
				public getItemCount(): number;
				public getScrollY(): number;
				public static obtain(param0: android.view.accessibility.AccessibilityRecord): android.view.accessibility.AccessibilityRecord;
				public getWindowId(): number;
				public getCurrentItemIndex(): number;
				public setParcelableData(param0: android.os.Parcelable): void;
				public setScrollX(param0: number): void;
				public setScrollable(param0: boolean): void;
				public setToIndex(param0: number): void;
				public isFullScreen(): boolean;
				public isPassword(): boolean;
				public setFullScreen(param0: boolean): void;
				public setClassName(param0: string): void;
				public setCurrentItemIndex(param0: number): void;
				public setBeforeText(param0: string): void;
				public setSource(param0: android.view.View, param1: number): void;
				public isScrollable(): boolean;
				public getScrollX(): number;
				public getMaxScrollX(): number;
				public setMaxScrollX(param0: number): void;
				public setRemovedCount(param0: number): void;
				public toString(): string;
				public setItemCount(param0: number): void;
				public setFromIndex(param0: number): void;
				public setSource(param0: android.view.View): void;
				public setScrollY(param0: number): void;
				public setMaxScrollY(param0: number): void;
				public getText(): java.util.List<string>;
				public getBeforeText(): string;
				public getMaxScrollY(): number;
				public setPassword(param0: boolean): void;
				public isEnabled(): boolean;
				public getFromIndex(): number;
				public setContentDescription(param0: string): void;
				public getSource(): android.view.accessibility.AccessibilityNodeInfo;
			}
		}
	}
}

declare module android {
	export module view {
		export module animation {
			export class AccelerateDecelerateInterpolator extends java.lang.Object implements android.view.animation.Interpolator {
				public static class: java.lang.Class<android.view.animation.AccelerateDecelerateInterpolator>;
				public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
				public getInterpolation(param0: number): number;
				public constructor();
			}
		}
	}
}

declare module android {
	export module view {
		export module animation {
			export class AccelerateInterpolator extends java.lang.Object implements android.view.animation.Interpolator {
				public static class: java.lang.Class<android.view.animation.AccelerateInterpolator>;
				public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
				public getInterpolation(param0: number): number;
				public constructor(param0: number);
				public constructor();
			}
		}
	}
}

declare module android {
	export module view {
		export module animation {
			export class AlphaAnimation extends android.view.animation.Animation {
				public static class: java.lang.Class<android.view.animation.AlphaAnimation>;
				public constructor(param0: number, param1: number);
				public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
				public willChangeTransformationMatrix(): boolean;
				public applyTransformation(param0: number, param1: android.view.animation.Transformation): void;
				public willChangeBounds(): boolean;
				public constructor();
			}
		}
	}
}

declare module android {
	export module view {
		export module animation {
			export abstract class Animation extends java.lang.Object implements java.lang.Cloneable {
				public static class: java.lang.Class<android.view.animation.Animation>;
				public static INFINITE: number;
				public static RESTART: number;
				public static REVERSE: number;
				public static START_ON_FIRST_FRAME: number;
				public static ABSOLUTE: number;
				public static RELATIVE_TO_SELF: number;
				public static RELATIVE_TO_PARENT: number;
				public static ZORDER_NORMAL: number;
				public static ZORDER_TOP: number;
				public static ZORDER_BOTTOM: number;
				public getFillAfter(): boolean;
				public setDetachWallpaper(param0: boolean): void;
				public getFillBefore(): boolean;
				public constructor();
				public scaleCurrentDuration(param0: number): void;
				public hasEnded(): boolean;
				public getStartOffset(): number;
				public clone(): any;
				public cancel(): void;
				public setStartOffset(param0: number): void;
				public hasStarted(): boolean;
				public setAnimationListener(param0: android.view.animation.Animation.AnimationListener): void;
				public applyTransformation(param0: number, param1: android.view.animation.Transformation): void;
				public getDetachWallpaper(): boolean;
				public setInterpolator(param0: android.content.Context, param1: number): void;
				public getRepeatCount(): number;
				public setStartTime(param0: number): void;
				public startNow(): void;
				public clone(): android.view.animation.Animation;
				public willChangeTransformationMatrix(): boolean;
				public setInterpolator(param0: android.view.animation.Interpolator): void;
				public setRepeatMode(param0: number): void;
				public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
				public setFillEnabled(param0: boolean): void;
				public willChangeBounds(): boolean;
				public ensureInterpolator(): void;
				public restrictDuration(param0: number): void;
				public getDuration(): number;
				public setZAdjustment(param0: number): void;
				public finalize(): void;
				public initialize(param0: number, param1: number, param2: number, param3: number): void;
				public getStartTime(): number;
				public reset(): void;
				public getZAdjustment(): number;
				public setFillBefore(param0: boolean): void;
				public start(): void;
				public isInitialized(): boolean;
				public setDuration(param0: number): void;
				public getTransformation(param0: number, param1: android.view.animation.Transformation, param2: number): boolean;
				public setBackgroundColor(param0: number): void;
				public getRepeatMode(): number;
				public getInterpolator(): android.view.animation.Interpolator;
				public computeDurationHint(): number;
				public getTransformation(param0: number, param1: android.view.animation.Transformation): boolean;
				public getBackgroundColor(): number;
				public getScaleFactor(): number;
				public setRepeatCount(param0: number): void;
				public setFillAfter(param0: boolean): void;
				public resolveSize(param0: number, param1: number, param2: number, param3: number): number;
				public isFillEnabled(): boolean;
			}
			export module Animation {
				export class AnimationListener extends java.lang.Object {
					public static class: java.lang.Class<android.view.animation.Animation.AnimationListener>;
					/**
					 * Constructs a new instance of the android.view.animation.Animation$AnimationListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						onAnimationStart(param0: android.view.animation.Animation): void;
						onAnimationEnd(param0: android.view.animation.Animation): void;
						onAnimationRepeat(param0: android.view.animation.Animation): void;
					});
					public constructor();
					public onAnimationStart(param0: android.view.animation.Animation): void;
					public onAnimationEnd(param0: android.view.animation.Animation): void;
					public onAnimationRepeat(param0: android.view.animation.Animation): void;
				}
				export class Description extends java.lang.Object {
					public static class: java.lang.Class<android.view.animation.Animation.Description>;
					public type: number;
					public value: number;
					public constructor();
				}
			}
		}
	}
}

declare module android {
	export module view {
		export module animation {
			export class AnimationSet extends android.view.animation.Animation {
				public static class: java.lang.Class<android.view.animation.AnimationSet>;
				public getDuration(): number;
				public constructor(param0: boolean);
				public initialize(param0: number, param1: number, param2: number, param3: number): void;
				public constructor();
				public getStartTime(): number;
				public scaleCurrentDuration(param0: number): void;
				public reset(): void;
				public setFillBefore(param0: boolean): void;
				public clone(): any;
				public setStartOffset(param0: number): void;
				public setDuration(param0: number): void;
				public getTransformation(param0: number, param1: android.view.animation.Transformation, param2: number): boolean;
				public setStartTime(param0: number): void;
				public clone(): android.view.animation.Animation;
				public willChangeTransformationMatrix(): boolean;
				public getAnimations(): java.util.List<android.view.animation.Animation>;
				public computeDurationHint(): number;
				public getTransformation(param0: number, param1: android.view.animation.Transformation): boolean;
				public setRepeatMode(param0: number): void;
				public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
				public addAnimation(param0: android.view.animation.Animation): void;
				public willChangeBounds(): boolean;
				public setFillAfter(param0: boolean): void;
				public restrictDuration(param0: number): void;
				public clone(): android.view.animation.AnimationSet;
			}
		}
	}
}

declare module android {
	export module view {
		export module animation {
			export class AnimationUtils extends java.lang.Object {
				public static class: java.lang.Class<android.view.animation.AnimationUtils>;
				public static currentAnimationTimeMillis(): number;
				public static makeInChildBottomAnimation(param0: android.content.Context): android.view.animation.Animation;
				public static makeInAnimation(param0: android.content.Context, param1: boolean): android.view.animation.Animation;
				public static makeOutAnimation(param0: android.content.Context, param1: boolean): android.view.animation.Animation;
				public static loadInterpolator(param0: android.content.Context, param1: number): android.view.animation.Interpolator;
				public static loadLayoutAnimation(param0: android.content.Context, param1: number): android.view.animation.LayoutAnimationController;
				public constructor();
				public static loadAnimation(param0: android.content.Context, param1: number): android.view.animation.Animation;
			}
		}
	}
}

declare module android {
	export module view {
		export module animation {
			export class AnticipateInterpolator extends java.lang.Object implements android.view.animation.Interpolator {
				public static class: java.lang.Class<android.view.animation.AnticipateInterpolator>;
				public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
				public getInterpolation(param0: number): number;
				public constructor(param0: number);
				public constructor();
			}
		}
	}
}

declare module android {
	export module view {
		export module animation {
			export class AnticipateOvershootInterpolator extends java.lang.Object implements android.view.animation.Interpolator {
				public static class: java.lang.Class<android.view.animation.AnticipateOvershootInterpolator>;
				public constructor(param0: number, param1: number);
				public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
				public getInterpolation(param0: number): number;
				public constructor(param0: number);
				public constructor();
			}
		}
	}
}

declare module android {
	export module view {
		export module animation {
			export class BounceInterpolator extends java.lang.Object implements android.view.animation.Interpolator {
				public static class: java.lang.Class<android.view.animation.BounceInterpolator>;
				public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
				public getInterpolation(param0: number): number;
				public constructor();
			}
		}
	}
}

declare module android {
	export module view {
		export module animation {
			export class CycleInterpolator extends java.lang.Object implements android.view.animation.Interpolator {
				public static class: java.lang.Class<android.view.animation.CycleInterpolator>;
				public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
				public getInterpolation(param0: number): number;
				public constructor(param0: number);
			}
		}
	}
}

declare module android {
	export module view {
		export module animation {
			export class DecelerateInterpolator extends java.lang.Object implements android.view.animation.Interpolator {
				public static class: java.lang.Class<android.view.animation.DecelerateInterpolator>;
				public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
				public getInterpolation(param0: number): number;
				public constructor(param0: number);
				public constructor();
			}
		}
	}
}

declare module android {
	export module view {
		export module animation {
			export class GridLayoutAnimationController extends android.view.animation.LayoutAnimationController {
				public static class: java.lang.Class<android.view.animation.GridLayoutAnimationController>;
				public static DIRECTION_LEFT_TO_RIGHT: number;
				public static DIRECTION_RIGHT_TO_LEFT: number;
				public static DIRECTION_TOP_TO_BOTTOM: number;
				public static DIRECTION_BOTTOM_TO_TOP: number;
				public static DIRECTION_HORIZONTAL_MASK: number;
				public static DIRECTION_VERTICAL_MASK: number;
				public static PRIORITY_NONE: number;
				public static PRIORITY_COLUMN: number;
				public static PRIORITY_ROW: number;
				public setDirectionPriority(param0: number): void;
				public constructor(param0: android.view.animation.Animation, param1: number, param2: number);
				public getRowDelay(): number;
				public setRowDelay(param0: number): void;
				public getDirectionPriority(): number;
				public willOverlap(): boolean;
				public getColumnDelay(): number;
				public getDelayForView(param0: android.view.View): number;
				public setColumnDelay(param0: number): void;
				public setDirection(param0: number): void;
				public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
				public getDirection(): number;
				public constructor(param0: android.view.animation.Animation, param1: number);
				public constructor(param0: android.view.animation.Animation);
			}
			export module GridLayoutAnimationController {
				export class AnimationParameters extends android.view.animation.LayoutAnimationController.AnimationParameters {
					public static class: java.lang.Class<android.view.animation.GridLayoutAnimationController.AnimationParameters>;
					public column: number;
					public row: number;
					public columnsCount: number;
					public rowsCount: number;
					public constructor();
				}
			}
		}
	}
}

declare module android {
	export module view {
		export module animation {
			export class Interpolator extends java.lang.Object implements android.animation.TimeInterpolator {
				public static class: java.lang.Class<android.view.animation.Interpolator>;
				/**
				 * Constructs a new instance of the android.view.animation.Interpolator interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getInterpolation(param0: number): number;
				});
				public constructor();
				public getInterpolation(param0: number): number;
			}
		}
	}
}

declare module android {
	export module view {
		export module animation {
			export class LayoutAnimationController extends java.lang.Object {
				public static class: java.lang.Class<android.view.animation.LayoutAnimationController>;
				public static ORDER_NORMAL: number;
				public static ORDER_REVERSE: number;
				public static ORDER_RANDOM: number;
				public mAnimation: android.view.animation.Animation;
				public mRandomizer: java.util.Random;
				public mInterpolator: android.view.animation.Interpolator;
				public setInterpolator(param0: android.content.Context, param1: number): void;
				public getAnimationForView(param0: android.view.View): android.view.animation.Animation;
				public setAnimation(param0: android.content.Context, param1: number): void;
				public getAnimation(): android.view.animation.Animation;
				public setOrder(param0: number): void;
				public getInterpolator(): android.view.animation.Interpolator;
				public willOverlap(): boolean;
				public getDelayForView(param0: android.view.View): number;
				public setInterpolator(param0: android.view.animation.Interpolator): void;
				public getDelay(): number;
				public setAnimation(param0: android.view.animation.Animation): void;
				public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
				public isDone(): boolean;
				public constructor(param0: android.view.animation.Animation, param1: number);
				public start(): void;
				public getTransformedIndex(param0: android.view.animation.LayoutAnimationController.AnimationParameters): number;
				public setDelay(param0: number): void;
				public getOrder(): number;
				public constructor(param0: android.view.animation.Animation);
			}
			export module LayoutAnimationController {
				export class AnimationParameters extends java.lang.Object {
					public static class: java.lang.Class<android.view.animation.LayoutAnimationController.AnimationParameters>;
					public count: number;
					public index: number;
					public constructor();
				}
			}
		}
	}
}

declare module android {
	export module view {
		export module animation {
			export class LinearInterpolator extends java.lang.Object implements android.view.animation.Interpolator {
				public static class: java.lang.Class<android.view.animation.LinearInterpolator>;
				public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
				public getInterpolation(param0: number): number;
				public constructor();
			}
		}
	}
}

declare module android {
	export module view {
		export module animation {
			export class OvershootInterpolator extends java.lang.Object implements android.view.animation.Interpolator {
				public static class: java.lang.Class<android.view.animation.OvershootInterpolator>;
				public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
				public getInterpolation(param0: number): number;
				public constructor(param0: number);
				public constructor();
			}
		}
	}
}

declare module android {
	export module view {
		export module animation {
			export class RotateAnimation extends android.view.animation.Animation {
				public static class: java.lang.Class<android.view.animation.RotateAnimation>;
				public constructor(param0: number, param1: number);
				public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
				public constructor(param0: number, param1: number, param2: number, param3: number);
				public initialize(param0: number, param1: number, param2: number, param3: number): void;
				public applyTransformation(param0: number, param1: android.view.animation.Transformation): void;
				public constructor(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number);
				public constructor();
			}
		}
	}
}

declare module android {
	export module view {
		export module animation {
			export class ScaleAnimation extends android.view.animation.Animation {
				public static class: java.lang.Class<android.view.animation.ScaleAnimation>;
				public constructor(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number);
				public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
				public constructor(param0: number, param1: number, param2: number, param3: number);
				public initialize(param0: number, param1: number, param2: number, param3: number): void;
				public applyTransformation(param0: number, param1: android.view.animation.Transformation): void;
				public constructor(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number);
				public constructor();
			}
		}
	}
}

declare module android {
	export module view {
		export module animation {
			export class Transformation extends java.lang.Object {
				public static class: java.lang.Class<android.view.animation.Transformation>;
				public static TYPE_IDENTITY: number;
				public static TYPE_ALPHA: number;
				public static TYPE_MATRIX: number;
				public static TYPE_BOTH: number;
				public mMatrix: android.graphics.Matrix;
				public mAlpha: number;
				public mTransformationType: number;
				public setTransformationType(param0: number): void;
				public getMatrix(): android.graphics.Matrix;
				public clear(): void;
				public setAlpha(param0: number): void;
				public getAlpha(): number;
				public compose(param0: android.view.animation.Transformation): void;
				public toString(): string;
				public getTransformationType(): number;
				public set(param0: android.view.animation.Transformation): void;
				public toShortString(): string;
				public constructor();
			}
		}
	}
}

declare module android {
	export module view {
		export module animation {
			export class TranslateAnimation extends android.view.animation.Animation {
				public static class: java.lang.Class<android.view.animation.TranslateAnimation>;
				public constructor(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number);
				public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
				public constructor(param0: number, param1: number, param2: number, param3: number);
				public initialize(param0: number, param1: number, param2: number, param3: number): void;
				public applyTransformation(param0: number, param1: android.view.animation.Transformation): void;
				public constructor();
			}
		}
	}
}

declare module android {
	export module view {
		export module inputmethod {
			export class BaseInputConnection extends java.lang.Object implements android.view.inputmethod.InputConnection {
				public static class: java.lang.Class<android.view.inputmethod.BaseInputConnection>;
				public performPrivateCommand(param0: string, param1: android.os.Bundle): boolean;
				public clearMetaKeyStates(param0: number): boolean;
				public commitCompletion(param0: android.view.inputmethod.CompletionInfo): boolean;
				public deleteSurroundingText(param0: number, param1: number): boolean;
				public getTextAfterCursor(param0: number, param1: number): string;
				public commitText(param0: string, param1: number): boolean;
				public getSelectedText(param0: number): string;
				public performEditorAction(param0: number): boolean;
				public static getComposingSpanStart(param0: android.text.Spannable): number;
				public commitCorrection(param0: android.view.inputmethod.CorrectionInfo): boolean;
				public getExtractedText(param0: android.view.inputmethod.ExtractedTextRequest, param1: number): android.view.inputmethod.ExtractedText;
				public getCursorCapsMode(param0: number): number;
				public getEditable(): android.text.Editable;
				public beginBatchEdit(): boolean;
				public setSelection(param0: number, param1: number): boolean;
				public sendKeyEvent(param0: android.view.KeyEvent): boolean;
				public static removeComposingSpans(param0: android.text.Spannable): void;
				public static setComposingSpans(param0: android.text.Spannable): void;
				public getTextBeforeCursor(param0: number, param1: number): string;
				public finishComposingText(): boolean;
				public performContextMenuAction(param0: number): boolean;
				public endBatchEdit(): boolean;
				public constructor(param0: android.view.View, param1: boolean);
				public setComposingRegion(param0: number, param1: number): boolean;
				public static getComposingSpanEnd(param0: android.text.Spannable): number;
				public setComposingText(param0: string, param1: number): boolean;
				public reportFullscreenMode(param0: boolean): boolean;
			}
		}
	}
}

declare module android {
	export module view {
		export module inputmethod {
			export class CompletionInfo extends java.lang.Object implements android.os.Parcelable {
				public static class: java.lang.Class<android.view.inputmethod.CompletionInfo>;
				public static CREATOR: android.os.Parcelable.Creator<android.view.inputmethod.CompletionInfo>;
				public constructor(param0: number, param1: number, param2: string, param3: string);
				public getLabel(): string;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public constructor(param0: number, param1: number, param2: string);
				public getId(): number;
				public describeContents(): number;
				public getPosition(): number;
				public toString(): string;
				public getText(): string;
			}
		}
	}
}

declare module android {
	export module view {
		export module inputmethod {
			export class CorrectionInfo extends java.lang.Object implements android.os.Parcelable {
				public static class: java.lang.Class<android.view.inputmethod.CorrectionInfo>;
				public static CREATOR: android.os.Parcelable.Creator<android.view.inputmethod.CorrectionInfo>;
				public getOffset(): number;
				public getNewText(): string;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public describeContents(): number;
				public getOldText(): string;
				public toString(): string;
				public constructor(param0: number, param1: string, param2: string);
			}
		}
	}
}

declare module android {
	export module view {
		export module inputmethod {
			export class EditorInfo extends java.lang.Object implements android.text.InputType, android.os.Parcelable {
				public static class: java.lang.Class<android.view.inputmethod.EditorInfo>;
				public inputType: number;
				public static IME_MASK_ACTION: number;
				public static IME_ACTION_UNSPECIFIED: number;
				public static IME_ACTION_NONE: number;
				public static IME_ACTION_GO: number;
				public static IME_ACTION_SEARCH: number;
				public static IME_ACTION_SEND: number;
				public static IME_ACTION_NEXT: number;
				public static IME_ACTION_DONE: number;
				public static IME_ACTION_PREVIOUS: number;
				public static IME_FLAG_NO_FULLSCREEN: number;
				public static IME_FLAG_NAVIGATE_PREVIOUS: number;
				public static IME_FLAG_NAVIGATE_NEXT: number;
				public static IME_FLAG_NO_EXTRACT_UI: number;
				public static IME_FLAG_NO_ACCESSORY_ACTION: number;
				public static IME_FLAG_NO_ENTER_ACTION: number;
				public static IME_FLAG_FORCE_ASCII: number;
				public static IME_NULL: number;
				public imeOptions: number;
				public privateImeOptions: string;
				public actionLabel: string;
				public actionId: number;
				public initialSelStart: number;
				public initialSelEnd: number;
				public initialCapsMode: number;
				public hintText: string;
				public label: string;
				public packageName: string;
				public fieldId: number;
				public fieldName: string;
				public extras: android.os.Bundle;
				public static CREATOR: android.os.Parcelable.Creator<android.view.inputmethod.EditorInfo>;
				public makeCompatible(param0: number): void;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public dump(param0: android.util.Printer, param1: string): void;
				public describeContents(): number;
				public constructor();
			}
		}
	}
}

declare module android {
	export module view {
		export module inputmethod {
			export class ExtractedText extends java.lang.Object implements android.os.Parcelable {
				public static class: java.lang.Class<android.view.inputmethod.ExtractedText>;
				public text: string;
				public startOffset: number;
				public partialStartOffset: number;
				public partialEndOffset: number;
				public selectionStart: number;
				public selectionEnd: number;
				public static FLAG_SINGLE_LINE: number;
				public static FLAG_SELECTING: number;
				public flags: number;
				public static CREATOR: android.os.Parcelable.Creator<android.view.inputmethod.ExtractedText>;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public describeContents(): number;
				public constructor();
			}
		}
	}
}

declare module android {
	export module view {
		export module inputmethod {
			export class ExtractedTextRequest extends java.lang.Object implements android.os.Parcelable {
				public static class: java.lang.Class<android.view.inputmethod.ExtractedTextRequest>;
				public token: number;
				public flags: number;
				public hintMaxLines: number;
				public hintMaxChars: number;
				public static CREATOR: android.os.Parcelable.Creator<android.view.inputmethod.ExtractedTextRequest>;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public describeContents(): number;
				public constructor();
			}
		}
	}
}

declare module android {
	export module view {
		export module inputmethod {
			export class InputBinding extends java.lang.Object implements android.os.Parcelable {
				public static class: java.lang.Class<android.view.inputmethod.InputBinding>;
				public static CREATOR: android.os.Parcelable.Creator<android.view.inputmethod.InputBinding>;
				public getConnectionToken(): android.os.IBinder;
				public getUid(): number;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public constructor(param0: android.view.inputmethod.InputConnection, param1: android.os.IBinder, param2: number, param3: number);
				public getPid(): number;
				public describeContents(): number;
				public toString(): string;
				public constructor(param0: android.view.inputmethod.InputConnection, param1: android.view.inputmethod.InputBinding);
				public getConnection(): android.view.inputmethod.InputConnection;
			}
		}
	}
}

declare module android {
	export module view {
		export module inputmethod {
			export class InputConnection extends java.lang.Object {
				public static class: java.lang.Class<android.view.inputmethod.InputConnection>;
				/**
				 * Constructs a new instance of the android.view.inputmethod.InputConnection interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getTextBeforeCursor(param0: number, param1: number): string;
					getTextAfterCursor(param0: number, param1: number): string;
					getSelectedText(param0: number): string;
					getCursorCapsMode(param0: number): number;
					getExtractedText(param0: android.view.inputmethod.ExtractedTextRequest, param1: number): android.view.inputmethod.ExtractedText;
					deleteSurroundingText(param0: number, param1: number): boolean;
					setComposingText(param0: string, param1: number): boolean;
					setComposingRegion(param0: number, param1: number): boolean;
					finishComposingText(): boolean;
					commitText(param0: string, param1: number): boolean;
					commitCompletion(param0: android.view.inputmethod.CompletionInfo): boolean;
					commitCorrection(param0: android.view.inputmethod.CorrectionInfo): boolean;
					setSelection(param0: number, param1: number): boolean;
					performEditorAction(param0: number): boolean;
					performContextMenuAction(param0: number): boolean;
					beginBatchEdit(): boolean;
					endBatchEdit(): boolean;
					sendKeyEvent(param0: android.view.KeyEvent): boolean;
					clearMetaKeyStates(param0: number): boolean;
					reportFullscreenMode(param0: boolean): boolean;
					performPrivateCommand(param0: string, param1: android.os.Bundle): boolean;
				});
				public constructor();
				public static GET_EXTRACTED_TEXT_MONITOR: number;
				public static GET_TEXT_WITH_STYLES: number;
				public performPrivateCommand(param0: string, param1: android.os.Bundle): boolean;
				public getTextBeforeCursor(param0: number, param1: number): string;
				public clearMetaKeyStates(param0: number): boolean;
				public finishComposingText(): boolean;
				public deleteSurroundingText(param0: number, param1: number): boolean;
				public commitCompletion(param0: android.view.inputmethod.CompletionInfo): boolean;
				public getTextAfterCursor(param0: number, param1: number): string;
				public getSelectedText(param0: number): string;
				public commitText(param0: string, param1: number): boolean;
				public performContextMenuAction(param0: number): boolean;
				public performEditorAction(param0: number): boolean;
				public endBatchEdit(): boolean;
				public setComposingRegion(param0: number, param1: number): boolean;
				public commitCorrection(param0: android.view.inputmethod.CorrectionInfo): boolean;
				public getExtractedText(param0: android.view.inputmethod.ExtractedTextRequest, param1: number): android.view.inputmethod.ExtractedText;
				public getCursorCapsMode(param0: number): number;
				public setComposingText(param0: string, param1: number): boolean;
				public beginBatchEdit(): boolean;
				public setSelection(param0: number, param1: number): boolean;
				public sendKeyEvent(param0: android.view.KeyEvent): boolean;
				public reportFullscreenMode(param0: boolean): boolean;
			}
		}
	}
}

declare module android {
	export module view {
		export module inputmethod {
			export class InputConnectionWrapper extends java.lang.Object implements android.view.inputmethod.InputConnection {
				public static class: java.lang.Class<android.view.inputmethod.InputConnectionWrapper>;
				public setTarget(param0: android.view.inputmethod.InputConnection): void;
				public performPrivateCommand(param0: string, param1: android.os.Bundle): boolean;
				public getTextBeforeCursor(param0: number, param1: number): string;
				public clearMetaKeyStates(param0: number): boolean;
				public constructor(param0: android.view.inputmethod.InputConnection, param1: boolean);
				public finishComposingText(): boolean;
				public deleteSurroundingText(param0: number, param1: number): boolean;
				public commitCompletion(param0: android.view.inputmethod.CompletionInfo): boolean;
				public getTextAfterCursor(param0: number, param1: number): string;
				public getSelectedText(param0: number): string;
				public commitText(param0: string, param1: number): boolean;
				public performContextMenuAction(param0: number): boolean;
				public performEditorAction(param0: number): boolean;
				public endBatchEdit(): boolean;
				public setComposingRegion(param0: number, param1: number): boolean;
				public commitCorrection(param0: android.view.inputmethod.CorrectionInfo): boolean;
				public getExtractedText(param0: android.view.inputmethod.ExtractedTextRequest, param1: number): android.view.inputmethod.ExtractedText;
				public getCursorCapsMode(param0: number): number;
				public setComposingText(param0: string, param1: number): boolean;
				public beginBatchEdit(): boolean;
				public setSelection(param0: number, param1: number): boolean;
				public sendKeyEvent(param0: android.view.KeyEvent): boolean;
				public reportFullscreenMode(param0: boolean): boolean;
			}
		}
	}
}

declare module android {
	export module view {
		export module inputmethod {
			export class InputMethod extends java.lang.Object {
				public static class: java.lang.Class<android.view.inputmethod.InputMethod>;
				/**
				 * Constructs a new instance of the android.view.inputmethod.InputMethod interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					attachToken(param0: android.os.IBinder): void;
					bindInput(param0: android.view.inputmethod.InputBinding): void;
					unbindInput(): void;
					startInput(param0: android.view.inputmethod.InputConnection, param1: android.view.inputmethod.EditorInfo): void;
					restartInput(param0: android.view.inputmethod.InputConnection, param1: android.view.inputmethod.EditorInfo): void;
					createSession(param0: android.view.inputmethod.InputMethod.SessionCallback): void;
					setSessionEnabled(param0: android.view.inputmethod.InputMethodSession, param1: boolean): void;
					revokeSession(param0: android.view.inputmethod.InputMethodSession): void;
					showSoftInput(param0: number, param1: android.os.ResultReceiver): void;
					hideSoftInput(param0: number, param1: android.os.ResultReceiver): void;
					changeInputMethodSubtype(param0: android.view.inputmethod.InputMethodSubtype): void;
				});
				public constructor();
				public static SERVICE_INTERFACE: string;
				public static SHOW_EXPLICIT: number;
				public static SHOW_FORCED: number;
				public static SERVICE_META_DATA: string;
				public startInput(param0: android.view.inputmethod.InputConnection, param1: android.view.inputmethod.EditorInfo): void;
				public bindInput(param0: android.view.inputmethod.InputBinding): void;
				public restartInput(param0: android.view.inputmethod.InputConnection, param1: android.view.inputmethod.EditorInfo): void;
				public setSessionEnabled(param0: android.view.inputmethod.InputMethodSession, param1: boolean): void;
				public unbindInput(): void;
				public showSoftInput(param0: number, param1: android.os.ResultReceiver): void;
				public hideSoftInput(param0: number, param1: android.os.ResultReceiver): void;
				public revokeSession(param0: android.view.inputmethod.InputMethodSession): void;
				public attachToken(param0: android.os.IBinder): void;
				public createSession(param0: android.view.inputmethod.InputMethod.SessionCallback): void;
				public changeInputMethodSubtype(param0: android.view.inputmethod.InputMethodSubtype): void;
			}
			export module InputMethod {
				export class SessionCallback extends java.lang.Object {
					public static class: java.lang.Class<android.view.inputmethod.InputMethod.SessionCallback>;
					/**
					 * Constructs a new instance of the android.view.inputmethod.InputMethod$SessionCallback interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						sessionCreated(param0: android.view.inputmethod.InputMethodSession): void;
					});
					public constructor();
					public sessionCreated(param0: android.view.inputmethod.InputMethodSession): void;
				}
			}
		}
	}
}

declare module android {
	export module view {
		export module inputmethod {
			export class InputMethodInfo extends java.lang.Object implements android.os.Parcelable {
				public static class: java.lang.Class<android.view.inputmethod.InputMethodInfo>;
				public static CREATOR: android.os.Parcelable.Creator<android.view.inputmethod.InputMethodInfo>;
				public getServiceName(): string;
				public constructor(param0: android.content.Context, param1: android.content.pm.ResolveInfo);
				public getId(): string;
				public getIsDefaultResourceId(): number;
				public loadLabel(param0: android.content.pm.PackageManager): string;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public getPackageName(): string;
				public loadIcon(param0: android.content.pm.PackageManager): android.graphics.drawable.Drawable;
				public getSettingsActivity(): string;
				public dump(param0: android.util.Printer, param1: string): void;
				public getComponent(): android.content.ComponentName;
				public getServiceInfo(): android.content.pm.ServiceInfo;
				public toString(): string;
				public getSubtypeCount(): number;
				public getSubtypeAt(param0: number): android.view.inputmethod.InputMethodSubtype;
				public constructor(param0: string, param1: string, param2: string, param3: string);
				public hashCode(): number;
				public equals(param0: any): boolean;
				public describeContents(): number;
			}
		}
	}
}

declare module android {
	export module view {
		export module inputmethod {
			export class InputMethodManager extends java.lang.Object {
				public static class: java.lang.Class<android.view.inputmethod.InputMethodManager>;
				public static SHOW_IMPLICIT: number;
				public static SHOW_FORCED: number;
				public static RESULT_UNCHANGED_SHOWN: number;
				public static RESULT_UNCHANGED_HIDDEN: number;
				public static RESULT_SHOWN: number;
				public static RESULT_HIDDEN: number;
				public static HIDE_IMPLICIT_ONLY: number;
				public static HIDE_NOT_ALWAYS: number;
				public showSoftInput(param0: android.view.View, param1: number): boolean;
				public isFullscreenMode(): boolean;
				public isWatchingCursor(param0: android.view.View): boolean;
				public getCurrentInputMethodSubtype(): android.view.inputmethod.InputMethodSubtype;
				public getInputMethodList(): java.util.List<android.view.inputmethod.InputMethodInfo>;
				public isAcceptingText(): boolean;
				public viewClicked(param0: android.view.View): void;
				public updateCursor(param0: android.view.View, param1: number, param2: number, param3: number, param4: number): void;
				public setAdditionalInputMethodSubtypes(param0: string, param1: native.Array<android.view.inputmethod.InputMethodSubtype>): void;
				public toggleSoftInputFromWindow(param0: android.os.IBinder, param1: number, param2: number): void;
				public sendAppPrivateCommand(param0: android.view.View, param1: string, param2: android.os.Bundle): void;
				public restartInput(param0: android.view.View): void;
				public showInputMethodPicker(): void;
				public setInputMethod(param0: android.os.IBinder, param1: string): void;
				public getEnabledInputMethodSubtypeList(param0: android.view.inputmethod.InputMethodInfo, param1: boolean): java.util.List<android.view.inputmethod.InputMethodSubtype>;
				public setInputMethodAndSubtype(param0: android.os.IBinder, param1: string, param2: android.view.inputmethod.InputMethodSubtype): void;
				public isActive(param0: android.view.View): boolean;
				public getShortcutInputMethodsAndSubtypes(): java.util.Map<android.view.inputmethod.InputMethodInfo,java.util.List<android.view.inputmethod.InputMethodSubtype>>;
				public hideStatusIcon(param0: android.os.IBinder): void;
				public getEnabledInputMethodList(): java.util.List<android.view.inputmethod.InputMethodInfo>;
				public showSoftInputFromInputMethod(param0: android.os.IBinder, param1: number): void;
				public showInputMethodAndSubtypeEnabler(param0: string): void;
				public getLastInputMethodSubtype(): android.view.inputmethod.InputMethodSubtype;
				public showSoftInput(param0: android.view.View, param1: number, param2: android.os.ResultReceiver): boolean;
				public updateExtractedText(param0: android.view.View, param1: number, param2: android.view.inputmethod.ExtractedText): void;
				public hideSoftInputFromWindow(param0: android.os.IBinder, param1: number, param2: android.os.ResultReceiver): boolean;
				public hideSoftInputFromWindow(param0: android.os.IBinder, param1: number): boolean;
				public switchToNextInputMethod(param0: android.os.IBinder, param1: boolean): boolean;
				public showStatusIcon(param0: android.os.IBinder, param1: string, param2: number): void;
				public isActive(): boolean;
				public hideSoftInputFromInputMethod(param0: android.os.IBinder, param1: number): void;
				public toggleSoftInput(param0: number, param1: number): void;
				public displayCompletions(param0: android.view.View, param1: native.Array<android.view.inputmethod.CompletionInfo>): void;
				public setCurrentInputMethodSubtype(param0: android.view.inputmethod.InputMethodSubtype): boolean;
				public updateSelection(param0: android.view.View, param1: number, param2: number, param3: number, param4: number): void;
				public switchToLastInputMethod(param0: android.os.IBinder): boolean;
			}
		}
	}
}

declare module android {
	export module view {
		export module inputmethod {
			export class InputMethodSession extends java.lang.Object {
				public static class: java.lang.Class<android.view.inputmethod.InputMethodSession>;
				/**
				 * Constructs a new instance of the android.view.inputmethod.InputMethodSession interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					finishInput(): void;
					updateSelection(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): void;
					viewClicked(param0: boolean): void;
					updateCursor(param0: android.graphics.Rect): void;
					displayCompletions(param0: native.Array<android.view.inputmethod.CompletionInfo>): void;
					updateExtractedText(param0: number, param1: android.view.inputmethod.ExtractedText): void;
					dispatchKeyEvent(param0: number, param1: android.view.KeyEvent, param2: android.view.inputmethod.InputMethodSession.EventCallback): void;
					dispatchTrackballEvent(param0: number, param1: android.view.MotionEvent, param2: android.view.inputmethod.InputMethodSession.EventCallback): void;
					dispatchGenericMotionEvent(param0: number, param1: android.view.MotionEvent, param2: android.view.inputmethod.InputMethodSession.EventCallback): void;
					appPrivateCommand(param0: string, param1: android.os.Bundle): void;
					toggleSoftInput(param0: number, param1: number): void;
				});
				public constructor();
				public viewClicked(param0: boolean): void;
				public finishInput(): void;
				public updateCursor(param0: android.graphics.Rect): void;
				public dispatchTrackballEvent(param0: number, param1: android.view.MotionEvent, param2: android.view.inputmethod.InputMethodSession.EventCallback): void;
				public appPrivateCommand(param0: string, param1: android.os.Bundle): void;
				public toggleSoftInput(param0: number, param1: number): void;
				public updateSelection(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): void;
				public dispatchGenericMotionEvent(param0: number, param1: android.view.MotionEvent, param2: android.view.inputmethod.InputMethodSession.EventCallback): void;
				public displayCompletions(param0: native.Array<android.view.inputmethod.CompletionInfo>): void;
				public dispatchKeyEvent(param0: number, param1: android.view.KeyEvent, param2: android.view.inputmethod.InputMethodSession.EventCallback): void;
				public updateExtractedText(param0: number, param1: android.view.inputmethod.ExtractedText): void;
			}
			export module InputMethodSession {
				export class EventCallback extends java.lang.Object {
					public static class: java.lang.Class<android.view.inputmethod.InputMethodSession.EventCallback>;
					/**
					 * Constructs a new instance of the android.view.inputmethod.InputMethodSession$EventCallback interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						finishedEvent(param0: number, param1: boolean): void;
					});
					public constructor();
					public finishedEvent(param0: number, param1: boolean): void;
				}
			}
		}
	}
}

declare module android {
	export module view {
		export module inputmethod {
			export class InputMethodSubtype extends java.lang.Object implements android.os.Parcelable {
				public static class: java.lang.Class<android.view.inputmethod.InputMethodSubtype>;
				public static CREATOR: android.os.Parcelable.Creator<android.view.inputmethod.InputMethodSubtype>;
				public getNameResId(): number;
				public constructor(param0: number, param1: number, param2: string, param3: string, param4: string, param5: boolean, param6: boolean, param7: number);
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public getDisplayName(param0: android.content.Context, param1: string, param2: android.content.pm.ApplicationInfo): string;
				public containsExtraValueKey(param0: string): boolean;
				public getIconResId(): number;
				public getLocale(): string;
				public getExtraValue(): string;
				public overridesImplicitlyEnabledSubtype(): boolean;
				public getExtraValueOf(param0: string): string;
				public hashCode(): number;
				public constructor(param0: number, param1: number, param2: string, param3: string, param4: string, param5: boolean, param6: boolean);
				public equals(param0: any): boolean;
				public describeContents(): number;
				public getMode(): string;
				public isAuxiliary(): boolean;
			}
		}
	}
}

declare module android {
	export module view {
		export module textservice {
			export class SentenceSuggestionsInfo extends java.lang.Object implements android.os.Parcelable {
				public static class: java.lang.Class<android.view.textservice.SentenceSuggestionsInfo>;
				public static CREATOR: android.os.Parcelable.Creator<android.view.textservice.SentenceSuggestionsInfo>;
				public getLengthAt(param0: number): number;
				public constructor(param0: native.Array<android.view.textservice.SuggestionsInfo>, param1: native.Array<number>, param2: native.Array<number>);
				public constructor(param0: android.os.Parcel);
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public getOffsetAt(param0: number): number;
				public describeContents(): number;
				public getSuggestionsInfoAt(param0: number): android.view.textservice.SuggestionsInfo;
				public getSuggestionsCount(): number;
			}
		}
	}
}

declare module android {
	export module view {
		export module textservice {
			export class SpellCheckerInfo extends java.lang.Object implements android.os.Parcelable {
				public static class: java.lang.Class<android.view.textservice.SpellCheckerInfo>;
				public static CREATOR: android.os.Parcelable.Creator<android.view.textservice.SpellCheckerInfo>;
				public getSubtypeCount(): number;
				public getId(): string;
				public loadLabel(param0: android.content.pm.PackageManager): string;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public getPackageName(): string;
				public loadIcon(param0: android.content.pm.PackageManager): android.graphics.drawable.Drawable;
				public getSettingsActivity(): string;
				public describeContents(): number;
				public getComponent(): android.content.ComponentName;
				public getServiceInfo(): android.content.pm.ServiceInfo;
				public getSubtypeAt(param0: number): android.view.textservice.SpellCheckerSubtype;
			}
		}
	}
}

declare module android {
	export module view {
		export module textservice {
			export class SpellCheckerSession extends java.lang.Object {
				public static class: java.lang.Class<android.view.textservice.SpellCheckerSession>;
				public static SERVICE_META_DATA: string;
				public close(): void;
				/** @deprecated */
				public getSuggestions(param0: native.Array<android.view.textservice.TextInfo>, param1: number, param2: boolean): void;
				/** @deprecated */
				public getSuggestions(param0: android.view.textservice.TextInfo, param1: number): void;
				public finalize(): void;
				public cancel(): void;
				public getSentenceSuggestions(param0: native.Array<android.view.textservice.TextInfo>, param1: number): void;
				public isSessionDisconnected(): boolean;
				public getSpellChecker(): android.view.textservice.SpellCheckerInfo;
			}
			export module SpellCheckerSession {
				export class SpellCheckerSessionListener extends java.lang.Object {
					public static class: java.lang.Class<android.view.textservice.SpellCheckerSession.SpellCheckerSessionListener>;
					/**
					 * Constructs a new instance of the android.view.textservice.SpellCheckerSession$SpellCheckerSessionListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						onGetSuggestions(param0: native.Array<android.view.textservice.SuggestionsInfo>): void;
						onGetSentenceSuggestions(param0: native.Array<android.view.textservice.SentenceSuggestionsInfo>): void;
					});
					public constructor();
					public onGetSentenceSuggestions(param0: native.Array<android.view.textservice.SentenceSuggestionsInfo>): void;
					public onGetSuggestions(param0: native.Array<android.view.textservice.SuggestionsInfo>): void;
				}
			}
		}
	}
}

declare module android {
	export module view {
		export module textservice {
			export class SpellCheckerSubtype extends java.lang.Object implements android.os.Parcelable {
				public static class: java.lang.Class<android.view.textservice.SpellCheckerSubtype>;
				public static CREATOR: android.os.Parcelable.Creator<android.view.textservice.SpellCheckerSubtype>;
				public getNameResId(): number;
				public getExtraValue(): string;
				public getExtraValueOf(param0: string): string;
				public hashCode(): number;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public containsExtraValueKey(param0: string): boolean;
				public equals(param0: any): boolean;
				public getDisplayName(param0: android.content.Context, param1: string, param2: android.content.pm.ApplicationInfo): string;
				public describeContents(): number;
				public getLocale(): string;
				public constructor(param0: number, param1: string, param2: string);
			}
		}
	}
}

declare module android {
	export module view {
		export module textservice {
			export class SuggestionsInfo extends java.lang.Object implements android.os.Parcelable {
				public static class: java.lang.Class<android.view.textservice.SuggestionsInfo>;
				public static RESULT_ATTR_IN_THE_DICTIONARY: number;
				public static RESULT_ATTR_LOOKS_LIKE_TYPO: number;
				public static RESULT_ATTR_HAS_RECOMMENDED_SUGGESTIONS: number;
				public static CREATOR: android.os.Parcelable.Creator<android.view.textservice.SuggestionsInfo>;
				public constructor(param0: android.os.Parcel);
				public getSequence(): number;
				public constructor(param0: number, param1: native.Array<string>);
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public getCookie(): number;
				public setCookieAndSequence(param0: number, param1: number): void;
				public describeContents(): number;
				public getSuggestionAt(param0: number): string;
				public constructor(param0: number, param1: native.Array<string>, param2: number, param3: number);
				public getSuggestionsAttributes(): number;
				public getSuggestionsCount(): number;
			}
		}
	}
}

declare module android {
	export module view {
		export module textservice {
			export class TextInfo extends java.lang.Object implements android.os.Parcelable {
				public static class: java.lang.Class<android.view.textservice.TextInfo>;
				public static CREATOR: android.os.Parcelable.Creator<android.view.textservice.TextInfo>;
				public constructor(param0: android.os.Parcel);
				public getSequence(): number;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public getCookie(): number;
				public describeContents(): number;
				public constructor(param0: string, param1: number, param2: number);
				public constructor(param0: string);
				public getText(): string;
			}
		}
	}
}

declare module android {
	export module view {
		export module textservice {
			export class TextServicesManager extends java.lang.Object {
				public static class: java.lang.Class<android.view.textservice.TextServicesManager>;
				public newSpellCheckerSession(param0: android.os.Bundle, param1: java.util.Locale, param2: android.view.textservice.SpellCheckerSession.SpellCheckerSessionListener, param3: boolean): android.view.textservice.SpellCheckerSession;
			}
		}
	}
}

declare module android {
	export module webkit {
		export class ConsoleMessage extends java.lang.Object {
			public static class: java.lang.Class<android.webkit.ConsoleMessage>;
			public constructor(param0: string, param1: string, param2: number, param3: android.webkit.ConsoleMessage.MessageLevel);
			public messageLevel(): android.webkit.ConsoleMessage.MessageLevel;
			public message(): string;
			public sourceId(): string;
			public lineNumber(): number;
		}
		export module ConsoleMessage {
			export class MessageLevel {
				public static class: java.lang.Class<android.webkit.ConsoleMessage.MessageLevel>;
				public static DEBUG: android.webkit.ConsoleMessage.MessageLevel;
				public static ERROR: android.webkit.ConsoleMessage.MessageLevel;
				public static LOG: android.webkit.ConsoleMessage.MessageLevel;
				public static TIP: android.webkit.ConsoleMessage.MessageLevel;
				public static WARNING: android.webkit.ConsoleMessage.MessageLevel;
				public static valueOf(param0: string): android.webkit.ConsoleMessage.MessageLevel;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
				public static values(): native.Array<android.webkit.ConsoleMessage.MessageLevel>;
			}
		}
	}
}

declare module android {
	export module webkit {
		export class CookieManager extends java.lang.Object {
			public static class: java.lang.Class<android.webkit.CookieManager>;
			public static getInstance(): android.webkit.CookieManager;
			public removeAllCookie(): void;
			public clone(): any;
			public hasCookies(): boolean;
			public acceptCookie(): boolean;
			public removeExpiredCookie(): void;
			public static setAcceptFileSchemeCookies(param0: boolean): void;
			public setCookie(param0: string, param1: string): void;
			public removeSessionCookie(): void;
			public getCookie(param0: string): string;
			public setAcceptCookie(param0: boolean): void;
			public static allowFileSchemeCookies(): boolean;
		}
	}
}

declare module android {
	export module webkit {
		export class CookieSyncManager extends android.webkit.WebSyncManager {
			public static class: java.lang.Class<android.webkit.CookieSyncManager>;
			public static createInstance(param0: android.content.Context): android.webkit.CookieSyncManager;
			public syncFromRamToFlash(): void;
			public run(): void;
			public static getInstance(): android.webkit.CookieSyncManager;
		}
	}
}

declare module android {
	export module webkit {
		export class DateSorter extends java.lang.Object {
			public static class: java.lang.Class<android.webkit.DateSorter>;
			public static DAY_COUNT: number;
			public getIndex(param0: number): number;
			public getLabel(param0: number): string;
			public constructor(param0: android.content.Context);
			public getBoundary(param0: number): number;
		}
	}
}

declare module android {
	export module webkit {
		export class DownloadListener extends java.lang.Object {
			public static class: java.lang.Class<android.webkit.DownloadListener>;
			/**
			 * Constructs a new instance of the android.webkit.DownloadListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				onDownloadStart(param0: string, param1: string, param2: string, param3: string, param4: number): void;
			});
			public constructor();
			public onDownloadStart(param0: string, param1: string, param2: string, param3: string, param4: number): void;
		}
	}
}

declare module android {
	export module webkit {
		export class GeolocationPermissions extends java.lang.Object {
			public static class: java.lang.Class<android.webkit.GeolocationPermissions>;
			public getOrigins(param0: android.webkit.ValueCallback<java.util.Set<string>>): void;
			public allow(param0: string): void;
			public clearAll(): void;
			public clear(param0: string): void;
			public static getInstance(): android.webkit.GeolocationPermissions;
			public getAllowed(param0: string, param1: android.webkit.ValueCallback<java.lang.Boolean>): void;
		}
		export module GeolocationPermissions {
			export class Callback extends java.lang.Object {
				public static class: java.lang.Class<android.webkit.GeolocationPermissions.Callback>;
				/**
				 * Constructs a new instance of the android.webkit.GeolocationPermissions$Callback interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					invoke(param0: string, param1: boolean, param2: boolean): void;
				});
				public constructor();
				public invoke(param0: string, param1: boolean, param2: boolean): void;
			}
		}
	}
}

declare module android {
	export module webkit {
		export class HttpAuthHandler extends android.os.Handler {
			public static class: java.lang.Class<android.webkit.HttpAuthHandler>;
			public cancel(): void;
			public proceed(param0: string, param1: string): void;
			public useHttpAuthUsernamePassword(): boolean;
		}
	}
}

declare module android {
	export module webkit {
		export class JavascriptInterface extends java.lang.Object implements java.lang.annotation.Annotation {
			public static class: java.lang.Class<android.webkit.JavascriptInterface>;
			/**
			 * Constructs a new instance of the android.webkit.JavascriptInterface interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				annotationType(): java.lang.Class<any>;
				equals(param0: any): boolean;
				hashCode(): number;
				toString(): string;
			});
			public constructor();
			public equals(param0: any): boolean;
			public toString(): string;
			public annotationType(): java.lang.Class<any>;
			public hashCode(): number;
		}
	}
}

declare module android {
	export module webkit {
		export class JsPromptResult extends android.webkit.JsResult {
			public static class: java.lang.Class<android.webkit.JsPromptResult>;
			public confirm(): void;
			public confirm(param0: string): void;
		}
	}
}

declare module android {
	export module webkit {
		export class JsResult extends java.lang.Object {
			public static class: java.lang.Class<android.webkit.JsResult>;
			public cancel(): void;
			public confirm(): void;
		}
	}
}

declare module android {
	export module webkit {
		export class MimeTypeMap extends java.lang.Object {
			public static class: java.lang.Class<android.webkit.MimeTypeMap>;
			public static getFileExtensionFromUrl(param0: string): string;
			public hasMimeType(param0: string): boolean;
			public static getSingleton(): android.webkit.MimeTypeMap;
			public hasExtension(param0: string): boolean;
			public getMimeTypeFromExtension(param0: string): string;
			public getExtensionFromMimeType(param0: string): string;
		}
	}
}

declare module android {
	export module webkit {
		export class PluginStub extends java.lang.Object {
			public static class: java.lang.Class<android.webkit.PluginStub>;
			/**
			 * Constructs a new instance of the android.webkit.PluginStub interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				getEmbeddedView(param0: number, param1: android.content.Context): android.view.View;
				getFullScreenView(param0: number, param1: android.content.Context): android.view.View;
			});
			public constructor();
			public getEmbeddedView(param0: number, param1: android.content.Context): android.view.View;
			public getFullScreenView(param0: number, param1: android.content.Context): android.view.View;
		}
	}
}

declare module android {
	export module webkit {
		export class SslErrorHandler extends android.os.Handler {
			public static class: java.lang.Class<android.webkit.SslErrorHandler>;
			public proceed(): void;
			public cancel(): void;
		}
	}
}

declare module android {
	export module webkit {
		export class URLUtil extends java.lang.Object {
			public static class: java.lang.Class<android.webkit.URLUtil>;
			public static decode(param0: native.Array<number>): native.Array<number>;
			public static guessFileName(param0: string, param1: string, param2: string): string;
			/** @deprecated */
			public static isCookielessProxyUrl(param0: string): boolean;
			public static isNetworkUrl(param0: string): boolean;
			public static isValidUrl(param0: string): boolean;
			public static guessUrl(param0: string): string;
			public static isDataUrl(param0: string): boolean;
			public constructor();
			public static stripAnchor(param0: string): string;
			public static isJavaScriptUrl(param0: string): boolean;
			public static isContentUrl(param0: string): boolean;
			public static isHttpUrl(param0: string): boolean;
			public static composeSearchUrl(param0: string, param1: string, param2: string): string;
			public static isAboutUrl(param0: string): boolean;
			public static isFileUrl(param0: string): boolean;
			public static isAssetUrl(param0: string): boolean;
			public static isHttpsUrl(param0: string): boolean;
		}
	}
}

declare module android {
	export module webkit {
		export class ValueCallback<T>  extends java.lang.Object {
			public static class: java.lang.Class<android.webkit.ValueCallback<any>>;
			/**
			 * Constructs a new instance of the android.webkit.ValueCallback<any> interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				onReceiveValue(param0: T): void;
			});
			public constructor();
			public onReceiveValue(param0: T): void;
		}
	}
}

declare module android {
	export module webkit {
		export class WebBackForwardList extends java.lang.Object implements java.lang.Cloneable, java.io.Serializable {
			public static class: java.lang.Class<android.webkit.WebBackForwardList>;
			public getCurrentItem(): android.webkit.WebHistoryItem;
			public clone(): any;
			public clone(): android.webkit.WebBackForwardList;
			public getItemAtIndex(param0: number): android.webkit.WebHistoryItem;
			public getSize(): number;
			public getCurrentIndex(): number;
		}
	}
}

declare module android {
	export module webkit {
		export class WebChromeClient extends java.lang.Object {
			public static class: java.lang.Class<android.webkit.WebChromeClient>;
			/** @deprecated */
			public onConsoleMessage(param0: string, param1: number, param2: string): void;
			public onGeolocationPermissionsHidePrompt(): void;
			public onConsoleMessage(param0: android.webkit.ConsoleMessage): boolean;
			public onShowCustomView(param0: android.view.View, param1: android.webkit.WebChromeClient.CustomViewCallback): void;
			public onGeolocationPermissionsShowPrompt(param0: string, param1: android.webkit.GeolocationPermissions.Callback): void;
			public onHideCustomView(): void;
			public onJsPrompt(param0: android.webkit.WebView, param1: string, param2: string, param3: string, param4: android.webkit.JsPromptResult): boolean;
			public getVideoLoadingProgressView(): android.view.View;
			public onProgressChanged(param0: android.webkit.WebView, param1: number): void;
			public onReceivedIcon(param0: android.webkit.WebView, param1: android.graphics.Bitmap): void;
			public onRequestFocus(param0: android.webkit.WebView): void;
			public getVisitedHistory(param0: android.webkit.ValueCallback<native.Array<string>>): void;
			public onCreateWindow(param0: android.webkit.WebView, param1: boolean, param2: boolean, param3: android.os.Message): boolean;
			public onCloseWindow(param0: android.webkit.WebView): void;
			public onJsAlert(param0: android.webkit.WebView, param1: string, param2: string, param3: android.webkit.JsResult): boolean;
			public onJsConfirm(param0: android.webkit.WebView, param1: string, param2: string, param3: android.webkit.JsResult): boolean;
			public onReachedMaxAppCacheSize(param0: number, param1: number, param2: android.webkit.WebStorage.QuotaUpdater): void;
			public onReceivedTouchIconUrl(param0: android.webkit.WebView, param1: string, param2: boolean): void;
			public onJsBeforeUnload(param0: android.webkit.WebView, param1: string, param2: string, param3: android.webkit.JsResult): boolean;
			public constructor();
			/** @deprecated */
			public onJsTimeout(): boolean;
			public getDefaultVideoPoster(): android.graphics.Bitmap;
			public onReceivedTitle(param0: android.webkit.WebView, param1: string): void;
			/** @deprecated */
			public onShowCustomView(param0: android.view.View, param1: number, param2: android.webkit.WebChromeClient.CustomViewCallback): void;
			public onExceededDatabaseQuota(param0: string, param1: string, param2: number, param3: number, param4: number, param5: android.webkit.WebStorage.QuotaUpdater): void;
		}
		export module WebChromeClient {
			export class CustomViewCallback extends java.lang.Object {
				public static class: java.lang.Class<android.webkit.WebChromeClient.CustomViewCallback>;
				/**
				 * Constructs a new instance of the android.webkit.WebChromeClient$CustomViewCallback interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onCustomViewHidden(): void;
				});
				public constructor();
				public onCustomViewHidden(): void;
			}
		}
	}
}

declare module android {
	export module webkit {
		export class WebHistoryItem extends java.lang.Object implements java.lang.Cloneable {
			public static class: java.lang.Class<android.webkit.WebHistoryItem>;
			public getTitle(): string;
			public getUrl(): string;
			public clone(): any;
			public getOriginalUrl(): string;
			public getFavicon(): android.graphics.Bitmap;
			public clone(): android.webkit.WebHistoryItem;
		}
	}
}

declare module android {
	export module webkit {
		export class WebIconDatabase extends java.lang.Object {
			public static class: java.lang.Class<android.webkit.WebIconDatabase>;
			public releaseIconForPageUrl(param0: string): void;
			public removeAllIcons(): void;
			public open(param0: string): void;
			public retainIconForPageUrl(param0: string): void;
			public static getInstance(): android.webkit.WebIconDatabase;
			public close(): void;
			public requestIconForPageUrl(param0: string, param1: android.webkit.WebIconDatabase.IconListener): void;
		}
		export module WebIconDatabase {
			export class IconListener extends java.lang.Object {
				public static class: java.lang.Class<android.webkit.WebIconDatabase.IconListener>;
				/**
				 * Constructs a new instance of the android.webkit.WebIconDatabase$IconListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onReceivedIcon(param0: string, param1: android.graphics.Bitmap): void;
				});
				public constructor();
				public onReceivedIcon(param0: string, param1: android.graphics.Bitmap): void;
			}
		}
	}
}

declare module android {
	export module webkit {
		export class WebResourceResponse extends java.lang.Object {
			public static class: java.lang.Class<android.webkit.WebResourceResponse>;
			public setMimeType(param0: string): void;
			public getMimeType(): string;
			public getEncoding(): string;
			public getData(): java.io.InputStream;
			public constructor(param0: string, param1: string, param2: java.io.InputStream);
			public setData(param0: java.io.InputStream): void;
			public setEncoding(param0: string): void;
		}
	}
}

declare module android {
	export module webkit {
		export abstract class WebSettings extends java.lang.Object {
			public static class: java.lang.Class<android.webkit.WebSettings>;
			public static LOAD_DEFAULT: number;
			public static LOAD_NORMAL: number;
			public static LOAD_CACHE_ELSE_NETWORK: number;
			public static LOAD_NO_CACHE: number;
			public static LOAD_CACHE_ONLY: number;
			public getFixedFontFamily(): string;
			public setNeedInitialFocus(param0: boolean): void;
			public setSansSerifFontFamily(param0: string): void;
			public getUseWideViewPort(): boolean;
			public setJavaScriptEnabled(param0: boolean): void;
			public getDomStorageEnabled(): boolean;
			public setDefaultTextEncodingName(param0: string): void;
			public getJavaScriptCanOpenWindowsAutomatically(): boolean;
			public setBlockNetworkImage(param0: boolean): void;
			public getSerifFontFamily(): string;
			public setSupportZoom(param0: boolean): void;
			/** @deprecated */
			public setSavePassword(param0: boolean): void;
			public getAllowFileAccessFromFileURLs(): boolean;
			public setAppCacheEnabled(param0: boolean): void;
			public getSansSerifFontFamily(): string;
			public setSupportMultipleWindows(param0: boolean): void;
			public supportZoom(): boolean;
			public getDatabasePath(): string;
			public getAllowFileAccess(): boolean;
			/** @deprecated */
			public setAppCacheMaxSize(param0: number): void;
			/** @deprecated */
			public getPluginState(): android.webkit.WebSettings.PluginState;
			public getJavaScriptEnabled(): boolean;
			public getDefaultFixedFontSize(): number;
			public getBlockNetworkLoads(): boolean;
			public getBlockNetworkImage(): boolean;
			public setSaveFormData(param0: boolean): void;
			public setDefaultFontSize(param0: number): void;
			public getDefaultZoom(): android.webkit.WebSettings.ZoomDensity;
			public getUserAgentString(): string;
			public setFixedFontFamily(param0: string): void;
			public setAllowFileAccessFromFileURLs(param0: boolean): void;
			/** @deprecated */
			public setTextSize(param0: android.webkit.WebSettings.TextSize): void;
			/** @deprecated */
			public getTextSize(): android.webkit.WebSettings.TextSize;
			public getDatabaseEnabled(): boolean;
			/** @deprecated */
			public setRenderPriority(param0: android.webkit.WebSettings.RenderPriority): void;
			public supportMultipleWindows(): boolean;
			public getMinimumFontSize(): number;
			public setAllowContentAccess(param0: boolean): void;
			public setAppCachePath(param0: string): void;
			public setFantasyFontFamily(param0: string): void;
			public getMinimumLogicalFontSize(): number;
			public getDisplayZoomControls(): boolean;
			/** @deprecated */
			public getLightTouchEnabled(): boolean;
			public setAllowFileAccess(param0: boolean): void;
			public setBlockNetworkLoads(param0: boolean): void;
			public getBuiltInZoomControls(): boolean;
			public setCursiveFontFamily(param0: string): void;
			/** @deprecated */
			public setLightTouchEnabled(param0: boolean): void;
			public setGeolocationEnabled(param0: boolean): void;
			public static getDefaultUserAgent(param0: android.content.Context): string;
			public getStandardFontFamily(): string;
			public getLoadWithOverviewMode(): boolean;
			public setGeolocationDatabasePath(param0: string): void;
			public getCacheMode(): number;
			/** @deprecated */
			public setEnableSmoothTransition(param0: boolean): void;
			public setDatabasePath(param0: string): void;
			public setMinimumLogicalFontSize(param0: number): void;
			public getDefaultTextEncodingName(): string;
			public setDomStorageEnabled(param0: boolean): void;
			public getMediaPlaybackRequiresUserGesture(): boolean;
			public setCacheMode(param0: number): void;
			public setLoadsImagesAutomatically(param0: boolean): void;
			public setTextZoom(param0: number): void;
			public setDisplayZoomControls(param0: boolean): void;
			public getAllowContentAccess(): boolean;
			public setDefaultZoom(param0: android.webkit.WebSettings.ZoomDensity): void;
			public getTextZoom(): number;
			public getDefaultFontSize(): number;
			public setDatabaseEnabled(param0: boolean): void;
			public setMinimumFontSize(param0: number): void;
			public getLayoutAlgorithm(): android.webkit.WebSettings.LayoutAlgorithm;
			public getCursiveFontFamily(): string;
			public setUserAgentString(param0: string): void;
			/** @deprecated */
			public enableSmoothTransition(): boolean;
			public setUseWideViewPort(param0: boolean): void;
			public setLayoutAlgorithm(param0: android.webkit.WebSettings.LayoutAlgorithm): void;
			public setStandardFontFamily(param0: string): void;
			public setAllowUniversalAccessFromFileURLs(param0: boolean): void;
			public getSaveFormData(): boolean;
			public getLoadsImagesAutomatically(): boolean;
			public getAllowUniversalAccessFromFileURLs(): boolean;
			public setMediaPlaybackRequiresUserGesture(param0: boolean): void;
			public setBuiltInZoomControls(param0: boolean): void;
			public setLoadWithOverviewMode(param0: boolean): void;
			/** @deprecated */
			public getSavePassword(): boolean;
			public getFantasyFontFamily(): string;
			public setDefaultFixedFontSize(param0: number): void;
			public setSerifFontFamily(param0: string): void;
			/** @deprecated */
			public setPluginState(param0: android.webkit.WebSettings.PluginState): void;
			public setJavaScriptCanOpenWindowsAutomatically(param0: boolean): void;
		}
		export module WebSettings {
			export class LayoutAlgorithm {
				public static class: java.lang.Class<android.webkit.WebSettings.LayoutAlgorithm>;
				public static NARROW_COLUMNS: android.webkit.WebSettings.LayoutAlgorithm;
				public static NORMAL: android.webkit.WebSettings.LayoutAlgorithm;
				public static SINGLE_COLUMN: android.webkit.WebSettings.LayoutAlgorithm;
				public static valueOf(param0: string): android.webkit.WebSettings.LayoutAlgorithm;
				public static values(): native.Array<android.webkit.WebSettings.LayoutAlgorithm>;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			}
			export class PluginState {
				public static class: java.lang.Class<android.webkit.WebSettings.PluginState>;
				public static OFF: android.webkit.WebSettings.PluginState;
				public static ON: android.webkit.WebSettings.PluginState;
				public static ON_DEMAND: android.webkit.WebSettings.PluginState;
				public static values(): native.Array<android.webkit.WebSettings.PluginState>;
				public static valueOf(param0: string): android.webkit.WebSettings.PluginState;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			}
			export class RenderPriority {
				public static class: java.lang.Class<android.webkit.WebSettings.RenderPriority>;
				public static HIGH: android.webkit.WebSettings.RenderPriority;
				public static LOW: android.webkit.WebSettings.RenderPriority;
				public static NORMAL: android.webkit.WebSettings.RenderPriority;
				public static values(): native.Array<android.webkit.WebSettings.RenderPriority>;
				public static valueOf(param0: string): android.webkit.WebSettings.RenderPriority;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			}
			export class TextSize {
				public static class: java.lang.Class<android.webkit.WebSettings.TextSize>;
				public static LARGER: android.webkit.WebSettings.TextSize;
				public static LARGEST: android.webkit.WebSettings.TextSize;
				public static NORMAL: android.webkit.WebSettings.TextSize;
				public static SMALLER: android.webkit.WebSettings.TextSize;
				public static SMALLEST: android.webkit.WebSettings.TextSize;
				public static valueOf(param0: string): android.webkit.WebSettings.TextSize;
				public static values(): native.Array<android.webkit.WebSettings.TextSize>;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			}
			export class ZoomDensity {
				public static class: java.lang.Class<android.webkit.WebSettings.ZoomDensity>;
				public static CLOSE: android.webkit.WebSettings.ZoomDensity;
				public static FAR: android.webkit.WebSettings.ZoomDensity;
				public static MEDIUM: android.webkit.WebSettings.ZoomDensity;
				public static valueOf(param0: string): android.webkit.WebSettings.ZoomDensity;
				public static values(): native.Array<android.webkit.WebSettings.ZoomDensity>;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			}
		}
	}
}

declare module android {
	export module webkit {
		export class WebStorage extends java.lang.Object {
			public static class: java.lang.Class<android.webkit.WebStorage>;
			public deleteAllData(): void;
			public getOrigins(param0: android.webkit.ValueCallback<java.util.Map<any,any>>): void;
			public deleteOrigin(param0: string): void;
			public getUsageForOrigin(param0: string, param1: android.webkit.ValueCallback<java.lang.Long>): void;
			public getQuotaForOrigin(param0: string, param1: android.webkit.ValueCallback<java.lang.Long>): void;
			/** @deprecated */
			public setQuotaForOrigin(param0: string, param1: number): void;
			public static getInstance(): android.webkit.WebStorage;
		}
		export module WebStorage {
			export class Origin extends java.lang.Object {
				public static class: java.lang.Class<android.webkit.WebStorage.Origin>;
				public getQuota(): number;
				public getUsage(): number;
				public getOrigin(): string;
			}
			export class QuotaUpdater extends java.lang.Object {
				public static class: java.lang.Class<android.webkit.WebStorage.QuotaUpdater>;
				/**
				 * Constructs a new instance of the android.webkit.WebStorage$QuotaUpdater interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					updateQuota(param0: number): void;
				});
				public constructor();
				public updateQuota(param0: number): void;
			}
		}
	}
}

declare module android {
	export module webkit {
		export abstract class WebSyncManager extends java.lang.Object implements java.lang.Runnable {
			public static class: java.lang.Class<android.webkit.WebSyncManager>;
			public mHandler: android.os.Handler;
			public mDataBase: android.webkit.WebViewDatabase;
			public static LOGTAG: string;
			public onSyncInit(): void;
			public clone(): any;
			public constructor(param0: android.content.Context, param1: string);
			public sync(): void;
			public startSync(): void;
			public stopSync(): void;
			public resetSync(): void;
			public run(): void;
		}
	}
}

declare module android {
	export module webkit {
		export class WebView extends android.widget.AbsoluteLayout implements android.view.ViewTreeObserver.OnGlobalFocusChangeListener, android.view.ViewGroup.OnHierarchyChangeListener {
			public static class: java.lang.Class<android.webkit.WebView>;
			public static SCHEME_TEL: string;
			public static SCHEME_MAILTO: string;
			public static SCHEME_GEO: string;
			public setHorizontalScrollbarOverlay(param0: boolean): void;
			public goForward(): void;
			public setLayerType(param0: number, param1: android.graphics.Paint): void;
			public onCreateInputConnection(param0: android.view.inputmethod.EditorInfo): android.view.inputmethod.InputConnection;
			public loadData(param0: string, param1: string, param2: string): void;
			/** @deprecated */
			public onChildViewAdded(param0: android.view.View, param1: android.view.View): void;
			public saveWebArchive(param0: string): void;
			public resumeTimers(): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onMeasure(param0: number, param1: number): void;
			public reload(): void;
			public requestFocus(): boolean;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public addView(param0: android.view.View, param1: number, param2: number): void;
			public requestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public requestFocusNodeHref(param0: android.os.Message): void;
			public setLayoutParams(param0: android.view.ViewGroup.LayoutParams): void;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public getHttpAuthUsernamePassword(param0: string, param1: string): native.Array<string>;
			public saveState(param0: android.os.Bundle): android.webkit.WebBackForwardList;
			public showContextMenuForChild(param0: android.view.View): boolean;
			/** @deprecated */
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number, param3: boolean);
			public bringChildToFront(param0: android.view.View): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public findAllAsync(param0: string): void;
			/** @deprecated */
			public setMapTrackballToArrowKeys(param0: boolean): void;
			/** @deprecated */
			public savePassword(param0: string, param1: string, param2: string): void;
			public onDetachedFromWindow(): void;
			public sendAccessibilityEvent(param0: number): void;
			public copyBackForwardList(): android.webkit.WebBackForwardList;
			public requestTransparentRegion(param0: android.view.View): void;
			public loadDataWithBaseURL(param0: string, param1: string, param2: string, param3: string, param4: string): void;
			public getParent(): android.view.ViewParent;
			public clearMatches(): void;
			public restoreState(param0: android.os.Bundle): android.webkit.WebBackForwardList;
			public canGoForward(): boolean;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public computeVerticalScrollRange(): number;
			public dispatchDraw(param0: android.graphics.Canvas): void;
			public getFavicon(): android.graphics.Bitmap;
			public setDownloadListener(param0: android.webkit.DownloadListener): void;
			public requestChildFocus(param0: android.view.View, param1: android.view.View): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public setNetworkAvailable(param0: boolean): void;
			public getContentHeight(): number;
			/** @deprecated */
			public canZoomOut(): boolean;
			public setOverScrollMode(param0: number): void;
			public focusSearch(param0: number): android.view.View;
			public recomputeViewAttributes(param0: android.view.View): void;
			/** @deprecated */
			public onGlobalFocusChanged(param0: android.view.View, param1: android.view.View): void;
			public isLayoutRequested(): boolean;
			public computeVerticalScrollExtent(): number;
			public requestFocus(param0: number, param1: android.graphics.Rect): boolean;
			/** @deprecated */
			public setCertificate(param0: android.net.http.SslCertificate): void;
			public freeMemory(): void;
			public clearFormData(): void;
			public invalidateChild(param0: android.view.View, param1: android.graphics.Rect): void;
			public findNext(param0: boolean): void;
			public pageUp(param0: boolean): boolean;
			/** @deprecated */
			public onMeasure(param0: number, param1: number): void;
			public onChildViewAdded(param0: android.view.View, param1: android.view.View): void;
			public invokeZoomPicker(): void;
			public onWindowVisibilityChanged(param0: number): void;
			public overlayVerticalScrollbar(): boolean;
			/** @deprecated */
			public getScale(): number;
			public setScrollBarStyle(param0: number): void;
			public onConfigurationChanged(param0: android.content.res.Configuration): void;
			public requestLayout(): void;
			public childDrawableStateChanged(param0: android.view.View): void;
			public addView(param0: android.view.View): void;
			public getUrl(): string;
			public goBack(): void;
			public setVerticalScrollbarOverlay(param0: boolean): void;
			public clearCache(param0: boolean): void;
			public documentHasImages(param0: android.os.Message): void;
			public getChildVisibleRect(param0: android.view.View, param1: android.graphics.Rect, param2: android.graphics.Point): boolean;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public clearSslPreferences(): void;
			public onVisibilityChanged(param0: android.view.View, param1: number): void;
			/** @deprecated */
			public onChildViewRemoved(param0: android.view.View, param1: android.view.View): void;
			public loadUrl(param0: string): void;
			public constructor(param0: android.content.Context);
			public pageDown(param0: boolean): boolean;
			public addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public addView(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams): void;
			public setBackgroundColor(param0: number): void;
			public requestFitSystemWindows(): void;
			/** @deprecated */
			public shouldDelayChildPressedState(): boolean;
			public onOverScrolled(param0: number, param1: number, param2: boolean, param3: boolean): void;
			public postUrl(param0: string, param1: native.Array<number>): void;
			public getProgress(): number;
			public setWebViewClient(param0: android.webkit.WebViewClient): void;
			public getOriginalUrl(): string;
			public flingScroll(param0: number, param1: number): void;
			public focusableViewAvailable(param0: android.view.View): void;
			public createContextMenu(param0: android.view.ContextMenu): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public shouldDelayChildPressedState(): boolean;
			public performLongClick(): boolean;
			public focusSearch(param0: android.view.View, param1: number): android.view.View;
			public static findAddress(param0: string): string;
			public onGlobalFocusChanged(param0: android.view.View, param1: android.view.View): void;
			public onFocusChanged(param0: boolean, param1: number, param2: android.graphics.Rect): void;
			public getCertificate(): android.net.http.SslCertificate;
			public computeHorizontalScrollRange(): number;
			public zoomIn(): boolean;
			public getHitTestResult(): android.webkit.WebView.HitTestResult;
			public getSettings(): android.webkit.WebSettings;
			public getTitle(): string;
			public setInitialScale(param0: number): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public getParentForAccessibility(): android.view.ViewParent;
			public onResume(): void;
			public pauseTimers(): void;
			public requestFocus(param0: number): boolean;
			/** @deprecated */
			public findAll(param0: string): number;
			public canGoBack(): boolean;
			public onTrackballEvent(param0: android.view.MotionEvent): boolean;
			public startActionModeForChild(param0: android.view.View, param1: android.view.ActionMode.Callback): android.view.ActionMode;
			public canGoBackOrForward(param0: number): boolean;
			public stopLoading(): void;
			public computeVerticalScrollOffset(): number;
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public onDraw(param0: android.graphics.Canvas): void;
			public onWindowFocusChanged(param0: boolean): void;
			public setWebChromeClient(param0: android.webkit.WebChromeClient): void;
			public requestChildRectangleOnScreen(param0: android.view.View, param1: android.graphics.Rect, param2: boolean): boolean;
			public onScrollChanged(param0: number, param1: number, param2: number, param3: number): void;
			public capturePicture(): android.graphics.Picture;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public performAccessibilityAction(param0: number, param1: android.os.Bundle): boolean;
			public onSizeChanged(param0: number, param1: number, param2: number, param3: number): void;
			public goBackOrForward(param0: number): void;
			public overlayHorizontalScrollbar(): boolean;
			public onGenericMotionEvent(param0: android.view.MotionEvent): boolean;
			public addJavascriptInterface(param0: any, param1: string): void;
			public invalidateChildInParent(param0: native.Array<number>, param1: android.graphics.Rect): android.view.ViewParent;
			/** @deprecated */
			public canZoomIn(): boolean;
			public onChildViewRemoved(param0: android.view.View, param1: android.view.View): void;
			public requestImageRef(param0: android.os.Message): void;
			public saveWebArchive(param0: string, param1: boolean, param2: android.webkit.ValueCallback<string>): void;
			public isPrivateBrowsingEnabled(): boolean;
			public onPause(): void;
			public computeHorizontalScrollOffset(): number;
			/** @deprecated */
			public showFindDialog(param0: string, param1: boolean): boolean;
			public zoomOut(): boolean;
			public computeScroll(): void;
			/** @deprecated */
			public clearView(): void;
			public removeView(param0: android.view.View): void;
			public clearChildFocus(param0: android.view.View): void;
			public removeJavascriptInterface(param0: string): void;
			public destroy(): void;
			public setHttpAuthUsernamePassword(param0: string, param1: string, param2: string, param3: string): void;
			public updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public onTouchEvent(param0: android.view.MotionEvent): boolean;
			public requestDisallowInterceptTouchEvent(param0: boolean): void;
			/** @deprecated */
			public setPictureListener(param0: android.webkit.WebView.PictureListener): void;
			public loadUrl(param0: string, param1: java.util.Map<string,string>): void;
			public setFindListener(param0: android.webkit.WebView.FindListener): void;
			public dispatchKeyEvent(param0: android.view.KeyEvent): boolean;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public clearHistory(): void;
			public onAttachedToWindow(): void;
			public onHoverEvent(param0: android.view.MotionEvent): boolean;
			public addView(param0: android.view.View, param1: number): void;
		}
		export module WebView {
			export class FindListener extends java.lang.Object {
				public static class: java.lang.Class<android.webkit.WebView.FindListener>;
				/**
				 * Constructs a new instance of the android.webkit.WebView$FindListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onFindResultReceived(param0: number, param1: number, param2: boolean): void;
				});
				public constructor();
				public onFindResultReceived(param0: number, param1: number, param2: boolean): void;
			}
			export class HitTestResult extends java.lang.Object {
				public static class: java.lang.Class<android.webkit.WebView.HitTestResult>;
				public static UNKNOWN_TYPE: number;
				public static ANCHOR_TYPE: number;
				public static PHONE_TYPE: number;
				public static GEO_TYPE: number;
				public static EMAIL_TYPE: number;
				public static IMAGE_TYPE: number;
				public static IMAGE_ANCHOR_TYPE: number;
				public static SRC_ANCHOR_TYPE: number;
				public static SRC_IMAGE_ANCHOR_TYPE: number;
				public static EDIT_TEXT_TYPE: number;
				public getType(): number;
				public getExtra(): string;
			}
			export class PictureListener extends java.lang.Object {
				public static class: java.lang.Class<android.webkit.WebView.PictureListener>;
				/**
				 * Constructs a new instance of the android.webkit.WebView$PictureListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onNewPicture(param0: android.webkit.WebView, param1: android.graphics.Picture): void;
				});
				public constructor();
				/** @deprecated */
				public onNewPicture(param0: android.webkit.WebView, param1: android.graphics.Picture): void;
			}
			export class WebViewTransport extends java.lang.Object {
				public static class: java.lang.Class<android.webkit.WebView.WebViewTransport>;
				public getWebView(): android.webkit.WebView;
				public constructor(param0: android.webkit.WebView);
				public setWebView(param0: android.webkit.WebView): void;
			}
		}
	}
}

declare module android {
	export module webkit {
		export class WebViewClient extends java.lang.Object {
			public static class: java.lang.Class<android.webkit.WebViewClient>;
			public static ERROR_UNKNOWN: number;
			public static ERROR_HOST_LOOKUP: number;
			public static ERROR_UNSUPPORTED_AUTH_SCHEME: number;
			public static ERROR_AUTHENTICATION: number;
			public static ERROR_PROXY_AUTHENTICATION: number;
			public static ERROR_CONNECT: number;
			public static ERROR_IO: number;
			public static ERROR_TIMEOUT: number;
			public static ERROR_REDIRECT_LOOP: number;
			public static ERROR_UNSUPPORTED_SCHEME: number;
			public static ERROR_FAILED_SSL_HANDSHAKE: number;
			public static ERROR_BAD_URL: number;
			public static ERROR_FILE: number;
			public static ERROR_FILE_NOT_FOUND: number;
			public static ERROR_TOO_MANY_REQUESTS: number;
			public shouldOverrideUrlLoading(param0: android.webkit.WebView, param1: string): boolean;
			/** @deprecated */
			public onTooManyRedirects(param0: android.webkit.WebView, param1: android.os.Message, param2: android.os.Message): void;
			public onScaleChanged(param0: android.webkit.WebView, param1: number, param2: number): void;
			public onFormResubmission(param0: android.webkit.WebView, param1: android.os.Message, param2: android.os.Message): void;
			public onReceivedSslError(param0: android.webkit.WebView, param1: android.webkit.SslErrorHandler, param2: android.net.http.SslError): void;
			public onUnhandledKeyEvent(param0: android.webkit.WebView, param1: android.view.KeyEvent): void;
			public constructor();
			public shouldInterceptRequest(param0: android.webkit.WebView, param1: string): android.webkit.WebResourceResponse;
			public onPageFinished(param0: android.webkit.WebView, param1: string): void;
			public onPageStarted(param0: android.webkit.WebView, param1: string, param2: android.graphics.Bitmap): void;
			public onLoadResource(param0: android.webkit.WebView, param1: string): void;
			public doUpdateVisitedHistory(param0: android.webkit.WebView, param1: string, param2: boolean): void;
			public shouldOverrideKeyEvent(param0: android.webkit.WebView, param1: android.view.KeyEvent): boolean;
			public onReceivedLoginRequest(param0: android.webkit.WebView, param1: string, param2: string, param3: string): void;
			public onReceivedError(param0: android.webkit.WebView, param1: number, param2: string, param3: string): void;
			public onReceivedHttpAuthRequest(param0: android.webkit.WebView, param1: android.webkit.HttpAuthHandler, param2: string, param3: string): void;
		}
	}
}

declare module android {
	export module webkit {
		export class WebViewDatabase extends java.lang.Object {
			public static class: java.lang.Class<android.webkit.WebViewDatabase>;
			public clearFormData(): void;
			public static getInstance(param0: android.content.Context): android.webkit.WebViewDatabase;
			public hasFormData(): boolean;
			/** @deprecated */
			public clearUsernamePassword(): void;
			public hasHttpAuthUsernamePassword(): boolean;
			public clearHttpAuthUsernamePassword(): void;
			/** @deprecated */
			public hasUsernamePassword(): boolean;
		}
	}
}

declare module android {
	export module webkit {
		export class WebViewFragment extends android.app.Fragment {
			public static class: java.lang.Class<android.webkit.WebViewFragment>;
			public onCreateContextMenu(param0: android.view.ContextMenu, param1: android.view.View, param2: android.view.ContextMenu.ContextMenuInfo): void;
			public onTrimMemory(param0: number): void;
			public onCreateView(param0: android.view.LayoutInflater, param1: android.view.ViewGroup, param2: android.os.Bundle): android.view.View;
			public onResume(): void;
			public onPause(): void;
			public onDestroyView(): void;
			public getWebView(): android.webkit.WebView;
			public constructor();
			public onDestroy(): void;
		}
	}
}

declare module android {
	export module widget {
		export abstract class AbsListView extends android.widget.AdapterView<android.widget.ListAdapter> {
			public static class: java.lang.Class<android.widget.AbsListView>;
			public static TRANSCRIPT_MODE_DISABLED: number;
			public static TRANSCRIPT_MODE_NORMAL: number;
			public static TRANSCRIPT_MODE_ALWAYS_SCROLL: number;
			public static CHOICE_MODE_NONE: number;
			public static CHOICE_MODE_SINGLE: number;
			public static CHOICE_MODE_MULTIPLE: number;
			public static CHOICE_MODE_MULTIPLE_MODAL: number;
			public setScrollIndicators(param0: android.view.View, param1: android.view.View): void;
			public deferNotifyDataSetChanged(): void;
			public onCreateInputConnection(param0: android.view.inputmethod.EditorInfo): android.view.inputmethod.InputConnection;
			public smoothScrollToPositionFromTop(param0: number, param1: number, param2: number): void;
			public smoothScrollToPosition(param0: number, param1: number): void;
			public generateLayoutParams(param0: android.util.AttributeSet): android.view.ViewGroup.LayoutParams;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onMeasure(param0: number, param1: number): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public invalidateViews(): void;
			public handleDataChanged(): void;
			public getBottomFadingEdgeStrength(): number;
			public addView(param0: android.view.View, param1: number, param2: number): void;
			public requestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public setTextFilterEnabled(param0: boolean): void;
			public showContextMenuForChild(param0: android.view.View): boolean;
			public getListPaddingTop(): number;
			public setAdapter(param0: android.widget.ListAdapter): void;
			public beforeTextChanged(param0: string, param1: number, param2: number, param3: number): void;
			public isFastScrollEnabled(): boolean;
			public bringChildToFront(param0: android.view.View): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public reclaimViews(param0: java.util.List<android.view.View>): void;
			public sendAccessibilityEvent(param0: number): void;
			public onDetachedFromWindow(): void;
			public setFriction(param0: number): void;
			public afterTextChanged(param0: android.text.Editable): void;
			public requestTransparentRegion(param0: android.view.View): void;
			public getParent(): android.view.ViewParent;
			public onTextChanged(param0: string, param1: number, param2: number, param3: number): void;
			public isSmoothScrollbarEnabled(): boolean;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public setFilterText(param0: string): void;
			public computeVerticalScrollRange(): number;
			public dispatchDraw(param0: android.graphics.Canvas): void;
			public setDrawSelectorOnTop(param0: boolean): void;
			public getCheckedItemPosition(): number;
			public setTranscriptMode(param0: number): void;
			public requestChildFocus(param0: android.view.View, param1: android.view.View): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public setOverScrollMode(param0: number): void;
			public setStackFromBottom(param0: boolean): void;
			public isTextFilterEnabled(): boolean;
			public setSelector(param0: number): void;
			public focusSearch(param0: number): android.view.View;
			public onInterceptTouchEvent(param0: android.view.MotionEvent): boolean;
			public recomputeViewAttributes(param0: android.view.View): void;
			public onTouchModeChanged(param0: boolean): void;
			public isLayoutRequested(): boolean;
			public computeVerticalScrollExtent(): number;
			public isFastScrollAlwaysVisible(): boolean;
			public getVerticalScrollbarWidth(): number;
			public getRightPaddingOffset(): number;
			public setVerticalScrollbarPosition(param0: number): void;
			public invalidateChild(param0: android.view.View, param1: android.graphics.Rect): void;
			public getTopFadingEdgeStrength(): number;
			public setFastScrollEnabled(param0: boolean): void;
			public onGlobalLayout(): void;
			public getTextFilter(): string;
			public setSelector(param0: android.graphics.drawable.Drawable): void;
			public setFastScrollAlwaysVisible(param0: boolean): void;
			public getCheckedItemPositions(): android.util.SparseBooleanArray;
			public performItemClick(param0: android.view.View, param1: number, param2: number): boolean;
			public setCacheColorHint(param0: number): void;
			public setScrollingCacheEnabled(param0: boolean): void;
			public addTouchables(param0: java.util.ArrayList<android.view.View>): void;
			public requestLayout(): void;
			public onFilterComplete(param0: number): void;
			public childDrawableStateChanged(param0: android.view.View): void;
			public addView(param0: android.view.View): void;
			public smoothScrollToPosition(param0: number): void;
			public onDisplayHint(param0: number): void;
			public getChildVisibleRect(param0: android.view.View, param1: android.graphics.Rect, param2: android.graphics.Point): boolean;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public constructor(param0: android.content.Context);
			public addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public addView(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams): void;
			public onRtlPropertiesChanged(param0: number): void;
			public setChoiceMode(param0: number): void;
			public getSolidColor(): number;
			public requestFitSystemWindows(): void;
			public onOverScrolled(param0: number, param1: number, param2: boolean, param3: boolean): void;
			public getTopPaddingOffset(): number;
			public setMultiChoiceModeListener(param0: android.widget.AbsListView.MultiChoiceModeListener): void;
			public isItemChecked(param0: number): boolean;
			public onLayout(param0: boolean, param1: number, param2: number, param3: number, param4: number): void;
			public hasTextFilter(): boolean;
			public isStackFromBottom(): boolean;
			public getListPaddingBottom(): number;
			public drawableStateChanged(): void;
			public focusableViewAvailable(param0: android.view.View): void;
			public createContextMenu(param0: android.view.ContextMenu): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public getCheckedItemIds(): native.Array<number>;
			public dispatchSetPressed(param0: boolean): void;
			public setItemChecked(param0: number, param1: boolean): void;
			public setSmoothScrollbarEnabled(param0: boolean): void;
			public focusSearch(param0: android.view.View, param1: number): android.view.View;
			public getFocusedRect(param0: android.graphics.Rect): void;
			public getContextMenuInfo(): android.view.ContextMenu.ContextMenuInfo;
			public onFocusChanged(param0: boolean, param1: number, param2: android.graphics.Rect): void;
			public getListPaddingRight(): number;
			public setRemoteViewsAdapter(param0: android.content.Intent): void;
			public checkInputConnectionProxy(param0: android.view.View): boolean;
			public draw(param0: android.graphics.Canvas): void;
			public onRestoreInstanceState(param0: android.os.Parcelable): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public getParentForAccessibility(): android.view.ViewParent;
			public verifyDrawable(param0: android.graphics.drawable.Drawable): boolean;
			public setOnScrollListener(param0: android.widget.AbsListView.OnScrollListener): void;
			public startActionModeForChild(param0: android.view.View, param1: android.view.ActionMode.Callback): android.view.ActionMode;
			public computeVerticalScrollOffset(): number;
			public layoutChildren(): void;
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public getLeftPaddingOffset(): number;
			public generateLayoutParams(param0: android.view.ViewGroup.LayoutParams): android.view.ViewGroup.LayoutParams;
			public onWindowFocusChanged(param0: boolean): void;
			public generateDefaultLayoutParams(): android.view.ViewGroup.LayoutParams;
			public requestChildRectangleOnScreen(param0: android.view.View, param1: android.graphics.Rect, param2: boolean): boolean;
			public onSaveInstanceState(): android.os.Parcelable;
			public pointToRowId(param0: number, param1: number): number;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public performAccessibilityAction(param0: number, param1: android.os.Bundle): boolean;
			public setAdapter(param0: any): void;
			public onSizeChanged(param0: number, param1: number, param2: number, param3: number): void;
			public getCheckedItemCount(): number;
			public getSelectedView(): android.view.View;
			public onCreateDrawableState(param0: number): native.Array<number>;
			public onGenericMotionEvent(param0: android.view.MotionEvent): boolean;
			public getCacheColorHint(): number;
			public onRemoteAdapterConnected(): boolean;
			public clearChoices(): void;
			public invalidateChildInParent(param0: native.Array<number>, param1: android.graphics.Rect): android.view.ViewParent;
			public isPaddingOffsetRequired(): boolean;
			public clearTextFilter(): void;
			public getBottomPaddingOffset(): number;
			public jumpDrawablesToCurrentState(): void;
			public setRecyclerListener(param0: android.widget.AbsListView.RecyclerListener): void;
			public getTranscriptMode(): number;
			public generateLayoutParams(param0: android.util.AttributeSet): android.widget.AbsListView.LayoutParams;
			public checkLayoutParams(param0: android.view.ViewGroup.LayoutParams): boolean;
			public getChoiceMode(): number;
			public removeView(param0: android.view.View): void;
			public clearChildFocus(param0: android.view.View): void;
			public pointToPosition(param0: number, param1: number): number;
			public onRemoteAdapterDisconnected(): void;
			public updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public onTouchEvent(param0: android.view.MotionEvent): boolean;
			public setVelocityScale(param0: number): void;
			public smoothScrollToPositionFromTop(param0: number, param1: number): void;
			public requestDisallowInterceptTouchEvent(param0: boolean): void;
			public getSelector(): android.graphics.drawable.Drawable;
			public smoothScrollBy(param0: number, param1: number): void;
			public isInFilterMode(): boolean;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public isScrollingCacheEnabled(): boolean;
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public getListPaddingLeft(): number;
			public onAttachedToWindow(): void;
			public addView(param0: android.view.View, param1: number): void;
		}
		export module AbsListView {
			export class LayoutParams extends android.view.ViewGroup.LayoutParams {
				public static class: java.lang.Class<android.widget.AbsListView.LayoutParams>;
				public constructor(param0: number, param1: number);
				public constructor(param0: android.view.ViewGroup.LayoutParams);
				public constructor(param0: number, param1: number, param2: number);
				public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			}
			export class MultiChoiceModeListener extends java.lang.Object implements android.view.ActionMode.Callback {
				public static class: java.lang.Class<android.widget.AbsListView.MultiChoiceModeListener>;
				/**
				 * Constructs a new instance of the android.widget.AbsListView$MultiChoiceModeListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onItemCheckedStateChanged(param0: android.view.ActionMode, param1: number, param2: number, param3: boolean): void;
					onCreateActionMode(param0: android.view.ActionMode, param1: android.view.Menu): boolean;
					onPrepareActionMode(param0: android.view.ActionMode, param1: android.view.Menu): boolean;
					onActionItemClicked(param0: android.view.ActionMode, param1: android.view.MenuItem): boolean;
					onDestroyActionMode(param0: android.view.ActionMode): void;
				});
				public constructor();
				public onPrepareActionMode(param0: android.view.ActionMode, param1: android.view.Menu): boolean;
				public onActionItemClicked(param0: android.view.ActionMode, param1: android.view.MenuItem): boolean;
				public onCreateActionMode(param0: android.view.ActionMode, param1: android.view.Menu): boolean;
				public onItemCheckedStateChanged(param0: android.view.ActionMode, param1: number, param2: number, param3: boolean): void;
				public onDestroyActionMode(param0: android.view.ActionMode): void;
			}
			export class OnScrollListener extends java.lang.Object {
				public static class: java.lang.Class<android.widget.AbsListView.OnScrollListener>;
				/**
				 * Constructs a new instance of the android.widget.AbsListView$OnScrollListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onScrollStateChanged(param0: android.widget.AbsListView, param1: number): void;
					onScroll(param0: android.widget.AbsListView, param1: number, param2: number, param3: number): void;
				});
				public constructor();
				public static SCROLL_STATE_FLING: number;
				public static SCROLL_STATE_TOUCH_SCROLL: number;
				public static SCROLL_STATE_IDLE: number;
				public onScroll(param0: android.widget.AbsListView, param1: number, param2: number, param3: number): void;
				public onScrollStateChanged(param0: android.widget.AbsListView, param1: number): void;
			}
			export class RecyclerListener extends java.lang.Object {
				public static class: java.lang.Class<android.widget.AbsListView.RecyclerListener>;
				/**
				 * Constructs a new instance of the android.widget.AbsListView$RecyclerListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onMovedToScrapHeap(param0: android.view.View): void;
				});
				public constructor();
				public onMovedToScrapHeap(param0: android.view.View): void;
			}
			export class SelectionBoundsAdjuster extends java.lang.Object {
				public static class: java.lang.Class<android.widget.AbsListView.SelectionBoundsAdjuster>;
				/**
				 * Constructs a new instance of the android.widget.AbsListView$SelectionBoundsAdjuster interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					adjustListItemSelectionBounds(param0: android.graphics.Rect): void;
				});
				public constructor();
				public adjustListItemSelectionBounds(param0: android.graphics.Rect): void;
			}
		}
	}
}

declare module android {
	export module widget {
		export abstract class AbsSeekBar extends android.widget.ProgressBar {
			public static class: java.lang.Class<android.widget.AbsSeekBar>;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public performAccessibilityAction(param0: number, param1: android.os.Bundle): boolean;
			public onSizeChanged(param0: number, param1: number, param2: number, param3: number): void;
			public drawableStateChanged(): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onMeasure(param0: number, param1: number): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public jumpDrawablesToCurrentState(): void;
			public setMax(param0: number): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public sendAccessibilityEvent(param0: number): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public getThumb(): android.graphics.drawable.Drawable;
			public verifyDrawable(param0: android.graphics.drawable.Drawable): boolean;
			public onTouchEvent(param0: android.view.MotionEvent): boolean;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public setThumbOffset(param0: number): void;
			public constructor(param0: android.content.Context);
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public getKeyProgressIncrement(): number;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public setThumb(param0: android.graphics.drawable.Drawable): void;
			public onDraw(param0: android.graphics.Canvas): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public getThumbOffset(): number;
			public onRtlPropertiesChanged(param0: number): void;
			public setKeyProgressIncrement(param0: number): void;
		}
	}
}

declare module android {
	export module widget {
		export abstract class AbsSpinner extends android.widget.AdapterView<android.widget.SpinnerAdapter> {
			public static class: java.lang.Class<android.widget.AbsSpinner>;
			public setSelection(param0: number): void;
			public setSelection(param0: number, param1: boolean): void;
			public focusableViewAvailable(param0: android.view.View): void;
			public createContextMenu(param0: android.view.ContextMenu): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onMeasure(param0: number, param1: number): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public addView(param0: android.view.View, param1: number, param2: number): void;
			public focusSearch(param0: android.view.View, param1: number): android.view.View;
			public requestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public showContextMenuForChild(param0: android.view.View): boolean;
			public getCount(): number;
			public bringChildToFront(param0: android.view.View): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public sendAccessibilityEvent(param0: number): void;
			public onRestoreInstanceState(param0: android.os.Parcelable): void;
			public requestTransparentRegion(param0: android.view.View): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public getAdapter(): android.widget.SpinnerAdapter;
			public getParentForAccessibility(): android.view.ViewParent;
			public getParent(): android.view.ViewParent;
			public startActionModeForChild(param0: android.view.View, param1: android.view.ActionMode.Callback): android.view.ActionMode;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public setAdapter(param0: android.widget.SpinnerAdapter): void;
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public requestChildFocus(param0: android.view.View, param1: android.view.View): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public generateDefaultLayoutParams(): android.view.ViewGroup.LayoutParams;
			public requestChildRectangleOnScreen(param0: android.view.View, param1: android.graphics.Rect, param2: boolean): boolean;
			public onSaveInstanceState(): android.os.Parcelable;
			public focusSearch(param0: number): android.view.View;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public recomputeViewAttributes(param0: android.view.View): void;
			public setAdapter(param0: any): void;
			public isLayoutRequested(): boolean;
			public getSelectedView(): android.view.View;
			public invalidateChild(param0: android.view.View, param1: android.graphics.Rect): void;
			public invalidateChildInParent(param0: native.Array<number>, param1: android.graphics.Rect): android.view.ViewParent;
			public getAdapter(): any;
			public requestLayout(): void;
			public childDrawableStateChanged(param0: android.view.View): void;
			public addView(param0: android.view.View): void;
			public removeView(param0: android.view.View): void;
			public clearChildFocus(param0: android.view.View): void;
			public pointToPosition(param0: number, param1: number): number;
			public updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public requestDisallowInterceptTouchEvent(param0: boolean): void;
			public getChildVisibleRect(param0: android.view.View, param1: android.graphics.Rect, param2: android.graphics.Point): boolean;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public constructor(param0: android.content.Context);
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public addView(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams): void;
			public requestFitSystemWindows(): void;
			public addView(param0: android.view.View, param1: number): void;
		}
	}
}

declare module android {
	export module widget {
		export class AbsoluteLayout extends android.view.ViewGroup {
			public static class: java.lang.Class<android.widget.AbsoluteLayout>;
			public onLayout(param0: boolean, param1: number, param2: number, param3: number, param4: number): void;
			public generateLayoutParams(param0: android.util.AttributeSet): android.view.ViewGroup.LayoutParams;
			public focusableViewAvailable(param0: android.view.View): void;
			public createContextMenu(param0: android.view.ContextMenu): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onMeasure(param0: number, param1: number): void;
			public shouldDelayChildPressedState(): boolean;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public addView(param0: android.view.View, param1: number, param2: number): void;
			public focusSearch(param0: android.view.View, param1: number): android.view.View;
			public requestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public showContextMenuForChild(param0: android.view.View): boolean;
			public bringChildToFront(param0: android.view.View): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public sendAccessibilityEvent(param0: number): void;
			public requestTransparentRegion(param0: android.view.View): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public getParentForAccessibility(): android.view.ViewParent;
			public getParent(): android.view.ViewParent;
			public startActionModeForChild(param0: android.view.View, param1: android.view.ActionMode.Callback): android.view.ActionMode;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public requestChildFocus(param0: android.view.View, param1: android.view.View): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public generateLayoutParams(param0: android.view.ViewGroup.LayoutParams): android.view.ViewGroup.LayoutParams;
			public generateDefaultLayoutParams(): android.view.ViewGroup.LayoutParams;
			public requestChildRectangleOnScreen(param0: android.view.View, param1: android.graphics.Rect, param2: boolean): boolean;
			public focusSearch(param0: number): android.view.View;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public recomputeViewAttributes(param0: android.view.View): void;
			public isLayoutRequested(): boolean;
			public invalidateChild(param0: android.view.View, param1: android.graphics.Rect): void;
			public invalidateChildInParent(param0: native.Array<number>, param1: android.graphics.Rect): android.view.ViewParent;
			public requestLayout(): void;
			public checkLayoutParams(param0: android.view.ViewGroup.LayoutParams): boolean;
			public childDrawableStateChanged(param0: android.view.View): void;
			public addView(param0: android.view.View): void;
			public removeView(param0: android.view.View): void;
			public clearChildFocus(param0: android.view.View): void;
			public updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public requestDisallowInterceptTouchEvent(param0: boolean): void;
			public getChildVisibleRect(param0: android.view.View, param1: android.graphics.Rect, param2: android.graphics.Point): boolean;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public constructor(param0: android.content.Context);
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public addView(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams): void;
			public requestFitSystemWindows(): void;
			public addView(param0: android.view.View, param1: number): void;
		}
		export module AbsoluteLayout {
			export class LayoutParams extends android.view.ViewGroup.LayoutParams {
				public static class: java.lang.Class<android.widget.AbsoluteLayout.LayoutParams>;
				public x: number;
				public y: number;
				public constructor(param0: number, param1: number);
				public constructor(param0: android.view.ViewGroup.LayoutParams);
				public debug(param0: string): string;
				public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
				public constructor(param0: number, param1: number, param2: number, param3: number);
			}
		}
	}
}

declare module android {
	export module widget {
		export class Adapter extends java.lang.Object {
			public static class: java.lang.Class<android.widget.Adapter>;
			/**
			 * Constructs a new instance of the android.widget.Adapter interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				registerDataSetObserver(param0: android.database.DataSetObserver): void;
				unregisterDataSetObserver(param0: android.database.DataSetObserver): void;
				getCount(): number;
				getItem(param0: number): any;
				getItemId(param0: number): number;
				hasStableIds(): boolean;
				getView(param0: number, param1: android.view.View, param2: android.view.ViewGroup): android.view.View;
				getItemViewType(param0: number): number;
				getViewTypeCount(): number;
				isEmpty(): boolean;
			});
			public constructor();
			public static NO_SELECTION: number;
			public static IGNORE_ITEM_VIEW_TYPE: number;
			public unregisterDataSetObserver(param0: android.database.DataSetObserver): void;
			public getItem(param0: number): any;
			public getView(param0: number, param1: android.view.View, param2: android.view.ViewGroup): android.view.View;
			public registerDataSetObserver(param0: android.database.DataSetObserver): void;
			public getItemViewType(param0: number): number;
			public isEmpty(): boolean;
			public getViewTypeCount(): number;
			public getItemId(param0: number): number;
			public hasStableIds(): boolean;
			public getCount(): number;
		}
	}
}

declare module android {
	export module widget {
		export abstract class AdapterView<T>  extends android.view.ViewGroup {
			public static class: java.lang.Class<android.widget.AdapterView<any>>;
			public static ITEM_VIEW_TYPE_IGNORE: number;
			public static ITEM_VIEW_TYPE_HEADER_OR_FOOTER: number;
			public static INVALID_POSITION: number;
			public static INVALID_ROW_ID: number;
			public onLayout(param0: boolean, param1: number, param2: number, param3: number, param4: number): void;
			public getSelectedItem(): any;
			public setSelection(param0: number): void;
			public setFocusable(param0: boolean): void;
			public setFocusableInTouchMode(param0: boolean): void;
			public focusableViewAvailable(param0: android.view.View): void;
			public createContextMenu(param0: android.view.ContextMenu): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public setOnItemClickListener(param0: android.widget.AdapterView.OnItemClickListener): void;
			public setOnClickListener(param0: android.view.View.OnClickListener): void;
			public addView(param0: android.view.View, param1: number, param2: number): void;
			public focusSearch(param0: android.view.View, param1: number): android.view.View;
			public requestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public getOnItemClickListener(): android.widget.AdapterView.OnItemClickListener;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public canAnimate(): boolean;
			public showContextMenuForChild(param0: android.view.View): boolean;
			public getOnItemLongClickListener(): android.widget.AdapterView.OnItemLongClickListener;
			public getCount(): number;
			public setOnItemSelectedListener(param0: android.widget.AdapterView.OnItemSelectedListener): void;
			public getItemIdAtPosition(param0: number): number;
			public bringChildToFront(param0: android.view.View): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public onDetachedFromWindow(): void;
			public sendAccessibilityEvent(param0: number): void;
			public requestTransparentRegion(param0: android.view.View): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public getParentForAccessibility(): android.view.ViewParent;
			public getPositionForView(param0: android.view.View): number;
			public getParent(): android.view.ViewParent;
			public dispatchRestoreInstanceState(param0: android.util.SparseArray<android.os.Parcelable>): void;
			public setEmptyView(param0: android.view.View): void;
			public startActionModeForChild(param0: android.view.View, param1: android.view.ActionMode.Callback): android.view.ActionMode;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public requestChildFocus(param0: android.view.View, param1: android.view.View): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public requestChildRectangleOnScreen(param0: android.view.View, param1: android.graphics.Rect, param2: boolean): boolean;
			public focusSearch(param0: number): android.view.View;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public recomputeViewAttributes(param0: android.view.View): void;
			public setAdapter(param0: any): void;
			public isLayoutRequested(): boolean;
			public getSelectedView(): android.view.View;
			public setOnItemLongClickListener(param0: android.widget.AdapterView.OnItemLongClickListener): void;
			public getSelectedItemId(): number;
			public getEmptyView(): android.view.View;
			public invalidateChild(param0: android.view.View, param1: android.graphics.Rect): void;
			public removeViewAt(param0: number): void;
			public removeAllViews(): void;
			public invalidateChildInParent(param0: native.Array<number>, param1: android.graphics.Rect): android.view.ViewParent;
			public performItemClick(param0: android.view.View, param1: number, param2: number): boolean;
			public getAdapter(): any;
			public requestLayout(): void;
			public getFirstVisiblePosition(): number;
			public addView(param0: android.view.View): void;
			public childDrawableStateChanged(param0: android.view.View): void;
			public removeView(param0: android.view.View): void;
			public clearChildFocus(param0: android.view.View): void;
			public getLastVisiblePosition(): number;
			public getOnItemSelectedListener(): android.widget.AdapterView.OnItemSelectedListener;
			public updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public onRequestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public requestDisallowInterceptTouchEvent(param0: boolean): void;
			public getChildVisibleRect(param0: android.view.View, param1: android.graphics.Rect, param2: android.graphics.Point): boolean;
			public getSelectedItemPosition(): number;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public getItemAtPosition(param0: number): any;
			public dispatchSaveInstanceState(param0: android.util.SparseArray<android.os.Parcelable>): void;
			public constructor(param0: android.content.Context);
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public addView(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams): void;
			public dispatchPopulateAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): boolean;
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public addView(param0: android.view.View, param1: number): void;
			public requestFitSystemWindows(): void;
		}
		export module AdapterView {
			export class AdapterContextMenuInfo extends java.lang.Object implements android.view.ContextMenu.ContextMenuInfo {
				public static class: java.lang.Class<android.widget.AdapterView.AdapterContextMenuInfo>;
				public targetView: android.view.View;
				public position: number;
				public id: number;
				public constructor(param0: android.view.View, param1: number, param2: number);
			}
			export class OnItemClickListener extends java.lang.Object {
				public static class: java.lang.Class<android.widget.AdapterView.OnItemClickListener>;
				/**
				 * Constructs a new instance of the android.widget.AdapterView$OnItemClickListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onItemClick(param0: android.widget.AdapterView<any>, param1: android.view.View, param2: number, param3: number): void;
				});
				public constructor();
				public onItemClick(param0: android.widget.AdapterView<any>, param1: android.view.View, param2: number, param3: number): void;
			}
			export class OnItemLongClickListener extends java.lang.Object {
				public static class: java.lang.Class<android.widget.AdapterView.OnItemLongClickListener>;
				/**
				 * Constructs a new instance of the android.widget.AdapterView$OnItemLongClickListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onItemLongClick(param0: android.widget.AdapterView<any>, param1: android.view.View, param2: number, param3: number): boolean;
				});
				public constructor();
				public onItemLongClick(param0: android.widget.AdapterView<any>, param1: android.view.View, param2: number, param3: number): boolean;
			}
			export class OnItemSelectedListener extends java.lang.Object {
				public static class: java.lang.Class<android.widget.AdapterView.OnItemSelectedListener>;
				/**
				 * Constructs a new instance of the android.widget.AdapterView$OnItemSelectedListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onItemSelected(param0: android.widget.AdapterView<any>, param1: android.view.View, param2: number, param3: number): void;
					onNothingSelected(param0: android.widget.AdapterView<any>): void;
				});
				public constructor();
				public onItemSelected(param0: android.widget.AdapterView<any>, param1: android.view.View, param2: number, param3: number): void;
				public onNothingSelected(param0: android.widget.AdapterView<any>): void;
			}
		}
	}
}

declare module android {
	export module widget {
		export abstract class AdapterViewAnimator extends android.widget.AdapterView<android.widget.Adapter> implements android.widget.Advanceable  {
			public static class: java.lang.Class<android.widget.AdapterViewAnimator>;
			public setInAnimation(param0: android.content.Context, param1: number): void;
			public deferNotifyDataSetChanged(): void;
			public onLayout(param0: boolean, param1: number, param2: number, param3: number, param4: number): void;
			public setSelection(param0: number): void;
			public focusableViewAvailable(param0: android.view.View): void;
			public createContextMenu(param0: android.view.ContextMenu): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onMeasure(param0: number, param1: number): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public setOutAnimation(param0: android.content.Context, param1: number): void;
			public addView(param0: android.view.View, param1: number, param2: number): void;
			public focusSearch(param0: android.view.View, param1: number): android.view.View;
			public requestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public getInAnimation(): android.animation.ObjectAnimator;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public showContextMenuForChild(param0: android.view.View): boolean;
			public fyiWillBeAdvancedByHostKThx(): void;
			public setRemoteViewsAdapter(param0: android.content.Intent): void;
			public bringChildToFront(param0: android.view.View): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public setAdapter(param0: android.widget.Adapter): void;
			public setDisplayedChild(param0: number): void;
			public sendAccessibilityEvent(param0: number): void;
			public onRestoreInstanceState(param0: android.os.Parcelable): void;
			public requestTransparentRegion(param0: android.view.View): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public getParentForAccessibility(): android.view.ViewParent;
			public getParent(): android.view.ViewParent;
			public startActionModeForChild(param0: android.view.View, param1: android.view.ActionMode.Callback): android.view.ActionMode;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public setInAnimation(param0: android.animation.ObjectAnimator): void;
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public requestChildFocus(param0: android.view.View, param1: android.view.View): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public requestChildRectangleOnScreen(param0: android.view.View, param1: android.graphics.Rect, param2: boolean): boolean;
			public onSaveInstanceState(): android.os.Parcelable;
			public focusSearch(param0: number): android.view.View;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public recomputeViewAttributes(param0: android.view.View): void;
			public showNext(): void;
			public setAdapter(param0: any): void;
			public setAnimateFirstView(param0: boolean): void;
			public isLayoutRequested(): boolean;
			public getSelectedView(): android.view.View;
			public advance(): void;
			public getDisplayedChild(): number;
			public invalidateChild(param0: android.view.View, param1: android.graphics.Rect): void;
			public onRemoteAdapterConnected(): boolean;
			public invalidateChildInParent(param0: native.Array<number>, param1: android.graphics.Rect): android.view.ViewParent;
			public getOutAnimation(): android.animation.ObjectAnimator;
			public showPrevious(): void;
			public getCurrentView(): android.view.View;
			public setOutAnimation(param0: android.animation.ObjectAnimator): void;
			public getAdapter(): any;
			public getBaseline(): number;
			public requestLayout(): void;
			public childDrawableStateChanged(param0: android.view.View): void;
			public addView(param0: android.view.View): void;
			public removeView(param0: android.view.View): void;
			public clearChildFocus(param0: android.view.View): void;
			public onRemoteAdapterDisconnected(): void;
			public updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public onTouchEvent(param0: android.view.MotionEvent): boolean;
			public requestDisallowInterceptTouchEvent(param0: boolean): void;
			public getAdapter(): android.widget.Adapter;
			public getChildVisibleRect(param0: android.view.View, param1: android.graphics.Rect, param2: android.graphics.Point): boolean;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public constructor(param0: android.content.Context);
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public addView(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams): void;
			public requestFitSystemWindows(): void;
			public addView(param0: android.view.View, param1: number): void;
		}
	}
}

declare module android {
	export module widget {
		export class AdapterViewFlipper extends android.widget.AdapterViewAnimator {
			public static class: java.lang.Class<android.widget.AdapterViewFlipper>;
			public startFlipping(): void;
			public focusableViewAvailable(param0: android.view.View): void;
			public createContextMenu(param0: android.view.ContextMenu): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public addView(param0: android.view.View, param1: number, param2: number): void;
			public focusSearch(param0: android.view.View, param1: number): android.view.View;
			public requestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public stopFlipping(): void;
			public showContextMenuForChild(param0: android.view.View): boolean;
			public fyiWillBeAdvancedByHostKThx(): void;
			public bringChildToFront(param0: android.view.View): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public setAdapter(param0: android.widget.Adapter): void;
			public onDetachedFromWindow(): void;
			public sendAccessibilityEvent(param0: number): void;
			public requestTransparentRegion(param0: android.view.View): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public getParentForAccessibility(): android.view.ViewParent;
			public getParent(): android.view.ViewParent;
			public startActionModeForChild(param0: android.view.View, param1: android.view.ActionMode.Callback): android.view.ActionMode;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public setFlipInterval(param0: number): void;
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public requestChildFocus(param0: android.view.View, param1: android.view.View): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public requestChildRectangleOnScreen(param0: android.view.View, param1: android.graphics.Rect, param2: boolean): boolean;
			public focusSearch(param0: number): android.view.View;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public recomputeViewAttributes(param0: android.view.View): void;
			public showNext(): void;
			public isLayoutRequested(): boolean;
			public advance(): void;
			public invalidateChild(param0: android.view.View, param1: android.graphics.Rect): void;
			public isAutoStart(): boolean;
			public invalidateChildInParent(param0: native.Array<number>, param1: android.graphics.Rect): android.view.ViewParent;
			public showPrevious(): void;
			public onWindowVisibilityChanged(param0: number): void;
			public getFlipInterval(): number;
			public requestLayout(): void;
			public childDrawableStateChanged(param0: android.view.View): void;
			public addView(param0: android.view.View): void;
			public removeView(param0: android.view.View): void;
			public clearChildFocus(param0: android.view.View): void;
			public isFlipping(): boolean;
			public updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public requestDisallowInterceptTouchEvent(param0: boolean): void;
			public getChildVisibleRect(param0: android.view.View, param1: android.graphics.Rect, param2: android.graphics.Point): boolean;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public setAutoStart(param0: boolean): void;
			public constructor(param0: android.content.Context);
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public addView(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams): void;
			public onAttachedToWindow(): void;
			public requestFitSystemWindows(): void;
			public addView(param0: android.view.View, param1: number): void;
		}
	}
}

declare module android {
	export module widget {
		export class Advanceable extends java.lang.Object {
			public static class: java.lang.Class<android.widget.Advanceable>;
			/**
			 * Constructs a new instance of the android.widget.Advanceable interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				advance(): void;
				fyiWillBeAdvancedByHostKThx(): void;
			});
			public constructor();
			public advance(): void;
			public fyiWillBeAdvancedByHostKThx(): void;
		}
	}
}

declare module android {
	export module widget {
		export class AlphabetIndexer extends android.database.DataSetObserver implements android.widget.SectionIndexer {
			public static class: java.lang.Class<android.widget.AlphabetIndexer>;
			public mDataCursor: android.database.Cursor;
			public mColumnIndex: number;
			public mAlphabet: string;
			public getSections(): native.Array<any>;
			public getPositionForSection(param0: number): number;
			public onInvalidated(): void;
			public constructor();
			public setCursor(param0: android.database.Cursor): void;
			public constructor(param0: android.database.Cursor, param1: number, param2: string);
			public compare(param0: string, param1: string): number;
			public getSectionForPosition(param0: number): number;
			public onChanged(): void;
		}
	}
}

declare module android {
	export module widget {
		export class AnalogClock extends android.view.View {
			public static class: java.lang.Class<android.widget.AnalogClock>;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public onSizeChanged(param0: number, param1: number, param2: number, param3: number): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onMeasure(param0: number, param1: number): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public constructor(param0: android.content.Context);
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public onDraw(param0: android.graphics.Canvas): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public onAttachedToWindow(): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public onDetachedFromWindow(): void;
			public sendAccessibilityEvent(param0: number): void;
		}
	}
}

declare module android {
	export module widget {
		export class ArrayAdapter<T>  extends android.widget.BaseAdapter implements android.widget.Filterable  {
			public static class: java.lang.Class<android.widget.ArrayAdapter<any>>;
			public getItem(param0: number): any;
			public getFilter(): android.widget.Filter;
			public getPosition(param0: any): number;
			public getItemId(param0: number): number;
			public constructor(param0: android.content.Context, param1: number, param2: java.util.List<any>);
			public add(param0: any): void;
			public addAll(param0: native.Array<any>): void;
			public remove(param0: any): void;
			public sort(param0: java.util.Comparator<any>): void;
			public static createFromResource(param0: android.content.Context, param1: number, param2: number): android.widget.ArrayAdapter<string>;
			public addAll(param0: java.util.Collection<any>): void;
			public isEnabled(param0: number): boolean;
			public getContext(): android.content.Context;
			public getCount(): number;
			public setNotifyOnChange(param0: boolean): void;
			public constructor(param0: android.content.Context, param1: number, param2: number, param3: java.util.List<any>);
			public clear(): void;
			public insert(param0: any, param1: number): void;
			public getDropDownView(param0: number, param1: android.view.View, param2: android.view.ViewGroup): android.view.View;
			public constructor(param0: android.content.Context, param1: number, param2: native.Array<any>);
			public constructor();
			public constructor(param0: android.content.Context, param1: number, param2: number, param3: native.Array<any>);
			public constructor(param0: android.content.Context, param1: number);
			public getView(param0: number, param1: android.view.View, param2: android.view.ViewGroup): android.view.View;
			public areAllItemsEnabled(): boolean;
			public setDropDownViewResource(param0: number): void;
			public constructor(param0: android.content.Context, param1: number, param2: number);
			public notifyDataSetChanged(): void;
		}
	}
}

declare module android {
	export module widget {
		export class AutoCompleteTextView extends android.widget.EditText implements android.widget.Filter.FilterListener {
			public static class: java.lang.Class<android.widget.AutoCompleteTextView>;
			public getAdapter(): android.widget.ListAdapter;
			public setText(param0: native.Array<string>, param1: number, param2: number): void;
			public getValidator(): android.widget.AutoCompleteTextView.Validator;
			public setThreshold(param0: number): void;
			public performFiltering(param0: string, param1: number): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public setOnItemClickListener(param0: android.widget.AdapterView.OnItemClickListener): void;
			public setFrame(param0: number, param1: number, param2: number, param3: number): boolean;
			public setOnClickListener(param0: android.view.View.OnClickListener): void;
			public setDropDownAnchor(param0: number): void;
			public getThreshold(): number;
			public getOnItemClickListener(): android.widget.AdapterView.OnItemClickListener;
			public getDropDownVerticalOffset(): number;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public onFocusChanged(param0: boolean, param1: number, param2: android.graphics.Rect): void;
			public setDropDownWidth(param0: number): void;
			public setAdapter(param0: android.widget.ListAdapter): void;
			public performCompletion(): void;
			public setText(param0: number): void;
			public setOnItemSelectedListener(param0: android.widget.AdapterView.OnItemSelectedListener): void;
			public setListSelection(param0: number): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public onDetachedFromWindow(): void;
			public sendAccessibilityEvent(param0: number): void;
			public setDropDownBackgroundResource(param0: number): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			/** @deprecated */
			public getItemSelectedListener(): android.widget.AdapterView.OnItemSelectedListener;
			public replaceText(param0: string): void;
			public setText(param0: string, param1: android.widget.TextView.BufferType): void;
			public setDropDownVerticalOffset(param0: number): void;
			public getListSelection(): number;
			public getDropDownHeight(): number;
			public getDropDownBackground(): android.graphics.drawable.Drawable;
			public getDropDownAnchor(): number;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public onKeyPreIme(param0: number, param1: android.view.KeyEvent): boolean;
			public convertSelectionToString(param0: any): string;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public onWindowFocusChanged(param0: boolean): void;
			public setText(param0: string, param1: boolean): void;
			public getFilter(): android.widget.Filter;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public getDropDownWidth(): number;
			public isPopupShowing(): boolean;
			public clearListSelection(): void;
			public setDropDownHorizontalOffset(param0: number): void;
			public getDropDownHorizontalOffset(): number;
			public setOnDismissListener(param0: android.widget.AutoCompleteTextView.OnDismissListener): void;
			public setCompletionHint(param0: string): void;
			public setValidator(param0: android.widget.AutoCompleteTextView.Validator): void;
			/** @deprecated */
			public getItemClickListener(): android.widget.AdapterView.OnItemClickListener;
			public onPreDraw(): boolean;
			public onFilterComplete(param0: number): void;
			public setText(param0: string): void;
			public performValidation(): void;
			public getOnItemSelectedListener(): android.widget.AdapterView.OnItemSelectedListener;
			public onDisplayHint(param0: number): void;
			public setDropDownBackgroundDrawable(param0: android.graphics.drawable.Drawable): void;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public setText(param0: number, param1: android.widget.TextView.BufferType): void;
			public enoughToFilter(): boolean;
			public isPerformingCompletion(): boolean;
			public dismissDropDown(): void;
			public constructor(param0: android.content.Context);
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public getCompletionHint(): string;
			public setDropDownHeight(param0: number): void;
			public onAttachedToWindow(): void;
			public onCommitCompletion(param0: android.view.inputmethod.CompletionInfo): void;
			public showDropDown(): void;
		}
		export module AutoCompleteTextView {
			export class OnDismissListener extends java.lang.Object {
				public static class: java.lang.Class<android.widget.AutoCompleteTextView.OnDismissListener>;
				/**
				 * Constructs a new instance of the android.widget.AutoCompleteTextView$OnDismissListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onDismiss(): void;
				});
				public constructor();
				public onDismiss(): void;
			}
			export class Validator extends java.lang.Object {
				public static class: java.lang.Class<android.widget.AutoCompleteTextView.Validator>;
				/**
				 * Constructs a new instance of the android.widget.AutoCompleteTextView$Validator interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					isValid(param0: string): boolean;
					fixText(param0: string): string;
				});
				public constructor();
				public isValid(param0: string): boolean;
				public fixText(param0: string): string;
			}
		}
	}
}

declare module android {
	export module widget {
		export abstract class BaseAdapter extends java.lang.Object implements android.widget.ListAdapter, android.widget.SpinnerAdapter {
			public static class: java.lang.Class<android.widget.BaseAdapter>;
			public getItem(param0: number): any;
			public getDropDownView(param0: number, param1: android.view.View, param2: android.view.ViewGroup): android.view.View;
			public registerDataSetObserver(param0: android.database.DataSetObserver): void;
			public isEmpty(): boolean;
			public getItemId(param0: number): number;
			public hasStableIds(): boolean;
			public constructor();
			public unregisterDataSetObserver(param0: android.database.DataSetObserver): void;
			public getView(param0: number, param1: android.view.View, param2: android.view.ViewGroup): android.view.View;
			public getItemViewType(param0: number): number;
			public getViewTypeCount(): number;
			public areAllItemsEnabled(): boolean;
			public isEnabled(param0: number): boolean;
			public getCount(): number;
			public notifyDataSetInvalidated(): void;
			public notifyDataSetChanged(): void;
		}
	}
}

declare module android {
	export module widget {
		export abstract class BaseExpandableListAdapter extends java.lang.Object implements android.widget.ExpandableListAdapter, android.widget.HeterogeneousExpandableList {
			public static class: java.lang.Class<android.widget.BaseExpandableListAdapter>;
			public registerDataSetObserver(param0: android.database.DataSetObserver): void;
			public getChildrenCount(param0: number): number;
			public getChildTypeCount(): number;
			public hasStableIds(): boolean;
			public onGroupCollapsed(param0: number): void;
			public getCombinedGroupId(param0: number): number;
			public getGroupView(param0: number, param1: boolean, param2: android.view.View, param3: android.view.ViewGroup): android.view.View;
			public getChild(param0: number, param1: number): any;
			public getChildView(param0: number, param1: number, param2: boolean, param3: android.view.View, param4: android.view.ViewGroup): android.view.View;
			public unregisterDataSetObserver(param0: android.database.DataSetObserver): void;
			public getGroupId(param0: number): number;
			public getGroupType(param0: number): number;
			public getCombinedChildId(param0: number, param1: number): number;
			public getGroupCount(): number;
			public isEmpty(): boolean;
			public getChildId(param0: number, param1: number): number;
			public constructor();
			public onGroupExpanded(param0: number): void;
			public isChildSelectable(param0: number, param1: number): boolean;
			public getGroup(param0: number): any;
			public areAllItemsEnabled(): boolean;
			public getGroupTypeCount(): number;
			public getChildType(param0: number, param1: number): number;
			public notifyDataSetInvalidated(): void;
			public notifyDataSetChanged(): void;
		}
	}
}

declare module android {
	export module widget {
		export class Button extends android.widget.TextView {
			public static class: java.lang.Class<android.widget.Button>;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public constructor(param0: android.content.Context);
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public onPreDraw(): boolean;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public sendAccessibilityEvent(param0: number): void;
		}
	}
}

declare module android {
	export module widget {
		export class CalendarView extends android.widget.FrameLayout {
			public static class: java.lang.Class<android.widget.CalendarView>;
			public getWeekDayTextAppearance(): number;
			public setMinDate(param0: number): void;
			public getWeekNumberColor(): number;
			public focusableViewAvailable(param0: android.view.View): void;
			public createContextMenu(param0: android.view.ContextMenu): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public getSelectedDateVerticalBar(): android.graphics.drawable.Drawable;
			public setOnDateChangeListener(param0: android.widget.CalendarView.OnDateChangeListener): void;
			public addView(param0: android.view.View, param1: number, param2: number): void;
			public getWeekSeparatorLineColor(): number;
			public focusSearch(param0: android.view.View, param1: number): android.view.View;
			public requestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public setDateTextAppearance(param0: number): void;
			public showContextMenuForChild(param0: android.view.View): boolean;
			public setMaxDate(param0: number): void;
			public setFocusedMonthDateColor(param0: number): void;
			public bringChildToFront(param0: android.view.View): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public getDateTextAppearance(): number;
			public setEnabled(param0: boolean): void;
			public sendAccessibilityEvent(param0: number): void;
			public setWeekDayTextAppearance(param0: number): void;
			public setWeekNumberColor(param0: number): void;
			public requestTransparentRegion(param0: android.view.View): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public getParentForAccessibility(): android.view.ViewParent;
			public getParent(): android.view.ViewParent;
			public setShownWeekCount(param0: number): void;
			public startActionModeForChild(param0: android.view.View, param1: android.view.ActionMode.Callback): android.view.ActionMode;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public setWeekSeparatorLineColor(param0: number): void;
			public setUnfocusedMonthDateColor(param0: number): void;
			public getSelectedWeekBackgroundColor(): number;
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public requestChildFocus(param0: android.view.View, param1: android.view.View): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public getFocusedMonthDateColor(): number;
			public setSelectedDateVerticalBar(param0: android.graphics.drawable.Drawable): void;
			public setFirstDayOfWeek(param0: number): void;
			public requestChildRectangleOnScreen(param0: android.view.View, param1: android.graphics.Rect, param2: boolean): boolean;
			public getMinDate(): number;
			public setDate(param0: number, param1: boolean, param2: boolean): void;
			public focusSearch(param0: number): android.view.View;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public recomputeViewAttributes(param0: android.view.View): void;
			public getDate(): number;
			public isLayoutRequested(): boolean;
			public getShowWeekNumber(): boolean;
			public setDate(param0: number): void;
			public getShownWeekCount(): number;
			public getUnfocusedMonthDateColor(): number;
			public getFirstDayOfWeek(): number;
			public getMaxDate(): number;
			public invalidateChild(param0: android.view.View, param1: android.graphics.Rect): void;
			public invalidateChildInParent(param0: native.Array<number>, param1: android.graphics.Rect): android.view.ViewParent;
			public onConfigurationChanged(param0: android.content.res.Configuration): void;
			public requestLayout(): void;
			public setSelectedWeekBackgroundColor(param0: number): void;
			public childDrawableStateChanged(param0: android.view.View): void;
			public addView(param0: android.view.View): void;
			public removeView(param0: android.view.View): void;
			public setSelectedDateVerticalBar(param0: number): void;
			public clearChildFocus(param0: android.view.View): void;
			public setShowWeekNumber(param0: boolean): void;
			public updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public requestDisallowInterceptTouchEvent(param0: boolean): void;
			public getChildVisibleRect(param0: android.view.View, param1: android.graphics.Rect, param2: android.graphics.Point): boolean;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public isEnabled(): boolean;
			public constructor(param0: android.content.Context);
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public addView(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams): void;
			public requestFitSystemWindows(): void;
			public addView(param0: android.view.View, param1: number): void;
		}
		export module CalendarView {
			export class OnDateChangeListener extends java.lang.Object {
				public static class: java.lang.Class<android.widget.CalendarView.OnDateChangeListener>;
				/**
				 * Constructs a new instance of the android.widget.CalendarView$OnDateChangeListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onSelectedDayChange(param0: android.widget.CalendarView, param1: number, param2: number, param3: number): void;
				});
				public constructor();
				public onSelectedDayChange(param0: android.widget.CalendarView, param1: number, param2: number, param3: number): void;
			}
		}
	}
}

declare module android {
	export module widget {
		export class CheckBox extends android.widget.CompoundButton {
			public static class: java.lang.Class<android.widget.CheckBox>;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public setChecked(param0: boolean): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public isChecked(): boolean;
			public toggle(): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public constructor(param0: android.content.Context);
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public onPreDraw(): boolean;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public sendAccessibilityEvent(param0: number): void;
		}
	}
}

declare module android {
	export module widget {
		export class Checkable extends java.lang.Object {
			public static class: java.lang.Class<android.widget.Checkable>;
			/**
			 * Constructs a new instance of the android.widget.Checkable interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				setChecked(param0: boolean): void;
				isChecked(): boolean;
				toggle(): void;
			});
			public constructor();
			public setChecked(param0: boolean): void;
			public isChecked(): boolean;
			public toggle(): void;
		}
	}
}

declare module android {
	export module widget {
		export class CheckedTextView extends android.widget.TextView implements android.widget.Checkable {
			public static class: java.lang.Class<android.widget.CheckedTextView>;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public toggle(): void;
			public drawableStateChanged(): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onCreateDrawableState(param0: number): native.Array<number>;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public setCheckMarkDrawable(param0: number): void;
			public setCheckMarkDrawable(param0: android.graphics.drawable.Drawable): void;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public onPreDraw(): boolean;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public sendAccessibilityEvent(param0: number): void;
			public setChecked(param0: boolean): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public getCheckMarkDrawable(): android.graphics.drawable.Drawable;
			public isChecked(): boolean;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public constructor(param0: android.content.Context);
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public onDraw(param0: android.graphics.Canvas): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public onRtlPropertiesChanged(param0: number): void;
		}
	}
}

declare module android {
	export module widget {
		export class Chronometer extends android.widget.TextView {
			public static class: java.lang.Class<android.widget.Chronometer>;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public setBase(param0: number): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public getBase(): number;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public setOnChronometerTickListener(param0: android.widget.Chronometer.OnChronometerTickListener): void;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public stop(): void;
			public onWindowVisibilityChanged(param0: number): void;
			public onPreDraw(): boolean;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public start(): void;
			public onDetachedFromWindow(): void;
			public sendAccessibilityEvent(param0: number): void;
			public setFormat(param0: string): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public getOnChronometerTickListener(): android.widget.Chronometer.OnChronometerTickListener;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public constructor(param0: android.content.Context);
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public getFormat(): string;
		}
		export module Chronometer {
			export class OnChronometerTickListener extends java.lang.Object {
				public static class: java.lang.Class<android.widget.Chronometer.OnChronometerTickListener>;
				/**
				 * Constructs a new instance of the android.widget.Chronometer$OnChronometerTickListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onChronometerTick(param0: android.widget.Chronometer): void;
				});
				public constructor();
				public onChronometerTick(param0: android.widget.Chronometer): void;
			}
		}
	}
}

declare module android {
	export module widget {
		export abstract class CompoundButton extends android.widget.Button implements android.widget.Checkable {
			public static class: java.lang.Class<android.widget.CompoundButton>;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public toggle(): void;
			public drawableStateChanged(): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public onCreateDrawableState(param0: number): native.Array<number>;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public getCompoundPaddingRight(): number;
			public setOnCheckedChangeListener(param0: android.widget.CompoundButton.OnCheckedChangeListener): void;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public jumpDrawablesToCurrentState(): void;
			public onPreDraw(): boolean;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public sendAccessibilityEvent(param0: number): void;
			public onRestoreInstanceState(param0: android.os.Parcelable): void;
			public setChecked(param0: boolean): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public isChecked(): boolean;
			public setButtonDrawable(param0: number): void;
			public getCompoundPaddingLeft(): number;
			public verifyDrawable(param0: android.graphics.drawable.Drawable): boolean;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public setButtonDrawable(param0: android.graphics.drawable.Drawable): void;
			public constructor(param0: android.content.Context);
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public onDraw(param0: android.graphics.Canvas): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public performClick(): boolean;
			public onSaveInstanceState(): android.os.Parcelable;
		}
		export module CompoundButton {
			export class OnCheckedChangeListener extends java.lang.Object {
				public static class: java.lang.Class<android.widget.CompoundButton.OnCheckedChangeListener>;
				/**
				 * Constructs a new instance of the android.widget.CompoundButton$OnCheckedChangeListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onCheckedChanged(param0: android.widget.CompoundButton, param1: boolean): void;
				});
				public constructor();
				public onCheckedChanged(param0: android.widget.CompoundButton, param1: boolean): void;
			}
		}
	}
}

declare module android {
	export module widget {
		export abstract class CursorAdapter extends android.widget.BaseAdapter implements android.widget.Filterable {
			public static class: java.lang.Class<android.widget.CursorAdapter>;
			public static FLAG_AUTO_REQUERY: number;
			public static FLAG_REGISTER_CONTENT_OBSERVER: number;
			public getItem(param0: number): any;
			/** @deprecated */
			public constructor(param0: android.content.Context, param1: android.database.Cursor);
			public getFilter(): android.widget.Filter;
			public getItemId(param0: number): number;
			public constructor(param0: android.content.Context, param1: android.database.Cursor, param2: boolean);
			public hasStableIds(): boolean;
			public newView(param0: android.content.Context, param1: android.database.Cursor, param2: android.view.ViewGroup): android.view.View;
			public isEnabled(param0: number): boolean;
			public getCount(): number;
			public getDropDownView(param0: number, param1: android.view.View, param2: android.view.ViewGroup): android.view.View;
			public constructor(param0: android.content.Context, param1: android.database.Cursor, param2: number);
			public constructor();
			public bindView(param0: android.view.View, param1: android.content.Context, param2: android.database.Cursor): void;
			public swapCursor(param0: android.database.Cursor): android.database.Cursor;
			public getView(param0: number, param1: android.view.View, param2: android.view.ViewGroup): android.view.View;
			/** @deprecated */
			public init(param0: android.content.Context, param1: android.database.Cursor, param2: boolean): void;
			public getCursor(): android.database.Cursor;
			public runQueryOnBackgroundThread(param0: string): android.database.Cursor;
			public newDropDownView(param0: android.content.Context, param1: android.database.Cursor, param2: android.view.ViewGroup): android.view.View;
			public areAllItemsEnabled(): boolean;
			public changeCursor(param0: android.database.Cursor): void;
			public convertToString(param0: android.database.Cursor): string;
			public getFilterQueryProvider(): android.widget.FilterQueryProvider;
			public setFilterQueryProvider(param0: android.widget.FilterQueryProvider): void;
			public onContentChanged(): void;
		}
	}
}

declare module android {
	export module widget {
		export abstract class CursorTreeAdapter extends android.widget.BaseExpandableListAdapter implements android.widget.Filterable {
			public static class: java.lang.Class<android.widget.CursorTreeAdapter>;
			public getFilter(): android.widget.Filter;
			public constructor(param0: android.database.Cursor, param1: android.content.Context, param2: boolean);
			public setGroupCursor(param0: android.database.Cursor): void;
			public registerDataSetObserver(param0: android.database.DataSetObserver): void;
			public getChildrenCount(param0: number): number;
			public setChildrenCursor(param0: number, param1: android.database.Cursor): void;
			public newChildView(param0: android.content.Context, param1: android.database.Cursor, param2: boolean, param3: android.view.ViewGroup): android.view.View;
			public hasStableIds(): boolean;
			public getChildTypeCount(): number;
			public onGroupCollapsed(param0: number): void;
			public getGroupView(param0: number, param1: boolean, param2: android.view.View, param3: android.view.ViewGroup): android.view.View;
			public getCombinedGroupId(param0: number): number;
			public getChildView(param0: number, param1: number, param2: boolean, param3: android.view.View, param4: android.view.ViewGroup): android.view.View;
			public getChild(param0: number, param1: number): any;
			public unregisterDataSetObserver(param0: android.database.DataSetObserver): void;
			public getChildrenCursor(param0: android.database.Cursor): android.database.Cursor;
			public getGroup(param0: number): android.database.Cursor;
			public getGroupId(param0: number): number;
			public getGroupType(param0: number): number;
			public getCombinedChildId(param0: number, param1: number): number;
			public getGroupCount(): number;
			public isEmpty(): boolean;
			public getChild(param0: number, param1: number): android.database.Cursor;
			public getChildId(param0: number, param1: number): number;
			public bindChildView(param0: android.view.View, param1: android.content.Context, param2: android.database.Cursor, param3: boolean): void;
			public constructor();
			public constructor(param0: android.database.Cursor, param1: android.content.Context);
			public notifyDataSetChanged(param0: boolean): void;
			public onGroupExpanded(param0: number): void;
			public isChildSelectable(param0: number, param1: number): boolean;
			public getGroup(param0: number): any;
			public runQueryOnBackgroundThread(param0: string): android.database.Cursor;
			public getCursor(): android.database.Cursor;
			public getGroupTypeCount(): number;
			public areAllItemsEnabled(): boolean;
			public bindGroupView(param0: android.view.View, param1: android.content.Context, param2: android.database.Cursor, param3: boolean): void;
			public getChildType(param0: number, param1: number): number;
			public convertToString(param0: android.database.Cursor): string;
			public changeCursor(param0: android.database.Cursor): void;
			public newGroupView(param0: android.content.Context, param1: android.database.Cursor, param2: boolean, param3: android.view.ViewGroup): android.view.View;
			public getFilterQueryProvider(): android.widget.FilterQueryProvider;
			public setFilterQueryProvider(param0: android.widget.FilterQueryProvider): void;
			public notifyDataSetInvalidated(): void;
			public notifyDataSetChanged(): void;
		}
	}
}

declare module android {
	export module widget {
		export class DatePicker extends android.widget.FrameLayout {
			public static class: java.lang.Class<android.widget.DatePicker>;
			public setSpinnersShown(param0: boolean): void;
			public setCalendarViewShown(param0: boolean): void;
			public setMinDate(param0: number): void;
			public getSpinnersShown(): boolean;
			public focusableViewAvailable(param0: android.view.View): void;
			public createContextMenu(param0: android.view.ContextMenu): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public addView(param0: android.view.View, param1: number, param2: number): void;
			public onPopulateAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public focusSearch(param0: android.view.View, param1: number): android.view.View;
			public requestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public showContextMenuForChild(param0: android.view.View): boolean;
			public setMaxDate(param0: number): void;
			public bringChildToFront(param0: android.view.View): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public setEnabled(param0: boolean): void;
			public sendAccessibilityEvent(param0: number): void;
			public onRestoreInstanceState(param0: android.os.Parcelable): void;
			public init(param0: number, param1: number, param2: number, param3: android.widget.DatePicker.OnDateChangedListener): void;
			public requestTransparentRegion(param0: android.view.View): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public getParentForAccessibility(): android.view.ViewParent;
			public getCalendarView(): android.widget.CalendarView;
			public getParent(): android.view.ViewParent;
			public dispatchRestoreInstanceState(param0: android.util.SparseArray<android.os.Parcelable>): void;
			public startActionModeForChild(param0: android.view.View, param1: android.view.ActionMode.Callback): android.view.ActionMode;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public requestChildFocus(param0: android.view.View, param1: android.view.View): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public requestChildRectangleOnScreen(param0: android.view.View, param1: android.graphics.Rect, param2: boolean): boolean;
			public onSaveInstanceState(): android.os.Parcelable;
			public getMinDate(): number;
			public focusSearch(param0: number): android.view.View;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public recomputeViewAttributes(param0: android.view.View): void;
			public updateDate(param0: number, param1: number, param2: number): void;
			public isLayoutRequested(): boolean;
			public getMaxDate(): number;
			public invalidateChild(param0: android.view.View, param1: android.graphics.Rect): void;
			public invalidateChildInParent(param0: native.Array<number>, param1: android.graphics.Rect): android.view.ViewParent;
			public onConfigurationChanged(param0: android.content.res.Configuration): void;
			public requestLayout(): void;
			public childDrawableStateChanged(param0: android.view.View): void;
			public addView(param0: android.view.View): void;
			public removeView(param0: android.view.View): void;
			public clearChildFocus(param0: android.view.View): void;
			public updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public getDayOfMonth(): number;
			public requestDisallowInterceptTouchEvent(param0: boolean): void;
			public getCalendarViewShown(): boolean;
			public getChildVisibleRect(param0: android.view.View, param1: android.graphics.Rect, param2: android.graphics.Point): boolean;
			public getYear(): number;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public isEnabled(): boolean;
			public getMonth(): number;
			public constructor(param0: android.content.Context);
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public dispatchPopulateAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): boolean;
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public addView(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams): void;
			public requestFitSystemWindows(): void;
			public addView(param0: android.view.View, param1: number): void;
		}
		export module DatePicker {
			export class OnDateChangedListener extends java.lang.Object {
				public static class: java.lang.Class<android.widget.DatePicker.OnDateChangedListener>;
				/**
				 * Constructs a new instance of the android.widget.DatePicker$OnDateChangedListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onDateChanged(param0: android.widget.DatePicker, param1: number, param2: number, param3: number): void;
				});
				public constructor();
				public onDateChanged(param0: android.widget.DatePicker, param1: number, param2: number, param3: number): void;
			}
		}
	}
}

declare module android {
	export module widget {
		export class DialerFilter extends android.widget.RelativeLayout {
			public static class: java.lang.Class<android.widget.DialerFilter>;
			public static DIGITS_AND_LETTERS: number;
			public static DIGITS_AND_LETTERS_NO_DIGITS: number;
			public static DIGITS_AND_LETTERS_NO_LETTERS: number;
			public static DIGITS_ONLY: number;
			public static LETTERS_ONLY: number;
			public getLetters(): string;
			public setDigitsWatcher(param0: android.text.TextWatcher): void;
			public append(param0: string): void;
			public focusableViewAvailable(param0: android.view.View): void;
			public createContextMenu(param0: android.view.ContextMenu): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public clearText(): void;
			public addView(param0: android.view.View, param1: number, param2: number): void;
			public focusSearch(param0: android.view.View, param1: number): android.view.View;
			public requestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public onFinishInflate(): void;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public showContextMenuForChild(param0: android.view.View): boolean;
			public onFocusChanged(param0: boolean, param1: number, param2: android.graphics.Rect): void;
			public onModeChange(param0: number, param1: number): void;
			public bringChildToFront(param0: android.view.View): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public sendAccessibilityEvent(param0: number): void;
			public setLettersWatcher(param0: android.text.TextWatcher): void;
			public requestTransparentRegion(param0: android.view.View): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public setFilterWatcher(param0: android.text.TextWatcher): void;
			public getParentForAccessibility(): android.view.ViewParent;
			public setMode(param0: number): void;
			public getParent(): android.view.ViewParent;
			public isQwertyKeyboard(): boolean;
			public getFilterText(): string;
			public startActionModeForChild(param0: android.view.View, param1: android.view.ActionMode.Callback): android.view.ActionMode;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public requestChildFocus(param0: android.view.View, param1: android.view.View): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public getMode(): number;
			public requestChildRectangleOnScreen(param0: android.view.View, param1: android.graphics.Rect, param2: boolean): boolean;
			public focusSearch(param0: number): android.view.View;
			public removeFilterWatcher(param0: android.text.TextWatcher): void;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public recomputeViewAttributes(param0: android.view.View): void;
			public isLayoutRequested(): boolean;
			public invalidateChild(param0: android.view.View, param1: android.graphics.Rect): void;
			public invalidateChildInParent(param0: native.Array<number>, param1: android.graphics.Rect): android.view.ViewParent;
			public getDigits(): string;
			public requestLayout(): void;
			public childDrawableStateChanged(param0: android.view.View): void;
			public addView(param0: android.view.View): void;
			public removeView(param0: android.view.View): void;
			public clearChildFocus(param0: android.view.View): void;
			public updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public requestDisallowInterceptTouchEvent(param0: boolean): void;
			public getChildVisibleRect(param0: android.view.View, param1: android.graphics.Rect, param2: android.graphics.Point): boolean;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public constructor(param0: android.content.Context);
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public addView(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams): void;
			public requestFitSystemWindows(): void;
			public addView(param0: android.view.View, param1: number): void;
		}
	}
}

declare module android {
	export module widget {
		export class DigitalClock extends android.widget.TextView {
			public static class: java.lang.Class<android.widget.DigitalClock>;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public constructor(param0: android.content.Context);
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public onPreDraw(): boolean;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public onAttachedToWindow(): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public onDetachedFromWindow(): void;
			public sendAccessibilityEvent(param0: number): void;
		}
	}
}

declare module android {
	export module widget {
		export class EdgeEffect extends java.lang.Object {
			public static class: java.lang.Class<android.widget.EdgeEffect>;
			public isFinished(): boolean;
			public draw(param0: android.graphics.Canvas): boolean;
			public finish(): void;
			public constructor(param0: android.content.Context);
			public setSize(param0: number, param1: number): void;
			public onPull(param0: number): void;
			public onRelease(): void;
			public onAbsorb(param0: number): void;
		}
	}
}

declare module android {
	export module widget {
		export class EditText extends android.widget.TextView {
			public static class: java.lang.Class<android.widget.EditText>;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public selectAll(): void;
			public setText(param0: native.Array<string>, param1: number, param2: number): void;
			public setSelection(param0: number): void;
			public getDefaultMovementMethod(): android.text.method.MovementMethod;
			public extendSelection(param0: number): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public getText(): android.text.Editable;
			public onPreDraw(): boolean;
			public setText(param0: number): void;
			public getDefaultEditable(): boolean;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public sendAccessibilityEvent(param0: number): void;
			public setText(param0: string): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public setText(param0: string, param1: android.widget.TextView.BufferType): void;
			public setEllipsize(param0: android.text.TextUtils.TruncateAt): void;
			public getText(): string;
			public setSelection(param0: number, param1: number): void;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public setText(param0: number, param1: android.widget.TextView.BufferType): void;
			public constructor(param0: android.content.Context);
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
		}
	}
}

declare module android {
	export module widget {
		export class ExpandableListAdapter extends java.lang.Object {
			public static class: java.lang.Class<android.widget.ExpandableListAdapter>;
			/**
			 * Constructs a new instance of the android.widget.ExpandableListAdapter interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				registerDataSetObserver(param0: android.database.DataSetObserver): void;
				unregisterDataSetObserver(param0: android.database.DataSetObserver): void;
				getGroupCount(): number;
				getChildrenCount(param0: number): number;
				getGroup(param0: number): any;
				getChild(param0: number, param1: number): any;
				getGroupId(param0: number): number;
				getChildId(param0: number, param1: number): number;
				hasStableIds(): boolean;
				getGroupView(param0: number, param1: boolean, param2: android.view.View, param3: android.view.ViewGroup): android.view.View;
				getChildView(param0: number, param1: number, param2: boolean, param3: android.view.View, param4: android.view.ViewGroup): android.view.View;
				isChildSelectable(param0: number, param1: number): boolean;
				areAllItemsEnabled(): boolean;
				isEmpty(): boolean;
				onGroupExpanded(param0: number): void;
				onGroupCollapsed(param0: number): void;
				getCombinedChildId(param0: number, param1: number): number;
				getCombinedGroupId(param0: number): number;
			});
			public constructor();
			public registerDataSetObserver(param0: android.database.DataSetObserver): void;
			public isEmpty(): boolean;
			public getChildrenCount(param0: number): number;
			public getChildId(param0: number, param1: number): number;
			public hasStableIds(): boolean;
			public onGroupCollapsed(param0: number): void;
			public getGroupView(param0: number, param1: boolean, param2: android.view.View, param3: android.view.ViewGroup): android.view.View;
			public getCombinedGroupId(param0: number): number;
			public getChild(param0: number, param1: number): any;
			public getChildView(param0: number, param1: number, param2: boolean, param3: android.view.View, param4: android.view.ViewGroup): android.view.View;
			public unregisterDataSetObserver(param0: android.database.DataSetObserver): void;
			public onGroupExpanded(param0: number): void;
			public isChildSelectable(param0: number, param1: number): boolean;
			public getGroup(param0: number): any;
			public getGroupId(param0: number): number;
			public areAllItemsEnabled(): boolean;
			public getCombinedChildId(param0: number, param1: number): number;
			public getGroupCount(): number;
		}
	}
}

declare module android {
	export module widget {
		export class ExpandableListView extends android.widget.ListView {
			public static class: java.lang.Class<android.widget.ExpandableListView>;
			public static PACKED_POSITION_TYPE_GROUP: number;
			public static PACKED_POSITION_TYPE_CHILD: number;
			public static PACKED_POSITION_TYPE_NULL: number;
			public static PACKED_POSITION_VALUE_NULL: number;
			public static CHILD_INDICATOR_INHERIT: number;
			public getAdapter(): android.widget.ListAdapter;
			public setSelectedChild(param0: number, param1: number, param2: boolean): boolean;
			public setOnGroupCollapseListener(param0: android.widget.ExpandableListView.OnGroupCollapseListener): void;
			public focusableViewAvailable(param0: android.view.View): void;
			public createContextMenu(param0: android.view.ContextMenu): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public setOnItemClickListener(param0: android.widget.AdapterView.OnItemClickListener): void;
			public static getPackedPositionChild(param0: number): number;
			public addView(param0: android.view.View, param1: number, param2: number): void;
			public focusSearch(param0: android.view.View, param1: number): android.view.View;
			public requestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public setChildDivider(param0: android.graphics.drawable.Drawable): void;
			public showContextMenuForChild(param0: android.view.View): boolean;
			public setAdapter(param0: android.widget.ListAdapter): void;
			public isGroupExpanded(param0: number): boolean;
			public beforeTextChanged(param0: string, param1: number, param2: number, param3: number): void;
			public bringChildToFront(param0: android.view.View): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public getSelectedId(): number;
			public sendAccessibilityEvent(param0: number): void;
			public onRestoreInstanceState(param0: android.os.Parcelable): void;
			public requestTransparentRegion(param0: android.view.View): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public afterTextChanged(param0: android.text.Editable): void;
			public getParentForAccessibility(): android.view.ViewParent;
			public setIndicatorBounds(param0: number, param1: number): void;
			public getParent(): android.view.ViewParent;
			public static getPackedPositionType(param0: number): number;
			public onTextChanged(param0: string, param1: number, param2: number, param3: number): void;
			public startActionModeForChild(param0: android.view.View, param1: android.view.ActionMode.Callback): android.view.ActionMode;
			public setAdapter(param0: android.widget.ExpandableListAdapter): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public dispatchDraw(param0: android.graphics.Canvas): void;
			public expandGroup(param0: number): boolean;
			public setOnGroupClickListener(param0: android.widget.ExpandableListView.OnGroupClickListener): void;
			public setSelectedGroup(param0: number): void;
			public collapseGroup(param0: number): boolean;
			public static getPackedPositionForGroup(param0: number): number;
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public requestChildFocus(param0: android.view.View, param1: android.view.View): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public getFlatListPosition(param0: number): number;
			public requestChildRectangleOnScreen(param0: android.view.View, param1: android.graphics.Rect, param2: boolean): boolean;
			public setChildIndicator(param0: android.graphics.drawable.Drawable): void;
			public onSaveInstanceState(): android.os.Parcelable;
			public expandGroup(param0: number, param1: boolean): boolean;
			public focusSearch(param0: number): android.view.View;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public recomputeViewAttributes(param0: android.view.View): void;
			public setAdapter(param0: any): void;
			public onTouchModeChanged(param0: boolean): void;
			public isLayoutRequested(): boolean;
			public invalidateChild(param0: android.view.View, param1: android.graphics.Rect): void;
			public setChildIndicatorBoundsRelative(param0: number, param1: number): void;
			public static getPackedPositionGroup(param0: number): number;
			public invalidateChildInParent(param0: native.Array<number>, param1: android.graphics.Rect): android.view.ViewParent;
			public setChildIndicatorBounds(param0: number, param1: number): void;
			public onGlobalLayout(): void;
			public setOnGroupExpandListener(param0: android.widget.ExpandableListView.OnGroupExpandListener): void;
			public getAdapter(): any;
			public performItemClick(param0: android.view.View, param1: number, param2: number): boolean;
			public getExpandableListPosition(param0: number): number;
			public requestLayout(): void;
			public onFilterComplete(param0: number): void;
			public childDrawableStateChanged(param0: android.view.View): void;
			public addView(param0: android.view.View): void;
			public setGroupIndicator(param0: android.graphics.drawable.Drawable): void;
			public removeView(param0: android.view.View): void;
			public clearChildFocus(param0: android.view.View): void;
			public setOnChildClickListener(param0: android.widget.ExpandableListView.OnChildClickListener): void;
			public setIndicatorBoundsRelative(param0: number, param1: number): void;
			public updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public static getPackedPositionForChild(param0: number, param1: number): number;
			public requestDisallowInterceptTouchEvent(param0: boolean): void;
			public getSelectedPosition(): number;
			public getChildVisibleRect(param0: android.view.View, param1: android.graphics.Rect, param2: android.graphics.Point): boolean;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public getExpandableListAdapter(): android.widget.ExpandableListAdapter;
			public constructor(param0: android.content.Context);
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public addView(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams): void;
			public onRtlPropertiesChanged(param0: number): void;
			public requestFitSystemWindows(): void;
			public addView(param0: android.view.View, param1: number): void;
		}
		export module ExpandableListView {
			export class ExpandableListContextMenuInfo extends java.lang.Object implements android.view.ContextMenu.ContextMenuInfo {
				public static class: java.lang.Class<android.widget.ExpandableListView.ExpandableListContextMenuInfo>;
				public targetView: android.view.View;
				public packedPosition: number;
				public id: number;
				public constructor(param0: android.view.View, param1: number, param2: number);
			}
			export class OnChildClickListener extends java.lang.Object {
				public static class: java.lang.Class<android.widget.ExpandableListView.OnChildClickListener>;
				/**
				 * Constructs a new instance of the android.widget.ExpandableListView$OnChildClickListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onChildClick(param0: android.widget.ExpandableListView, param1: android.view.View, param2: number, param3: number, param4: number): boolean;
				});
				public constructor();
				public onChildClick(param0: android.widget.ExpandableListView, param1: android.view.View, param2: number, param3: number, param4: number): boolean;
			}
			export class OnGroupClickListener extends java.lang.Object {
				public static class: java.lang.Class<android.widget.ExpandableListView.OnGroupClickListener>;
				/**
				 * Constructs a new instance of the android.widget.ExpandableListView$OnGroupClickListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onGroupClick(param0: android.widget.ExpandableListView, param1: android.view.View, param2: number, param3: number): boolean;
				});
				public constructor();
				public onGroupClick(param0: android.widget.ExpandableListView, param1: android.view.View, param2: number, param3: number): boolean;
			}
			export class OnGroupCollapseListener extends java.lang.Object {
				public static class: java.lang.Class<android.widget.ExpandableListView.OnGroupCollapseListener>;
				/**
				 * Constructs a new instance of the android.widget.ExpandableListView$OnGroupCollapseListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onGroupCollapse(param0: number): void;
				});
				public constructor();
				public onGroupCollapse(param0: number): void;
			}
			export class OnGroupExpandListener extends java.lang.Object {
				public static class: java.lang.Class<android.widget.ExpandableListView.OnGroupExpandListener>;
				/**
				 * Constructs a new instance of the android.widget.ExpandableListView$OnGroupExpandListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onGroupExpand(param0: number): void;
				});
				public constructor();
				public onGroupExpand(param0: number): void;
			}
		}
	}
}

declare module android {
	export module widget {
		export abstract class Filter extends java.lang.Object {
			public static class: java.lang.Class<android.widget.Filter>;
			public convertResultToString(param0: any): string;
			public filter(param0: string, param1: android.widget.Filter.FilterListener): void;
			public publishResults(param0: string, param1: android.widget.Filter.FilterResults): void;
			public filter(param0: string): void;
			public performFiltering(param0: string): android.widget.Filter.FilterResults;
			public constructor();
		}
		export module Filter {
			export class FilterListener extends java.lang.Object {
				public static class: java.lang.Class<android.widget.Filter.FilterListener>;
				/**
				 * Constructs a new instance of the android.widget.Filter$FilterListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onFilterComplete(param0: number): void;
				});
				public constructor();
				public onFilterComplete(param0: number): void;
			}
			export class FilterResults extends java.lang.Object {
				public static class: java.lang.Class<android.widget.Filter.FilterResults>;
				public values: any;
				public count: number;
				public constructor();
			}
		}
	}
}

declare module android {
	export module widget {
		export class FilterQueryProvider extends java.lang.Object {
			public static class: java.lang.Class<android.widget.FilterQueryProvider>;
			/**
			 * Constructs a new instance of the android.widget.FilterQueryProvider interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				runQuery(param0: string): android.database.Cursor;
			});
			public constructor();
			public runQuery(param0: string): android.database.Cursor;
		}
	}
}

declare module android {
	export module widget {
		export class Filterable extends java.lang.Object {
			public static class: java.lang.Class<android.widget.Filterable>;
			/**
			 * Constructs a new instance of the android.widget.Filterable interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				getFilter(): android.widget.Filter;
			});
			public constructor();
			public getFilter(): android.widget.Filter;
		}
	}
}

declare module android {
	export module widget {
		export class FrameLayout extends android.view.ViewGroup {
			public static class: java.lang.Class<android.widget.FrameLayout>;
			public onLayout(param0: boolean, param1: number, param2: number, param3: number, param4: number): void;
			public generateLayoutParams(param0: android.util.AttributeSet): android.view.ViewGroup.LayoutParams;
			public drawableStateChanged(): void;
			public focusableViewAvailable(param0: android.view.View): void;
			public createContextMenu(param0: android.view.ContextMenu): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onMeasure(param0: number, param1: number): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public shouldDelayChildPressedState(): boolean;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public addView(param0: android.view.View, param1: number, param2: number): void;
			public focusSearch(param0: android.view.View, param1: number): android.view.View;
			public requestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public showContextMenuForChild(param0: android.view.View): boolean;
			public bringChildToFront(param0: android.view.View): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public draw(param0: android.graphics.Canvas): void;
			public sendAccessibilityEvent(param0: number): void;
			public getForeground(): android.graphics.drawable.Drawable;
			public requestTransparentRegion(param0: android.view.View): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public getParentForAccessibility(): android.view.ViewParent;
			public getMeasureAllChildren(): boolean;
			public getParent(): android.view.ViewParent;
			public verifyDrawable(param0: android.graphics.drawable.Drawable): boolean;
			public generateDefaultLayoutParams(): android.widget.FrameLayout.LayoutParams;
			public setForegroundGravity(param0: number): void;
			public startActionModeForChild(param0: android.view.View, param1: android.view.ActionMode.Callback): android.view.ActionMode;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public requestChildFocus(param0: android.view.View, param1: android.view.View): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public generateLayoutParams(param0: android.view.ViewGroup.LayoutParams): android.view.ViewGroup.LayoutParams;
			public generateDefaultLayoutParams(): android.view.ViewGroup.LayoutParams;
			public setMeasureAllChildren(param0: boolean): void;
			public requestChildRectangleOnScreen(param0: android.view.View, param1: android.graphics.Rect, param2: boolean): boolean;
			public focusSearch(param0: number): android.view.View;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public recomputeViewAttributes(param0: android.view.View): void;
			public onSizeChanged(param0: number, param1: number, param2: number, param3: number): void;
			/** @deprecated */
			public getConsiderGoneChildrenWhenMeasuring(): boolean;
			public isLayoutRequested(): boolean;
			public invalidateChild(param0: android.view.View, param1: android.graphics.Rect): void;
			public invalidateChildInParent(param0: native.Array<number>, param1: android.graphics.Rect): android.view.ViewParent;
			public gatherTransparentRegion(param0: android.graphics.Region): boolean;
			public jumpDrawablesToCurrentState(): void;
			public requestLayout(): void;
			public checkLayoutParams(param0: android.view.ViewGroup.LayoutParams): boolean;
			public childDrawableStateChanged(param0: android.view.View): void;
			public addView(param0: android.view.View): void;
			public removeView(param0: android.view.View): void;
			public clearChildFocus(param0: android.view.View): void;
			public updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public setForeground(param0: android.graphics.drawable.Drawable): void;
			public requestDisallowInterceptTouchEvent(param0: boolean): void;
			public getChildVisibleRect(param0: android.view.View, param1: android.graphics.Rect, param2: android.graphics.Point): boolean;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public generateLayoutParams(param0: android.util.AttributeSet): android.widget.FrameLayout.LayoutParams;
			public getForegroundGravity(): number;
			public constructor(param0: android.content.Context);
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public addView(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams): void;
			public requestFitSystemWindows(): void;
			public addView(param0: android.view.View, param1: number): void;
		}
		export module FrameLayout {
			export class LayoutParams extends android.view.ViewGroup.MarginLayoutParams {
				public static class: java.lang.Class<android.widget.FrameLayout.LayoutParams>;
				public gravity: number;
				public constructor(param0: number, param1: number);
				public constructor(param0: android.view.ViewGroup.MarginLayoutParams);
				public constructor(param0: android.view.ViewGroup.LayoutParams);
				public constructor(param0: number, param1: number, param2: number);
				public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			}
		}
	}
}

declare module android {
	export module widget {
		export class Gallery extends android.widget.AbsSpinner implements android.view.GestureDetector.OnGestureListener {
			public static class: java.lang.Class<android.widget.Gallery>;
			public onLayout(param0: boolean, param1: number, param2: number, param3: number, param4: number): void;
			public onScroll(param0: android.view.MotionEvent, param1: android.view.MotionEvent, param2: number, param3: number): boolean;
			public generateLayoutParams(param0: android.util.AttributeSet): android.view.ViewGroup.LayoutParams;
			public focusableViewAvailable(param0: android.view.View): void;
			public createContextMenu(param0: android.view.ContextMenu): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public addView(param0: android.view.View, param1: number, param2: number): void;
			public dispatchSetPressed(param0: boolean): void;
			public focusSearch(param0: android.view.View, param1: number): android.view.View;
			public requestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public getContextMenuInfo(): android.view.ContextMenu.ContextMenuInfo;
			public showContextMenuForChild(param0: android.view.View): boolean;
			public onFocusChanged(param0: boolean, param1: number, param2: android.graphics.Rect): void;
			public computeHorizontalScrollRange(): number;
			public onSingleTapUp(param0: android.view.MotionEvent): boolean;
			public bringChildToFront(param0: android.view.View): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public setSpacing(param0: number): void;
			public sendAccessibilityEvent(param0: number): void;
			public setCallbackDuringFling(param0: boolean): void;
			public showContextMenu(): boolean;
			public requestTransparentRegion(param0: android.view.View): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public getParentForAccessibility(): android.view.ViewParent;
			public getParent(): android.view.ViewParent;
			public startActionModeForChild(param0: android.view.View, param1: android.view.ActionMode.Callback): android.view.ActionMode;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public requestChildFocus(param0: android.view.View, param1: android.view.View): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public generateLayoutParams(param0: android.view.ViewGroup.LayoutParams): android.view.ViewGroup.LayoutParams;
			public generateDefaultLayoutParams(): android.view.ViewGroup.LayoutParams;
			public requestChildRectangleOnScreen(param0: android.view.View, param1: android.graphics.Rect, param2: boolean): boolean;
			public setGravity(param0: number): void;
			public focusSearch(param0: number): android.view.View;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public recomputeViewAttributes(param0: android.view.View): void;
			public performAccessibilityAction(param0: number, param1: android.os.Bundle): boolean;
			public isLayoutRequested(): boolean;
			public getChildStaticTransformation(param0: android.view.View, param1: android.view.animation.Transformation): boolean;
			public invalidateChild(param0: android.view.View, param1: android.graphics.Rect): void;
			public invalidateChildInParent(param0: native.Array<number>, param1: android.graphics.Rect): android.view.ViewParent;
			public dispatchSetSelected(param0: boolean): void;
			public onDown(param0: android.view.MotionEvent): boolean;
			public getChildDrawingOrder(param0: number, param1: number): number;
			public computeHorizontalScrollOffset(): number;
			public onFling(param0: android.view.MotionEvent, param1: android.view.MotionEvent, param2: number, param3: number): boolean;
			public onLongPress(param0: android.view.MotionEvent): void;
			public requestLayout(): void;
			public checkLayoutParams(param0: android.view.ViewGroup.LayoutParams): boolean;
			public childDrawableStateChanged(param0: android.view.View): void;
			public addView(param0: android.view.View): void;
			public removeView(param0: android.view.View): void;
			public clearChildFocus(param0: android.view.View): void;
			public setAnimationDuration(param0: number): void;
			public updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public onTouchEvent(param0: android.view.MotionEvent): boolean;
			public requestDisallowInterceptTouchEvent(param0: boolean): void;
			public getChildVisibleRect(param0: android.view.View, param1: android.graphics.Rect, param2: android.graphics.Point): boolean;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public constructor(param0: android.content.Context);
			public dispatchKeyEvent(param0: android.view.KeyEvent): boolean;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public computeHorizontalScrollExtent(): number;
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public addView(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams): void;
			public onShowPress(param0: android.view.MotionEvent): void;
			public setUnselectedAlpha(param0: number): void;
			public requestFitSystemWindows(): void;
			public addView(param0: android.view.View, param1: number): void;
		}
		export module Gallery {
			export class LayoutParams extends android.view.ViewGroup.LayoutParams {
				public static class: java.lang.Class<android.widget.Gallery.LayoutParams>;
				public constructor(param0: number, param1: number);
				public constructor(param0: android.view.ViewGroup.LayoutParams);
				public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			}
		}
	}
}

declare module android {
	export module widget {
		export class GridLayout extends android.view.ViewGroup {
			public static class: java.lang.Class<android.widget.GridLayout>;
			public static HORIZONTAL: number;
			public static VERTICAL: number;
			public static UNDEFINED: number;
			public static ALIGN_BOUNDS: number;
			public static ALIGN_MARGINS: number;
			public static TOP: android.widget.GridLayout.Alignment;
			public static BOTTOM: android.widget.GridLayout.Alignment;
			public static START: android.widget.GridLayout.Alignment;
			public static END: android.widget.GridLayout.Alignment;
			public static LEFT: android.widget.GridLayout.Alignment;
			public static RIGHT: android.widget.GridLayout.Alignment;
			public static CENTER: android.widget.GridLayout.Alignment;
			public static BASELINE: android.widget.GridLayout.Alignment;
			public static FILL: android.widget.GridLayout.Alignment;
			public generateDefaultLayoutParams(): android.widget.GridLayout.LayoutParams;
			public getRowCount(): number;
			public onLayout(param0: boolean, param1: number, param2: number, param3: number, param4: number): void;
			public generateLayoutParams(param0: android.util.AttributeSet): android.view.ViewGroup.LayoutParams;
			public getAlignmentMode(): number;
			public focusableViewAvailable(param0: android.view.View): void;
			public createContextMenu(param0: android.view.ContextMenu): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onMeasure(param0: number, param1: number): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public addView(param0: android.view.View, param1: number, param2: number): void;
			public focusSearch(param0: android.view.View, param1: number): android.view.View;
			public requestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public setAlignmentMode(param0: number): void;
			public showContextMenuForChild(param0: android.view.View): boolean;
			public bringChildToFront(param0: android.view.View): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public sendAccessibilityEvent(param0: number): void;
			public requestTransparentRegion(param0: android.view.View): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public getParentForAccessibility(): android.view.ViewParent;
			public static spec(param0: number, param1: number): android.widget.GridLayout.Spec;
			public getParent(): android.view.ViewParent;
			public startActionModeForChild(param0: android.view.View, param1: android.view.ActionMode.Callback): android.view.ActionMode;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public requestChildFocus(param0: android.view.View, param1: android.view.View): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public generateLayoutParams(param0: android.view.ViewGroup.LayoutParams): android.view.ViewGroup.LayoutParams;
			public generateDefaultLayoutParams(): android.view.ViewGroup.LayoutParams;
			public requestChildRectangleOnScreen(param0: android.view.View, param1: android.graphics.Rect, param2: boolean): boolean;
			public focusSearch(param0: number): android.view.View;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public recomputeViewAttributes(param0: android.view.View): void;
			public isRowOrderPreserved(): boolean;
			public isLayoutRequested(): boolean;
			public setColumnCount(param0: number): void;
			public getUseDefaultMargins(): boolean;
			public static spec(param0: number): android.widget.GridLayout.Spec;
			public setUseDefaultMargins(param0: boolean): void;
			public invalidateChild(param0: android.view.View, param1: android.graphics.Rect): void;
			public invalidateChildInParent(param0: native.Array<number>, param1: android.graphics.Rect): android.view.ViewParent;
			public setRowOrderPreserved(param0: boolean): void;
			public static spec(param0: number, param1: android.widget.GridLayout.Alignment): android.widget.GridLayout.Spec;
			public getOrientation(): number;
			public requestLayout(): void;
			public getColumnCount(): number;
			public checkLayoutParams(param0: android.view.ViewGroup.LayoutParams): boolean;
			public childDrawableStateChanged(param0: android.view.View): void;
			public addView(param0: android.view.View): void;
			public removeView(param0: android.view.View): void;
			public isColumnOrderPreserved(): boolean;
			public clearChildFocus(param0: android.view.View): void;
			public setColumnOrderPreserved(param0: boolean): void;
			public generateLayoutParams(param0: android.view.ViewGroup.LayoutParams): android.widget.GridLayout.LayoutParams;
			public updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public requestDisallowInterceptTouchEvent(param0: boolean): void;
			public getChildVisibleRect(param0: android.view.View, param1: android.graphics.Rect, param2: android.graphics.Point): boolean;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public setRowCount(param0: number): void;
			public constructor(param0: android.content.Context);
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public addView(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams): void;
			public generateLayoutParams(param0: android.util.AttributeSet): android.widget.GridLayout.LayoutParams;
			public setOrientation(param0: number): void;
			public static spec(param0: number, param1: number, param2: android.widget.GridLayout.Alignment): android.widget.GridLayout.Spec;
			public requestFitSystemWindows(): void;
			public addView(param0: android.view.View, param1: number): void;
		}
		export module GridLayout {
			export abstract class Alignment extends java.lang.Object {
				public static class: java.lang.Class<android.widget.GridLayout.Alignment>;
			}
			export class LayoutParams extends android.view.ViewGroup.MarginLayoutParams {
				public static class: java.lang.Class<android.widget.GridLayout.LayoutParams>;
				public rowSpec: android.widget.GridLayout.Spec;
				public columnSpec: android.widget.GridLayout.Spec;
				public constructor(param0: number, param1: number);
				public constructor(param0: android.view.ViewGroup.MarginLayoutParams);
				public constructor(param0: android.view.ViewGroup.LayoutParams);
				public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
				public hashCode(): number;
				public constructor(param0: android.widget.GridLayout.LayoutParams);
				public setBaseAttributes(param0: android.content.res.TypedArray, param1: number, param2: number): void;
				public equals(param0: any): boolean;
				public setGravity(param0: number): void;
				public constructor(param0: android.widget.GridLayout.Spec, param1: android.widget.GridLayout.Spec);
				public constructor();
			}
			export class Spec extends java.lang.Object {
				public static class: java.lang.Class<android.widget.GridLayout.Spec>;
				public hashCode(): number;
				public equals(param0: any): boolean;
			}
		}
	}
}

declare module android {
	export module widget {
		export class GridView extends android.widget.AbsListView {
			public static class: java.lang.Class<android.widget.GridView>;
			public static NO_STRETCH: number;
			public static STRETCH_SPACING: number;
			public static STRETCH_COLUMN_WIDTH: number;
			public static STRETCH_SPACING_UNIFORM: number;
			public static AUTO_FIT: number;
			public setStretchMode(param0: number): void;
			public getAdapter(): android.widget.ListAdapter;
			public setSelection(param0: number): void;
			public smoothScrollToPosition(param0: number, param1: number): void;
			public focusableViewAvailable(param0: android.view.View): void;
			public createContextMenu(param0: android.view.ContextMenu): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onMeasure(param0: number, param1: number): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public addView(param0: android.view.View, param1: number, param2: number): void;
			public focusSearch(param0: android.view.View, param1: number): android.view.View;
			public requestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public getRequestedColumnWidth(): number;
			public showContextMenuForChild(param0: android.view.View): boolean;
			public onFocusChanged(param0: boolean, param1: number, param2: android.graphics.Rect): void;
			public setAdapter(param0: android.widget.ListAdapter): void;
			public getHorizontalSpacing(): number;
			public beforeTextChanged(param0: string, param1: number, param2: number, param3: number): void;
			public setRemoteViewsAdapter(param0: android.content.Intent): void;
			public bringChildToFront(param0: android.view.View): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public sendAccessibilityEvent(param0: number): void;
			public requestTransparentRegion(param0: android.view.View): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public afterTextChanged(param0: android.text.Editable): void;
			public getParentForAccessibility(): android.view.ViewParent;
			public getParent(): android.view.ViewParent;
			public onTextChanged(param0: string, param1: number, param2: number, param3: number): void;
			public setColumnWidth(param0: number): void;
			public startActionModeForChild(param0: android.view.View, param1: android.view.ActionMode.Callback): android.view.ActionMode;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public attachLayoutAnimationParameters(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams, param2: number, param3: number): void;
			public computeVerticalScrollRange(): number;
			public setNumColumns(param0: number): void;
			public layoutChildren(): void;
			public computeVerticalScrollOffset(): number;
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public requestChildFocus(param0: android.view.View, param1: android.view.View): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public requestChildRectangleOnScreen(param0: android.view.View, param1: android.graphics.Rect, param2: boolean): boolean;
			public getColumnWidth(): number;
			public setGravity(param0: number): void;
			public focusSearch(param0: number): android.view.View;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public recomputeViewAttributes(param0: android.view.View): void;
			public setAdapter(param0: any): void;
			public smoothScrollByOffset(param0: number): void;
			public onTouchModeChanged(param0: boolean): void;
			public isLayoutRequested(): boolean;
			public computeVerticalScrollExtent(): number;
			public getNumColumns(): number;
			public invalidateChild(param0: android.view.View, param1: android.graphics.Rect): void;
			public invalidateChildInParent(param0: native.Array<number>, param1: android.graphics.Rect): android.view.ViewParent;
			public getStretchMode(): number;
			public getRequestedHorizontalSpacing(): number;
			public onGlobalLayout(): void;
			public getGravity(): number;
			public getAdapter(): any;
			public requestLayout(): void;
			public onFilterComplete(param0: number): void;
			public childDrawableStateChanged(param0: android.view.View): void;
			public addView(param0: android.view.View): void;
			public removeView(param0: android.view.View): void;
			public clearChildFocus(param0: android.view.View): void;
			public smoothScrollToPosition(param0: number): void;
			public updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public getVerticalSpacing(): number;
			public requestDisallowInterceptTouchEvent(param0: boolean): void;
			public setHorizontalSpacing(param0: number): void;
			public getChildVisibleRect(param0: android.view.View, param1: android.graphics.Rect, param2: android.graphics.Point): boolean;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public setVerticalSpacing(param0: number): void;
			public constructor(param0: android.content.Context);
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public addView(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams): void;
			public requestFitSystemWindows(): void;
			public addView(param0: android.view.View, param1: number): void;
		}
	}
}

declare module android {
	export module widget {
		export class HeaderViewListAdapter extends java.lang.Object implements android.widget.WrapperListAdapter, android.widget.Filterable {
			public static class: java.lang.Class<android.widget.HeaderViewListAdapter>;
			public getItem(param0: number): any;
			public getFilter(): android.widget.Filter;
			public registerDataSetObserver(param0: android.database.DataSetObserver): void;
			public isEmpty(): boolean;
			public removeFooter(param0: android.view.View): boolean;
			public getItemId(param0: number): number;
			public hasStableIds(): boolean;
			public constructor(param0: java.util.ArrayList<android.widget.ListView.FixedViewInfo>, param1: java.util.ArrayList<android.widget.ListView.FixedViewInfo>, param2: android.widget.ListAdapter);
			public unregisterDataSetObserver(param0: android.database.DataSetObserver): void;
			public getFootersCount(): number;
			public getView(param0: number, param1: android.view.View, param2: android.view.ViewGroup): android.view.View;
			public getItemViewType(param0: number): number;
			public getWrappedAdapter(): android.widget.ListAdapter;
			public getViewTypeCount(): number;
			public getHeadersCount(): number;
			public areAllItemsEnabled(): boolean;
			public isEnabled(param0: number): boolean;
			public removeHeader(param0: android.view.View): boolean;
			public getCount(): number;
		}
	}
}

declare module android {
	export module widget {
		export class HeterogeneousExpandableList extends java.lang.Object {
			public static class: java.lang.Class<android.widget.HeterogeneousExpandableList>;
			/**
			 * Constructs a new instance of the android.widget.HeterogeneousExpandableList interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				getGroupType(param0: number): number;
				getChildType(param0: number, param1: number): number;
				getGroupTypeCount(): number;
				getChildTypeCount(): number;
			});
			public constructor();
			public getGroupType(param0: number): number;
			public getGroupTypeCount(): number;
			public getChildType(param0: number, param1: number): number;
			public getChildTypeCount(): number;
		}
	}
}

declare module android {
	export module widget {
		export class HorizontalScrollView extends android.widget.FrameLayout {
			public static class: java.lang.Class<android.widget.HorizontalScrollView>;
			public onOverScrolled(param0: number, param1: number, param2: boolean, param3: boolean): void;
			public setSmoothScrollingEnabled(param0: boolean): void;
			public onLayout(param0: boolean, param1: number, param2: number, param3: number, param4: number): void;
			public measureChildWithMargins(param0: android.view.View, param1: number, param2: number, param3: number, param4: number): void;
			public smoothScrollTo(param0: number, param1: number): void;
			public focusableViewAvailable(param0: android.view.View): void;
			public createContextMenu(param0: android.view.ContextMenu): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onMeasure(param0: number, param1: number): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public shouldDelayChildPressedState(): boolean;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public addView(param0: android.view.View, param1: number, param2: number): void;
			public focusSearch(param0: android.view.View, param1: number): android.view.View;
			public requestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public showContextMenuForChild(param0: android.view.View): boolean;
			public computeHorizontalScrollRange(): number;
			public scrollTo(param0: number, param1: number): void;
			public bringChildToFront(param0: android.view.View): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public draw(param0: android.graphics.Canvas): void;
			public sendAccessibilityEvent(param0: number): void;
			public requestTransparentRegion(param0: android.view.View): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public getParentForAccessibility(): android.view.ViewParent;
			public setFillViewport(param0: boolean): void;
			public onRequestFocusInDescendants(param0: number, param1: android.graphics.Rect): boolean;
			public getParent(): android.view.ViewParent;
			public arrowScroll(param0: number): boolean;
			public startActionModeForChild(param0: android.view.View, param1: android.view.ActionMode.Callback): android.view.ActionMode;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public getRightFadingEdgeStrength(): number;
			public getLeftFadingEdgeStrength(): number;
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public requestChildFocus(param0: android.view.View, param1: android.view.View): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public setOverScrollMode(param0: number): void;
			public requestChildRectangleOnScreen(param0: android.view.View, param1: android.graphics.Rect, param2: boolean): boolean;
			public focusSearch(param0: number): android.view.View;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public onInterceptTouchEvent(param0: android.view.MotionEvent): boolean;
			public recomputeViewAttributes(param0: android.view.View): void;
			public performAccessibilityAction(param0: number, param1: android.os.Bundle): boolean;
			public onSizeChanged(param0: number, param1: number, param2: number, param3: number): void;
			public isLayoutRequested(): boolean;
			public computeScrollDeltaToGetChildRectOnScreen(param0: android.graphics.Rect): number;
			public onGenericMotionEvent(param0: android.view.MotionEvent): boolean;
			public isSmoothScrollingEnabled(): boolean;
			public invalidateChild(param0: android.view.View, param1: android.graphics.Rect): void;
			public executeKeyEvent(param0: android.view.KeyEvent): boolean;
			public invalidateChildInParent(param0: native.Array<number>, param1: android.graphics.Rect): android.view.ViewParent;
			public computeHorizontalScrollOffset(): number;
			public getMaxScrollAmount(): number;
			public computeScroll(): void;
			public requestLayout(): void;
			public addView(param0: android.view.View): void;
			public childDrawableStateChanged(param0: android.view.View): void;
			public removeView(param0: android.view.View): void;
			public clearChildFocus(param0: android.view.View): void;
			public fullScroll(param0: number): boolean;
			public updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public fling(param0: number): void;
			public onTouchEvent(param0: android.view.MotionEvent): boolean;
			public requestDisallowInterceptTouchEvent(param0: boolean): void;
			public pageScroll(param0: number): boolean;
			public getChildVisibleRect(param0: android.view.View, param1: android.graphics.Rect, param2: android.graphics.Point): boolean;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public smoothScrollBy(param0: number, param1: number): void;
			public measureChild(param0: android.view.View, param1: number, param2: number): void;
			public constructor(param0: android.content.Context);
			public dispatchKeyEvent(param0: android.view.KeyEvent): boolean;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public addView(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams): void;
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public isFillViewport(): boolean;
			public addView(param0: android.view.View, param1: number): void;
			public requestFitSystemWindows(): void;
		}
	}
}

declare module android {
	export module widget {
		export class ImageButton extends android.widget.ImageView {
			public static class: java.lang.Class<android.widget.ImageButton>;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public onSetAlpha(param0: number): boolean;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public constructor(param0: android.content.Context);
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public sendAccessibilityEvent(param0: number): void;
		}
	}
}

declare module android {
	export module widget {
		export class ImageSwitcher extends android.widget.ViewSwitcher {
			public static class: java.lang.Class<android.widget.ImageSwitcher>;
			public focusSearch(param0: number): android.view.View;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public recomputeViewAttributes(param0: android.view.View): void;
			public isLayoutRequested(): boolean;
			public focusableViewAvailable(param0: android.view.View): void;
			public createContextMenu(param0: android.view.ContextMenu): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public invalidateChild(param0: android.view.View, param1: android.graphics.Rect): void;
			public addView(param0: android.view.View, param1: number, param2: number): void;
			public setImageResource(param0: number): void;
			public focusSearch(param0: android.view.View, param1: number): android.view.View;
			public requestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public invalidateChildInParent(param0: native.Array<number>, param1: android.graphics.Rect): android.view.ViewParent;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public setImageDrawable(param0: android.graphics.drawable.Drawable): void;
			public showContextMenuForChild(param0: android.view.View): boolean;
			public bringChildToFront(param0: android.view.View): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public sendAccessibilityEvent(param0: number): void;
			public requestLayout(): void;
			public childDrawableStateChanged(param0: android.view.View): void;
			public addView(param0: android.view.View): void;
			public requestTransparentRegion(param0: android.view.View): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public removeView(param0: android.view.View): void;
			public clearChildFocus(param0: android.view.View): void;
			public getParentForAccessibility(): android.view.ViewParent;
			public getParent(): android.view.ViewParent;
			public updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public requestDisallowInterceptTouchEvent(param0: boolean): void;
			public getChildVisibleRect(param0: android.view.View, param1: android.graphics.Rect, param2: android.graphics.Point): boolean;
			public startActionModeForChild(param0: android.view.View, param1: android.view.ActionMode.Callback): android.view.ActionMode;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public constructor(param0: android.content.Context);
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public requestChildFocus(param0: android.view.View, param1: android.view.View): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public addView(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams): void;
			public addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public requestChildRectangleOnScreen(param0: android.view.View, param1: android.graphics.Rect, param2: boolean): boolean;
			public setImageURI(param0: android.net.Uri): void;
			public requestFitSystemWindows(): void;
			public addView(param0: android.view.View, param1: number): void;
		}
	}
}

declare module android {
	export module widget {
		export class ImageView extends android.view.View {
			public static class: java.lang.Class<android.widget.ImageView>;
			public getColorFilter(): android.graphics.ColorFilter;
			public setMaxHeight(param0: number): void;
			public drawableStateChanged(): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onMeasure(param0: number, param1: number): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public setFrame(param0: number, param1: number, param2: number, param3: number): boolean;
			public onPopulateAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public setImageResource(param0: number): void;
			public setImageMatrix(param0: android.graphics.Matrix): void;
			public setBaselineAlignBottom(param0: boolean): void;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public setColorFilter(param0: android.graphics.ColorFilter): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public setBaseline(param0: number): void;
			public onDetachedFromWindow(): void;
			public sendAccessibilityEvent(param0: number): void;
			public setMaxWidth(param0: number): void;
			public getBaselineAlignBottom(): boolean;
			public setVisibility(param0: number): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public setScaleType(param0: android.widget.ImageView.ScaleType): void;
			public getScaleType(): android.widget.ImageView.ScaleType;
			public setImageAlpha(param0: number): void;
			public verifyDrawable(param0: android.graphics.drawable.Drawable): boolean;
			public setImageBitmap(param0: android.graphics.Bitmap): void;
			public getImageAlpha(): number;
			public getCropToPadding(): boolean;
			public setSelected(param0: boolean): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public getImageMatrix(): android.graphics.Matrix;
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public onDraw(param0: android.graphics.Canvas): void;
			public setImageLevel(param0: number): void;
			public getAdjustViewBounds(): boolean;
			public getMaxHeight(): number;
			public setCropToPadding(param0: boolean): void;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public hasOverlappingRendering(): boolean;
			public setColorFilter(param0: number, param1: android.graphics.PorterDuff.Mode): void;
			public setAdjustViewBounds(param0: boolean): void;
			public onCreateDrawableState(param0: number): native.Array<number>;
			public setImageState(param0: native.Array<number>, param1: boolean): void;
			public setColorFilter(param0: number): void;
			public setImageDrawable(param0: android.graphics.drawable.Drawable): void;
			public jumpDrawablesToCurrentState(): void;
			public getBaseline(): number;
			public setAlpha(param0: number): void;
			public getDrawable(): android.graphics.drawable.Drawable;
			/** @deprecated */
			public setAlpha(param0: number): void;
			public getMaxWidth(): number;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public clearColorFilter(): void;
			public constructor(param0: android.content.Context);
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public onAttachedToWindow(): void;
			public setImageURI(param0: android.net.Uri): void;
		}
		export module ImageView {
			export class ScaleType {
				public static class: java.lang.Class<android.widget.ImageView.ScaleType>;
				public static CENTER: android.widget.ImageView.ScaleType;
				public static CENTER_CROP: android.widget.ImageView.ScaleType;
				public static CENTER_INSIDE: android.widget.ImageView.ScaleType;
				public static FIT_CENTER: android.widget.ImageView.ScaleType;
				public static FIT_END: android.widget.ImageView.ScaleType;
				public static FIT_START: android.widget.ImageView.ScaleType;
				public static FIT_XY: android.widget.ImageView.ScaleType;
				public static MATRIX: android.widget.ImageView.ScaleType;
				public static values(): native.Array<android.widget.ImageView.ScaleType>;
				public static valueOf(param0: string): android.widget.ImageView.ScaleType;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			}
		}
	}
}

declare module android {
	export module widget {
		export class LinearLayout extends android.view.ViewGroup {
			public static class: java.lang.Class<android.widget.LinearLayout>;
			public static HORIZONTAL: number;
			public static VERTICAL: number;
			public static SHOW_DIVIDER_NONE: number;
			public static SHOW_DIVIDER_BEGINNING: number;
			public static SHOW_DIVIDER_MIDDLE: number;
			public static SHOW_DIVIDER_END: number;
			public setDividerPadding(param0: number): void;
			public onLayout(param0: boolean, param1: number, param2: number, param3: number, param4: number): void;
			public generateLayoutParams(param0: android.util.AttributeSet): android.view.ViewGroup.LayoutParams;
			public focusableViewAvailable(param0: android.view.View): void;
			public createContextMenu(param0: android.view.ContextMenu): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onMeasure(param0: number, param1: number): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public shouldDelayChildPressedState(): boolean;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public addView(param0: android.view.View, param1: number, param2: number): void;
			public getWeightSum(): number;
			public setWeightSum(param0: number): void;
			public focusSearch(param0: android.view.View, param1: number): android.view.View;
			public requestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public setDividerDrawable(param0: android.graphics.drawable.Drawable): void;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public showContextMenuForChild(param0: android.view.View): boolean;
			public bringChildToFront(param0: android.view.View): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public setMeasureWithLargestChildEnabled(param0: boolean): void;
			public sendAccessibilityEvent(param0: number): void;
			public requestTransparentRegion(param0: android.view.View): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public getParentForAccessibility(): android.view.ViewParent;
			public getDividerPadding(): number;
			public getParent(): android.view.ViewParent;
			public setHorizontalGravity(param0: number): void;
			public setBaselineAlignedChildIndex(param0: number): void;
			public setBaselineAligned(param0: boolean): void;
			public startActionModeForChild(param0: android.view.View, param1: android.view.ActionMode.Callback): android.view.ActionMode;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public requestChildFocus(param0: android.view.View, param1: android.view.View): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public onDraw(param0: android.graphics.Canvas): void;
			public generateLayoutParams(param0: android.view.ViewGroup.LayoutParams): android.view.ViewGroup.LayoutParams;
			public isBaselineAligned(): boolean;
			public generateDefaultLayoutParams(): android.view.ViewGroup.LayoutParams;
			public requestChildRectangleOnScreen(param0: android.view.View, param1: android.graphics.Rect, param2: boolean): boolean;
			public setGravity(param0: number): void;
			public focusSearch(param0: number): android.view.View;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public recomputeViewAttributes(param0: android.view.View): void;
			public getBaselineAlignedChildIndex(): number;
			public isLayoutRequested(): boolean;
			public generateLayoutParams(param0: android.view.ViewGroup.LayoutParams): android.widget.LinearLayout.LayoutParams;
			public generateDefaultLayoutParams(): android.widget.LinearLayout.LayoutParams;
			public setShowDividers(param0: number): void;
			public getShowDividers(): number;
			public invalidateChild(param0: android.view.View, param1: android.graphics.Rect): void;
			public invalidateChildInParent(param0: native.Array<number>, param1: android.graphics.Rect): android.view.ViewParent;
			public isMeasureWithLargestChildEnabled(): boolean;
			public getBaseline(): number;
			public getOrientation(): number;
			public setVerticalGravity(param0: number): void;
			public requestLayout(): void;
			public generateLayoutParams(param0: android.util.AttributeSet): android.widget.LinearLayout.LayoutParams;
			public checkLayoutParams(param0: android.view.ViewGroup.LayoutParams): boolean;
			public childDrawableStateChanged(param0: android.view.View): void;
			public addView(param0: android.view.View): void;
			public removeView(param0: android.view.View): void;
			public clearChildFocus(param0: android.view.View): void;
			public updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public requestDisallowInterceptTouchEvent(param0: boolean): void;
			public getChildVisibleRect(param0: android.view.View, param1: android.graphics.Rect, param2: android.graphics.Point): boolean;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public constructor(param0: android.content.Context);
			public getDividerDrawable(): android.graphics.drawable.Drawable;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public addView(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams): void;
			public setOrientation(param0: number): void;
			public requestFitSystemWindows(): void;
			public addView(param0: android.view.View, param1: number): void;
		}
		export module LinearLayout {
			export class LayoutParams extends android.view.ViewGroup.MarginLayoutParams {
				public static class: java.lang.Class<android.widget.LinearLayout.LayoutParams>;
				public weight: number;
				public gravity: number;
				public constructor(param0: number, param1: number);
				public constructor(param0: android.view.ViewGroup.MarginLayoutParams);
				public constructor(param0: android.view.ViewGroup.LayoutParams);
				public debug(param0: string): string;
				public constructor(param0: number, param1: number, param2: number);
				public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			}
		}
	}
}

declare module android {
	export module widget {
		export class ListAdapter extends java.lang.Object implements android.widget.Adapter {
			public static class: java.lang.Class<android.widget.ListAdapter>;
			/**
			 * Constructs a new instance of the android.widget.ListAdapter interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				areAllItemsEnabled(): boolean;
				isEnabled(param0: number): boolean;
				registerDataSetObserver(param0: android.database.DataSetObserver): void;
				unregisterDataSetObserver(param0: android.database.DataSetObserver): void;
				getCount(): number;
				getItem(param0: number): any;
				getItemId(param0: number): number;
				hasStableIds(): boolean;
				getView(param0: number, param1: android.view.View, param2: android.view.ViewGroup): android.view.View;
				getItemViewType(param0: number): number;
				getViewTypeCount(): number;
				isEmpty(): boolean;
			});
			public constructor();
			public static NO_SELECTION: number;
			public static IGNORE_ITEM_VIEW_TYPE: number;
			public unregisterDataSetObserver(param0: android.database.DataSetObserver): void;
			public getItem(param0: number): any;
			public getView(param0: number, param1: android.view.View, param2: android.view.ViewGroup): android.view.View;
			public registerDataSetObserver(param0: android.database.DataSetObserver): void;
			public getItemViewType(param0: number): number;
			public isEmpty(): boolean;
			public getViewTypeCount(): number;
			public areAllItemsEnabled(): boolean;
			public getItemId(param0: number): number;
			public isEnabled(param0: number): boolean;
			public hasStableIds(): boolean;
			public getCount(): number;
		}
	}
}

declare module android {
	export module widget {
		export class ListPopupWindow extends java.lang.Object {
			public static class: java.lang.Class<android.widget.ListPopupWindow>;
			public static POSITION_PROMPT_ABOVE: number;
			public static POSITION_PROMPT_BELOW: number;
			public static MATCH_PARENT: number;
			public static WRAP_CONTENT: number;
			public static INPUT_METHOD_FROM_FOCUSABLE: number;
			public static INPUT_METHOD_NEEDED: number;
			public static INPUT_METHOD_NOT_NEEDED: number;
			public setListSelector(param0: android.graphics.drawable.Drawable): void;
			public setHeight(param0: number): void;
			public setSelection(param0: number): void;
			public getSelectedItem(): any;
			public getWidth(): number;
			public getSoftInputMode(): number;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public setOnItemClickListener(param0: android.widget.AdapterView.OnItemClickListener): void;
			public getInputMethodMode(): number;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public setAdapter(param0: android.widget.ListAdapter): void;
			public getAnchorView(): android.view.View;
			public setOnItemSelectedListener(param0: android.widget.AdapterView.OnItemSelectedListener): void;
			public isShowing(): boolean;
			public performItemClick(param0: number): boolean;
			public isInputMethodNotNeeded(): boolean;
			public getHeight(): number;
			public setWidth(param0: number): void;
			public setPromptPosition(param0: number): void;
			public setVerticalOffset(param0: number): void;
			public onKeyPreIme(param0: number, param1: android.view.KeyEvent): boolean;
			public setModal(param0: boolean): void;
			public getAnimationStyle(): number;
			public setPromptView(param0: android.view.View): void;
			public getPromptPosition(): number;
			public show(): void;
			public setInputMethodMode(param0: number): void;
			public getSelectedView(): android.view.View;
			public setHorizontalOffset(param0: number): void;
			public setContentWidth(param0: number): void;
			public clearListSelection(): void;
			public getSelectedItemId(): number;
			public setBackgroundDrawable(param0: android.graphics.drawable.Drawable): void;
			public isModal(): boolean;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number, param3: number);
			public getVerticalOffset(): number;
			public dismiss(): void;
			public getHorizontalOffset(): number;
			public postShow(): void;
			public setAnimationStyle(param0: number): void;
			public setAnchorView(param0: android.view.View): void;
			public getSelectedItemPosition(): number;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public setSoftInputMode(param0: number): void;
			public constructor(param0: android.content.Context);
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public getListView(): android.widget.ListView;
			public getBackground(): android.graphics.drawable.Drawable;
			public setOnDismissListener(param0: android.widget.PopupWindow.OnDismissListener): void;
		}
	}
}

declare module android {
	export module widget {
		export class ListView extends android.widget.AbsListView {
			public static class: java.lang.Class<android.widget.ListView>;
			public setHeaderDividersEnabled(param0: boolean): void;
			public setSelection(param0: number): void;
			public smoothScrollToPosition(param0: number, param1: number): void;
			public addFooterView(param0: android.view.View, param1: any, param2: boolean): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onMeasure(param0: number, param1: number): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public addView(param0: android.view.View, param1: number, param2: number): void;
			public requestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public showContextMenuForChild(param0: android.view.View): boolean;
			public setSelectionFromTop(param0: number, param1: number): void;
			public setAdapter(param0: android.widget.ListAdapter): void;
			public beforeTextChanged(param0: string, param1: number, param2: number, param3: number): void;
			public bringChildToFront(param0: android.view.View): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public getDivider(): android.graphics.drawable.Drawable;
			public sendAccessibilityEvent(param0: number): void;
			public requestTransparentRegion(param0: android.view.View): void;
			public afterTextChanged(param0: android.text.Editable): void;
			public findViewTraversal(param0: number): android.view.View;
			public drawChild(param0: android.graphics.Canvas, param1: android.view.View, param2: number): boolean;
			public getParent(): android.view.ViewParent;
			public getDividerHeight(): number;
			public setDivider(param0: android.graphics.drawable.Drawable): void;
			public onTextChanged(param0: string, param1: number, param2: number, param3: number): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public dispatchDraw(param0: android.graphics.Canvas): void;
			public requestChildFocus(param0: android.view.View, param1: android.view.View): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public focusSearch(param0: number): android.view.View;
			public removeHeaderView(param0: android.view.View): boolean;
			public recomputeViewAttributes(param0: android.view.View): void;
			public smoothScrollByOffset(param0: number): void;
			public onTouchModeChanged(param0: boolean): void;
			public getHeaderViewsCount(): number;
			public setDividerHeight(param0: number): void;
			public isLayoutRequested(): boolean;
			public invalidateChild(param0: android.view.View, param1: android.graphics.Rect): void;
			public findViewWithTagTraversal(param0: any): android.view.View;
			public onGlobalLayout(): void;
			public getMaxScrollAmount(): number;
			public setSelectionAfterHeaderView(): void;
			public setOverscrollHeader(param0: android.graphics.drawable.Drawable): void;
			public setCacheColorHint(param0: number): void;
			public addHeaderView(param0: android.view.View, param1: any, param2: boolean): void;
			public addHeaderView(param0: android.view.View): void;
			public requestLayout(): void;
			public onFilterComplete(param0: number): void;
			public childDrawableStateChanged(param0: android.view.View): void;
			public addView(param0: android.view.View): void;
			public smoothScrollToPosition(param0: number): void;
			public addFooterView(param0: android.view.View): void;
			public getChildVisibleRect(param0: android.view.View, param1: android.graphics.Rect, param2: android.graphics.Point): boolean;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public setItemsCanFocus(param0: boolean): void;
			public constructor(param0: android.content.Context);
			public removeFooterView(param0: android.view.View): boolean;
			public addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public addView(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams): void;
			public requestFitSystemWindows(): void;
			public getAdapter(): android.widget.ListAdapter;
			public focusableViewAvailable(param0: android.view.View): void;
			public createContextMenu(param0: android.view.ContextMenu): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public getItemsCanFocus(): boolean;
			public focusSearch(param0: android.view.View, param1: number): android.view.View;
			public onFinishInflate(): void;
			public canAnimate(): boolean;
			public onFocusChanged(param0: boolean, param1: number, param2: android.graphics.Rect): void;
			/** @deprecated */
			public getCheckItemIds(): native.Array<number>;
			public setRemoteViewsAdapter(param0: android.content.Intent): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public getParentForAccessibility(): android.view.ViewParent;
			public setFooterDividersEnabled(param0: boolean): void;
			public startActionModeForChild(param0: android.view.View, param1: android.view.ActionMode.Callback): android.view.ActionMode;
			public layoutChildren(): void;
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public requestChildRectangleOnScreen(param0: android.view.View, param1: android.graphics.Rect, param2: boolean): boolean;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public setAdapter(param0: any): void;
			public onSizeChanged(param0: number, param1: number, param2: number, param3: number): void;
			public invalidateChildInParent(param0: native.Array<number>, param1: android.graphics.Rect): android.view.ViewParent;
			public setOverscrollFooter(param0: android.graphics.drawable.Drawable): void;
			public getOverscrollFooter(): android.graphics.drawable.Drawable;
			public getAdapter(): any;
			public isOpaque(): boolean;
			public removeView(param0: android.view.View): void;
			public clearChildFocus(param0: android.view.View): void;
			public getOverscrollHeader(): android.graphics.drawable.Drawable;
			public updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public requestDisallowInterceptTouchEvent(param0: boolean): void;
			public getFooterViewsCount(): number;
			public dispatchKeyEvent(param0: android.view.KeyEvent): boolean;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public addView(param0: android.view.View, param1: number): void;
		}
		export module ListView {
			export class FixedViewInfo extends java.lang.Object {
				public static class: java.lang.Class<android.widget.ListView.FixedViewInfo>;
				public view: android.view.View;
				public data: any;
				public isSelectable: boolean;
				public constructor(param0: android.widget.ListView);
			}
		}
	}
}

declare module android {
	export module widget {
		export class MediaController extends android.widget.FrameLayout {
			public static class: java.lang.Class<android.widget.MediaController>;
			public focusableViewAvailable(param0: android.view.View): void;
			public createContextMenu(param0: android.view.ContextMenu): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public addView(param0: android.view.View, param1: number, param2: number): void;
			public focusSearch(param0: android.view.View, param1: number): android.view.View;
			public requestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public onFinishInflate(): void;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public hide(): void;
			public showContextMenuForChild(param0: android.view.View): boolean;
			public isShowing(): boolean;
			public bringChildToFront(param0: android.view.View): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public setEnabled(param0: boolean): void;
			public sendAccessibilityEvent(param0: number): void;
			public requestTransparentRegion(param0: android.view.View): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public getParentForAccessibility(): android.view.ViewParent;
			public setPrevNextListeners(param0: android.view.View.OnClickListener, param1: android.view.View.OnClickListener): void;
			public getParent(): android.view.ViewParent;
			public onTrackballEvent(param0: android.view.MotionEvent): boolean;
			public startActionModeForChild(param0: android.view.View, param1: android.view.ActionMode.Callback): android.view.ActionMode;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public requestChildFocus(param0: android.view.View, param1: android.view.View): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public requestChildRectangleOnScreen(param0: android.view.View, param1: android.graphics.Rect, param2: boolean): boolean;
			public show(): void;
			public focusSearch(param0: number): android.view.View;
			public setMediaPlayer(param0: android.widget.MediaController.MediaPlayerControl): void;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public recomputeViewAttributes(param0: android.view.View): void;
			public isLayoutRequested(): boolean;
			public invalidateChild(param0: android.view.View, param1: android.graphics.Rect): void;
			public invalidateChildInParent(param0: native.Array<number>, param1: android.graphics.Rect): android.view.ViewParent;
			public requestLayout(): void;
			public childDrawableStateChanged(param0: android.view.View): void;
			public addView(param0: android.view.View): void;
			public removeView(param0: android.view.View): void;
			public clearChildFocus(param0: android.view.View): void;
			public show(param0: number): void;
			public updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public onTouchEvent(param0: android.view.MotionEvent): boolean;
			public requestDisallowInterceptTouchEvent(param0: boolean): void;
			public setAnchorView(param0: android.view.View): void;
			public getChildVisibleRect(param0: android.view.View, param1: android.graphics.Rect, param2: android.graphics.Point): boolean;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public constructor(param0: android.content.Context);
			public constructor(param0: android.content.Context, param1: boolean);
			public dispatchKeyEvent(param0: android.view.KeyEvent): boolean;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public addView(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams): void;
			public requestFitSystemWindows(): void;
			public addView(param0: android.view.View, param1: number): void;
		}
		export module MediaController {
			export class MediaPlayerControl extends java.lang.Object {
				public static class: java.lang.Class<android.widget.MediaController.MediaPlayerControl>;
				/**
				 * Constructs a new instance of the android.widget.MediaController$MediaPlayerControl interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					start(): void;
					pause(): void;
					getDuration(): number;
					getCurrentPosition(): number;
					seekTo(param0: number): void;
					isPlaying(): boolean;
					getBufferPercentage(): number;
					canPause(): boolean;
					canSeekBackward(): boolean;
					canSeekForward(): boolean;
					getAudioSessionId(): number;
				});
				public constructor();
				public canPause(): boolean;
				public getAudioSessionId(): number;
				public canSeekForward(): boolean;
				public canSeekBackward(): boolean;
				public getBufferPercentage(): number;
				public start(): void;
				public getDuration(): number;
				public pause(): void;
				public isPlaying(): boolean;
				public seekTo(param0: number): void;
				public getCurrentPosition(): number;
			}
		}
	}
}

declare module android {
	export module widget {
		export class MultiAutoCompleteTextView extends android.widget.AutoCompleteTextView {
			public static class: java.lang.Class<android.widget.MultiAutoCompleteTextView>;
			public onFilterComplete(param0: number): void;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public replaceText(param0: string): void;
			public performFiltering(param0: string, param1: number, param2: number, param3: number): void;
			public performValidation(): void;
			public performFiltering(param0: string, param1: number): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public enoughToFilter(): boolean;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public constructor(param0: android.content.Context);
			public setTokenizer(param0: android.widget.MultiAutoCompleteTextView.Tokenizer): void;
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public onPreDraw(): boolean;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public sendAccessibilityEvent(param0: number): void;
		}
		export module MultiAutoCompleteTextView {
			export class CommaTokenizer extends java.lang.Object implements android.widget.MultiAutoCompleteTextView.Tokenizer {
				public static class: java.lang.Class<android.widget.MultiAutoCompleteTextView.CommaTokenizer>;
				public findTokenStart(param0: string, param1: number): number;
				public terminateToken(param0: string): string;
				public findTokenEnd(param0: string, param1: number): number;
				public constructor();
			}
			export class Tokenizer extends java.lang.Object {
				public static class: java.lang.Class<android.widget.MultiAutoCompleteTextView.Tokenizer>;
				/**
				 * Constructs a new instance of the android.widget.MultiAutoCompleteTextView$Tokenizer interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					findTokenStart(param0: string, param1: number): number;
					findTokenEnd(param0: string, param1: number): number;
					terminateToken(param0: string): string;
				});
				public constructor();
				public findTokenStart(param0: string, param1: number): number;
				public terminateToken(param0: string): string;
				public findTokenEnd(param0: string, param1: number): number;
			}
		}
	}
}

declare module android {
	export module widget {
		export class NumberPicker extends android.widget.LinearLayout {
			public static class: java.lang.Class<android.widget.NumberPicker>;
			public getDisplayedValues(): native.Array<string>;
			public onLayout(param0: boolean, param1: number, param2: number, param3: number, param4: number): void;
			public dispatchHoverEvent(param0: android.view.MotionEvent): boolean;
			public focusableViewAvailable(param0: android.view.View): void;
			public createContextMenu(param0: android.view.ContextMenu): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onMeasure(param0: number, param1: number): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public getBottomFadingEdgeStrength(): number;
			public addView(param0: android.view.View, param1: number, param2: number): void;
			public focusSearch(param0: android.view.View, param1: number): android.view.View;
			public requestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public setOnLongPressUpdateInterval(param0: number): void;
			public showContextMenuForChild(param0: android.view.View): boolean;
			public bringChildToFront(param0: android.view.View): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public setEnabled(param0: boolean): void;
			public setFormatter(param0: android.widget.NumberPicker.Formatter): void;
			public onDetachedFromWindow(): void;
			public sendAccessibilityEvent(param0: number): void;
			public requestTransparentRegion(param0: android.view.View): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public getParentForAccessibility(): android.view.ViewParent;
			public getParent(): android.view.ViewParent;
			public getMinValue(): number;
			public getMaxValue(): number;
			public scrollBy(param0: number, param1: number): void;
			public startActionModeForChild(param0: android.view.View, param1: android.view.ActionMode.Callback): android.view.ActionMode;
			public getValue(): number;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public setValue(param0: number): void;
			public dispatchTouchEvent(param0: android.view.MotionEvent): boolean;
			public setWrapSelectorWheel(param0: boolean): void;
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public requestChildFocus(param0: android.view.View, param1: android.view.View): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public onDraw(param0: android.graphics.Canvas): void;
			public requestChildRectangleOnScreen(param0: android.view.View, param1: android.graphics.Rect, param2: boolean): boolean;
			public focusSearch(param0: number): android.view.View;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public onInterceptTouchEvent(param0: android.view.MotionEvent): boolean;
			public recomputeViewAttributes(param0: android.view.View): void;
			public isLayoutRequested(): boolean;
			public getAccessibilityNodeProvider(): android.view.accessibility.AccessibilityNodeProvider;
			public setMaxValue(param0: number): void;
			public invalidateChild(param0: android.view.View, param1: android.graphics.Rect): void;
			public getTopFadingEdgeStrength(): number;
			public setOnScrollListener(param0: android.widget.NumberPicker.OnScrollListener): void;
			public invalidateChildInParent(param0: native.Array<number>, param1: android.graphics.Rect): android.view.ViewParent;
			public setOnValueChangedListener(param0: android.widget.NumberPicker.OnValueChangeListener): void;
			public setDisplayedValues(param0: native.Array<string>): void;
			public setMinValue(param0: number): void;
			public computeScroll(): void;
			public requestLayout(): void;
			public childDrawableStateChanged(param0: android.view.View): void;
			public addView(param0: android.view.View): void;
			public getWrapSelectorWheel(): boolean;
			public removeView(param0: android.view.View): void;
			public clearChildFocus(param0: android.view.View): void;
			public updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public onTouchEvent(param0: android.view.MotionEvent): boolean;
			public requestDisallowInterceptTouchEvent(param0: boolean): void;
			public getChildVisibleRect(param0: android.view.View, param1: android.graphics.Rect, param2: android.graphics.Point): boolean;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public dispatchTrackballEvent(param0: android.view.MotionEvent): boolean;
			public constructor(param0: android.content.Context);
			public dispatchKeyEvent(param0: android.view.KeyEvent): boolean;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public addView(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams): void;
			public getSolidColor(): number;
			public requestFitSystemWindows(): void;
			public addView(param0: android.view.View, param1: number): void;
		}
		export module NumberPicker {
			export class Formatter extends java.lang.Object {
				public static class: java.lang.Class<android.widget.NumberPicker.Formatter>;
				/**
				 * Constructs a new instance of the android.widget.NumberPicker$Formatter interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					format(param0: number): string;
				});
				public constructor();
				public format(param0: number): string;
			}
			export class OnScrollListener extends java.lang.Object {
				public static class: java.lang.Class<android.widget.NumberPicker.OnScrollListener>;
				/**
				 * Constructs a new instance of the android.widget.NumberPicker$OnScrollListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onScrollStateChange(param0: android.widget.NumberPicker, param1: number): void;
				});
				public constructor();
				public static SCROLL_STATE_FLING: number;
				public static SCROLL_STATE_TOUCH_SCROLL: number;
				public static SCROLL_STATE_IDLE: number;
				public onScrollStateChange(param0: android.widget.NumberPicker, param1: number): void;
			}
			export class OnValueChangeListener extends java.lang.Object {
				public static class: java.lang.Class<android.widget.NumberPicker.OnValueChangeListener>;
				/**
				 * Constructs a new instance of the android.widget.NumberPicker$OnValueChangeListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onValueChange(param0: android.widget.NumberPicker, param1: number, param2: number): void;
				});
				public constructor();
				public onValueChange(param0: android.widget.NumberPicker, param1: number, param2: number): void;
			}
		}
	}
}

declare module android {
	export module widget {
		export class OverScroller extends java.lang.Object {
			public static class: java.lang.Class<android.widget.OverScroller>;
			public startScroll(param0: number, param1: number, param2: number, param3: number, param4: number): void;
			public getFinalX(): number;
			public getCurrVelocity(): number;
			public setFriction(param0: number): void;
			public computeScrollOffset(): boolean;
			public startScroll(param0: number, param1: number, param2: number, param3: number): void;
			public getCurrX(): number;
			public fling(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number, param8: number, param9: number): void;
			public constructor(param0: android.content.Context, param1: android.view.animation.Interpolator, param2: number, param3: number, param4: boolean);
			public getStartY(): number;
			public constructor(param0: android.content.Context, param1: android.view.animation.Interpolator);
			public notifyVerticalEdgeReached(param0: number, param1: number, param2: number): void;
			public abortAnimation(): void;
			public notifyHorizontalEdgeReached(param0: number, param1: number, param2: number): void;
			public getFinalY(): number;
			public fling(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number): void;
			public isFinished(): boolean;
			public getCurrY(): number;
			public springBack(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): boolean;
			public constructor(param0: android.content.Context);
			public constructor(param0: android.content.Context, param1: android.view.animation.Interpolator, param2: number, param3: number);
			public isOverScrolled(): boolean;
			public forceFinished(param0: boolean): void;
			public getStartX(): number;
		}
	}
}

declare module android {
	export module widget {
		export class PopupMenu extends java.lang.Object {
			public static class: java.lang.Class<android.widget.PopupMenu>;
			public show(): void;
			public constructor(param0: android.content.Context, param1: android.view.View);
			public inflate(param0: number): void;
			public getMenu(): android.view.Menu;
			public dismiss(): void;
			public setOnDismissListener(param0: android.widget.PopupMenu.OnDismissListener): void;
			public setOnMenuItemClickListener(param0: android.widget.PopupMenu.OnMenuItemClickListener): void;
			public getMenuInflater(): android.view.MenuInflater;
		}
		export module PopupMenu {
			export class OnDismissListener extends java.lang.Object {
				public static class: java.lang.Class<android.widget.PopupMenu.OnDismissListener>;
				/**
				 * Constructs a new instance of the android.widget.PopupMenu$OnDismissListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onDismiss(param0: android.widget.PopupMenu): void;
				});
				public constructor();
				public onDismiss(param0: android.widget.PopupMenu): void;
			}
			export class OnMenuItemClickListener extends java.lang.Object {
				public static class: java.lang.Class<android.widget.PopupMenu.OnMenuItemClickListener>;
				/**
				 * Constructs a new instance of the android.widget.PopupMenu$OnMenuItemClickListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onMenuItemClick(param0: android.view.MenuItem): boolean;
				});
				public constructor();
				public onMenuItemClick(param0: android.view.MenuItem): boolean;
			}
		}
	}
}

declare module android {
	export module widget {
		export class PopupWindow extends java.lang.Object {
			public static class: java.lang.Class<android.widget.PopupWindow>;
			public static INPUT_METHOD_FROM_FOCUSABLE: number;
			public static INPUT_METHOD_NEEDED: number;
			public static INPUT_METHOD_NOT_NEEDED: number;
			public setHeight(param0: number): void;
			public setFocusable(param0: boolean): void;
			public isTouchable(): boolean;
			public update(param0: number, param1: number, param2: number, param3: number, param4: boolean): void;
			public getWidth(): number;
			public getSoftInputMode(): number;
			public setContentView(param0: android.view.View): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public update(param0: number, param1: number, param2: number, param3: number): void;
			public isSplitTouchEnabled(): boolean;
			public getInputMethodMode(): number;
			public setIgnoreCheekPress(): void;
			public isAboveAnchor(): boolean;
			public showAtLocation(param0: android.view.View, param1: number, param2: number, param3: number): void;
			public isShowing(): boolean;
			public isFocusable(): boolean;
			public getHeight(): number;
			public setTouchInterceptor(param0: android.view.View.OnTouchListener): void;
			public update(param0: android.view.View, param1: number, param2: number, param3: number, param4: number): void;
			public setWidth(param0: number): void;
			public constructor();
			public showAsDropDown(param0: android.view.View): void;
			public getContentView(): android.view.View;
			public setClippingEnabled(param0: boolean): void;
			public setSplitTouchEnabled(param0: boolean): void;
			public getMaxAvailableHeight(param0: android.view.View, param1: number): number;
			public getAnimationStyle(): number;
			public setInputMethodMode(param0: number): void;
			public isClippingEnabled(): boolean;
			public showAsDropDown(param0: android.view.View, param1: number, param2: number): void;
			public update(): void;
			public setBackgroundDrawable(param0: android.graphics.drawable.Drawable): void;
			public setTouchable(param0: boolean): void;
			public constructor(param0: android.view.View);
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number, param3: number);
			public constructor(param0: number, param1: number);
			public setWindowLayoutMode(param0: number, param1: number): void;
			public dismiss(): void;
			public setOutsideTouchable(param0: boolean): void;
			public update(param0: android.view.View, param1: number, param2: number): void;
			public constructor(param0: android.view.View, param1: number, param2: number, param3: boolean);
			public setAnimationStyle(param0: number): void;
			public getMaxAvailableHeight(param0: android.view.View): number;
			public setSoftInputMode(param0: number): void;
			public isOutsideTouchable(): boolean;
			public constructor(param0: android.content.Context);
			public constructor(param0: android.view.View, param1: number, param2: number);
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public update(param0: number, param1: number): void;
			public getBackground(): android.graphics.drawable.Drawable;
			public setOnDismissListener(param0: android.widget.PopupWindow.OnDismissListener): void;
		}
		export module PopupWindow {
			export class OnDismissListener extends java.lang.Object {
				public static class: java.lang.Class<android.widget.PopupWindow.OnDismissListener>;
				/**
				 * Constructs a new instance of the android.widget.PopupWindow$OnDismissListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onDismiss(): void;
				});
				public constructor();
				public onDismiss(): void;
			}
		}
	}
}

declare module android {
	export module widget {
		export class ProgressBar extends android.view.View {
			public static class: java.lang.Class<android.widget.ProgressBar>;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public getProgress(): number;
			public getIndeterminateDrawable(): android.graphics.drawable.Drawable;
			public getSecondaryProgress(): number;
			public onSizeChanged(param0: number, param1: number, param2: number, param3: number): void;
			public drawableStateChanged(): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onMeasure(param0: number, param1: number): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public getInterpolator(): android.view.animation.Interpolator;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public getMax(): number;
			public setIndeterminate(param0: boolean): void;
			public setProgress(param0: number): void;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public jumpDrawablesToCurrentState(): void;
			public incrementProgressBy(param0: number): void;
			public postInvalidate(): void;
			public setMax(param0: number): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public setSecondaryProgress(param0: number): void;
			public onDetachedFromWindow(): void;
			public sendAccessibilityEvent(param0: number): void;
			public getProgressDrawable(): android.graphics.drawable.Drawable;
			public onRestoreInstanceState(param0: android.os.Parcelable): void;
			public postInvalidate(param0: number, param1: number, param2: number, param3: number): void;
			public setVisibility(param0: number): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public setInterpolator(param0: android.view.animation.Interpolator): void;
			public verifyDrawable(param0: android.graphics.drawable.Drawable): boolean;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public onVisibilityChanged(param0: android.view.View, param1: number): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public isIndeterminate(): boolean;
			public setProgressDrawable(param0: android.graphics.drawable.Drawable): void;
			public constructor(param0: android.content.Context);
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public incrementSecondaryProgressBy(param0: number): void;
			public onDraw(param0: android.graphics.Canvas): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public setInterpolator(param0: android.content.Context, param1: number): void;
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public onAttachedToWindow(): void;
			public setIndeterminateDrawable(param0: android.graphics.drawable.Drawable): void;
			public onSaveInstanceState(): android.os.Parcelable;
		}
	}
}

declare module android {
	export module widget {
		export class QuickContactBadge extends android.widget.ImageView implements android.view.View.OnClickListener {
			public static class: java.lang.Class<android.widget.QuickContactBadge>;
			public mExcludeMimes: native.Array<string>;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public setExcludeMimes(param0: native.Array<string>): void;
			public assignContactFromPhone(param0: string, param1: boolean): void;
			public drawableStateChanged(): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public assignContactFromPhone(param0: string, param1: boolean, param2: android.os.Bundle): void;
			public sendAccessibilityEvent(param0: number): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public assignContactFromEmail(param0: string, param1: boolean, param2: android.os.Bundle): void;
			public setMode(param0: number): void;
			public assignContactUri(param0: android.net.Uri): void;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public constructor(param0: android.content.Context);
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public onDraw(param0: android.graphics.Canvas): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public onClick(param0: android.view.View): void;
			public setImageToDefault(): void;
			public assignContactFromEmail(param0: string, param1: boolean): void;
		}
	}
}

declare module android {
	export module widget {
		export class RadioButton extends android.widget.CompoundButton {
			public static class: java.lang.Class<android.widget.RadioButton>;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public setChecked(param0: boolean): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public isChecked(): boolean;
			public toggle(): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public constructor(param0: android.content.Context);
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public onPreDraw(): boolean;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public sendAccessibilityEvent(param0: number): void;
		}
	}
}

declare module android {
	export module widget {
		export class RadioGroup extends android.widget.LinearLayout {
			public static class: java.lang.Class<android.widget.RadioGroup>;
			public generateLayoutParams(param0: android.util.AttributeSet): android.view.ViewGroup.LayoutParams;
			public focusableViewAvailable(param0: android.view.View): void;
			public createContextMenu(param0: android.view.ContextMenu): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public addView(param0: android.view.View, param1: number, param2: number): void;
			public focusSearch(param0: android.view.View, param1: number): android.view.View;
			public requestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public onFinishInflate(): void;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public showContextMenuForChild(param0: android.view.View): boolean;
			public bringChildToFront(param0: android.view.View): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public check(param0: number): void;
			public sendAccessibilityEvent(param0: number): void;
			public requestTransparentRegion(param0: android.view.View): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public getParentForAccessibility(): android.view.ViewParent;
			public clearCheck(): void;
			public getParent(): android.view.ViewParent;
			public startActionModeForChild(param0: android.view.View, param1: android.view.ActionMode.Callback): android.view.ActionMode;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public requestChildFocus(param0: android.view.View, param1: android.view.View): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public generateLayoutParams(param0: android.view.ViewGroup.LayoutParams): android.view.ViewGroup.LayoutParams;
			public generateDefaultLayoutParams(): android.view.ViewGroup.LayoutParams;
			public requestChildRectangleOnScreen(param0: android.view.View, param1: android.graphics.Rect, param2: boolean): boolean;
			public generateLayoutParams(param0: android.util.AttributeSet): android.widget.RadioGroup.LayoutParams;
			public focusSearch(param0: number): android.view.View;
			public setOnCheckedChangeListener(param0: android.widget.RadioGroup.OnCheckedChangeListener): void;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public recomputeViewAttributes(param0: android.view.View): void;
			public isLayoutRequested(): boolean;
			public generateLayoutParams(param0: android.view.ViewGroup.LayoutParams): android.widget.LinearLayout.LayoutParams;
			public generateDefaultLayoutParams(): android.widget.LinearLayout.LayoutParams;
			public getCheckedRadioButtonId(): number;
			public invalidateChild(param0: android.view.View, param1: android.graphics.Rect): void;
			public invalidateChildInParent(param0: native.Array<number>, param1: android.graphics.Rect): android.view.ViewParent;
			public setOnHierarchyChangeListener(param0: android.view.ViewGroup.OnHierarchyChangeListener): void;
			public requestLayout(): void;
			public generateLayoutParams(param0: android.util.AttributeSet): android.widget.LinearLayout.LayoutParams;
			public addView(param0: android.view.View): void;
			public checkLayoutParams(param0: android.view.ViewGroup.LayoutParams): boolean;
			public childDrawableStateChanged(param0: android.view.View): void;
			public removeView(param0: android.view.View): void;
			public clearChildFocus(param0: android.view.View): void;
			public updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public requestDisallowInterceptTouchEvent(param0: boolean): void;
			public getChildVisibleRect(param0: android.view.View, param1: android.graphics.Rect, param2: android.graphics.Point): boolean;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public constructor(param0: android.content.Context);
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public addView(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams): void;
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public addView(param0: android.view.View, param1: number): void;
			public requestFitSystemWindows(): void;
		}
		export module RadioGroup {
			export class LayoutParams extends android.widget.LinearLayout.LayoutParams {
				public static class: java.lang.Class<android.widget.RadioGroup.LayoutParams>;
				public constructor(param0: number, param1: number);
				public constructor(param0: android.view.ViewGroup.LayoutParams);
				public constructor(param0: android.view.ViewGroup.MarginLayoutParams);
				public constructor(param0: number, param1: number, param2: number);
				public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
				public setBaseAttributes(param0: android.content.res.TypedArray, param1: number, param2: number): void;
			}
			export class OnCheckedChangeListener extends java.lang.Object {
				public static class: java.lang.Class<android.widget.RadioGroup.OnCheckedChangeListener>;
				/**
				 * Constructs a new instance of the android.widget.RadioGroup$OnCheckedChangeListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onCheckedChanged(param0: android.widget.RadioGroup, param1: number): void;
				});
				public constructor();
				public onCheckedChanged(param0: android.widget.RadioGroup, param1: number): void;
			}
		}
	}
}

declare module android {
	export module widget {
		export class RatingBar extends android.widget.AbsSeekBar {
			public static class: java.lang.Class<android.widget.RatingBar>;
			public getOnRatingBarChangeListener(): android.widget.RatingBar.OnRatingBarChangeListener;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public setOnRatingBarChangeListener(param0: android.widget.RatingBar.OnRatingBarChangeListener): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public setRating(param0: number): void;
			public onMeasure(param0: number, param1: number): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public setNumStars(param0: number): void;
			public setIsIndicator(param0: boolean): void;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public setMax(param0: number): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public sendAccessibilityEvent(param0: number): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public getStepSize(): number;
			public getRating(): number;
			public getNumStars(): number;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public setStepSize(param0: number): void;
			public isIndicator(): boolean;
			public constructor(param0: android.content.Context);
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
		}
		export module RatingBar {
			export class OnRatingBarChangeListener extends java.lang.Object {
				public static class: java.lang.Class<android.widget.RatingBar.OnRatingBarChangeListener>;
				/**
				 * Constructs a new instance of the android.widget.RatingBar$OnRatingBarChangeListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onRatingChanged(param0: android.widget.RatingBar, param1: number, param2: boolean): void;
				});
				public constructor();
				public onRatingChanged(param0: android.widget.RatingBar, param1: number, param2: boolean): void;
			}
		}
	}
}

declare module android {
	export module widget {
		export class RelativeLayout extends android.view.ViewGroup {
			public static class: java.lang.Class<android.widget.RelativeLayout>;
			public static TRUE: number;
			public static LEFT_OF: number;
			public static RIGHT_OF: number;
			public static ABOVE: number;
			public static BELOW: number;
			public static ALIGN_BASELINE: number;
			public static ALIGN_LEFT: number;
			public static ALIGN_TOP: number;
			public static ALIGN_RIGHT: number;
			public static ALIGN_BOTTOM: number;
			public static ALIGN_PARENT_LEFT: number;
			public static ALIGN_PARENT_TOP: number;
			public static ALIGN_PARENT_RIGHT: number;
			public static ALIGN_PARENT_BOTTOM: number;
			public static CENTER_IN_PARENT: number;
			public static CENTER_HORIZONTAL: number;
			public static CENTER_VERTICAL: number;
			public static START_OF: number;
			public static END_OF: number;
			public static ALIGN_START: number;
			public static ALIGN_END: number;
			public static ALIGN_PARENT_START: number;
			public static ALIGN_PARENT_END: number;
			public onLayout(param0: boolean, param1: number, param2: number, param3: number, param4: number): void;
			public generateLayoutParams(param0: android.util.AttributeSet): android.view.ViewGroup.LayoutParams;
			public focusableViewAvailable(param0: android.view.View): void;
			public createContextMenu(param0: android.view.ContextMenu): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onMeasure(param0: number, param1: number): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public shouldDelayChildPressedState(): boolean;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public addView(param0: android.view.View, param1: number, param2: number): void;
			public focusSearch(param0: android.view.View, param1: number): android.view.View;
			public requestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public showContextMenuForChild(param0: android.view.View): boolean;
			public bringChildToFront(param0: android.view.View): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public sendAccessibilityEvent(param0: number): void;
			public requestTransparentRegion(param0: android.view.View): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public getParentForAccessibility(): android.view.ViewParent;
			public getParent(): android.view.ViewParent;
			public setHorizontalGravity(param0: number): void;
			public startActionModeForChild(param0: android.view.View, param1: android.view.ActionMode.Callback): android.view.ActionMode;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public requestChildFocus(param0: android.view.View, param1: android.view.View): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public generateLayoutParams(param0: android.view.ViewGroup.LayoutParams): android.view.ViewGroup.LayoutParams;
			public generateDefaultLayoutParams(): android.view.ViewGroup.LayoutParams;
			public requestChildRectangleOnScreen(param0: android.view.View, param1: android.graphics.Rect, param2: boolean): boolean;
			public setIgnoreGravity(param0: number): void;
			public setGravity(param0: number): void;
			public focusSearch(param0: number): android.view.View;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public recomputeViewAttributes(param0: android.view.View): void;
			public isLayoutRequested(): boolean;
			public generateLayoutParams(param0: android.util.AttributeSet): android.widget.RelativeLayout.LayoutParams;
			public invalidateChild(param0: android.view.View, param1: android.graphics.Rect): void;
			public invalidateChildInParent(param0: native.Array<number>, param1: android.graphics.Rect): android.view.ViewParent;
			public getGravity(): number;
			public setVerticalGravity(param0: number): void;
			public getBaseline(): number;
			public requestLayout(): void;
			public checkLayoutParams(param0: android.view.ViewGroup.LayoutParams): boolean;
			public childDrawableStateChanged(param0: android.view.View): void;
			public addView(param0: android.view.View): void;
			public removeView(param0: android.view.View): void;
			public clearChildFocus(param0: android.view.View): void;
			public updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public requestDisallowInterceptTouchEvent(param0: boolean): void;
			public getChildVisibleRect(param0: android.view.View, param1: android.graphics.Rect, param2: android.graphics.Point): boolean;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public constructor(param0: android.content.Context);
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public dispatchPopulateAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): boolean;
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public addView(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams): void;
			public requestFitSystemWindows(): void;
			public addView(param0: android.view.View, param1: number): void;
		}
		export module RelativeLayout {
			export class LayoutParams extends android.view.ViewGroup.MarginLayoutParams {
				public static class: java.lang.Class<android.widget.RelativeLayout.LayoutParams>;
				public alignWithParent: boolean;
				public constructor(param0: number, param1: number);
				public constructor(param0: android.view.ViewGroup.MarginLayoutParams);
				public constructor(param0: android.view.ViewGroup.LayoutParams);
				public debug(param0: string): string;
				public addRule(param0: number, param1: number): void;
				public resolveLayoutDirection(param0: number): void;
				public getRules(): native.Array<number>;
				public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
				public removeRule(param0: number): void;
				public addRule(param0: number): void;
			}
		}
	}
}

declare module android {
	export module widget {
		export class RemoteViews extends java.lang.Object implements android.os.Parcelable, android.view.LayoutInflater.Filter {
			public static class: java.lang.Class<android.widget.RemoteViews>;
			public static CREATOR: android.os.Parcelable.Creator<android.widget.RemoteViews>;
			public setCharSequence(param0: number, param1: string, param2: string): void;
			public setString(param0: number, param1: string, param2: string): void;
			public removeAllViews(param0: number): void;
			public setOnClickPendingIntent(param0: number, param1: android.app.PendingIntent): void;
			public setIntent(param0: number, param1: string, param2: android.content.Intent): void;
			public showNext(param0: number): void;
			public constructor(param0: string, param1: number);
			public writeToParcel(param0: android.os.Parcel, param1: number): void;
			public setBundle(param0: number, param1: string, param2: android.os.Bundle): void;
			public setPendingIntentTemplate(param0: number, param1: android.app.PendingIntent): void;
			public setEmptyView(param0: number, param1: number): void;
			public setImageViewUri(param0: number, param1: android.net.Uri): void;
			public clone(): android.widget.RemoteViews;
			public setImageViewResource(param0: number, param1: number): void;
			public setLong(param0: number, param1: string, param2: number): void;
			public setBitmap(param0: number, param1: string, param2: android.graphics.Bitmap): void;
			public addView(param0: number, param1: android.widget.RemoteViews): void;
			public onLoadClass(param0: java.lang.Class<any>): boolean;
			public setRelativeScrollPosition(param0: number, param1: number): void;
			public setViewPadding(param0: number, param1: number, param2: number, param3: number, param4: number): void;
			public clone(): any;
			public setContentDescription(param0: number, param1: string): void;
			public setViewVisibility(param0: number, param1: number): void;
			public describeContents(): number;
			public setRemoteAdapter(param0: number, param1: android.content.Intent): void;
			public setTextViewText(param0: number, param1: string): void;
			public setTextViewTextSize(param0: number, param1: number, param2: number): void;
			public setInt(param0: number, param1: string, param2: number): void;
			public setTextColor(param0: number, param1: number): void;
			public reapply(param0: android.content.Context, param1: android.view.View): void;
			public setTextViewCompoundDrawablesRelative(param0: number, param1: number, param2: number, param3: number, param4: number): void;
			public setImageViewBitmap(param0: number, param1: android.graphics.Bitmap): void;
			public getLayoutId(): number;
			public setLabelFor(param0: number, param1: number): void;
			public getPackage(): string;
			public constructor(param0: android.widget.RemoteViews, param1: android.widget.RemoteViews);
			public setUri(param0: number, param1: string, param2: android.net.Uri): void;
			public setDisplayedChild(param0: number, param1: number): void;
			public constructor(param0: android.os.Parcel);
			public setChar(param0: number, param1: string, param2: string): void;
			public showPrevious(param0: number): void;
			public setTextViewCompoundDrawables(param0: number, param1: number, param2: number, param3: number, param4: number): void;
			public setOnClickFillInIntent(param0: number, param1: android.content.Intent): void;
			public setChronometer(param0: number, param1: number, param2: string, param3: boolean): void;
			public setFloat(param0: number, param1: string, param2: number): void;
			public apply(param0: android.content.Context, param1: android.view.ViewGroup): android.view.View;
			public setProgressBar(param0: number, param1: number, param2: number, param3: boolean): void;
			/** @deprecated */
			public setRemoteAdapter(param0: number, param1: number, param2: android.content.Intent): void;
			public setDouble(param0: number, param1: string, param2: number): void;
			public setShort(param0: number, param1: string, param2: number): void;
			public setBoolean(param0: number, param1: string, param2: boolean): void;
			public setScrollPosition(param0: number, param1: number): void;
			public setByte(param0: number, param1: string, param2: number): void;
		}
		export module RemoteViews {
			export class ActionException extends java.lang.RuntimeException {
				public static class: java.lang.Class<android.widget.RemoteViews.ActionException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Exception);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
			export class RemoteView extends java.lang.Object implements java.lang.annotation.Annotation {
				public static class: java.lang.Class<android.widget.RemoteViews.RemoteView>;
				/**
				 * Constructs a new instance of the android.widget.RemoteViews$RemoteView interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					annotationType(): java.lang.Class<any>;
					equals(param0: any): boolean;
					hashCode(): number;
					toString(): string;
				});
				public constructor();
				public hashCode(): number;
				public equals(param0: any): boolean;
				public annotationType(): java.lang.Class<any>;
				public toString(): string;
			}
		}
	}
}

declare module android {
	export module widget {
		export abstract class RemoteViewsService extends android.app.Service {
			public static class: java.lang.Class<android.widget.RemoteViewsService>;
			public onTrimMemory(param0: number): void;
			public onBind(param0: android.content.Intent): android.os.IBinder;
			public constructor(param0: android.content.Context);
			public constructor();
			public onGetViewFactory(param0: android.content.Intent): android.widget.RemoteViewsService.RemoteViewsFactory;
		}
		export module RemoteViewsService {
			export class RemoteViewsFactory extends java.lang.Object {
				public static class: java.lang.Class<android.widget.RemoteViewsService.RemoteViewsFactory>;
				/**
				 * Constructs a new instance of the android.widget.RemoteViewsService$RemoteViewsFactory interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onCreate(): void;
					onDataSetChanged(): void;
					onDestroy(): void;
					getCount(): number;
					getViewAt(param0: number): android.widget.RemoteViews;
					getLoadingView(): android.widget.RemoteViews;
					getViewTypeCount(): number;
					getItemId(param0: number): number;
					hasStableIds(): boolean;
				});
				public constructor();
				public getViewTypeCount(): number;
				public hasStableIds(): boolean;
				public getViewAt(param0: number): android.widget.RemoteViews;
				public getItemId(param0: number): number;
				public onCreate(): void;
				public getLoadingView(): android.widget.RemoteViews;
				public onDataSetChanged(): void;
				public getCount(): number;
				public onDestroy(): void;
			}
		}
	}
}

declare module android {
	export module widget {
		export abstract class ResourceCursorAdapter extends android.widget.CursorAdapter {
			public static class: java.lang.Class<android.widget.ResourceCursorAdapter>;
			/** @deprecated */
			public constructor(param0: android.content.Context, param1: android.database.Cursor);
			public getFilter(): android.widget.Filter;
			public getDropDownView(param0: number, param1: android.view.View, param2: android.view.ViewGroup): android.view.View;
			public constructor(param0: android.content.Context, param1: android.database.Cursor, param2: number);
			public constructor(param0: android.content.Context, param1: android.database.Cursor, param2: boolean);
			public constructor();
			public newView(param0: android.content.Context, param1: android.database.Cursor, param2: android.view.ViewGroup): android.view.View;
			public constructor(param0: android.content.Context, param1: number, param2: android.database.Cursor, param3: boolean);
			public constructor(param0: android.content.Context, param1: number, param2: android.database.Cursor, param3: number);
			public newDropDownView(param0: android.content.Context, param1: android.database.Cursor, param2: android.view.ViewGroup): android.view.View;
			public areAllItemsEnabled(): boolean;
			public isEnabled(param0: number): boolean;
			public setDropDownViewResource(param0: number): void;
			/** @deprecated */
			public constructor(param0: android.content.Context, param1: number, param2: android.database.Cursor);
			public setViewResource(param0: number): void;
		}
	}
}

declare module android {
	export module widget {
		export abstract class ResourceCursorTreeAdapter extends android.widget.CursorTreeAdapter {
			public static class: java.lang.Class<android.widget.ResourceCursorTreeAdapter>;
			public getFilter(): android.widget.Filter;
			public constructor(param0: android.database.Cursor, param1: android.content.Context, param2: boolean);
			public registerDataSetObserver(param0: android.database.DataSetObserver): void;
			public getChildrenCount(param0: number): number;
			public newChildView(param0: android.content.Context, param1: android.database.Cursor, param2: boolean, param3: android.view.ViewGroup): android.view.View;
			public getChildTypeCount(): number;
			public hasStableIds(): boolean;
			public onGroupCollapsed(param0: number): void;
			public constructor(param0: android.content.Context, param1: android.database.Cursor, param2: number, param3: number);
			public getGroupView(param0: number, param1: boolean, param2: android.view.View, param3: android.view.ViewGroup): android.view.View;
			public getCombinedGroupId(param0: number): number;
			public getChild(param0: number, param1: number): any;
			public getChildView(param0: number, param1: number, param2: boolean, param3: android.view.View, param4: android.view.ViewGroup): android.view.View;
			public unregisterDataSetObserver(param0: android.database.DataSetObserver): void;
			public getGroup(param0: number): android.database.Cursor;
			public constructor(param0: android.content.Context, param1: android.database.Cursor, param2: number, param3: number, param4: number, param5: number);
			public getGroupId(param0: number): number;
			public getGroupType(param0: number): number;
			public getCombinedChildId(param0: number, param1: number): number;
			public getGroupCount(): number;
			public isEmpty(): boolean;
			public getChild(param0: number, param1: number): android.database.Cursor;
			public getChildId(param0: number, param1: number): number;
			public constructor();
			public constructor(param0: android.database.Cursor, param1: android.content.Context);
			public onGroupExpanded(param0: number): void;
			public constructor(param0: android.content.Context, param1: android.database.Cursor, param2: number, param3: number, param4: number);
			public isChildSelectable(param0: number, param1: number): boolean;
			public getGroup(param0: number): any;
			public getGroupTypeCount(): number;
			public areAllItemsEnabled(): boolean;
			public getChildType(param0: number, param1: number): number;
			public newGroupView(param0: android.content.Context, param1: android.database.Cursor, param2: boolean, param3: android.view.ViewGroup): android.view.View;
		}
	}
}

declare module android {
	export module widget {
		export class ScrollView extends android.widget.FrameLayout {
			public static class: java.lang.Class<android.widget.ScrollView>;
			public onOverScrolled(param0: number, param1: number, param2: boolean, param3: boolean): void;
			public setSmoothScrollingEnabled(param0: boolean): void;
			public onLayout(param0: boolean, param1: number, param2: number, param3: number, param4: number): void;
			public measureChildWithMargins(param0: android.view.View, param1: number, param2: number, param3: number, param4: number): void;
			public smoothScrollTo(param0: number, param1: number): void;
			public focusableViewAvailable(param0: android.view.View): void;
			public createContextMenu(param0: android.view.ContextMenu): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onMeasure(param0: number, param1: number): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public shouldDelayChildPressedState(): boolean;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public getBottomFadingEdgeStrength(): number;
			public addView(param0: android.view.View, param1: number, param2: number): void;
			public focusSearch(param0: android.view.View, param1: number): android.view.View;
			public requestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public showContextMenuForChild(param0: android.view.View): boolean;
			public scrollTo(param0: number, param1: number): void;
			public bringChildToFront(param0: android.view.View): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public onDetachedFromWindow(): void;
			public draw(param0: android.graphics.Canvas): void;
			public sendAccessibilityEvent(param0: number): void;
			public requestTransparentRegion(param0: android.view.View): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public getParentForAccessibility(): android.view.ViewParent;
			public setFillViewport(param0: boolean): void;
			public onRequestFocusInDescendants(param0: number, param1: android.graphics.Rect): boolean;
			public getParent(): android.view.ViewParent;
			public arrowScroll(param0: number): boolean;
			public startActionModeForChild(param0: android.view.View, param1: android.view.ActionMode.Callback): android.view.ActionMode;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public computeVerticalScrollRange(): number;
			public computeVerticalScrollOffset(): number;
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public requestChildFocus(param0: android.view.View, param1: android.view.View): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public setOverScrollMode(param0: number): void;
			public requestChildRectangleOnScreen(param0: android.view.View, param1: android.graphics.Rect, param2: boolean): boolean;
			public focusSearch(param0: number): android.view.View;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public onInterceptTouchEvent(param0: android.view.MotionEvent): boolean;
			public recomputeViewAttributes(param0: android.view.View): void;
			public performAccessibilityAction(param0: number, param1: android.os.Bundle): boolean;
			public onSizeChanged(param0: number, param1: number, param2: number, param3: number): void;
			public isLayoutRequested(): boolean;
			public computeScrollDeltaToGetChildRectOnScreen(param0: android.graphics.Rect): number;
			public onGenericMotionEvent(param0: android.view.MotionEvent): boolean;
			public isSmoothScrollingEnabled(): boolean;
			public invalidateChild(param0: android.view.View, param1: android.graphics.Rect): void;
			public getTopFadingEdgeStrength(): number;
			public executeKeyEvent(param0: android.view.KeyEvent): boolean;
			public invalidateChildInParent(param0: native.Array<number>, param1: android.graphics.Rect): android.view.ViewParent;
			public getMaxScrollAmount(): number;
			public computeScroll(): void;
			public requestLayout(): void;
			public addView(param0: android.view.View): void;
			public childDrawableStateChanged(param0: android.view.View): void;
			public removeView(param0: android.view.View): void;
			public clearChildFocus(param0: android.view.View): void;
			public fullScroll(param0: number): boolean;
			public updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public fling(param0: number): void;
			public onTouchEvent(param0: android.view.MotionEvent): boolean;
			public requestDisallowInterceptTouchEvent(param0: boolean): void;
			public pageScroll(param0: number): boolean;
			public getChildVisibleRect(param0: android.view.View, param1: android.graphics.Rect, param2: android.graphics.Point): boolean;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public smoothScrollBy(param0: number, param1: number): void;
			public measureChild(param0: android.view.View, param1: number, param2: number): void;
			public constructor(param0: android.content.Context);
			public dispatchKeyEvent(param0: android.view.KeyEvent): boolean;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public addView(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams): void;
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public isFillViewport(): boolean;
			public addView(param0: android.view.View, param1: number): void;
			public requestFitSystemWindows(): void;
		}
	}
}

declare module android {
	export module widget {
		export class Scroller extends java.lang.Object {
			public static class: java.lang.Class<android.widget.Scroller>;
			public startScroll(param0: number, param1: number, param2: number, param3: number, param4: number): void;
			public timePassed(): number;
			public getFinalX(): number;
			public getCurrVelocity(): number;
			public setFriction(param0: number): void;
			public computeScrollOffset(): boolean;
			public startScroll(param0: number, param1: number, param2: number, param3: number): void;
			public getCurrX(): number;
			public getDuration(): number;
			public getStartY(): number;
			public constructor(param0: android.content.Context, param1: android.view.animation.Interpolator);
			public abortAnimation(): void;
			public getFinalY(): number;
			public fling(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number): void;
			public constructor(param0: android.content.Context, param1: android.view.animation.Interpolator, param2: boolean);
			public isFinished(): boolean;
			public getCurrY(): number;
			public constructor(param0: android.content.Context);
			public setFinalX(param0: number): void;
			public setFinalY(param0: number): void;
			public extendDuration(param0: number): void;
			public forceFinished(param0: boolean): void;
			public getStartX(): number;
		}
	}
}

declare module android {
	export module widget {
		export class SearchView extends android.widget.LinearLayout implements android.view.CollapsibleActionView {
			public static class: java.lang.Class<android.widget.SearchView>;
			public setIconified(param0: boolean): void;
			public focusableViewAvailable(param0: android.view.View): void;
			public createContextMenu(param0: android.view.ContextMenu): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onMeasure(param0: number, param1: number): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public setOnSearchClickListener(param0: android.view.View.OnClickListener): void;
			public isSubmitButtonEnabled(): boolean;
			public addView(param0: android.view.View, param1: number, param2: number): void;
			public focusSearch(param0: android.view.View, param1: number): android.view.View;
			public requestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public onActionViewCollapsed(): void;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public setInputType(param0: number): void;
			public setOnSuggestionListener(param0: android.widget.SearchView.OnSuggestionListener): void;
			public isIconified(): boolean;
			public showContextMenuForChild(param0: android.view.View): boolean;
			public getQuery(): string;
			public bringChildToFront(param0: android.view.View): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public setSubmitButtonEnabled(param0: boolean): void;
			public onDetachedFromWindow(): void;
			public sendAccessibilityEvent(param0: number): void;
			public setMaxWidth(param0: number): void;
			public requestTransparentRegion(param0: android.view.View): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public getParentForAccessibility(): android.view.ViewParent;
			public getParent(): android.view.ViewParent;
			public setImeOptions(param0: number): void;
			public setOnCloseListener(param0: android.widget.SearchView.OnCloseListener): void;
			public startActionModeForChild(param0: android.view.View, param1: android.view.ActionMode.Callback): android.view.ActionMode;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public isQueryRefinementEnabled(): boolean;
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public requestChildFocus(param0: android.view.View, param1: android.view.View): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public onWindowFocusChanged(param0: boolean): void;
			public requestChildRectangleOnScreen(param0: android.view.View, param1: android.graphics.Rect, param2: boolean): boolean;
			public focusSearch(param0: number): android.view.View;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public getImeOptions(): number;
			public recomputeViewAttributes(param0: android.view.View): void;
			public setQueryRefinementEnabled(param0: boolean): void;
			public setOnQueryTextFocusChangeListener(param0: android.view.View.OnFocusChangeListener): void;
			public isLayoutRequested(): boolean;
			public setSuggestionsAdapter(param0: android.widget.CursorAdapter): void;
			public invalidateChild(param0: android.view.View, param1: android.graphics.Rect): void;
			public isIconfiedByDefault(): boolean;
			public invalidateChildInParent(param0: native.Array<number>, param1: android.graphics.Rect): android.view.ViewParent;
			public setIconifiedByDefault(param0: boolean): void;
			public onActionViewExpanded(): void;
			public getInputType(): number;
			public setSearchableInfo(param0: android.app.SearchableInfo): void;
			public setOnQueryTextListener(param0: android.widget.SearchView.OnQueryTextListener): void;
			public requestLayout(): void;
			public childDrawableStateChanged(param0: android.view.View): void;
			public addView(param0: android.view.View): void;
			public removeView(param0: android.view.View): void;
			public clearChildFocus(param0: android.view.View): void;
			public getQueryHint(): string;
			public updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public getMaxWidth(): number;
			public requestDisallowInterceptTouchEvent(param0: boolean): void;
			public setQueryHint(param0: string): void;
			public getChildVisibleRect(param0: android.view.View, param1: android.graphics.Rect, param2: android.graphics.Point): boolean;
			public getSuggestionsAdapter(): android.widget.CursorAdapter;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public constructor(param0: android.content.Context);
			public setQuery(param0: string, param1: boolean): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public addView(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams): void;
			public onRtlPropertiesChanged(param0: number): void;
			public requestFitSystemWindows(): void;
			public addView(param0: android.view.View, param1: number): void;
		}
		export module SearchView {
			export class OnCloseListener extends java.lang.Object {
				public static class: java.lang.Class<android.widget.SearchView.OnCloseListener>;
				/**
				 * Constructs a new instance of the android.widget.SearchView$OnCloseListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onClose(): boolean;
				});
				public constructor();
				public onClose(): boolean;
			}
			export class OnQueryTextListener extends java.lang.Object {
				public static class: java.lang.Class<android.widget.SearchView.OnQueryTextListener>;
				/**
				 * Constructs a new instance of the android.widget.SearchView$OnQueryTextListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onQueryTextSubmit(param0: string): boolean;
					onQueryTextChange(param0: string): boolean;
				});
				public constructor();
				public onQueryTextChange(param0: string): boolean;
				public onQueryTextSubmit(param0: string): boolean;
			}
			export class OnSuggestionListener extends java.lang.Object {
				public static class: java.lang.Class<android.widget.SearchView.OnSuggestionListener>;
				/**
				 * Constructs a new instance of the android.widget.SearchView$OnSuggestionListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onSuggestionSelect(param0: number): boolean;
					onSuggestionClick(param0: number): boolean;
				});
				public constructor();
				public onSuggestionSelect(param0: number): boolean;
				public onSuggestionClick(param0: number): boolean;
			}
		}
	}
}

declare module android {
	export module widget {
		export class SectionIndexer extends java.lang.Object {
			public static class: java.lang.Class<android.widget.SectionIndexer>;
			/**
			 * Constructs a new instance of the android.widget.SectionIndexer interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				getSections(): native.Array<any>;
				getPositionForSection(param0: number): number;
				getSectionForPosition(param0: number): number;
			});
			public constructor();
			public getSections(): native.Array<any>;
			public getPositionForSection(param0: number): number;
			public getSectionForPosition(param0: number): number;
		}
	}
}

declare module android {
	export module widget {
		export class SeekBar extends android.widget.AbsSeekBar {
			public static class: java.lang.Class<android.widget.SeekBar>;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public setOnSeekBarChangeListener(param0: android.widget.SeekBar.OnSeekBarChangeListener): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public constructor(param0: android.content.Context);
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public sendAccessibilityEvent(param0: number): void;
		}
		export module SeekBar {
			export class OnSeekBarChangeListener extends java.lang.Object {
				public static class: java.lang.Class<android.widget.SeekBar.OnSeekBarChangeListener>;
				/**
				 * Constructs a new instance of the android.widget.SeekBar$OnSeekBarChangeListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onProgressChanged(param0: android.widget.SeekBar, param1: number, param2: boolean): void;
					onStartTrackingTouch(param0: android.widget.SeekBar): void;
					onStopTrackingTouch(param0: android.widget.SeekBar): void;
				});
				public constructor();
				public onStopTrackingTouch(param0: android.widget.SeekBar): void;
				public onProgressChanged(param0: android.widget.SeekBar, param1: number, param2: boolean): void;
				public onStartTrackingTouch(param0: android.widget.SeekBar): void;
			}
		}
	}
}

declare module android {
	export module widget {
		export class ShareActionProvider extends android.view.ActionProvider {
			public static class: java.lang.Class<android.widget.ShareActionProvider>;
			public static DEFAULT_SHARE_HISTORY_FILE_NAME: string;
			public setShareHistoryFileName(param0: string): void;
			/** @deprecated */
			public onCreateActionView(): android.view.View;
			public onCreateActionView(): android.view.View;
			public constructor(param0: android.content.Context);
			public setOnShareTargetSelectedListener(param0: android.widget.ShareActionProvider.OnShareTargetSelectedListener): void;
			public onPrepareSubMenu(param0: android.view.SubMenu): void;
			public onCreateActionView(param0: android.view.MenuItem): android.view.View;
			public hasSubMenu(): boolean;
			public setShareIntent(param0: android.content.Intent): void;
		}
		export module ShareActionProvider {
			export class OnShareTargetSelectedListener extends java.lang.Object {
				public static class: java.lang.Class<android.widget.ShareActionProvider.OnShareTargetSelectedListener>;
				/**
				 * Constructs a new instance of the android.widget.ShareActionProvider$OnShareTargetSelectedListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onShareTargetSelected(param0: android.widget.ShareActionProvider, param1: android.content.Intent): boolean;
				});
				public constructor();
				public onShareTargetSelected(param0: android.widget.ShareActionProvider, param1: android.content.Intent): boolean;
			}
		}
	}
}

declare module android {
	export module widget {
		export class SimpleAdapter extends android.widget.BaseAdapter implements android.widget.Filterable {
			public static class: java.lang.Class<android.widget.SimpleAdapter>;
			public getItem(param0: number): any;
			public getViewBinder(): android.widget.SimpleAdapter.ViewBinder;
			public getFilter(): android.widget.Filter;
			public getDropDownView(param0: number, param1: android.view.View, param2: android.view.ViewGroup): android.view.View;
			public getItemId(param0: number): number;
			public setViewText(param0: android.widget.TextView, param1: string): void;
			public constructor();
			public setViewBinder(param0: android.widget.SimpleAdapter.ViewBinder): void;
			public getView(param0: number, param1: android.view.View, param2: android.view.ViewGroup): android.view.View;
			public constructor(param0: android.content.Context, param1: java.util.List<any>, param2: number, param3: native.Array<string>, param4: native.Array<number>);
			public setViewImage(param0: android.widget.ImageView, param1: number): void;
			public setViewImage(param0: android.widget.ImageView, param1: string): void;
			public areAllItemsEnabled(): boolean;
			public isEnabled(param0: number): boolean;
			public getCount(): number;
			public setDropDownViewResource(param0: number): void;
		}
		export module SimpleAdapter {
			export class ViewBinder extends java.lang.Object {
				public static class: java.lang.Class<android.widget.SimpleAdapter.ViewBinder>;
				/**
				 * Constructs a new instance of the android.widget.SimpleAdapter$ViewBinder interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					setViewValue(param0: android.view.View, param1: any, param2: string): boolean;
				});
				public constructor();
				public setViewValue(param0: android.view.View, param1: any, param2: string): boolean;
			}
		}
	}
}

declare module android {
	export module widget {
		export class SimpleCursorAdapter extends android.widget.ResourceCursorAdapter {
			public static class: java.lang.Class<android.widget.SimpleCursorAdapter>;
			/** @deprecated */
			public constructor(param0: android.content.Context, param1: android.database.Cursor);
			public getCursorToStringConverter(): android.widget.SimpleCursorAdapter.CursorToStringConverter;
			public getFilter(): android.widget.Filter;
			public setStringConversionColumn(param0: number): void;
			public changeCursorAndColumns(param0: android.database.Cursor, param1: native.Array<string>, param2: native.Array<number>): void;
			/** @deprecated */
			public constructor(param0: android.content.Context, param1: number, param2: android.database.Cursor, param3: native.Array<string>, param4: native.Array<number>);
			public constructor(param0: android.content.Context, param1: android.database.Cursor, param2: boolean);
			public setViewText(param0: android.widget.TextView, param1: string): void;
			public constructor(param0: android.content.Context, param1: number, param2: android.database.Cursor, param3: boolean);
			public setCursorToStringConverter(param0: android.widget.SimpleCursorAdapter.CursorToStringConverter): void;
			public constructor(param0: android.content.Context, param1: number, param2: android.database.Cursor, param3: number);
			public isEnabled(param0: number): boolean;
			public constructor(param0: android.content.Context, param1: number, param2: android.database.Cursor, param3: native.Array<string>, param4: native.Array<number>, param5: number);
			public getDropDownView(param0: number, param1: android.view.View, param2: android.view.ViewGroup): android.view.View;
			public setViewBinder(param0: android.widget.SimpleCursorAdapter.ViewBinder): void;
			public constructor(param0: android.content.Context, param1: android.database.Cursor, param2: number);
			public constructor();
			public bindView(param0: android.view.View, param1: android.content.Context, param2: android.database.Cursor): void;
			public swapCursor(param0: android.database.Cursor): android.database.Cursor;
			public setViewImage(param0: android.widget.ImageView, param1: string): void;
			public areAllItemsEnabled(): boolean;
			public convertToString(param0: android.database.Cursor): string;
			/** @deprecated */
			public constructor(param0: android.content.Context, param1: number, param2: android.database.Cursor);
			public getStringConversionColumn(): number;
			public getViewBinder(): android.widget.SimpleCursorAdapter.ViewBinder;
		}
		export module SimpleCursorAdapter {
			export class CursorToStringConverter extends java.lang.Object {
				public static class: java.lang.Class<android.widget.SimpleCursorAdapter.CursorToStringConverter>;
				/**
				 * Constructs a new instance of the android.widget.SimpleCursorAdapter$CursorToStringConverter interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					convertToString(param0: android.database.Cursor): string;
				});
				public constructor();
				public convertToString(param0: android.database.Cursor): string;
			}
			export class ViewBinder extends java.lang.Object {
				public static class: java.lang.Class<android.widget.SimpleCursorAdapter.ViewBinder>;
				/**
				 * Constructs a new instance of the android.widget.SimpleCursorAdapter$ViewBinder interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					setViewValue(param0: android.view.View, param1: android.database.Cursor, param2: number): boolean;
				});
				public constructor();
				public setViewValue(param0: android.view.View, param1: android.database.Cursor, param2: number): boolean;
			}
		}
	}
}

declare module android {
	export module widget {
		export abstract class SimpleCursorTreeAdapter extends android.widget.ResourceCursorTreeAdapter {
			public static class: java.lang.Class<android.widget.SimpleCursorTreeAdapter>;
			public getFilter(): android.widget.Filter;
			public constructor(param0: android.database.Cursor, param1: android.content.Context, param2: boolean);
			public registerDataSetObserver(param0: android.database.DataSetObserver): void;
			public constructor(param0: android.content.Context, param1: android.database.Cursor, param2: number, param3: number, param4: native.Array<string>, param5: native.Array<number>, param6: number, param7: number, param8: native.Array<string>, param9: native.Array<number>);
			public getChildrenCount(param0: number): number;
			public setViewText(param0: android.widget.TextView, param1: string): void;
			public getChildTypeCount(): number;
			public hasStableIds(): boolean;
			public onGroupCollapsed(param0: number): void;
			public constructor(param0: android.content.Context, param1: android.database.Cursor, param2: number, param3: number);
			public getGroupView(param0: number, param1: boolean, param2: android.view.View, param3: android.view.ViewGroup): android.view.View;
			public getCombinedGroupId(param0: number): number;
			public getChild(param0: number, param1: number): any;
			public getChildView(param0: number, param1: number, param2: boolean, param3: android.view.View, param4: android.view.ViewGroup): android.view.View;
			public unregisterDataSetObserver(param0: android.database.DataSetObserver): void;
			public getGroup(param0: number): android.database.Cursor;
			public constructor(param0: android.content.Context, param1: android.database.Cursor, param2: number, param3: number, param4: number, param5: number);
			public getGroupId(param0: number): number;
			public getGroupType(param0: number): number;
			public getCombinedChildId(param0: number, param1: number): number;
			public constructor(param0: android.content.Context, param1: android.database.Cursor, param2: number, param3: number, param4: native.Array<string>, param5: native.Array<number>, param6: number, param7: native.Array<string>, param8: native.Array<number>);
			public getGroupCount(): number;
			public isEmpty(): boolean;
			public getChild(param0: number, param1: number): android.database.Cursor;
			public getChildId(param0: number, param1: number): number;
			public bindChildView(param0: android.view.View, param1: android.content.Context, param2: android.database.Cursor, param3: boolean): void;
			public constructor();
			public constructor(param0: android.database.Cursor, param1: android.content.Context);
			public constructor(param0: android.content.Context, param1: android.database.Cursor, param2: number, param3: native.Array<string>, param4: native.Array<number>, param5: number, param6: native.Array<string>, param7: native.Array<number>);
			public onGroupExpanded(param0: number): void;
			public constructor(param0: android.content.Context, param1: android.database.Cursor, param2: number, param3: number, param4: number);
			public isChildSelectable(param0: number, param1: number): boolean;
			public setViewImage(param0: android.widget.ImageView, param1: string): void;
			public getGroup(param0: number): any;
			public setViewBinder(param0: android.widget.SimpleCursorTreeAdapter.ViewBinder): void;
			public getGroupTypeCount(): number;
			public areAllItemsEnabled(): boolean;
			public bindGroupView(param0: android.view.View, param1: android.content.Context, param2: android.database.Cursor, param3: boolean): void;
			public getChildType(param0: number, param1: number): number;
			public getViewBinder(): android.widget.SimpleCursorTreeAdapter.ViewBinder;
		}
		export module SimpleCursorTreeAdapter {
			export class ViewBinder extends java.lang.Object {
				public static class: java.lang.Class<android.widget.SimpleCursorTreeAdapter.ViewBinder>;
				/**
				 * Constructs a new instance of the android.widget.SimpleCursorTreeAdapter$ViewBinder interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					setViewValue(param0: android.view.View, param1: android.database.Cursor, param2: number): boolean;
				});
				public constructor();
				public setViewValue(param0: android.view.View, param1: android.database.Cursor, param2: number): boolean;
			}
		}
	}
}

declare module android {
	export module widget {
		export class SimpleExpandableListAdapter extends android.widget.BaseExpandableListAdapter {
			public static class: java.lang.Class<android.widget.SimpleExpandableListAdapter>;
			public registerDataSetObserver(param0: android.database.DataSetObserver): void;
			public getChildrenCount(param0: number): number;
			public hasStableIds(): boolean;
			public getChildTypeCount(): number;
			public onGroupCollapsed(param0: number): void;
			public constructor(param0: android.content.Context, param1: java.util.List<any>, param2: number, param3: number, param4: native.Array<string>, param5: native.Array<number>, param6: java.util.List<any>, param7: number, param8: number, param9: native.Array<string>, param10: native.Array<number>);
			public getGroupView(param0: number, param1: boolean, param2: android.view.View, param3: android.view.ViewGroup): android.view.View;
			public getCombinedGroupId(param0: number): number;
			public getChild(param0: number, param1: number): any;
			public getChildView(param0: number, param1: number, param2: boolean, param3: android.view.View, param4: android.view.ViewGroup): android.view.View;
			public unregisterDataSetObserver(param0: android.database.DataSetObserver): void;
			public getGroupId(param0: number): number;
			public getGroupType(param0: number): number;
			public newChildView(param0: boolean, param1: android.view.ViewGroup): android.view.View;
			public getCombinedChildId(param0: number, param1: number): number;
			public getGroupCount(): number;
			public isEmpty(): boolean;
			public constructor(param0: android.content.Context, param1: java.util.List<any>, param2: number, param3: number, param4: native.Array<string>, param5: native.Array<number>, param6: java.util.List<any>, param7: number, param8: native.Array<string>, param9: native.Array<number>);
			public getChildId(param0: number, param1: number): number;
			public constructor();
			public newGroupView(param0: boolean, param1: android.view.ViewGroup): android.view.View;
			public onGroupExpanded(param0: number): void;
			public isChildSelectable(param0: number, param1: number): boolean;
			public constructor(param0: android.content.Context, param1: java.util.List<any>, param2: number, param3: native.Array<string>, param4: native.Array<number>, param5: java.util.List<any>, param6: number, param7: native.Array<string>, param8: native.Array<number>);
			public getGroup(param0: number): any;
			public getGroupTypeCount(): number;
			public areAllItemsEnabled(): boolean;
			public getChildType(param0: number, param1: number): number;
		}
	}
}

declare module android {
	export module widget {
		export class SlidingDrawer extends android.view.ViewGroup {
			public static class: java.lang.Class<android.widget.SlidingDrawer>;
			public static ORIENTATION_HORIZONTAL: number;
			public static ORIENTATION_VERTICAL: number;
			public onLayout(param0: boolean, param1: number, param2: number, param3: number, param4: number): void;
			public focusableViewAvailable(param0: android.view.View): void;
			public createContextMenu(param0: android.view.ContextMenu): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onMeasure(param0: number, param1: number): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public addView(param0: android.view.View, param1: number, param2: number): void;
			public focusSearch(param0: android.view.View, param1: number): android.view.View;
			public requestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public onFinishInflate(): void;
			public animateToggle(): void;
			public getContent(): android.view.View;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public showContextMenuForChild(param0: android.view.View): boolean;
			public bringChildToFront(param0: android.view.View): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public sendAccessibilityEvent(param0: number): void;
			public animateClose(): void;
			public requestTransparentRegion(param0: android.view.View): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public getParentForAccessibility(): android.view.ViewParent;
			public getParent(): android.view.ViewParent;
			public startActionModeForChild(param0: android.view.View, param1: android.view.ActionMode.Callback): android.view.ActionMode;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public dispatchDraw(param0: android.graphics.Canvas): void;
			public getHandle(): android.view.View;
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public requestChildFocus(param0: android.view.View, param1: android.view.View): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public isOpened(): boolean;
			public requestChildRectangleOnScreen(param0: android.view.View, param1: android.graphics.Rect, param2: boolean): boolean;
			public focusSearch(param0: number): android.view.View;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public onInterceptTouchEvent(param0: android.view.MotionEvent): boolean;
			public recomputeViewAttributes(param0: android.view.View): void;
			public isLayoutRequested(): boolean;
			public toggle(): void;
			public isMoving(): boolean;
			public invalidateChild(param0: android.view.View, param1: android.graphics.Rect): void;
			public invalidateChildInParent(param0: native.Array<number>, param1: android.graphics.Rect): android.view.ViewParent;
			public lock(): void;
			public setOnDrawerOpenListener(param0: android.widget.SlidingDrawer.OnDrawerOpenListener): void;
			public close(): void;
			public requestLayout(): void;
			public childDrawableStateChanged(param0: android.view.View): void;
			public addView(param0: android.view.View): void;
			public removeView(param0: android.view.View): void;
			public clearChildFocus(param0: android.view.View): void;
			public animateOpen(): void;
			public updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public onTouchEvent(param0: android.view.MotionEvent): boolean;
			public requestDisallowInterceptTouchEvent(param0: boolean): void;
			public getChildVisibleRect(param0: android.view.View, param1: android.graphics.Rect, param2: android.graphics.Point): boolean;
			public unlock(): void;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public setOnDrawerScrollListener(param0: android.widget.SlidingDrawer.OnDrawerScrollListener): void;
			public constructor(param0: android.content.Context);
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public open(): void;
			public setOnDrawerCloseListener(param0: android.widget.SlidingDrawer.OnDrawerCloseListener): void;
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public addView(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams): void;
			public requestFitSystemWindows(): void;
			public addView(param0: android.view.View, param1: number): void;
		}
		export module SlidingDrawer {
			export class OnDrawerCloseListener extends java.lang.Object {
				public static class: java.lang.Class<android.widget.SlidingDrawer.OnDrawerCloseListener>;
				/**
				 * Constructs a new instance of the android.widget.SlidingDrawer$OnDrawerCloseListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onDrawerClosed(): void;
				});
				public constructor();
				public onDrawerClosed(): void;
			}
			export class OnDrawerOpenListener extends java.lang.Object {
				public static class: java.lang.Class<android.widget.SlidingDrawer.OnDrawerOpenListener>;
				/**
				 * Constructs a new instance of the android.widget.SlidingDrawer$OnDrawerOpenListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onDrawerOpened(): void;
				});
				public constructor();
				public onDrawerOpened(): void;
			}
			export class OnDrawerScrollListener extends java.lang.Object {
				public static class: java.lang.Class<android.widget.SlidingDrawer.OnDrawerScrollListener>;
				/**
				 * Constructs a new instance of the android.widget.SlidingDrawer$OnDrawerScrollListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onScrollStarted(): void;
					onScrollEnded(): void;
				});
				public constructor();
				public onScrollStarted(): void;
				public onScrollEnded(): void;
			}
		}
	}
}

declare module android {
	export module widget {
		export class Space extends android.view.View {
			public static class: java.lang.Class<android.widget.Space>;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onMeasure(param0: number, param1: number): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public constructor(param0: android.content.Context);
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public draw(param0: android.graphics.Canvas): void;
			public sendAccessibilityEvent(param0: number): void;
		}
	}
}

declare module android {
	export module widget {
		export class Spinner extends android.widget.AbsSpinner implements android.content.DialogInterface.OnClickListener {
			public static class: java.lang.Class<android.widget.Spinner>;
			public static MODE_DIALOG: number;
			public static MODE_DROPDOWN: number;
			public onClick(param0: android.content.DialogInterface, param1: number): void;
			public onLayout(param0: boolean, param1: number, param2: number, param3: number, param4: number): void;
			public getPrompt(): string;
			public focusableViewAvailable(param0: android.view.View): void;
			public createContextMenu(param0: android.view.ContextMenu): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public getPopupBackground(): android.graphics.drawable.Drawable;
			public onMeasure(param0: number, param1: number): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public setOnItemClickListener(param0: android.widget.AdapterView.OnItemClickListener): void;
			public addView(param0: android.view.View, param1: number, param2: number): void;
			public focusSearch(param0: android.view.View, param1: number): android.view.View;
			public requestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public getDropDownVerticalOffset(): number;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public showContextMenuForChild(param0: android.view.View): boolean;
			public setDropDownWidth(param0: number): void;
			public bringChildToFront(param0: android.view.View): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public setEnabled(param0: boolean): void;
			public onDetachedFromWindow(): void;
			public sendAccessibilityEvent(param0: number): void;
			public onRestoreInstanceState(param0: android.os.Parcelable): void;
			public requestTransparentRegion(param0: android.view.View): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public getParentForAccessibility(): android.view.ViewParent;
			public setDropDownVerticalOffset(param0: number): void;
			public getParent(): android.view.ViewParent;
			public constructor(param0: android.content.Context, param1: number);
			public startActionModeForChild(param0: android.view.View, param1: android.view.ActionMode.Callback): android.view.ActionMode;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public setAdapter(param0: android.widget.SpinnerAdapter): void;
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public requestChildFocus(param0: android.view.View, param1: android.view.View): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public performClick(): boolean;
			public requestChildRectangleOnScreen(param0: android.view.View, param1: android.graphics.Rect, param2: boolean): boolean;
			public onSaveInstanceState(): android.os.Parcelable;
			public setGravity(param0: number): void;
			public focusSearch(param0: number): android.view.View;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public recomputeViewAttributes(param0: android.view.View): void;
			public setAdapter(param0: any): void;
			public isLayoutRequested(): boolean;
			public getDropDownWidth(): number;
			public setDropDownHorizontalOffset(param0: number): void;
			public setPopupBackgroundDrawable(param0: android.graphics.drawable.Drawable): void;
			public invalidateChild(param0: android.view.View, param1: android.graphics.Rect): void;
			public getDropDownHorizontalOffset(): number;
			public invalidateChildInParent(param0: native.Array<number>, param1: android.graphics.Rect): android.view.ViewParent;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number, param3: number);
			public getGravity(): number;
			public getBaseline(): number;
			public setPromptId(param0: number): void;
			public requestLayout(): void;
			public setPrompt(param0: string): void;
			public childDrawableStateChanged(param0: android.view.View): void;
			public addView(param0: android.view.View): void;
			public removeView(param0: android.view.View): void;
			public clearChildFocus(param0: android.view.View): void;
			public updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public requestDisallowInterceptTouchEvent(param0: boolean): void;
			public getChildVisibleRect(param0: android.view.View, param1: android.graphics.Rect, param2: android.graphics.Point): boolean;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public constructor(param0: android.content.Context);
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public addView(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams): void;
			public setPopupBackgroundResource(param0: number): void;
			public requestFitSystemWindows(): void;
			public addView(param0: android.view.View, param1: number): void;
		}
	}
}

declare module android {
	export module widget {
		export class SpinnerAdapter extends java.lang.Object implements android.widget.Adapter {
			public static class: java.lang.Class<android.widget.SpinnerAdapter>;
			/**
			 * Constructs a new instance of the android.widget.SpinnerAdapter interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				getDropDownView(param0: number, param1: android.view.View, param2: android.view.ViewGroup): android.view.View;
				registerDataSetObserver(param0: android.database.DataSetObserver): void;
				unregisterDataSetObserver(param0: android.database.DataSetObserver): void;
				getCount(): number;
				getItem(param0: number): any;
				getItemId(param0: number): number;
				hasStableIds(): boolean;
				getView(param0: number, param1: android.view.View, param2: android.view.ViewGroup): android.view.View;
				getItemViewType(param0: number): number;
				getViewTypeCount(): number;
				isEmpty(): boolean;
			});
			public constructor();
			public static NO_SELECTION: number;
			public static IGNORE_ITEM_VIEW_TYPE: number;
			public unregisterDataSetObserver(param0: android.database.DataSetObserver): void;
			public getItem(param0: number): any;
			public getDropDownView(param0: number, param1: android.view.View, param2: android.view.ViewGroup): android.view.View;
			public getView(param0: number, param1: android.view.View, param2: android.view.ViewGroup): android.view.View;
			public registerDataSetObserver(param0: android.database.DataSetObserver): void;
			public getItemViewType(param0: number): number;
			public isEmpty(): boolean;
			public getViewTypeCount(): number;
			public getItemId(param0: number): number;
			public hasStableIds(): boolean;
			public getCount(): number;
		}
	}
}

declare module android {
	export module widget {
		export class StackView extends android.widget.AdapterViewAnimator {
			public static class: java.lang.Class<android.widget.StackView>;
			public onLayout(param0: boolean, param1: number, param2: number, param3: number, param4: number): void;
			public focusableViewAvailable(param0: android.view.View): void;
			public createContextMenu(param0: android.view.ContextMenu): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onMeasure(param0: number, param1: number): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public addView(param0: android.view.View, param1: number, param2: number): void;
			public focusSearch(param0: android.view.View, param1: number): android.view.View;
			public requestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public showContextMenuForChild(param0: android.view.View): boolean;
			public fyiWillBeAdvancedByHostKThx(): void;
			public bringChildToFront(param0: android.view.View): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public sendAccessibilityEvent(param0: number): void;
			public requestTransparentRegion(param0: android.view.View): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public getParentForAccessibility(): android.view.ViewParent;
			public getParent(): android.view.ViewParent;
			public startActionModeForChild(param0: android.view.View, param1: android.view.ActionMode.Callback): android.view.ActionMode;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public dispatchDraw(param0: android.graphics.Canvas): void;
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public requestChildFocus(param0: android.view.View, param1: android.view.View): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public requestChildRectangleOnScreen(param0: android.view.View, param1: android.graphics.Rect, param2: boolean): boolean;
			public focusSearch(param0: number): android.view.View;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public onInterceptTouchEvent(param0: android.view.MotionEvent): boolean;
			public recomputeViewAttributes(param0: android.view.View): void;
			public performAccessibilityAction(param0: number, param1: android.os.Bundle): boolean;
			public showNext(): void;
			public isLayoutRequested(): boolean;
			public advance(): void;
			public onGenericMotionEvent(param0: android.view.MotionEvent): boolean;
			public invalidateChild(param0: android.view.View, param1: android.graphics.Rect): void;
			public invalidateChildInParent(param0: native.Array<number>, param1: android.graphics.Rect): android.view.ViewParent;
			public showPrevious(): void;
			public requestLayout(): void;
			public childDrawableStateChanged(param0: android.view.View): void;
			public addView(param0: android.view.View): void;
			public removeView(param0: android.view.View): void;
			public clearChildFocus(param0: android.view.View): void;
			public updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public onTouchEvent(param0: android.view.MotionEvent): boolean;
			public requestDisallowInterceptTouchEvent(param0: boolean): void;
			public getChildVisibleRect(param0: android.view.View, param1: android.graphics.Rect, param2: android.graphics.Point): boolean;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public constructor(param0: android.content.Context);
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public addView(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams): void;
			public requestFitSystemWindows(): void;
			public addView(param0: android.view.View, param1: number): void;
		}
	}
}

declare module android {
	export module widget {
		export class Switch extends android.widget.CompoundButton {
			public static class: java.lang.Class<android.widget.Switch>;
			public getTextOn(): string;
			public onLayout(param0: boolean, param1: number, param2: number, param3: number, param4: number): void;
			public getSwitchPadding(): number;
			public getTrackDrawable(): android.graphics.drawable.Drawable;
			public drawableStateChanged(): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onMeasure(param0: number, param1: number): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public setTrackDrawable(param0: android.graphics.drawable.Drawable): void;
			public getThumbDrawable(): android.graphics.drawable.Drawable;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public onPopulateAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public setSwitchTypeface(param0: android.graphics.Typeface): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public setSwitchTextAppearance(param0: android.content.Context, param1: number): void;
			public sendAccessibilityEvent(param0: number): void;
			public setChecked(param0: boolean): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public verifyDrawable(param0: android.graphics.drawable.Drawable): boolean;
			public setSwitchTypeface(param0: android.graphics.Typeface, param1: number): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public setSwitchPadding(param0: number): void;
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public onDraw(param0: android.graphics.Canvas): void;
			public setThumbTextPadding(param0: number): void;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public setThumbResource(param0: number): void;
			public toggle(): void;
			public onCreateDrawableState(param0: number): native.Array<number>;
			public getCompoundPaddingRight(): number;
			public jumpDrawablesToCurrentState(): void;
			public onPreDraw(): boolean;
			public setSwitchMinWidth(param0: number): void;
			public getThumbTextPadding(): number;
			public isChecked(): boolean;
			public getCompoundPaddingLeft(): number;
			public onTouchEvent(param0: android.view.MotionEvent): boolean;
			public setTrackResource(param0: number): void;
			public setTextOn(param0: string): void;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public setTextOff(param0: string): void;
			public getTextOff(): string;
			public getSwitchMinWidth(): number;
			public constructor(param0: android.content.Context);
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public setThumbDrawable(param0: android.graphics.drawable.Drawable): void;
		}
	}
}

declare module android {
	export module widget {
		export class TabHost extends android.widget.FrameLayout implements android.view.ViewTreeObserver.OnTouchModeChangeListener {
			public static class: java.lang.Class<android.widget.TabHost>;
			public focusableViewAvailable(param0: android.view.View): void;
			public createContextMenu(param0: android.view.ContextMenu): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public getCurrentTabView(): android.view.View;
			public addView(param0: android.view.View, param1: number, param2: number): void;
			public focusSearch(param0: android.view.View, param1: number): android.view.View;
			public requestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public showContextMenuForChild(param0: android.view.View): boolean;
			public setCurrentTab(param0: number): void;
			public bringChildToFront(param0: android.view.View): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public sendAccessibilityEvent(param0: number): void;
			public onDetachedFromWindow(): void;
			public requestTransparentRegion(param0: android.view.View): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public getParentForAccessibility(): android.view.ViewParent;
			public setOnTabChangedListener(param0: android.widget.TabHost.OnTabChangeListener): void;
			public newTabSpec(param0: string): android.widget.TabHost.TabSpec;
			public getParent(): android.view.ViewParent;
			public startActionModeForChild(param0: android.view.View, param1: android.view.ActionMode.Callback): android.view.ActionMode;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public dispatchWindowFocusChanged(param0: boolean): void;
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public requestChildFocus(param0: android.view.View, param1: android.view.View): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public requestChildRectangleOnScreen(param0: android.view.View, param1: android.graphics.Rect, param2: boolean): boolean;
			public focusSearch(param0: number): android.view.View;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public recomputeViewAttributes(param0: android.view.View): void;
			public onTouchModeChanged(param0: boolean): void;
			public getTabWidget(): android.widget.TabWidget;
			public getCurrentTabTag(): string;
			public isLayoutRequested(): boolean;
			public setup(): void;
			public addTab(param0: android.widget.TabHost.TabSpec): void;
			public invalidateChild(param0: android.view.View, param1: android.graphics.Rect): void;
			public getCurrentTab(): number;
			public invalidateChildInParent(param0: native.Array<number>, param1: android.graphics.Rect): android.view.ViewParent;
			public setup(param0: android.app.LocalActivityManager): void;
			public getCurrentView(): android.view.View;
			public clearAllTabs(): void;
			public requestLayout(): void;
			public childDrawableStateChanged(param0: android.view.View): void;
			public addView(param0: android.view.View): void;
			public removeView(param0: android.view.View): void;
			public clearChildFocus(param0: android.view.View): void;
			public updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public getTabContentView(): android.widget.FrameLayout;
			public requestDisallowInterceptTouchEvent(param0: boolean): void;
			public getChildVisibleRect(param0: android.view.View, param1: android.graphics.Rect, param2: android.graphics.Point): boolean;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public constructor(param0: android.content.Context);
			public dispatchKeyEvent(param0: android.view.KeyEvent): boolean;
			public setCurrentTabByTag(param0: string): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public addView(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams): void;
			public onAttachedToWindow(): void;
			public requestFitSystemWindows(): void;
			public addView(param0: android.view.View, param1: number): void;
		}
		export module TabHost {
			export class OnTabChangeListener extends java.lang.Object {
				public static class: java.lang.Class<android.widget.TabHost.OnTabChangeListener>;
				/**
				 * Constructs a new instance of the android.widget.TabHost$OnTabChangeListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onTabChanged(param0: string): void;
				});
				public constructor();
				public onTabChanged(param0: string): void;
			}
			export class TabContentFactory extends java.lang.Object {
				public static class: java.lang.Class<android.widget.TabHost.TabContentFactory>;
				/**
				 * Constructs a new instance of the android.widget.TabHost$TabContentFactory interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					createTabContent(param0: string): android.view.View;
				});
				public constructor();
				public createTabContent(param0: string): android.view.View;
			}
			export class TabSpec extends java.lang.Object {
				public static class: java.lang.Class<android.widget.TabHost.TabSpec>;
				public setIndicator(param0: string): android.widget.TabHost.TabSpec;
				public setContent(param0: android.widget.TabHost.TabContentFactory): android.widget.TabHost.TabSpec;
				public setIndicator(param0: android.view.View): android.widget.TabHost.TabSpec;
				public getTag(): string;
				public setIndicator(param0: string, param1: android.graphics.drawable.Drawable): android.widget.TabHost.TabSpec;
				public setContent(param0: number): android.widget.TabHost.TabSpec;
				public setContent(param0: android.content.Intent): android.widget.TabHost.TabSpec;
			}
		}
	}
}

declare module android {
	export module widget {
		export class TabWidget extends android.widget.LinearLayout implements android.view.View.OnFocusChangeListener {
			public static class: java.lang.Class<android.widget.TabWidget>;
			public setRightStripDrawable(param0: android.graphics.drawable.Drawable): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public focusableViewAvailable(param0: android.view.View): void;
			public createContextMenu(param0: android.view.ContextMenu): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public addView(param0: android.view.View, param1: number, param2: number): void;
			public focusSearch(param0: android.view.View, param1: number): android.view.View;
			public requestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public setDividerDrawable(param0: android.graphics.drawable.Drawable): void;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public setLeftStripDrawable(param0: number): void;
			public showContextMenuForChild(param0: android.view.View): boolean;
			public setCurrentTab(param0: number): void;
			public bringChildToFront(param0: android.view.View): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public setEnabled(param0: boolean): void;
			public sendAccessibilityEvent(param0: number): void;
			public requestTransparentRegion(param0: android.view.View): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public getParentForAccessibility(): android.view.ViewParent;
			public getParent(): android.view.ViewParent;
			public isStripEnabled(): boolean;
			public startActionModeForChild(param0: android.view.View, param1: android.view.ActionMode.Callback): android.view.ActionMode;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public dispatchDraw(param0: android.graphics.Canvas): void;
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public requestChildFocus(param0: android.view.View, param1: android.view.View): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public requestChildRectangleOnScreen(param0: android.view.View, param1: android.graphics.Rect, param2: boolean): boolean;
			public setRightStripDrawable(param0: number): void;
			public focusSearch(param0: number): android.view.View;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public recomputeViewAttributes(param0: android.view.View): void;
			public onSizeChanged(param0: number, param1: number, param2: number, param3: number): void;
			public isLayoutRequested(): boolean;
			public setLeftStripDrawable(param0: android.graphics.drawable.Drawable): void;
			public invalidateChild(param0: android.view.View, param1: android.graphics.Rect): void;
			public removeAllViews(): void;
			public invalidateChildInParent(param0: native.Array<number>, param1: android.graphics.Rect): android.view.ViewParent;
			public getChildDrawingOrder(param0: number, param1: number): number;
			public setStripEnabled(param0: boolean): void;
			public focusCurrentTab(param0: number): void;
			public requestLayout(): void;
			public childDrawableStateChanged(param0: android.view.View): void;
			public addView(param0: android.view.View): void;
			public removeView(param0: android.view.View): void;
			public clearChildFocus(param0: android.view.View): void;
			public setDividerDrawable(param0: number): void;
			public updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public requestDisallowInterceptTouchEvent(param0: boolean): void;
			public getChildVisibleRect(param0: android.view.View, param1: android.graphics.Rect, param2: android.graphics.Point): boolean;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public getChildTabViewAt(param0: number): android.view.View;
			public onFocusChange(param0: android.view.View, param1: boolean): void;
			public constructor(param0: android.content.Context);
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public dispatchPopulateAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): boolean;
			public addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public addView(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams): void;
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public getTabCount(): number;
			public addView(param0: android.view.View, param1: number): void;
			public requestFitSystemWindows(): void;
		}
	}
}

declare module android {
	export module widget {
		export class TableLayout extends android.widget.LinearLayout {
			public static class: java.lang.Class<android.widget.TableLayout>;
			public setShrinkAllColumns(param0: boolean): void;
			public onLayout(param0: boolean, param1: number, param2: number, param3: number, param4: number): void;
			public isShrinkAllColumns(): boolean;
			public generateLayoutParams(param0: android.util.AttributeSet): android.view.ViewGroup.LayoutParams;
			public focusableViewAvailable(param0: android.view.View): void;
			public createContextMenu(param0: android.view.ContextMenu): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onMeasure(param0: number, param1: number): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public generateLayoutParams(param0: android.util.AttributeSet): android.widget.TableLayout.LayoutParams;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public addView(param0: android.view.View, param1: number, param2: number): void;
			public setColumnCollapsed(param0: number, param1: boolean): void;
			public focusSearch(param0: android.view.View, param1: number): android.view.View;
			public requestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public showContextMenuForChild(param0: android.view.View): boolean;
			public bringChildToFront(param0: android.view.View): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public sendAccessibilityEvent(param0: number): void;
			public isColumnShrinkable(param0: number): boolean;
			public requestTransparentRegion(param0: android.view.View): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public getParentForAccessibility(): android.view.ViewParent;
			public getParent(): android.view.ViewParent;
			public setStretchAllColumns(param0: boolean): void;
			public startActionModeForChild(param0: android.view.View, param1: android.view.ActionMode.Callback): android.view.ActionMode;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public requestChildFocus(param0: android.view.View, param1: android.view.View): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public generateLayoutParams(param0: android.view.ViewGroup.LayoutParams): android.view.ViewGroup.LayoutParams;
			public isStretchAllColumns(): boolean;
			public generateDefaultLayoutParams(): android.view.ViewGroup.LayoutParams;
			public requestChildRectangleOnScreen(param0: android.view.View, param1: android.graphics.Rect, param2: boolean): boolean;
			public focusSearch(param0: number): android.view.View;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public recomputeViewAttributes(param0: android.view.View): void;
			public isColumnCollapsed(param0: number): boolean;
			public isLayoutRequested(): boolean;
			public generateLayoutParams(param0: android.view.ViewGroup.LayoutParams): android.widget.LinearLayout.LayoutParams;
			public generateDefaultLayoutParams(): android.widget.LinearLayout.LayoutParams;
			public invalidateChild(param0: android.view.View, param1: android.graphics.Rect): void;
			public invalidateChildInParent(param0: native.Array<number>, param1: android.graphics.Rect): android.view.ViewParent;
			public setColumnStretchable(param0: number, param1: boolean): void;
			public setOnHierarchyChangeListener(param0: android.view.ViewGroup.OnHierarchyChangeListener): void;
			public requestLayout(): void;
			public generateLayoutParams(param0: android.util.AttributeSet): android.widget.LinearLayout.LayoutParams;
			public addView(param0: android.view.View): void;
			public checkLayoutParams(param0: android.view.ViewGroup.LayoutParams): boolean;
			public childDrawableStateChanged(param0: android.view.View): void;
			public removeView(param0: android.view.View): void;
			public clearChildFocus(param0: android.view.View): void;
			public updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public requestDisallowInterceptTouchEvent(param0: boolean): void;
			public getChildVisibleRect(param0: android.view.View, param1: android.graphics.Rect, param2: android.graphics.Point): boolean;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public constructor(param0: android.content.Context);
			public isColumnStretchable(param0: number): boolean;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public addView(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams): void;
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public setColumnShrinkable(param0: number, param1: boolean): void;
			public addView(param0: android.view.View, param1: number): void;
			public requestFitSystemWindows(): void;
		}
		export module TableLayout {
			export class LayoutParams extends android.widget.LinearLayout.LayoutParams {
				public static class: java.lang.Class<android.widget.TableLayout.LayoutParams>;
				public constructor(param0: number, param1: number);
				public constructor(param0: android.view.ViewGroup.LayoutParams);
				public constructor(param0: android.view.ViewGroup.MarginLayoutParams);
				public constructor(param0: number, param1: number, param2: number);
				public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
				public setBaseAttributes(param0: android.content.res.TypedArray, param1: number, param2: number): void;
				public constructor();
			}
		}
	}
}

declare module android {
	export module widget {
		export class TableRow extends android.widget.LinearLayout {
			public static class: java.lang.Class<android.widget.TableRow>;
			public onLayout(param0: boolean, param1: number, param2: number, param3: number, param4: number): void;
			public generateLayoutParams(param0: android.util.AttributeSet): android.view.ViewGroup.LayoutParams;
			public focusableViewAvailable(param0: android.view.View): void;
			public createContextMenu(param0: android.view.ContextMenu): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onMeasure(param0: number, param1: number): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public addView(param0: android.view.View, param1: number, param2: number): void;
			public focusSearch(param0: android.view.View, param1: number): android.view.View;
			public requestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public showContextMenuForChild(param0: android.view.View): boolean;
			public getVirtualChildCount(): number;
			public bringChildToFront(param0: android.view.View): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public sendAccessibilityEvent(param0: number): void;
			public getVirtualChildAt(param0: number): android.view.View;
			public requestTransparentRegion(param0: android.view.View): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public getParentForAccessibility(): android.view.ViewParent;
			public getParent(): android.view.ViewParent;
			public startActionModeForChild(param0: android.view.View, param1: android.view.ActionMode.Callback): android.view.ActionMode;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public requestChildFocus(param0: android.view.View, param1: android.view.View): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public generateLayoutParams(param0: android.view.ViewGroup.LayoutParams): android.view.ViewGroup.LayoutParams;
			public generateDefaultLayoutParams(): android.view.ViewGroup.LayoutParams;
			public requestChildRectangleOnScreen(param0: android.view.View, param1: android.graphics.Rect, param2: boolean): boolean;
			public focusSearch(param0: number): android.view.View;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public recomputeViewAttributes(param0: android.view.View): void;
			public isLayoutRequested(): boolean;
			public generateLayoutParams(param0: android.view.ViewGroup.LayoutParams): android.widget.LinearLayout.LayoutParams;
			public generateDefaultLayoutParams(): android.widget.LinearLayout.LayoutParams;
			public invalidateChild(param0: android.view.View, param1: android.graphics.Rect): void;
			public invalidateChildInParent(param0: native.Array<number>, param1: android.graphics.Rect): android.view.ViewParent;
			public setOnHierarchyChangeListener(param0: android.view.ViewGroup.OnHierarchyChangeListener): void;
			public requestLayout(): void;
			public generateLayoutParams(param0: android.util.AttributeSet): android.widget.LinearLayout.LayoutParams;
			public checkLayoutParams(param0: android.view.ViewGroup.LayoutParams): boolean;
			public childDrawableStateChanged(param0: android.view.View): void;
			public addView(param0: android.view.View): void;
			public removeView(param0: android.view.View): void;
			public clearChildFocus(param0: android.view.View): void;
			public updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public requestDisallowInterceptTouchEvent(param0: boolean): void;
			public getChildVisibleRect(param0: android.view.View, param1: android.graphics.Rect, param2: android.graphics.Point): boolean;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public generateLayoutParams(param0: android.util.AttributeSet): android.widget.TableRow.LayoutParams;
			public constructor(param0: android.content.Context);
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public addView(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams): void;
			public requestFitSystemWindows(): void;
			public addView(param0: android.view.View, param1: number): void;
		}
		export module TableRow {
			export class LayoutParams extends android.widget.LinearLayout.LayoutParams {
				public static class: java.lang.Class<android.widget.TableRow.LayoutParams>;
				public column: number;
				public span: number;
				public constructor(param0: number, param1: number);
				public constructor(param0: android.view.ViewGroup.LayoutParams);
				public constructor(param0: android.view.ViewGroup.MarginLayoutParams);
				public constructor(param0: number, param1: number, param2: number);
				public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
				public setBaseAttributes(param0: android.content.res.TypedArray, param1: number, param2: number): void;
				public constructor(param0: number);
				public constructor();
			}
		}
	}
}

declare module android {
	export module widget {
		export class TextClock extends android.widget.TextView {
			public static class: java.lang.Class<android.widget.TextClock>;
			public static DEFAULT_FORMAT_12_HOUR: string;
			public static DEFAULT_FORMAT_24_HOUR: string;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public setFormat12Hour(param0: string): void;
			public setFormat24Hour(param0: string): void;
			public getTimeZone(): string;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public getFormat24Hour(): string;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public setTimeZone(param0: string): void;
			public is24HourModeEnabled(): boolean;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public constructor(param0: android.content.Context);
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public onPreDraw(): boolean;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public onAttachedToWindow(): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public getFormat12Hour(): string;
			public onDetachedFromWindow(): void;
			public sendAccessibilityEvent(param0: number): void;
		}
	}
}

declare module android {
	export module widget {
		export class TextSwitcher extends android.widget.ViewSwitcher {
			public static class: java.lang.Class<android.widget.TextSwitcher>;
			public focusSearch(param0: number): android.view.View;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public recomputeViewAttributes(param0: android.view.View): void;
			public setCurrentText(param0: string): void;
			public isLayoutRequested(): boolean;
			public focusableViewAvailable(param0: android.view.View): void;
			public createContextMenu(param0: android.view.ContextMenu): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public addView(param0: android.view.View, param1: number, param2: number): void;
			public invalidateChild(param0: android.view.View, param1: android.graphics.Rect): void;
			public focusSearch(param0: android.view.View, param1: number): android.view.View;
			public requestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public invalidateChildInParent(param0: native.Array<number>, param1: android.graphics.Rect): android.view.ViewParent;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public showContextMenuForChild(param0: android.view.View): boolean;
			public bringChildToFront(param0: android.view.View): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public sendAccessibilityEvent(param0: number): void;
			public requestLayout(): void;
			public addView(param0: android.view.View): void;
			public childDrawableStateChanged(param0: android.view.View): void;
			public setText(param0: string): void;
			public requestTransparentRegion(param0: android.view.View): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public removeView(param0: android.view.View): void;
			public clearChildFocus(param0: android.view.View): void;
			public getParentForAccessibility(): android.view.ViewParent;
			public getParent(): android.view.ViewParent;
			public updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public requestDisallowInterceptTouchEvent(param0: boolean): void;
			public getChildVisibleRect(param0: android.view.View, param1: android.graphics.Rect, param2: android.graphics.Point): boolean;
			public startActionModeForChild(param0: android.view.View, param1: android.view.ActionMode.Callback): android.view.ActionMode;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public constructor(param0: android.content.Context);
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public requestChildFocus(param0: android.view.View, param1: android.view.View): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public addView(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams): void;
			public addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public requestChildRectangleOnScreen(param0: android.view.View, param1: android.graphics.Rect, param2: boolean): boolean;
			public addView(param0: android.view.View, param1: number): void;
			public requestFitSystemWindows(): void;
		}
	}
}

declare module android {
	export module widget {
		export class TextView extends android.view.View implements android.view.ViewTreeObserver.OnPreDrawListener {
			public static class: java.lang.Class<android.widget.TextView>;
			public setFilters(param0: native.Array<android.text.InputFilter>): void;
			public getExtendedPaddingTop(): number;
			public getCompoundDrawablesRelative(): native.Array<android.graphics.drawable.Drawable>;
			public getLinksClickable(): boolean;
			public setHighlightColor(param0: number): void;
			public getFreezesText(): boolean;
			public getCustomSelectionActionModeCallback(): android.view.ActionMode.Callback;
			public setTextScaleX(param0: number): void;
			public onMeasure(param0: number, param1: number): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public setMinWidth(param0: number): void;
			public setImeActionLabel(param0: string, param1: number): void;
			public setInputType(param0: number): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public sendAccessibilityEvent(param0: number): void;
			public getMinLines(): number;
			public getLinkTextColors(): android.content.res.ColorStateList;
			public setScroller(param0: android.widget.Scroller): void;
			public onTextChanged(param0: string, param1: number, param2: number, param3: number): void;
			public onTextContextMenuItem(param0: number): boolean;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public getTextLocale(): java.util.Locale;
			public getRightFadingEdgeStrength(): number;
			public computeVerticalScrollRange(): number;
			public static getTextColor(param0: android.content.Context, param1: android.content.res.TypedArray, param2: number): number;
			public setEms(param0: number): void;
			public removeTextChangedListener(param0: android.text.TextWatcher): void;
			public setMinHeight(param0: number): void;
			public onKeyPreIme(param0: number, param1: android.view.KeyEvent): boolean;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public getTextScaleX(): number;
			public getSelectionEnd(): number;
			public setTextColor(param0: number): void;
			public getCompoundPaddingBottom(): number;
			public setAutoLinkMask(param0: number): void;
			public setMaxEms(param0: number): void;
			public getTotalPaddingEnd(): number;
			public getHint(): string;
			public getMinHeight(): number;
			public getPrivateImeOptions(): string;
			public onPrivateIMECommand(param0: string, param1: android.os.Bundle): boolean;
			public getInputType(): number;
			public debug(param0: number): void;
			public setLinkTextColor(param0: android.content.res.ColorStateList): void;
			public getShadowDx(): number;
			public clearComposingText(): void;
			public getPaintFlags(): number;
			public setTextLocale(param0: java.util.Locale): void;
			public length(): number;
			public setIncludeFontPadding(param0: boolean): void;
			public setOnEditorActionListener(param0: android.widget.TextView.OnEditorActionListener): void;
			public setMinEms(param0: number): void;
			public onBeginBatchEdit(): void;
			public setHintTextColor(param0: number): void;
			public getMaxWidth(): number;
			public getLineBounds(param0: number, param1: android.graphics.Rect): number;
			public getTotalPaddingTop(): number;
			public setAllCaps(param0: boolean): void;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public setText(param0: number, param1: android.widget.TextView.BufferType): void;
			public getMaxEms(): number;
			public onCommitCompletion(param0: android.view.inputmethod.CompletionInfo): void;
			public getTotalPaddingBottom(): number;
			public setEditableFactory(param0: android.text.Editable.Factory): void;
			public getAutoLinkMask(): number;
			public setMaxHeight(param0: number): void;
			public drawableStateChanged(): void;
			public getFilters(): native.Array<android.text.InputFilter>;
			public performLongClick(): boolean;
			public getMarqueeRepeatLimit(): number;
			public setHorizontallyScrolling(param0: boolean): void;
			public onFocusChanged(param0: boolean, param1: number, param2: android.graphics.Rect): void;
			public getTextColors(): android.content.res.ColorStateList;
			public getDefaultEditable(): boolean;
			public computeHorizontalScrollRange(): number;
			public getTotalPaddingRight(): number;
			public onKeyShortcut(param0: number, param1: android.view.KeyEvent): boolean;
			public getCompoundPaddingTop(): number;
			public setCompoundDrawablePadding(param0: number): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public setTypeface(param0: android.graphics.Typeface): void;
			public getText(): string;
			public setWidth(param0: number): void;
			public verifyDrawable(param0: android.graphics.drawable.Drawable): boolean;
			public setError(param0: string, param1: android.graphics.drawable.Drawable): void;
			public onTrackballEvent(param0: android.view.MotionEvent): boolean;
			public setSelected(param0: boolean): void;
			public getLayout(): android.text.Layout;
			public setCompoundDrawablesWithIntrinsicBounds(param0: android.graphics.drawable.Drawable, param1: android.graphics.drawable.Drawable, param2: android.graphics.drawable.Drawable, param3: android.graphics.drawable.Drawable): void;
			public setExtractedText(param0: android.view.inputmethod.ExtractedText): void;
			public getMinWidth(): number;
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public getTotalPaddingStart(): number;
			public isCursorVisible(): boolean;
			public getLeftPaddingOffset(): number;
			public onWindowFocusChanged(param0: boolean): void;
			public onSelectionChanged(param0: number, param1: number): void;
			public getCompoundDrawablePadding(): number;
			public setFreezesText(param0: boolean): void;
			public setSingleLine(): void;
			public getImeOptions(): number;
			public setCompoundDrawablesRelativeWithIntrinsicBounds(param0: android.graphics.drawable.Drawable, param1: android.graphics.drawable.Drawable, param2: android.graphics.drawable.Drawable, param3: android.graphics.drawable.Drawable): void;
			public setError(param0: string): void;
			public setPrivateImeOptions(param0: string): void;
			public onCreateDrawableState(param0: number): native.Array<number>;
			public getCompoundPaddingRight(): number;
			public onCheckIsTextEditor(): boolean;
			public setTextSize(param0: number): void;
			public isSuggestionsEnabled(): boolean;
			public getCompoundPaddingEnd(): number;
			public setSingleLine(param0: boolean): void;
			public addTextChangedListener(param0: android.text.TextWatcher): void;
			public getCurrentHintTextColor(): number;
			public isPaddingOffsetRequired(): boolean;
			public getGravity(): number;
			public onPreDraw(): boolean;
			public getBottomPaddingOffset(): number;
			public getTransformationMethod(): android.text.method.TransformationMethod;
			public cancelLongPress(): void;
			public hasSelection(): boolean;
			public setPaddingRelative(param0: number, param1: number, param2: number, param3: number): void;
			public getMinEms(): number;
			public setCompoundDrawablesRelativeWithIntrinsicBounds(param0: number, param1: number, param2: number, param3: number): void;
			public onTouchEvent(param0: android.view.MotionEvent): boolean;
			public getHighlightColor(): number;
			public getPaint(): android.text.TextPaint;
			public setTextKeepState(param0: string, param1: android.widget.TextView.BufferType): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public onCreateInputConnection(param0: android.view.inputmethod.EditorInfo): android.view.inputmethod.InputConnection;
			public onScreenStateChanged(param0: number): void;
			public setMovementMethod(param0: android.text.method.MovementMethod): void;
			public getDefaultMovementMethod(): android.text.method.MovementMethod;
			public append(param0: string): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public setFrame(param0: number, param1: number, param2: number, param3: number): boolean;
			public getLineCount(): number;
			public onPopulateAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public setRawInputType(param0: number): void;
			public moveCursorToVisibleOffset(): boolean;
			public setEnabled(param0: boolean): void;
			public beginBatchEdit(): void;
			public isInputMethodTarget(): boolean;
			public onDetachedFromWindow(): void;
			public setInputExtras(param0: number): void;
			public setText(param0: string, param1: android.widget.TextView.BufferType): void;
			public setEllipsize(param0: android.text.TextUtils.TruncateAt): void;
			public getCompoundPaddingStart(): number;
			public getTotalPaddingLeft(): number;
			public setImeOptions(param0: number): void;
			public getTextSize(): number;
			public getInputExtras(param0: boolean): android.os.Bundle;
			public getEllipsize(): android.text.TextUtils.TruncateAt;
			public setTextAppearance(param0: android.content.Context, param1: number): void;
			public getMovementMethod(): android.text.method.MovementMethod;
			public getLeftFadingEdgeStrength(): number;
			public getImeActionId(): number;
			public setSelectAllOnFocus(param0: boolean): void;
			public static getTextColors(param0: android.content.Context, param1: android.content.res.TypedArray): android.content.res.ColorStateList;
			public getHintTextColors(): android.content.res.ColorStateList;
			public setHint(param0: number): void;
			public getImeActionLabel(): string;
			public getMaxHeight(): number;
			public getSelectionStart(): number;
			public computeVerticalScrollExtent(): number;
			public onDragEvent(param0: android.view.DragEvent): boolean;
			public getKeyListener(): android.text.method.KeyListener;
			public getRightPaddingOffset(): number;
			public setLines(param0: number): void;
			public setHint(param0: string): void;
			public setCompoundDrawablesWithIntrinsicBounds(param0: number, param1: number, param2: number, param3: number): void;
			public setTypeface(param0: android.graphics.Typeface, param1: number): void;
			public getTypeface(): android.graphics.Typeface;
			public getLineSpacingExtra(): number;
			public getIncludeFontPadding(): boolean;
			public setCompoundDrawablesRelative(param0: android.graphics.drawable.Drawable, param1: android.graphics.drawable.Drawable, param2: android.graphics.drawable.Drawable, param3: android.graphics.drawable.Drawable): void;
			public setCursorVisible(param0: boolean): void;
			public getUrls(): native.Array<android.text.style.URLSpan>;
			public findViewsWithText(param0: java.util.ArrayList<android.view.View>, param1: string, param2: number): void;
			public getLineSpacingMultiplier(): number;
			public setTextIsSelectable(param0: boolean): void;
			public setText(param0: string): void;
			public setSpannableFactory(param0: android.text.Spannable.Factory): void;
			public setLinkTextColor(param0: number): void;
			public getCompoundPaddingLeft(): number;
			public getShadowDy(): number;
			public onVisibilityChanged(param0: android.view.View, param1: number): void;
			public constructor(param0: android.content.Context);
			public onRtlPropertiesChanged(param0: number): void;
			public getLineHeight(): number;
			public getShadowColor(): number;
			public getTopPaddingOffset(): number;
			public setHeight(param0: number): void;
			public setText(param0: native.Array<string>, param1: number, param2: number): void;
			public onLayout(param0: boolean, param1: number, param2: number, param3: number, param4: number): void;
			public setLinksClickable(param0: boolean): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public onStartTemporaryDetach(): void;
			public setTransformationMethod(param0: android.text.method.TransformationMethod): void;
			public getFocusedRect(param0: android.graphics.Rect): void;
			public onFinishTemporaryDetach(): void;
			public setText(param0: number): void;
			public bringPointIntoView(param0: number): boolean;
			public setPadding(param0: number, param1: number, param2: number, param3: number): void;
			public getCurrentTextColor(): number;
			public onRestoreInstanceState(param0: android.os.Parcelable): void;
			public setMaxWidth(param0: number): void;
			public getEditableText(): android.text.Editable;
			public setHintTextColor(param0: android.content.res.ColorStateList): void;
			public setMarqueeRepeatLimit(param0: number): void;
			public didTouchFocusSelect(): boolean;
			public setKeyListener(param0: android.text.method.KeyListener): void;
			public onDraw(param0: android.graphics.Canvas): void;
			public onSaveInstanceState(): android.os.Parcelable;
			public onScrollChanged(param0: number, param1: number, param2: number, param3: number): void;
			public setGravity(param0: number): void;
			public setMaxLines(param0: number): void;
			public append(param0: string, param1: number, param2: number): void;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public hasOverlappingRendering(): boolean;
			public setLineSpacing(param0: number, param1: number): void;
			public performAccessibilityAction(param0: number, param1: android.os.Bundle): boolean;
			public setTextKeepState(param0: string): void;
			public endBatchEdit(): void;
			public onGenericMotionEvent(param0: android.view.MotionEvent): boolean;
			public getShadowRadius(): number;
			public setTextSize(param0: number, param1: number): void;
			public getError(): string;
			public onCommitCorrection(param0: android.view.inputmethod.CorrectionInfo): void;
			public getExtendedPaddingBottom(): number;
			public setShadowLayer(param0: number, param1: number, param2: number, param3: number): void;
			public getOffsetForPosition(param0: number, param1: number): number;
			public setTextColor(param0: android.content.res.ColorStateList): void;
			public extractText(param0: android.view.inputmethod.ExtractedTextRequest, param1: android.view.inputmethod.ExtractedText): boolean;
			public onEndBatchEdit(): void;
			public jumpDrawablesToCurrentState(): void;
			public setPaintFlags(param0: number): void;
			public getBaseline(): number;
			public computeScroll(): void;
			public getCompoundDrawables(): native.Array<android.graphics.drawable.Drawable>;
			public getMaxLines(): number;
			public setMinLines(param0: number): void;
			public onEditorAction(param0: number): void;
			public setCompoundDrawables(param0: android.graphics.drawable.Drawable, param1: android.graphics.drawable.Drawable, param2: android.graphics.drawable.Drawable, param3: android.graphics.drawable.Drawable): void;
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public onAttachedToWindow(): void;
			public setCustomSelectionActionModeCallback(param0: android.view.ActionMode.Callback): void;
			public isTextSelectable(): boolean;
		}
		export module TextView {
			export class BufferType {
				public static class: java.lang.Class<android.widget.TextView.BufferType>;
				public static EDITABLE: android.widget.TextView.BufferType;
				public static NORMAL: android.widget.TextView.BufferType;
				public static SPANNABLE: android.widget.TextView.BufferType;
				public static values(): native.Array<android.widget.TextView.BufferType>;
				public static valueOf(param0: string): android.widget.TextView.BufferType;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			}
			export class OnEditorActionListener extends java.lang.Object {
				public static class: java.lang.Class<android.widget.TextView.OnEditorActionListener>;
				/**
				 * Constructs a new instance of the android.widget.TextView$OnEditorActionListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onEditorAction(param0: android.widget.TextView, param1: number, param2: android.view.KeyEvent): boolean;
				});
				public constructor();
				public onEditorAction(param0: android.widget.TextView, param1: number, param2: android.view.KeyEvent): boolean;
			}
			export class SavedState extends android.view.View.BaseSavedState {
				public static class: java.lang.Class<android.widget.TextView.SavedState>;
				public static CREATOR: android.os.Parcelable.Creator<android.widget.TextView.SavedState>;
				public writeToParcel(param0: android.os.Parcel, param1: number): void;
				public describeContents(): number;
				public toString(): string;
			}
		}
	}
}

declare module android {
	export module widget {
		export class TimePicker extends android.widget.FrameLayout {
			public static class: java.lang.Class<android.widget.TimePicker>;
			public getCurrentHour(): java.lang.Integer;
			public focusableViewAvailable(param0: android.view.View): void;
			public createContextMenu(param0: android.view.ContextMenu): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public addView(param0: android.view.View, param1: number, param2: number): void;
			public onPopulateAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public focusSearch(param0: android.view.View, param1: number): android.view.View;
			public requestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public showContextMenuForChild(param0: android.view.View): boolean;
			public setCurrentMinute(param0: java.lang.Integer): void;
			public bringChildToFront(param0: android.view.View): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public setEnabled(param0: boolean): void;
			public sendAccessibilityEvent(param0: number): void;
			public onRestoreInstanceState(param0: android.os.Parcelable): void;
			public requestTransparentRegion(param0: android.view.View): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public getParentForAccessibility(): android.view.ViewParent;
			public getParent(): android.view.ViewParent;
			public setIs24HourView(param0: java.lang.Boolean): void;
			public startActionModeForChild(param0: android.view.View, param1: android.view.ActionMode.Callback): android.view.ActionMode;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public requestChildFocus(param0: android.view.View, param1: android.view.View): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public requestChildRectangleOnScreen(param0: android.view.View, param1: android.graphics.Rect, param2: boolean): boolean;
			public onSaveInstanceState(): android.os.Parcelable;
			public focusSearch(param0: number): android.view.View;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public recomputeViewAttributes(param0: android.view.View): void;
			public isLayoutRequested(): boolean;
			public setCurrentHour(param0: java.lang.Integer): void;
			public invalidateChild(param0: android.view.View, param1: android.graphics.Rect): void;
			public invalidateChildInParent(param0: native.Array<number>, param1: android.graphics.Rect): android.view.ViewParent;
			public is24HourView(): boolean;
			public getBaseline(): number;
			public setOnTimeChangedListener(param0: android.widget.TimePicker.OnTimeChangedListener): void;
			public onConfigurationChanged(param0: android.content.res.Configuration): void;
			public requestLayout(): void;
			public childDrawableStateChanged(param0: android.view.View): void;
			public addView(param0: android.view.View): void;
			public removeView(param0: android.view.View): void;
			public clearChildFocus(param0: android.view.View): void;
			public updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public requestDisallowInterceptTouchEvent(param0: boolean): void;
			public getChildVisibleRect(param0: android.view.View, param1: android.graphics.Rect, param2: android.graphics.Point): boolean;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public isEnabled(): boolean;
			public constructor(param0: android.content.Context);
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public dispatchPopulateAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): boolean;
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public addView(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams): void;
			public getCurrentMinute(): java.lang.Integer;
			public requestFitSystemWindows(): void;
			public addView(param0: android.view.View, param1: number): void;
		}
		export module TimePicker {
			export class OnTimeChangedListener extends java.lang.Object {
				public static class: java.lang.Class<android.widget.TimePicker.OnTimeChangedListener>;
				/**
				 * Constructs a new instance of the android.widget.TimePicker$OnTimeChangedListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onTimeChanged(param0: android.widget.TimePicker, param1: number, param2: number): void;
				});
				public constructor();
				public onTimeChanged(param0: android.widget.TimePicker, param1: number, param2: number): void;
			}
		}
	}
}

declare module android {
	export module widget {
		export class Toast extends java.lang.Object {
			public static class: java.lang.Class<android.widget.Toast>;
			public static LENGTH_SHORT: number;
			public static LENGTH_LONG: number;
			public show(): void;
			public setGravity(param0: number, param1: number, param2: number): void;
			public setDuration(param0: number): void;
			public setText(param0: string): void;
			public getDuration(): number;
			public getVerticalMargin(): number;
			public static makeText(param0: android.content.Context, param1: number, param2: number): android.widget.Toast;
			public static makeText(param0: android.content.Context, param1: string, param2: number): android.widget.Toast;
			public cancel(): void;
			public getYOffset(): number;
			public getHorizontalMargin(): number;
			public setView(param0: android.view.View): void;
			public getXOffset(): number;
			public constructor(param0: android.content.Context);
			public getGravity(): number;
			public setText(param0: number): void;
			public getView(): android.view.View;
			public setMargin(param0: number, param1: number): void;
		}
	}
}

declare module android {
	export module widget {
		export class ToggleButton extends android.widget.CompoundButton {
			public static class: java.lang.Class<android.widget.ToggleButton>;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public getTextOn(): string;
			public toggle(): void;
			/** @deprecated */
			public setBackgroundDrawable(param0: android.graphics.drawable.Drawable): void;
			public drawableStateChanged(): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public setBackgroundDrawable(param0: android.graphics.drawable.Drawable): void;
			public onFinishInflate(): void;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public onPreDraw(): boolean;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public sendAccessibilityEvent(param0: number): void;
			public setChecked(param0: boolean): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public isChecked(): boolean;
			public setTextOn(param0: string): void;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public setTextOff(param0: string): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public getTextOff(): string;
			public constructor(param0: android.content.Context);
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
		}
	}
}

declare module android {
	export module widget {
		export class TwoLineListItem extends android.widget.RelativeLayout {
			public static class: java.lang.Class<android.widget.TwoLineListItem>;
			public focusSearch(param0: number): android.view.View;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public recomputeViewAttributes(param0: android.view.View): void;
			public getText1(): android.widget.TextView;
			public isLayoutRequested(): boolean;
			public focusableViewAvailable(param0: android.view.View): void;
			public createContextMenu(param0: android.view.ContextMenu): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public invalidateChild(param0: android.view.View, param1: android.graphics.Rect): void;
			public addView(param0: android.view.View, param1: number, param2: number): void;
			public focusSearch(param0: android.view.View, param1: number): android.view.View;
			public requestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public onFinishInflate(): void;
			public invalidateChildInParent(param0: native.Array<number>, param1: android.graphics.Rect): android.view.ViewParent;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public getText2(): android.widget.TextView;
			public showContextMenuForChild(param0: android.view.View): boolean;
			public bringChildToFront(param0: android.view.View): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public sendAccessibilityEvent(param0: number): void;
			public requestLayout(): void;
			public childDrawableStateChanged(param0: android.view.View): void;
			public addView(param0: android.view.View): void;
			public requestTransparentRegion(param0: android.view.View): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public removeView(param0: android.view.View): void;
			public clearChildFocus(param0: android.view.View): void;
			public getParentForAccessibility(): android.view.ViewParent;
			public getParent(): android.view.ViewParent;
			public updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public requestDisallowInterceptTouchEvent(param0: boolean): void;
			public getChildVisibleRect(param0: android.view.View, param1: android.graphics.Rect, param2: android.graphics.Point): boolean;
			public startActionModeForChild(param0: android.view.View, param1: android.view.ActionMode.Callback): android.view.ActionMode;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public constructor(param0: android.content.Context);
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public requestChildFocus(param0: android.view.View, param1: android.view.View): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public addView(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams): void;
			public requestChildRectangleOnScreen(param0: android.view.View, param1: android.graphics.Rect, param2: boolean): boolean;
			public requestFitSystemWindows(): void;
			public addView(param0: android.view.View, param1: number): void;
		}
	}
}

declare module android {
	export module widget {
		export class VideoView extends android.view.SurfaceView implements android.widget.MediaController.MediaPlayerControl {
			public static class: java.lang.Class<android.widget.VideoView>;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public getDuration(): number;
			public canPause(): boolean;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onMeasure(param0: number, param1: number): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public getBufferPercentage(): number;
			public isPlaying(): boolean;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public pause(): void;
			public setVideoPath(param0: string): void;
			public setOnErrorListener(param0: android.media.MediaPlayer.OnErrorListener): void;
			public resume(): void;
			public setOnPreparedListener(param0: android.media.MediaPlayer.OnPreparedListener): void;
			public setMediaController(param0: android.widget.MediaController): void;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public start(): void;
			public sendAccessibilityEvent(param0: number): void;
			public stopPlayback(): void;
			public canSeekBackward(): boolean;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public seekTo(param0: number): void;
			public getCurrentPosition(): number;
			public onTouchEvent(param0: android.view.MotionEvent): boolean;
			public suspend(): void;
			public onTrackballEvent(param0: android.view.MotionEvent): boolean;
			public setVideoURI(param0: android.net.Uri): void;
			public canSeekForward(): boolean;
			public getAudioSessionId(): number;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public resolveAdjustedSize(param0: number, param1: number): number;
			public constructor(param0: android.content.Context);
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public setOnInfoListener(param0: android.media.MediaPlayer.OnInfoListener): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public setOnCompletionListener(param0: android.media.MediaPlayer.OnCompletionListener): void;
		}
	}
}

declare module android {
	export module widget {
		export class ViewAnimator extends android.widget.FrameLayout {
			public static class: java.lang.Class<android.widget.ViewAnimator>;
			public setInAnimation(param0: android.content.Context, param1: number): void;
			public focusableViewAvailable(param0: android.view.View): void;
			public createContextMenu(param0: android.view.ContextMenu): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public setOutAnimation(param0: android.content.Context, param1: number): void;
			public addView(param0: android.view.View, param1: number, param2: number): void;
			public focusSearch(param0: android.view.View, param1: number): android.view.View;
			public requestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public setInAnimation(param0: android.view.animation.Animation): void;
			public showContextMenuForChild(param0: android.view.View): boolean;
			public bringChildToFront(param0: android.view.View): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public setDisplayedChild(param0: number): void;
			public sendAccessibilityEvent(param0: number): void;
			public getOutAnimation(): android.view.animation.Animation;
			public removeViewsInLayout(param0: number, param1: number): void;
			public getInAnimation(): android.view.animation.Animation;
			public requestTransparentRegion(param0: android.view.View): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public getParentForAccessibility(): android.view.ViewParent;
			public getParent(): android.view.ViewParent;
			public startActionModeForChild(param0: android.view.View, param1: android.view.ActionMode.Callback): android.view.ActionMode;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public removeViewInLayout(param0: android.view.View): void;
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public requestChildFocus(param0: android.view.View, param1: android.view.View): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public requestChildRectangleOnScreen(param0: android.view.View, param1: android.graphics.Rect, param2: boolean): boolean;
			public focusSearch(param0: number): android.view.View;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public recomputeViewAttributes(param0: android.view.View): void;
			public showNext(): void;
			public setAnimateFirstView(param0: boolean): void;
			public isLayoutRequested(): boolean;
			public getAnimateFirstView(): boolean;
			public getDisplayedChild(): number;
			public removeViews(param0: number, param1: number): void;
			public invalidateChild(param0: android.view.View, param1: android.graphics.Rect): void;
			public removeAllViews(): void;
			public removeViewAt(param0: number): void;
			public invalidateChildInParent(param0: native.Array<number>, param1: android.graphics.Rect): android.view.ViewParent;
			public showPrevious(): void;
			public getCurrentView(): android.view.View;
			public getBaseline(): number;
			public requestLayout(): void;
			public addView(param0: android.view.View): void;
			public childDrawableStateChanged(param0: android.view.View): void;
			public removeView(param0: android.view.View): void;
			public clearChildFocus(param0: android.view.View): void;
			public updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public requestDisallowInterceptTouchEvent(param0: boolean): void;
			public getChildVisibleRect(param0: android.view.View, param1: android.graphics.Rect, param2: android.graphics.Point): boolean;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public constructor(param0: android.content.Context);
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public addView(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams): void;
			public setOutAnimation(param0: android.view.animation.Animation): void;
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public addView(param0: android.view.View, param1: number): void;
			public requestFitSystemWindows(): void;
		}
	}
}

declare module android {
	export module widget {
		export class ViewFlipper extends android.widget.ViewAnimator {
			public static class: java.lang.Class<android.widget.ViewFlipper>;
			public startFlipping(): void;
			public focusableViewAvailable(param0: android.view.View): void;
			public createContextMenu(param0: android.view.ContextMenu): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public addView(param0: android.view.View, param1: number, param2: number): void;
			public focusSearch(param0: android.view.View, param1: number): android.view.View;
			public requestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public stopFlipping(): void;
			public showContextMenuForChild(param0: android.view.View): boolean;
			public bringChildToFront(param0: android.view.View): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public onDetachedFromWindow(): void;
			public sendAccessibilityEvent(param0: number): void;
			public requestTransparentRegion(param0: android.view.View): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public getParentForAccessibility(): android.view.ViewParent;
			public getParent(): android.view.ViewParent;
			public startActionModeForChild(param0: android.view.View, param1: android.view.ActionMode.Callback): android.view.ActionMode;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public setFlipInterval(param0: number): void;
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public requestChildFocus(param0: android.view.View, param1: android.view.View): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public requestChildRectangleOnScreen(param0: android.view.View, param1: android.graphics.Rect, param2: boolean): boolean;
			public focusSearch(param0: number): android.view.View;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public recomputeViewAttributes(param0: android.view.View): void;
			public isLayoutRequested(): boolean;
			public invalidateChild(param0: android.view.View, param1: android.graphics.Rect): void;
			public isAutoStart(): boolean;
			public invalidateChildInParent(param0: native.Array<number>, param1: android.graphics.Rect): android.view.ViewParent;
			public onWindowVisibilityChanged(param0: number): void;
			public requestLayout(): void;
			public childDrawableStateChanged(param0: android.view.View): void;
			public addView(param0: android.view.View): void;
			public removeView(param0: android.view.View): void;
			public clearChildFocus(param0: android.view.View): void;
			public isFlipping(): boolean;
			public updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public requestDisallowInterceptTouchEvent(param0: boolean): void;
			public getChildVisibleRect(param0: android.view.View, param1: android.graphics.Rect, param2: android.graphics.Point): boolean;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public setAutoStart(param0: boolean): void;
			public constructor(param0: android.content.Context);
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public addView(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams): void;
			public addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public onAttachedToWindow(): void;
			public requestFitSystemWindows(): void;
			public addView(param0: android.view.View, param1: number): void;
		}
	}
}

declare module android {
	export module widget {
		export class ViewSwitcher extends android.widget.ViewAnimator {
			public static class: java.lang.Class<android.widget.ViewSwitcher>;
			public focusSearch(param0: number): android.view.View;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public recomputeViewAttributes(param0: android.view.View): void;
			public isLayoutRequested(): boolean;
			public getNextView(): android.view.View;
			public focusableViewAvailable(param0: android.view.View): void;
			public createContextMenu(param0: android.view.ContextMenu): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public addView(param0: android.view.View, param1: number, param2: number): void;
			public invalidateChild(param0: android.view.View, param1: android.graphics.Rect): void;
			public focusSearch(param0: android.view.View, param1: number): android.view.View;
			public requestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public invalidateChildInParent(param0: native.Array<number>, param1: android.graphics.Rect): android.view.ViewParent;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public showContextMenuForChild(param0: android.view.View): boolean;
			public setFactory(param0: android.widget.ViewSwitcher.ViewFactory): void;
			public reset(): void;
			public bringChildToFront(param0: android.view.View): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public sendAccessibilityEvent(param0: number): void;
			public requestLayout(): void;
			public addView(param0: android.view.View): void;
			public childDrawableStateChanged(param0: android.view.View): void;
			public requestTransparentRegion(param0: android.view.View): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public removeView(param0: android.view.View): void;
			public clearChildFocus(param0: android.view.View): void;
			public getParentForAccessibility(): android.view.ViewParent;
			public getParent(): android.view.ViewParent;
			public updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public requestDisallowInterceptTouchEvent(param0: boolean): void;
			public getChildVisibleRect(param0: android.view.View, param1: android.graphics.Rect, param2: android.graphics.Point): boolean;
			public startActionModeForChild(param0: android.view.View, param1: android.view.ActionMode.Callback): android.view.ActionMode;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public constructor(param0: android.content.Context);
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public requestChildFocus(param0: android.view.View, param1: android.view.View): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public addView(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams): void;
			public addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public requestChildRectangleOnScreen(param0: android.view.View, param1: android.graphics.Rect, param2: boolean): boolean;
			public addView(param0: android.view.View, param1: number): void;
			public requestFitSystemWindows(): void;
		}
		export module ViewSwitcher {
			export class ViewFactory extends java.lang.Object {
				public static class: java.lang.Class<android.widget.ViewSwitcher.ViewFactory>;
				/**
				 * Constructs a new instance of the android.widget.ViewSwitcher$ViewFactory interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					makeView(): android.view.View;
				});
				public constructor();
				public makeView(): android.view.View;
			}
		}
	}
}

declare module android {
	export module widget {
		export class WrapperListAdapter extends java.lang.Object implements android.widget.ListAdapter {
			public static class: java.lang.Class<android.widget.WrapperListAdapter>;
			/**
			 * Constructs a new instance of the android.widget.WrapperListAdapter interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				getWrappedAdapter(): android.widget.ListAdapter;
				areAllItemsEnabled(): boolean;
				isEnabled(param0: number): boolean;
				registerDataSetObserver(param0: android.database.DataSetObserver): void;
				unregisterDataSetObserver(param0: android.database.DataSetObserver): void;
				getCount(): number;
				getItem(param0: number): any;
				getItemId(param0: number): number;
				hasStableIds(): boolean;
				getView(param0: number, param1: android.view.View, param2: android.view.ViewGroup): android.view.View;
				getItemViewType(param0: number): number;
				getViewTypeCount(): number;
				isEmpty(): boolean;
			});
			public constructor();
			public static NO_SELECTION: number;
			public static IGNORE_ITEM_VIEW_TYPE: number;
			public getItem(param0: number): any;
			public registerDataSetObserver(param0: android.database.DataSetObserver): void;
			public isEmpty(): boolean;
			public getItemId(param0: number): number;
			public hasStableIds(): boolean;
			public unregisterDataSetObserver(param0: android.database.DataSetObserver): void;
			public getView(param0: number, param1: android.view.View, param2: android.view.ViewGroup): android.view.View;
			public getWrappedAdapter(): android.widget.ListAdapter;
			public getItemViewType(param0: number): number;
			public getViewTypeCount(): number;
			public areAllItemsEnabled(): boolean;
			public isEnabled(param0: number): boolean;
			public getCount(): number;
		}
	}
}

declare module android {
	export module widget {
		export class ZoomButton extends android.widget.ImageButton implements android.view.View.OnLongClickListener {
			public static class: java.lang.Class<android.widget.ZoomButton>;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onTouchEvent(param0: android.view.MotionEvent): boolean;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public setZoomSpeed(param0: number): void;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public constructor(param0: android.content.Context);
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public onLongClick(param0: android.view.View): boolean;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public setEnabled(param0: boolean): void;
			public dispatchUnhandledMove(param0: android.view.View, param1: number): boolean;
			public sendAccessibilityEvent(param0: number): void;
		}
	}
}

declare module android {
	export module widget {
		export class ZoomButtonsController extends java.lang.Object implements android.view.View.OnTouchListener {
			public static class: java.lang.Class<android.widget.ZoomButtonsController>;
			public getZoomControls(): android.view.View;
			public setFocusable(param0: boolean): void;
			public setAutoDismissed(param0: boolean): void;
			public getContainer(): android.view.ViewGroup;
			public setVisible(param0: boolean): void;
			public setZoomOutEnabled(param0: boolean): void;
			public isVisible(): boolean;
			public isAutoDismissed(): boolean;
			public setZoomSpeed(param0: number): void;
			public constructor(param0: android.view.View);
			public setZoomInEnabled(param0: boolean): void;
			public setOnZoomListener(param0: android.widget.ZoomButtonsController.OnZoomListener): void;
			public onTouch(param0: android.view.View, param1: android.view.MotionEvent): boolean;
		}
		export module ZoomButtonsController {
			export class OnZoomListener extends java.lang.Object {
				public static class: java.lang.Class<android.widget.ZoomButtonsController.OnZoomListener>;
				/**
				 * Constructs a new instance of the android.widget.ZoomButtonsController$OnZoomListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					onVisibilityChanged(param0: boolean): void;
					onZoom(param0: boolean): void;
				});
				public constructor();
				public onVisibilityChanged(param0: boolean): void;
				public onZoom(param0: boolean): void;
			}
		}
	}
}

declare module android {
	export module widget {
		export class ZoomControls extends android.widget.LinearLayout {
			public static class: java.lang.Class<android.widget.ZoomControls>;
			public focusableViewAvailable(param0: android.view.View): void;
			public createContextMenu(param0: android.view.ContextMenu): void;
			public sendAccessibilityEventUnchecked(param0: android.view.accessibility.AccessibilityEvent): void;
			public onInitializeAccessibilityNodeInfo(param0: android.view.accessibility.AccessibilityNodeInfo): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet, param2: number);
			public addView(param0: android.view.View, param1: number, param2: number): void;
			public focusSearch(param0: android.view.View, param1: number): android.view.View;
			public requestSendAccessibilityEvent(param0: android.view.View, param1: android.view.accessibility.AccessibilityEvent): boolean;
			public setZoomSpeed(param0: number): void;
			public onKeyDown(param0: number, param1: android.view.KeyEvent): boolean;
			public hide(): void;
			public showContextMenuForChild(param0: android.view.View): boolean;
			public bringChildToFront(param0: android.view.View): void;
			public onKeyLongPress(param0: number, param1: android.view.KeyEvent): boolean;
			public setIsZoomInEnabled(param0: boolean): void;
			public sendAccessibilityEvent(param0: number): void;
			public requestTransparentRegion(param0: android.view.View): void;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable): void;
			public getParentForAccessibility(): android.view.ViewParent;
			public getParent(): android.view.ViewParent;
			public setOnZoomOutClickListener(param0: android.view.View.OnClickListener): void;
			public startActionModeForChild(param0: android.view.View, param1: android.view.ActionMode.Callback): android.view.ActionMode;
			public unscheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable): void;
			public onInitializeAccessibilityEvent(param0: android.view.accessibility.AccessibilityEvent): void;
			public requestChildFocus(param0: android.view.View, param1: android.view.View): void;
			public invalidateDrawable(param0: android.graphics.drawable.Drawable): void;
			public requestChildRectangleOnScreen(param0: android.view.View, param1: android.graphics.Rect, param2: boolean): boolean;
			public hasFocus(): boolean;
			public show(): void;
			public focusSearch(param0: number): android.view.View;
			public onKeyMultiple(param0: number, param1: number, param2: android.view.KeyEvent): boolean;
			public recomputeViewAttributes(param0: android.view.View): void;
			public isLayoutRequested(): boolean;
			public invalidateChild(param0: android.view.View, param1: android.graphics.Rect): void;
			public invalidateChildInParent(param0: native.Array<number>, param1: android.graphics.Rect): android.view.ViewParent;
			public setOnZoomInClickListener(param0: android.view.View.OnClickListener): void;
			public requestLayout(): void;
			public childDrawableStateChanged(param0: android.view.View): void;
			public addView(param0: android.view.View): void;
			public removeView(param0: android.view.View): void;
			public clearChildFocus(param0: android.view.View): void;
			public updateViewLayout(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public onTouchEvent(param0: android.view.MotionEvent): boolean;
			public requestDisallowInterceptTouchEvent(param0: boolean): void;
			public getChildVisibleRect(param0: android.view.View, param1: android.graphics.Rect, param2: android.graphics.Point): boolean;
			public onKeyUp(param0: number, param1: android.view.KeyEvent): boolean;
			public constructor(param0: android.content.Context);
			public setIsZoomOutEnabled(param0: boolean): void;
			public constructor(param0: android.content.Context, param1: android.util.AttributeSet);
			public scheduleDrawable(param0: android.graphics.drawable.Drawable, param1: java.lang.Runnable, param2: number): void;
			public addView(param0: android.view.View, param1: android.view.ViewGroup.LayoutParams): void;
			public addView(param0: android.view.View, param1: number, param2: android.view.ViewGroup.LayoutParams): void;
			public requestFitSystemWindows(): void;
			public addView(param0: android.view.View, param1: number): void;
		}
	}
}

declare module com {
	export module android {
		export module internal {
			export module util {
				export class Predicate<T>  extends java.lang.Object {
					public static class: java.lang.Class<com.android.internal.util.Predicate<any>>;
					/**
					 * Constructs a new instance of the com.android.internal.util.Predicate<any> interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						apply(param0: T): boolean;
					});
					public constructor();
					public apply(param0: T): boolean;
				}
			}
		}
	}
}

declare module dalvik {
	export module annotation {
		export class TestTarget extends java.lang.Object implements java.lang.annotation.Annotation {
			public static class: java.lang.Class<dalvik.annotation.TestTarget>;
			/**
			 * Constructs a new instance of the dalvik.annotation.TestTarget interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				methodName(): string;
				conceptName(): string;
				methodArgs(): native.Array<java.lang.Class<any>>;
				annotationType(): java.lang.Class<any>;
				equals(param0: any): boolean;
				hashCode(): number;
				toString(): string;
			});
			public constructor();
			public equals(param0: any): boolean;
			public toString(): string;
			public methodName(): string;
			public methodArgs(): native.Array<java.lang.Class<any>>;
			public conceptName(): string;
			public annotationType(): java.lang.Class<any>;
			public hashCode(): number;
		}
	}
}

declare module dalvik {
	export module annotation {
		export class TestTargetClass extends java.lang.Object implements java.lang.annotation.Annotation {
			public static class: java.lang.Class<dalvik.annotation.TestTargetClass>;
			/**
			 * Constructs a new instance of the dalvik.annotation.TestTargetClass interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				value(): java.lang.Class<any>;
				annotationType(): java.lang.Class<any>;
				equals(param0: any): boolean;
				hashCode(): number;
				toString(): string;
			});
			public constructor();
			public equals(param0: any): boolean;
			public toString(): string;
			public value(): java.lang.Class<any>;
			public annotationType(): java.lang.Class<any>;
			public hashCode(): number;
		}
	}
}

declare module dalvik {
	export module bytecode {
		export class OpcodeInfo extends java.lang.Object {
			public static class: java.lang.Class<dalvik.bytecode.OpcodeInfo>;
			public static MAXIMUM_VALUE: number;
			public static MAXIMUM_PACKED_VALUE: number;
		}
	}
}

declare module dalvik {
	export module bytecode {
		export class Opcodes extends java.lang.Object {
			public static class: java.lang.Class<dalvik.bytecode.Opcodes>;
			/**
			 * Constructs a new instance of the dalvik.bytecode.Opcodes interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
			});
			public constructor();
			public static OP_IF_LTZ: number;
			public static OP_IPUT_WIDE_JUMBO: number;
			public static OP_DOUBLE_TO_LONG: number;
			public static OP_CONST_WIDE: number;
			public static OP_SHL_LONG_2ADDR: number;
			public static OP_SUB_DOUBLE_2ADDR: number;
			public static OP_SUB_INT_2ADDR: number;
			public static OP_MOVE_WIDE_16: number;
			public static OP_APUT: number;
			public static OP_SGET_WIDE: number;
			public static OP_IGET_CHAR_JUMBO: number;
			public static OP_INVOKE_STATIC: number;
			public static OP_MUL_FLOAT: number;
			public static OP_IPUT_QUICK: number;
			public static OP_LONG_TO_DOUBLE: number;
			public static OP_INT_TO_LONG: number;
			public static OP_OR_INT_LIT8: number;
			public static OP_INVOKE_STATIC_JUMBO: number;
			public static OP_XOR_INT: number;
			public static OP_GOTO_32: number;
			public static OP_INVOKE_INTERFACE_RANGE: number;
			public static OP_REM_INT_LIT8: number;
			public static OP_REM_DOUBLE_2ADDR: number;
			public static OP_INVOKE_VIRTUAL_RANGE: number;
			public static OP_ADD_INT_2ADDR: number;
			public static OP_NEW_INSTANCE: number;
			public static OP_NEW_ARRAY_JUMBO: number;
			public static OP_NOT_LONG: number;
			public static OP_AGET_SHORT: number;
			public static OP_REM_LONG: number;
			public static OP_APUT_CHAR: number;
			public static OP_SPUT_BYTE_JUMBO: number;
			public static OP_IF_LEZ: number;
			public static OP_MOVE_RESULT_WIDE: number;
			public static OP_SGET_CHAR_JUMBO: number;
			public static OP_PACKED_SWITCH: number;
			public static OP_INVOKE_SUPER_RANGE: number;
			public static OP_REM_FLOAT_2ADDR: number;
			public static OP_IPUT_BYTE_JUMBO: number;
			public static OP_SGET_BYTE: number;
			public static OP_ARRAY_LENGTH: number;
			public static OP_OR_LONG: number;
			public static OP_SHR_INT: number;
			public static OP_AND_LONG: number;
			public static OP_USHR_LONG: number;
			public static OP_SGET_BOOLEAN_JUMBO: number;
			public static OP_AGET: number;
			public static OP_SPUT_CHAR_JUMBO: number;
			public static OP_AGET_OBJECT: number;
			public static OP_SGET_SHORT_JUMBO: number;
			public static OP_GOTO_16: number;
			public static OP_SGET_WIDE_JUMBO: number;
			public static OP_INVOKE_VIRTUAL_QUICK_RANGE: number;
			public static OP_MOVE_RESULT: number;
			public static OP_USHR_INT_LIT8: number;
			public static OP_ADD_INT_LIT16: number;
			public static OP_IPUT_OBJECT: number;
			public static OP_INVOKE_INTERFACE: number;
			public static OP_MOVE_OBJECT_16: number;
			public static OP_SPUT_WIDE_VOLATILE: number;
			public static OP_INSTANCE_OF: number;
			public static OP_REM_INT_2ADDR: number;
			public static OP_MUL_FLOAT_2ADDR: number;
			public static OP_NOP: number;
			public static OP_XOR_LONG: number;
			public static OP_IPUT_OBJECT_JUMBO: number;
			public static OP_XOR_INT_2ADDR: number;
			public static OP_AGET_BYTE: number;
			public static OP_SUB_INT: number;
			public static OP_IGET_OBJECT_QUICK: number;
			public static OP_ADD_LONG_2ADDR: number;
			public static OP_SGET_BYTE_JUMBO: number;
			public static OP_IGET_QUICK: number;
			public static OP_SPUT_OBJECT: number;
			public static OP_SHR_INT_2ADDR: number;
			public static OP_APUT_OBJECT: number;
			public static OP_NEG_FLOAT: number;
			public static OP_DIV_INT_LIT16: number;
			public static OP_INVOKE_SUPER_JUMBO: number;
			public static OP_REM_FLOAT: number;
			public static OP_ADD_INT_LIT8: number;
			public static OP_SPUT_WIDE: number;
			public static OP_ADD_FLOAT: number;
			public static OP_REM_LONG_2ADDR: number;
			public static OP_CONST_CLASS_JUMBO: number;
			public static OP_MOVE_EXCEPTION: number;
			public static OP_INVOKE_DIRECT_RANGE: number;
			public static OP_XOR_INT_LIT16: number;
			public static OP_MUL_INT_2ADDR: number;
			public static OP_LONG_TO_FLOAT: number;
			public static OP_IGET_WIDE: number;
			public static OP_IGET_WIDE_QUICK: number;
			public static OP_DIV_FLOAT_2ADDR: number;
			public static OP_SPUT_BOOLEAN: number;
			public static OP_IGET_WIDE_JUMBO: number;
			public static OP_MOVE_FROM16: number;
			public static OP_SUB_LONG_2ADDR: number;
			public static OP_ADD_FLOAT_2ADDR: number;
			public static OP_IF_NEZ: number;
			public static OP_CONST_HIGH16: number;
			public static OP_AND_INT: number;
			public static OP_FILLED_NEW_ARRAY_JUMBO: number;
			public static OP_IPUT_CHAR_JUMBO: number;
			public static OP_THROW_VERIFICATION_ERROR: number;
			public static OP_SHR_LONG_2ADDR: number;
			public static OP_DOUBLE_TO_INT: number;
			public static OP_NEW_ARRAY: number;
			public static OP_SPUT_BYTE: number;
			public static OP_MOVE_RESULT_OBJECT: number;
			public static OP_IGET_JUMBO: number;
			public static OP_IF_NE: number;
			public static OP_IF_GTZ: number;
			public static OP_SUB_DOUBLE: number;
			public static OP_IGET_BOOLEAN_JUMBO: number;
			public static OP_CMPG_DOUBLE: number;
			public static OP_IGET_BOOLEAN: number;
			public static OP_SUB_LONG: number;
			public static OP_CONST_16: number;
			public static OP_SHR_INT_LIT8: number;
			public static OP_IGET_BYTE: number;
			public static OP_IPUT_CHAR: number;
			public static OP_INT_TO_SHORT: number;
			public static OP_INVOKE_SUPER_QUICK: number;
			public static OP_NEG_LONG: number;
			public static OP_DIV_LONG: number;
			public static OP_LONG_TO_INT: number;
			public static OP_SPUT_SHORT_JUMBO: number;
			public static OP_MUL_INT_LIT8: number;
			public static OP_IF_EQZ: number;
			public static OP_REM_INT: number;
			public static OP_SPUT_JUMBO: number;
			public static OP_IGET_WIDE_VOLATILE: number;
			public static OP_MUL_LONG_2ADDR: number;
			public static OP_AGET_WIDE: number;
			public static OP_IF_LT: number;
			public static OP_IF_GEZ: number;
			public static OP_CMPL_FLOAT: number;
			public static OP_NEG_INT: number;
			public static OP_FLOAT_TO_LONG: number;
			public static OP_IPUT: number;
			public static OP_SGET_BOOLEAN: number;
			public static OP_IF_LE: number;
			public static OP_IPUT_BYTE: number;
			public static OP_CONST_WIDE_32: number;
			public static OP_USHR_LONG_2ADDR: number;
			public static OP_IPUT_SHORT: number;
			public static OP_MOVE_OBJECT_FROM16: number;
			public static OP_FLOAT_TO_INT: number;
			public static OP_FILLED_NEW_ARRAY: number;
			public static OP_IPUT_BOOLEAN_JUMBO: number;
			public static OP_AND_INT_LIT8: number;
			public static OP_SGET: number;
			public static OP_INT_TO_DOUBLE: number;
			public static OP_INT_TO_CHAR: number;
			public static OP_AND_LONG_2ADDR: number;
			public static OP_BREAKPOINT: number;
			public static OP_IGET_CHAR: number;
			public static OP_OR_INT_2ADDR: number;
			public static OP_ADD_DOUBLE_2ADDR: number;
			public static OP_CMP_LONG: number;
			public static OP_MONITOR_EXIT: number;
			public static OP_AND_INT_LIT16: number;
			public static OP_INVOKE_DIRECT_JUMBO: number;
			public static OP_MOVE_OBJECT: number;
			public static OP_IGET_SHORT_JUMBO: number;
			public static OP_SHL_LONG: number;
			public static OP_XOR_LONG_2ADDR: number;
			public static OP_DIV_FLOAT: number;
			public static OP_MOVE_16: number;
			public static OP_SPUT_OBJECT_JUMBO: number;
			public static OP_XOR_INT_LIT8: number;
			public static OP_DIV_DOUBLE: number;
			public static OP_CHECK_CAST_JUMBO: number;
			public static OP_IPUT_WIDE_QUICK: number;
			public static OP_SPARSE_SWITCH: number;
			public static OP_SHL_INT_2ADDR: number;
			public static OP_RSUB_INT_LIT8: number;
			public static OP_ADD_DOUBLE: number;
			public static OP_CONST: number;
			public static OP_INSTANCE_OF_JUMBO: number;
			public static OP_IGET_OBJECT_JUMBO: number;
			public static OP_INT_TO_FLOAT: number;
			public static OP_CONST_WIDE_16: number;
			public static OP_IGET: number;
			public static OP_AGET_BOOLEAN: number;
			public static OP_IPUT_JUMBO: number;
			public static OP_NEW_INSTANCE_JUMBO: number;
			public static OP_EXECUTE_INLINE: number;
			public static OP_SPUT_SHORT: number;
			public static OP_MUL_INT: number;
			public static OP_INVOKE_VIRTUAL_QUICK: number;
			public static OP_CONST_STRING_JUMBO: number;
			public static OP_IPUT_WIDE: number;
			public static OP_SGET_WIDE_VOLATILE: number;
			public static OP_CONST_WIDE_HIGH16: number;
			public static OP_CONST_STRING: number;
			public static OP_REM_DOUBLE: number;
			public static OP_IGET_OBJECT: number;
			public static OP_SPUT_CHAR: number;
			public static OP_SPUT_BOOLEAN_JUMBO: number;
			public static OP_FILLED_NEW_ARRAY_RANGE: number;
			public static OP_AGET_CHAR: number;
			public static OP_SGET_JUMBO: number;
			public static OP_APUT_BOOLEAN: number;
			public static OP_RETURN_VOID: number;
			public static OP_USHR_INT: number;
			public static OP_MUL_INT_LIT16: number;
			public static OP_IPUT_OBJECT_QUICK: number;
			public static OP_INVOKE_STATIC_RANGE: number;
			public static OP_SPUT_WIDE_JUMBO: number;
			public static OP_IGET_SHORT: number;
			public static OP_IF_GT: number;
			public static OP_CHECK_CAST: number;
			public static OP_CONST_4: number;
			public static OP_IGET_BYTE_JUMBO: number;
			public static OP_SGET_CHAR: number;
			public static OP_USHR_INT_2ADDR: number;
			public static OP_DIV_LONG_2ADDR: number;
			public static OP_INVOKE_VIRTUAL_JUMBO: number;
			public static OP_INVOKE_INTERFACE_JUMBO: number;
			public static OP_APUT_BYTE: number;
			public static OP_IF_GE: number;
			public static OP_INVOKE_SUPER: number;
			public static OP_CONST_CLASS: number;
			public static OP_REM_INT_LIT16: number;
			public static OP_OR_LONG_2ADDR: number;
			public static OP_GOTO: number;
			public static OP_MONITOR_ENTER: number;
			public static OP_INT_TO_BYTE: number;
			public static OP_RETURN_OBJECT: number;
			public static OP_OR_INT: number;
			public static OP_INVOKE_SUPER_QUICK_RANGE: number;
			public static OP_APUT_SHORT: number;
			public static OP_APUT_WIDE: number;
			public static OP_MUL_LONG: number;
			public static OP_RETURN_WIDE: number;
			public static OP_MOVE_WIDE_FROM16: number;
			public static OP_EXECUTE_INLINE_RANGE: number;
			public static OP_SUB_FLOAT: number;
			public static OP_IPUT_WIDE_VOLATILE: number;
			public static OP_INVOKE_DIRECT: number;
			public static OP_NEG_DOUBLE: number;
			public static OP_CMPG_FLOAT: number;
			public static OP_MOVE: number;
			public static OP_IF_EQ: number;
			public static OP_RETURN: number;
			public static OP_SHR_LONG: number;
			public static OP_SHL_INT_LIT8: number;
			public static OP_SGET_SHORT: number;
			public static OP_CMPL_DOUBLE: number;
			public static OP_MUL_DOUBLE_2ADDR: number;
			public static OP_DIV_INT: number;
			public static OP_MUL_DOUBLE: number;
			public static OP_DIV_INT_LIT8: number;
			public static OP_FILL_ARRAY_DATA: number;
			public static OP_DIV_INT_2ADDR: number;
			public static OP_SPUT: number;
			public static OP_IPUT_SHORT_JUMBO: number;
			public static OP_DOUBLE_TO_FLOAT: number;
			public static OP_AND_INT_2ADDR: number;
			public static OP_THROW: number;
			public static OP_SGET_OBJECT_JUMBO: number;
			public static OP_FLOAT_TO_DOUBLE: number;
			public static OP_NOT_INT: number;
			public static OP_IPUT_BOOLEAN: number;
			public static OP_SUB_FLOAT_2ADDR: number;
			public static OP_ADD_LONG: number;
			public static OP_OR_INT_LIT16: number;
			public static OP_SGET_OBJECT: number;
			public static OP_INVOKE_DIRECT_EMPTY: number;
			public static OP_INVOKE_VIRTUAL: number;
			public static OP_SHL_INT: number;
			public static OP_DIV_DOUBLE_2ADDR: number;
			public static OP_MOVE_WIDE: number;
			public static OP_RSUB_INT: number;
			public static OP_ADD_INT: number;
		}
	}
}

declare module dalvik {
	export module system {
		export class BaseDexClassLoader extends java.lang.ClassLoader {
			public static class: java.lang.Class<dalvik.system.BaseDexClassLoader>;
			public toString(): string;
			public findLibrary(param0: string): string;
			public findClass(param0: string): java.lang.Class<any>;
			public findResource(param0: string): java.net.URL;
			public constructor(param0: java.lang.ClassLoader);
			public getPackage(param0: string): java.lang.Package;
			public constructor(param0: string, param1: java.io.File, param2: string, param3: java.lang.ClassLoader);
			public constructor();
			public findResources(param0: string): java.util.Enumeration<java.net.URL>;
		}
	}
}

declare module dalvik {
	export module system {
		export class DexClassLoader extends dalvik.system.BaseDexClassLoader {
			public static class: java.lang.Class<dalvik.system.DexClassLoader>;
			public constructor(param0: java.lang.ClassLoader);
			public constructor(param0: string, param1: java.io.File, param2: string, param3: java.lang.ClassLoader);
			public constructor(param0: string, param1: string, param2: string, param3: java.lang.ClassLoader);
			public constructor();
		}
	}
}

declare module dalvik {
	export module system {
		export class DexFile extends java.lang.Object {
			public static class: java.lang.Class<dalvik.system.DexFile>;
			public getName(): string;
			public entries(): java.util.Enumeration<string>;
			public static isDexOptNeeded(param0: string): boolean;
			public static loadDex(param0: string, param1: string, param2: number): dalvik.system.DexFile;
			public constructor(param0: java.io.File);
			public loadClass(param0: string, param1: java.lang.ClassLoader): java.lang.Class<any>;
			public close(): void;
			public constructor(param0: string);
			public finalize(): void;
		}
	}
}

declare module dalvik {
	export module system {
		export class PathClassLoader extends dalvik.system.BaseDexClassLoader {
			public static class: java.lang.Class<dalvik.system.PathClassLoader>;
			public constructor(param0: java.lang.ClassLoader);
			public constructor(param0: string, param1: java.lang.ClassLoader);
			public constructor(param0: string, param1: java.io.File, param2: string, param3: java.lang.ClassLoader);
			public constructor();
			public constructor(param0: string, param1: string, param2: java.lang.ClassLoader);
		}
	}
}

declare module java {
	export module awt {
		export module font {
			export class NumericShaper extends java.lang.Object implements java.io.Serializable {
				public static class: java.lang.Class<java.awt.font.NumericShaper>;
				public static EUROPEAN: number;
				public static ARABIC: number;
				public static EASTERN_ARABIC: number;
				public static DEVANAGARI: number;
				public static BENGALI: number;
				public static GURMUKHI: number;
				public static GUJARATI: number;
				public static ORIYA: number;
				public static TAMIL: number;
				public static TELUGU: number;
				public static KANNADA: number;
				public static MALAYALAM: number;
				public static THAI: number;
				public static LAO: number;
				public static TIBETAN: number;
				public static MYANMAR: number;
				public static ETHIOPIC: number;
				public static KHMER: number;
				public static MONGOLIAN: number;
				public static ALL_RANGES: number;
				public shape(param0: native.Array<string>, param1: number, param2: number, param3: number): void;
				public static getContextualShaper(param0: number): java.awt.font.NumericShaper;
				public shape(param0: native.Array<string>, param1: number, param2: number): void;
				public static getContextualShaper(param0: number, param1: number): java.awt.font.NumericShaper;
				public static getShaper(param0: number): java.awt.font.NumericShaper;
				public hashCode(): number;
				public getRanges(): number;
				public equals(param0: any): boolean;
				public toString(): string;
				public isContextual(): boolean;
			}
		}
	}
}

declare module java {
	export module awt {
		export module font {
			export class TextAttribute extends java.text.AttributedCharacterIterator.Attribute {
				public static class: java.lang.Class<java.awt.font.TextAttribute>;
				public static BACKGROUND: java.awt.font.TextAttribute;
				public static BIDI_EMBEDDING: java.awt.font.TextAttribute;
				public static CHAR_REPLACEMENT: java.awt.font.TextAttribute;
				public static FAMILY: java.awt.font.TextAttribute;
				public static FONT: java.awt.font.TextAttribute;
				public static FOREGROUND: java.awt.font.TextAttribute;
				public static INPUT_METHOD_HIGHLIGHT: java.awt.font.TextAttribute;
				public static INPUT_METHOD_UNDERLINE: java.awt.font.TextAttribute;
				public static JUSTIFICATION: java.awt.font.TextAttribute;
				public static JUSTIFICATION_FULL: java.lang.Float;
				public static JUSTIFICATION_NONE: java.lang.Float;
				public static KERNING: java.awt.font.TextAttribute;
				public static KERNING_ON: java.lang.Integer;
				public static LIGATURES: java.awt.font.TextAttribute;
				public static LIGATURES_ON: java.lang.Integer;
				public static NUMERIC_SHAPING: java.awt.font.TextAttribute;
				public static POSTURE: java.awt.font.TextAttribute;
				public static POSTURE_REGULAR: java.lang.Float;
				public static POSTURE_OBLIQUE: java.lang.Float;
				public static RUN_DIRECTION: java.awt.font.TextAttribute;
				public static RUN_DIRECTION_LTR: java.lang.Boolean;
				public static RUN_DIRECTION_RTL: java.lang.Boolean;
				public static SIZE: java.awt.font.TextAttribute;
				public static STRIKETHROUGH: java.awt.font.TextAttribute;
				public static STRIKETHROUGH_ON: java.lang.Boolean;
				public static SUPERSCRIPT: java.awt.font.TextAttribute;
				public static SUPERSCRIPT_SUB: java.lang.Integer;
				public static SUPERSCRIPT_SUPER: java.lang.Integer;
				public static SWAP_COLORS: java.awt.font.TextAttribute;
				public static SWAP_COLORS_ON: java.lang.Boolean;
				public static TRACKING: java.awt.font.TextAttribute;
				public static TRACKING_LOOSE: java.lang.Float;
				public static TRACKING_TIGHT: java.lang.Float;
				public static TRANSFORM: java.awt.font.TextAttribute;
				public static UNDERLINE: java.awt.font.TextAttribute;
				public static UNDERLINE_ON: java.lang.Integer;
				public static UNDERLINE_LOW_ONE_PIXEL: java.lang.Integer;
				public static UNDERLINE_LOW_TWO_PIXEL: java.lang.Integer;
				public static UNDERLINE_LOW_DOTTED: java.lang.Integer;
				public static UNDERLINE_LOW_GRAY: java.lang.Integer;
				public static UNDERLINE_LOW_DASHED: java.lang.Integer;
				public static WEIGHT: java.awt.font.TextAttribute;
				public static WEIGHT_EXTRA_LIGHT: java.lang.Float;
				public static WEIGHT_LIGHT: java.lang.Float;
				public static WEIGHT_DEMILIGHT: java.lang.Float;
				public static WEIGHT_REGULAR: java.lang.Float;
				public static WEIGHT_SEMIBOLD: java.lang.Float;
				public static WEIGHT_MEDIUM: java.lang.Float;
				public static WEIGHT_DEMIBOLD: java.lang.Float;
				public static WEIGHT_BOLD: java.lang.Float;
				public static WEIGHT_HEAVY: java.lang.Float;
				public static WEIGHT_EXTRABOLD: java.lang.Float;
				public static WEIGHT_ULTRABOLD: java.lang.Float;
				public static WIDTH: java.awt.font.TextAttribute;
				public static WIDTH_CONDENSED: java.lang.Float;
				public static WIDTH_SEMI_CONDENSED: java.lang.Float;
				public static WIDTH_REGULAR: java.lang.Float;
				public static WIDTH_SEMI_EXTENDED: java.lang.Float;
				public static WIDTH_EXTENDED: java.lang.Float;
				public constructor(param0: string);
			}
		}
	}
}

declare module java {
	export module beans {
		export class IndexedPropertyChangeEvent extends java.beans.PropertyChangeEvent {
			public static class: java.lang.Class<java.beans.IndexedPropertyChangeEvent>;
			public getIndex(): number;
			public constructor(param0: any, param1: string, param2: any, param3: any, param4: number);
			public constructor(param0: any, param1: string, param2: any, param3: any);
			public constructor(param0: any);
		}
	}
}

declare module java {
	export module beans {
		export class PropertyChangeEvent extends java.util.EventObject {
			public static class: java.lang.Class<java.beans.PropertyChangeEvent>;
			public getOldValue(): any;
			public setPropagationId(param0: any): void;
			public getPropertyName(): string;
			public constructor(param0: any);
			public constructor(param0: any, param1: string, param2: any, param3: any);
			public getPropagationId(): any;
			public getNewValue(): any;
		}
	}
}

declare module java {
	export module beans {
		export class PropertyChangeListener extends java.lang.Object implements java.util.EventListener {
			public static class: java.lang.Class<java.beans.PropertyChangeListener>;
			/**
			 * Constructs a new instance of the java.beans.PropertyChangeListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				propertyChange(param0: java.beans.PropertyChangeEvent): void;
			});
			public constructor();
			public propertyChange(param0: java.beans.PropertyChangeEvent): void;
		}
	}
}

declare module java {
	export module beans {
		export class PropertyChangeListenerProxy extends java.util.EventListenerProxy implements java.beans.PropertyChangeListener {
			public static class: java.lang.Class<java.beans.PropertyChangeListenerProxy>;
			public constructor(param0: string, param1: java.beans.PropertyChangeListener);
			public propertyChange(param0: java.beans.PropertyChangeEvent): void;
			public getPropertyName(): string;
			public constructor(param0: java.util.EventListener);
		}
	}
}

declare module java {
	export module beans {
		export class PropertyChangeSupport extends java.lang.Object implements java.io.Serializable {
			public static class: java.lang.Class<java.beans.PropertyChangeSupport>;
			public getPropertyChangeListeners(param0: string): native.Array<java.beans.PropertyChangeListener>;
			public fireIndexedPropertyChange(param0: string, param1: number, param2: number, param3: number): void;
			public fireIndexedPropertyChange(param0: string, param1: number, param2: boolean, param3: boolean): void;
			public fireIndexedPropertyChange(param0: string, param1: number, param2: any, param3: any): void;
			public constructor(param0: any);
			public firePropertyChange(param0: string, param1: any, param2: any): void;
			public addPropertyChangeListener(param0: java.beans.PropertyChangeListener): void;
			public firePropertyChange(param0: string, param1: boolean, param2: boolean): void;
			public hasListeners(param0: string): boolean;
			public firePropertyChange(param0: java.beans.PropertyChangeEvent): void;
			public getPropertyChangeListeners(): native.Array<java.beans.PropertyChangeListener>;
			public addPropertyChangeListener(param0: string, param1: java.beans.PropertyChangeListener): void;
			public removePropertyChangeListener(param0: java.beans.PropertyChangeListener): void;
			public firePropertyChange(param0: string, param1: number, param2: number): void;
			public removePropertyChangeListener(param0: string, param1: java.beans.PropertyChangeListener): void;
		}
	}
}

declare module java {
	export module io {
		export class BufferedInputStream extends java.io.FilterInputStream {
			public static class: java.lang.Class<java.io.BufferedInputStream>;
			public buf: native.Array<number>;
			public count: number;
			public marklimit: number;
			public markpos: number;
			public pos: number;
			public markSupported(): boolean;
			public constructor(param0: java.io.InputStream, param1: number);
			public read(param0: native.Array<number>): number;
			public skip(param0: number): number;
			public reset(): void;
			public constructor(param0: java.io.InputStream);
			public read(param0: native.Array<number>, param1: number, param2: number): number;
			public constructor();
			public close(): void;
			public available(): number;
			public mark(param0: number): void;
			public read(): number;
		}
	}
}

declare module java {
	export module io {
		export class BufferedOutputStream extends java.io.FilterOutputStream {
			public static class: java.lang.Class<java.io.BufferedOutputStream>;
			public buf: native.Array<number>;
			public count: number;
			public flush(): void;
			public constructor(param0: java.io.OutputStream, param1: number);
			public write(param0: number): void;
			public constructor(param0: java.io.OutputStream);
			public write(param0: native.Array<number>, param1: number, param2: number): void;
			public constructor();
			public write(param0: native.Array<number>): void;
			public close(): void;
		}
	}
}

declare module java {
	export module io {
		export class BufferedReader extends java.io.Reader {
			public static class: java.lang.Class<java.io.BufferedReader>;
			public ready(): boolean;
			public markSupported(): boolean;
			public readLine(): string;
			public read(param0: native.Array<string>, param1: number, param2: number): number;
			public constructor();
			public constructor(param0: any);
			public read(): number;
			public constructor(param0: java.io.Reader);
			public read(param0: native.Array<string>): number;
			public constructor(param0: java.io.Reader, param1: number);
			public read(param0: java.nio.CharBuffer): number;
			public skip(param0: number): number;
			public reset(): void;
			public close(): void;
			public mark(param0: number): void;
		}
	}
}

declare module java {
	export module io {
		export class BufferedWriter extends java.io.Writer {
			public static class: java.lang.Class<java.io.BufferedWriter>;
			public constructor(param0: java.io.Writer);
			public flush(): void;
			public write(param0: string, param1: number, param2: number): void;
			public write(param0: native.Array<string>, param1: number, param2: number): void;
			public write(param0: native.Array<string>): void;
			public append(param0: string, param1: number, param2: number): java.lang.Appendable;
			public constructor();
			public constructor(param0: any);
			public write(param0: string): void;
			public write(param0: number): void;
			public append(param0: string): java.io.Writer;
			public newLine(): void;
			public append(param0: string, param1: number, param2: number): java.io.Writer;
			public close(): void;
			public constructor(param0: java.io.Writer, param1: number);
			public append(param0: string): java.lang.Appendable;
		}
	}
}

declare module java {
	export module io {
		export class ByteArrayInputStream extends java.io.InputStream {
			public static class: java.lang.Class<java.io.ByteArrayInputStream>;
			public buf: native.Array<number>;
			public pos: number;
			public count: number;
			public markSupported(): boolean;
			public read(param0: native.Array<number>): number;
			public skip(param0: number): number;
			public reset(): void;
			public read(param0: native.Array<number>, param1: number, param2: number): number;
			public constructor();
			public constructor(param0: native.Array<number>);
			public close(): void;
			public constructor(param0: native.Array<number>, param1: number, param2: number);
			public available(): number;
			public mark(param0: number): void;
			public read(): number;
		}
	}
}

declare module java {
	export module io {
		export class ByteArrayOutputStream extends java.io.OutputStream {
			public static class: java.lang.Class<java.io.ByteArrayOutputStream>;
			public buf: native.Array<number>;
			public count: number;
			public flush(): void;
			public size(): number;
			public toByteArray(): native.Array<number>;
			/** @deprecated */
			public toString(param0: number): string;
			public constructor(param0: number);
			public constructor();
			public toString(): string;
			public writeTo(param0: java.io.OutputStream): void;
			public write(param0: number): void;
			public reset(): void;
			public write(param0: native.Array<number>, param1: number, param2: number): void;
			public write(param0: native.Array<number>): void;
			public close(): void;
			public toString(param0: string): string;
		}
	}
}

declare module java {
	export module io {
		export class CharArrayReader extends java.io.Reader {
			public static class: java.lang.Class<java.io.CharArrayReader>;
			public buf: native.Array<string>;
			public pos: number;
			public markedPos: number;
			public count: number;
			public ready(): boolean;
			public constructor(param0: native.Array<string>, param1: number, param2: number);
			public markSupported(): boolean;
			public read(param0: native.Array<string>, param1: number, param2: number): number;
			public constructor();
			public constructor(param0: any);
			public read(): number;
			public read(param0: native.Array<string>): number;
			public constructor(param0: native.Array<string>);
			public read(param0: java.nio.CharBuffer): number;
			public skip(param0: number): number;
			public reset(): void;
			public close(): void;
			public mark(param0: number): void;
		}
	}
}

declare module java {
	export module io {
		export class CharArrayWriter extends java.io.Writer {
			public static class: java.lang.Class<java.io.CharArrayWriter>;
			public buf: native.Array<string>;
			public count: number;
			public flush(): void;
			public size(): number;
			public append(param0: string, param1: number, param2: number): java.io.CharArrayWriter;
			public write(param0: string, param1: number, param2: number): void;
			public constructor(param0: number);
			public write(param0: native.Array<string>, param1: number, param2: number): void;
			public toCharArray(): native.Array<string>;
			public write(param0: native.Array<string>): void;
			public writeTo(param0: java.io.Writer): void;
			public append(param0: string, param1: number, param2: number): java.lang.Appendable;
			public constructor();
			public constructor(param0: any);
			public write(param0: string): void;
			public toString(): string;
			public append(param0: string): java.io.CharArrayWriter;
			public write(param0: number): void;
			public append(param0: string): java.io.Writer;
			public reset(): void;
			public append(param0: string, param1: number, param2: number): java.io.Writer;
			public close(): void;
			public append(param0: string): java.lang.Appendable;
		}
	}
}

declare module java {
	export module io {
		export class CharConversionException extends java.io.IOException {
			public static class: java.lang.Class<java.io.CharConversionException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module io {
		export class Closeable extends java.lang.Object {
			public static class: java.lang.Class<java.io.Closeable>;
			/**
			 * Constructs a new instance of the java.io.Closeable interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				close(): void;
			});
			public constructor();
			public close(): void;
		}
	}
}

declare module java {
	export module io {
		export class Console extends java.lang.Object implements java.io.Flushable {
			public static class: java.lang.Class<java.io.Console>;
			public flush(): void;
			public readLine(): string;
			public reader(): java.io.Reader;
			public writer(): java.io.PrintWriter;
			public readLine(param0: string, param1: native.Array<any>): string;
			public readPassword(param0: string, param1: native.Array<any>): native.Array<string>;
			public format(param0: string, param1: native.Array<any>): java.io.Console;
			public printf(param0: string, param1: native.Array<any>): java.io.Console;
			public readPassword(): native.Array<string>;
		}
	}
}

declare module java {
	export module io {
		export class DataInput extends java.lang.Object {
			public static class: java.lang.Class<java.io.DataInput>;
			/**
			 * Constructs a new instance of the java.io.DataInput interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				readBoolean(): boolean;
				readByte(): number;
				readChar(): string;
				readDouble(): number;
				readFloat(): number;
				readFully(param0: native.Array<number>): void;
				readFully(param0: native.Array<number>, param1: number, param2: number): void;
				readInt(): number;
				readLine(): string;
				readLong(): number;
				readShort(): number;
				readUnsignedByte(): number;
				readUnsignedShort(): number;
				readUTF(): string;
				skipBytes(param0: number): number;
			});
			public constructor();
			public readLine(): string;
			public readUnsignedShort(): number;
			public readLong(): number;
			public readFully(param0: native.Array<number>, param1: number, param2: number): void;
			public readByte(): number;
			public readUnsignedByte(): number;
			public readBoolean(): boolean;
			public readShort(): number;
			public readDouble(): number;
			public readChar(): string;
			public skipBytes(param0: number): number;
			public readUTF(): string;
			public readFloat(): number;
			public readInt(): number;
			public readFully(param0: native.Array<number>): void;
		}
	}
}

declare module java {
	export module io {
		export class DataInputStream extends java.io.FilterInputStream implements java.io.DataInput {
			public static class: java.lang.Class<java.io.DataInputStream>;
			public readLine(): string;
			/** @deprecated */
			public readLine(): string;
			public readUnsignedShort(): number;
			public readLong(): number;
			public read(param0: native.Array<number>, param1: number, param2: number): number;
			public constructor();
			public readFully(param0: native.Array<number>, param1: number, param2: number): void;
			public readByte(): number;
			public readUnsignedByte(): number;
			public read(): number;
			public readBoolean(): boolean;
			public readShort(): number;
			public read(param0: native.Array<number>): number;
			public static readUTF(param0: java.io.DataInput): string;
			public readDouble(): number;
			public constructor(param0: java.io.InputStream);
			public readChar(): string;
			public skipBytes(param0: number): number;
			public readUTF(): string;
			public close(): void;
			public readFloat(): number;
			public readInt(): number;
			public readFully(param0: native.Array<number>): void;
		}
	}
}

declare module java {
	export module io {
		export class DataOutput extends java.lang.Object {
			public static class: java.lang.Class<java.io.DataOutput>;
			/**
			 * Constructs a new instance of the java.io.DataOutput interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				write(param0: native.Array<number>): void;
				write(param0: native.Array<number>, param1: number, param2: number): void;
				write(param0: number): void;
				writeBoolean(param0: boolean): void;
				writeByte(param0: number): void;
				writeBytes(param0: string): void;
				writeChar(param0: number): void;
				writeChars(param0: string): void;
				writeDouble(param0: number): void;
				writeFloat(param0: number): void;
				writeInt(param0: number): void;
				writeLong(param0: number): void;
				writeShort(param0: number): void;
				writeUTF(param0: string): void;
			});
			public constructor();
			public writeInt(param0: number): void;
			public writeLong(param0: number): void;
			public writeUTF(param0: string): void;
			public writeByte(param0: number): void;
			public writeDouble(param0: number): void;
			public writeBoolean(param0: boolean): void;
			public writeBytes(param0: string): void;
			public writeFloat(param0: number): void;
			public writeShort(param0: number): void;
			public write(param0: number): void;
			public writeChar(param0: number): void;
			public write(param0: native.Array<number>, param1: number, param2: number): void;
			public write(param0: native.Array<number>): void;
			public writeChars(param0: string): void;
		}
	}
}

declare module java {
	export module io {
		export class DataOutputStream extends java.io.FilterOutputStream implements java.io.DataOutput {
			public static class: java.lang.Class<java.io.DataOutputStream>;
			public written: number;
			public flush(): void;
			public size(): number;
			public writeInt(param0: number): void;
			public writeLong(param0: number): void;
			public writeUTF(param0: string): void;
			public writeByte(param0: number): void;
			public writeDouble(param0: number): void;
			public constructor();
			public writeBoolean(param0: boolean): void;
			public writeBytes(param0: string): void;
			public writeFloat(param0: number): void;
			public writeShort(param0: number): void;
			public write(param0: number): void;
			public writeChar(param0: number): void;
			public constructor(param0: java.io.OutputStream);
			public write(param0: native.Array<number>, param1: number, param2: number): void;
			public write(param0: native.Array<number>): void;
			public close(): void;
			public writeChars(param0: string): void;
		}
	}
}

declare module java {
	export module io {
		export class EOFException extends java.io.IOException {
			public static class: java.lang.Class<java.io.EOFException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module io {
		export class Externalizable extends java.lang.Object implements java.io.Serializable {
			public static class: java.lang.Class<java.io.Externalizable>;
			/**
			 * Constructs a new instance of the java.io.Externalizable interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				readExternal(param0: java.io.ObjectInput): void;
				writeExternal(param0: java.io.ObjectOutput): void;
			});
			public constructor();
			public readExternal(param0: java.io.ObjectInput): void;
			public writeExternal(param0: java.io.ObjectOutput): void;
		}
	}
}

declare module java {
	export module io {
		export class File extends java.lang.Object {
			public static class: java.lang.Class<java.io.File>;
			public static separatorChar: string;
			public static separator: string;
			public static pathSeparatorChar: string;
			public static pathSeparator: string;
			public canWrite(): boolean;
			public getParentFile(): java.io.File;
			public getTotalSpace(): number;
			public getFreeSpace(): number;
			public getAbsoluteFile(): java.io.File;
			public getParent(): string;
			public isDirectory(): boolean;
			public constructor(param0: java.io.File, param1: string);
			public canExecute(): boolean;
			public static createTempFile(param0: string, param1: string, param2: java.io.File): java.io.File;
			public constructor(param0: java.net.URI);
			public setLastModified(param0: number): boolean;
			public setExecutable(param0: boolean, param1: boolean): boolean;
			public constructor(param0: string);
			public getUsableSpace(): number;
			public mkdir(): boolean;
			public toURI(): java.net.URI;
			public compareTo(param0: java.io.File): number;
			public isHidden(): boolean;
			public lastModified(): number;
			public isFile(): boolean;
			public list(param0: java.io.FilenameFilter): native.Array<string>;
			public equals(param0: any): boolean;
			public listFiles(param0: java.io.FilenameFilter): native.Array<java.io.File>;
			public renameTo(param0: java.io.File): boolean;
			public getCanonicalPath(): string;
			public canRead(): boolean;
			public list(): native.Array<string>;
			public getCanonicalFile(): java.io.File;
			public constructor(param0: string, param1: string);
			public createNewFile(): boolean;
			public listFiles(param0: java.io.FileFilter): native.Array<java.io.File>;
			public delete(): boolean;
			public listFiles(): native.Array<java.io.File>;
			public static listRoots(): native.Array<java.io.File>;
			public setReadable(param0: boolean): boolean;
			public setReadable(param0: boolean, param1: boolean): boolean;
			public length(): number;
			public setReadOnly(): boolean;
			public exists(): boolean;
			public getPath(): string;
			public toString(): string;
			public getName(): string;
			public deleteOnExit(): void;
			public isAbsolute(): boolean;
			public getAbsolutePath(): string;
			public static createTempFile(param0: string, param1: string): java.io.File;
			public setWritable(param0: boolean, param1: boolean): boolean;
			public setWritable(param0: boolean): boolean;
			public mkdirs(): boolean;
			public setExecutable(param0: boolean): boolean;
			public hashCode(): number;
			/** @deprecated */
			public toURL(): java.net.URL;
		}
	}
}

declare module java {
	export module io {
		export class FileDescriptor extends java.lang.Object {
			public static class: java.lang.Class<java.io.FileDescriptor>;
			public static in: java.io.FileDescriptor;
			public static out: java.io.FileDescriptor;
			public static err: java.io.FileDescriptor;
			public toString(): string;
			public sync(): void;
			public valid(): boolean;
			public constructor();
		}
	}
}

declare module java {
	export module io {
		export class FileFilter extends java.lang.Object {
			public static class: java.lang.Class<java.io.FileFilter>;
			/**
			 * Constructs a new instance of the java.io.FileFilter interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				accept(param0: java.io.File): boolean;
			});
			public constructor();
			public accept(param0: java.io.File): boolean;
		}
	}
}

declare module java {
	export module io {
		export class FileInputStream extends java.io.InputStream implements java.io.Closeable {
			public static class: java.lang.Class<java.io.FileInputStream>;
			public getFD(): java.io.FileDescriptor;
			public read(param0: native.Array<number>, param1: number, param2: number): number;
			public constructor();
			public available(): number;
			public read(): number;
			public getChannel(): java.nio.channels.FileChannel;
			public read(param0: native.Array<number>): number;
			public constructor(param0: java.io.FileDescriptor);
			public skip(param0: number): number;
			public constructor(param0: java.io.File);
			public close(): void;
			public constructor(param0: string);
			public finalize(): void;
		}
	}
}

declare module java {
	export module io {
		export class FileNotFoundException extends java.io.IOException {
			public static class: java.lang.Class<java.io.FileNotFoundException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module io {
		export class FileOutputStream extends java.io.OutputStream implements java.io.Closeable {
			public static class: java.lang.Class<java.io.FileOutputStream>;
			public flush(): void;
			public getFD(): java.io.FileDescriptor;
			public constructor();
			public constructor(param0: java.io.File, param1: boolean);
			public getChannel(): java.nio.channels.FileChannel;
			public write(param0: number): void;
			public constructor(param0: java.io.FileDescriptor);
			public constructor(param0: java.io.File);
			public constructor(param0: string, param1: boolean);
			public write(param0: native.Array<number>, param1: number, param2: number): void;
			public write(param0: native.Array<number>): void;
			public close(): void;
			public constructor(param0: string);
			public finalize(): void;
		}
	}
}

declare module java {
	export module io {
		export class FilePermission extends java.security.Permission implements java.io.Serializable {
			public static class: java.lang.Class<java.io.FilePermission>;
			public constructor(param0: string, param1: string);
			public implies(param0: java.security.Permission): boolean;
			public getActions(): string;
			public checkGuard(param0: any): void;
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module io {
		export class FileReader extends java.io.InputStreamReader {
			public static class: java.lang.Class<java.io.FileReader>;
			public read(param0: native.Array<string>, param1: number, param2: number): number;
			public constructor();
			public constructor(param0: any);
			public read(): number;
			public constructor(param0: java.io.InputStream, param1: java.nio.charset.CharsetDecoder);
			public read(param0: native.Array<string>): number;
			public constructor(param0: java.io.InputStream, param1: string);
			public read(param0: java.nio.CharBuffer): number;
			public constructor(param0: java.io.FileDescriptor);
			public constructor(param0: java.io.File);
			public constructor(param0: java.io.InputStream);
			public constructor(param0: java.io.InputStream, param1: java.nio.charset.Charset);
			public close(): void;
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module io {
		export class FileWriter extends java.io.OutputStreamWriter {
			public static class: java.lang.Class<java.io.FileWriter>;
			public flush(): void;
			public constructor(param0: java.io.OutputStream, param1: java.nio.charset.CharsetEncoder);
			public constructor(param0: java.io.OutputStream, param1: string);
			public constructor(param0: java.io.OutputStream, param1: java.nio.charset.Charset);
			public append(param0: string, param1: number, param2: number): java.lang.Appendable;
			public constructor();
			public constructor(param0: java.io.File, param1: boolean);
			public constructor(param0: any);
			public append(param0: string): java.io.Writer;
			public constructor(param0: java.io.FileDescriptor);
			public constructor(param0: java.io.File);
			public constructor(param0: string, param1: boolean);
			public constructor(param0: java.io.OutputStream);
			public append(param0: string, param1: number, param2: number): java.io.Writer;
			public close(): void;
			public constructor(param0: string);
			public append(param0: string): java.lang.Appendable;
		}
	}
}

declare module java {
	export module io {
		export class FilenameFilter extends java.lang.Object {
			public static class: java.lang.Class<java.io.FilenameFilter>;
			/**
			 * Constructs a new instance of the java.io.FilenameFilter interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				accept(param0: java.io.File, param1: string): boolean;
			});
			public constructor();
			public accept(param0: java.io.File, param1: string): boolean;
		}
	}
}

declare module java {
	export module io {
		export class FilterInputStream extends java.io.InputStream {
			public static class: java.lang.Class<java.io.FilterInputStream>;
			public in: java.io.InputStream;
			public markSupported(): boolean;
			public read(param0: native.Array<number>): number;
			public skip(param0: number): number;
			public reset(): void;
			public constructor(param0: java.io.InputStream);
			public read(param0: native.Array<number>, param1: number, param2: number): number;
			public constructor();
			public close(): void;
			public available(): number;
			public mark(param0: number): void;
			public read(): number;
		}
	}
}

declare module java {
	export module io {
		export class FilterOutputStream extends java.io.OutputStream {
			public static class: java.lang.Class<java.io.FilterOutputStream>;
			public out: java.io.OutputStream;
			public flush(): void;
			public write(param0: number): void;
			public constructor(param0: java.io.OutputStream);
			public write(param0: native.Array<number>, param1: number, param2: number): void;
			public constructor();
			public write(param0: native.Array<number>): void;
			public close(): void;
		}
	}
}

declare module java {
	export module io {
		export abstract class FilterReader extends java.io.Reader {
			public static class: java.lang.Class<java.io.FilterReader>;
			public in: java.io.Reader;
			public ready(): boolean;
			public markSupported(): boolean;
			public read(param0: native.Array<string>, param1: number, param2: number): number;
			public constructor();
			public constructor(param0: any);
			public read(): number;
			public constructor(param0: java.io.Reader);
			public read(param0: native.Array<string>): number;
			public read(param0: java.nio.CharBuffer): number;
			public skip(param0: number): number;
			public reset(): void;
			public close(): void;
			public mark(param0: number): void;
		}
	}
}

declare module java {
	export module io {
		export abstract class FilterWriter extends java.io.Writer {
			public static class: java.lang.Class<java.io.FilterWriter>;
			public out: java.io.Writer;
			public constructor(param0: java.io.Writer);
			public flush(): void;
			public write(param0: string, param1: number, param2: number): void;
			public write(param0: native.Array<string>, param1: number, param2: number): void;
			public write(param0: native.Array<string>): void;
			public append(param0: string, param1: number, param2: number): java.lang.Appendable;
			public constructor();
			public constructor(param0: any);
			public write(param0: string): void;
			public write(param0: number): void;
			public append(param0: string): java.io.Writer;
			public append(param0: string, param1: number, param2: number): java.io.Writer;
			public close(): void;
			public append(param0: string): java.lang.Appendable;
		}
	}
}

declare module java {
	export module io {
		export class Flushable extends java.lang.Object {
			public static class: java.lang.Class<java.io.Flushable>;
			/**
			 * Constructs a new instance of the java.io.Flushable interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				flush(): void;
			});
			public constructor();
			public flush(): void;
		}
	}
}

declare module java {
	export module io {
		export class IOError extends java.lang.Error {
			public static class: java.lang.Class<java.io.IOError>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module io {
		export class IOException extends java.lang.Exception {
			public static class: java.lang.Class<java.io.IOException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module io {
		export abstract class InputStream extends java.lang.Object implements java.io.Closeable {
			public static class: java.lang.Class<java.io.InputStream>;
			public markSupported(): boolean;
			public read(param0: native.Array<number>): number;
			public skip(param0: number): number;
			public reset(): void;
			public read(param0: native.Array<number>, param1: number, param2: number): number;
			public constructor();
			public close(): void;
			public available(): number;
			public mark(param0: number): void;
			public read(): number;
		}
	}
}

declare module java {
	export module io {
		export class InputStreamReader extends java.io.Reader {
			public static class: java.lang.Class<java.io.InputStreamReader>;
			public ready(): boolean;
			public read(param0: native.Array<string>, param1: number, param2: number): number;
			public constructor();
			public constructor(param0: any);
			public read(): number;
			public constructor(param0: java.io.InputStream, param1: java.nio.charset.CharsetDecoder);
			public read(param0: native.Array<string>): number;
			public getEncoding(): string;
			public constructor(param0: java.io.InputStream, param1: string);
			public read(param0: java.nio.CharBuffer): number;
			public constructor(param0: java.io.InputStream);
			public constructor(param0: java.io.InputStream, param1: java.nio.charset.Charset);
			public close(): void;
		}
	}
}

declare module java {
	export module io {
		export class InterruptedIOException extends java.io.IOException {
			public static class: java.lang.Class<java.io.InterruptedIOException>;
			public bytesTransferred: number;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module io {
		export class InvalidClassException extends java.io.ObjectStreamException {
			public static class: java.lang.Class<java.io.InvalidClassException>;
			public classname: string;
			public constructor(param0: string, param1: string);
			public getMessage(): string;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module io {
		export class InvalidObjectException extends java.io.ObjectStreamException {
			public static class: java.lang.Class<java.io.InvalidObjectException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module io {
		export class LineNumberInputStream extends java.io.FilterInputStream {
			public static class: java.lang.Class<java.io.LineNumberInputStream>;
			public setLineNumber(param0: number): void;
			public read(param0: native.Array<number>): number;
			public getLineNumber(): number;
			public skip(param0: number): number;
			public reset(): void;
			public constructor(param0: java.io.InputStream);
			public read(param0: native.Array<number>, param1: number, param2: number): number;
			public constructor();
			public close(): void;
			public available(): number;
			public mark(param0: number): void;
			public read(): number;
		}
	}
}

declare module java {
	export module io {
		export class LineNumberReader extends java.io.BufferedReader {
			public static class: java.lang.Class<java.io.LineNumberReader>;
			public readLine(): string;
			public getLineNumber(): number;
			public read(param0: native.Array<string>, param1: number, param2: number): number;
			public constructor();
			public constructor(param0: any);
			public read(): number;
			public setLineNumber(param0: number): void;
			public constructor(param0: java.io.Reader);
			public read(param0: native.Array<string>): number;
			public constructor(param0: java.io.Reader, param1: number);
			public read(param0: java.nio.CharBuffer): number;
			public skip(param0: number): number;
			public reset(): void;
			public close(): void;
			public mark(param0: number): void;
		}
	}
}

declare module java {
	export module io {
		export class NotActiveException extends java.io.ObjectStreamException {
			public static class: java.lang.Class<java.io.NotActiveException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module io {
		export class NotSerializableException extends java.io.ObjectStreamException {
			public static class: java.lang.Class<java.io.NotSerializableException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module io {
		export class ObjectInput extends java.lang.Object implements java.io.DataInput {
			public static class: java.lang.Class<java.io.ObjectInput>;
			/**
			 * Constructs a new instance of the java.io.ObjectInput interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				available(): number;
				close(): void;
				read(): number;
				read(param0: native.Array<number>): number;
				read(param0: native.Array<number>, param1: number, param2: number): number;
				readObject(): any;
				skip(param0: number): number;
				readBoolean(): boolean;
				readByte(): number;
				readChar(): string;
				readDouble(): number;
				readFloat(): number;
				readFully(param0: native.Array<number>): void;
				readFully(param0: native.Array<number>, param1: number, param2: number): void;
				readInt(): number;
				readLine(): string;
				readLong(): number;
				readShort(): number;
				readUnsignedByte(): number;
				readUnsignedShort(): number;
				readUTF(): string;
				skipBytes(param0: number): number;
			});
			public constructor();
			public readLine(): string;
			public readUnsignedShort(): number;
			public readLong(): number;
			public read(param0: native.Array<number>, param1: number, param2: number): number;
			public readFully(param0: native.Array<number>, param1: number, param2: number): void;
			public readByte(): number;
			public readUnsignedByte(): number;
			public available(): number;
			public read(): number;
			public readBoolean(): boolean;
			public readShort(): number;
			public read(param0: native.Array<number>): number;
			public readDouble(): number;
			public readObject(): any;
			public skip(param0: number): number;
			public readChar(): string;
			public skipBytes(param0: number): number;
			public close(): void;
			public readUTF(): string;
			public readFloat(): number;
			public readInt(): number;
			public readFully(param0: native.Array<number>): void;
		}
	}
}

declare module java {
	export module io {
		export class ObjectInputStream extends java.io.InputStream implements java.io.ObjectInput, java.io.ObjectStreamConstants {
			public static class: java.lang.Class<java.io.ObjectInputStream>;
			public readObjectOverride(): any;
			public enableResolveObject(param0: boolean): boolean;
			public readFully(param0: native.Array<number>, param1: number, param2: number): void;
			public readByte(): number;
			public readStreamHeader(): void;
			public readUnsignedByte(): number;
			public available(): number;
			public read(): number;
			public readShort(): number;
			public readUnshared(): any;
			public readFields(): java.io.ObjectInputStream.GetField;
			public defaultReadObject(): void;
			public readDouble(): number;
			public readObject(): any;
			public skip(param0: number): number;
			public constructor(param0: java.io.InputStream);
			public readChar(): string;
			public skipBytes(param0: number): number;
			public close(): void;
			public readUTF(): string;
			public readFloat(): number;
			public readInt(): number;
			public resolveProxyClass(param0: native.Array<string>): java.lang.Class<any>;
			public resolveClass(param0: java.io.ObjectStreamClass): java.lang.Class<any>;
			public readLine(): string;
			/** @deprecated */
			public readLine(): string;
			public readUnsignedShort(): number;
			public readLong(): number;
			public read(param0: native.Array<number>, param1: number, param2: number): number;
			public constructor();
			public readBoolean(): boolean;
			public resolveObject(param0: any): any;
			public readClassDescriptor(): java.io.ObjectStreamClass;
			public read(param0: native.Array<number>): number;
			public registerValidation(param0: java.io.ObjectInputValidation, param1: number): void;
			public readFully(param0: native.Array<number>): void;
		}
		export module ObjectInputStream {
			export abstract class GetField extends java.lang.Object {
				public static class: java.lang.Class<java.io.ObjectInputStream.GetField>;
				public get(param0: string, param1: number): number;
				public get(param0: string, param1: any): any;
				public getObjectStreamClass(): java.io.ObjectStreamClass;
				public defaulted(param0: string): boolean;
				public get(param0: string, param1: string): string;
				public constructor();
				public get(param0: string, param1: boolean): boolean;
			}
		}
	}
}

declare module java {
	export module io {
		export class ObjectInputValidation extends java.lang.Object {
			public static class: java.lang.Class<java.io.ObjectInputValidation>;
			/**
			 * Constructs a new instance of the java.io.ObjectInputValidation interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				validateObject(): void;
			});
			public constructor();
			public validateObject(): void;
		}
	}
}

declare module java {
	export module io {
		export class ObjectOutput extends java.lang.Object implements java.io.DataOutput {
			public static class: java.lang.Class<java.io.ObjectOutput>;
			/**
			 * Constructs a new instance of the java.io.ObjectOutput interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				close(): void;
				flush(): void;
				write(param0: native.Array<number>): void;
				write(param0: native.Array<number>, param1: number, param2: number): void;
				write(param0: number): void;
				writeObject(param0: any): void;
				write(param0: native.Array<number>): void;
				write(param0: native.Array<number>, param1: number, param2: number): void;
				write(param0: number): void;
				writeBoolean(param0: boolean): void;
				writeByte(param0: number): void;
				writeBytes(param0: string): void;
				writeChar(param0: number): void;
				writeChars(param0: string): void;
				writeDouble(param0: number): void;
				writeFloat(param0: number): void;
				writeInt(param0: number): void;
				writeLong(param0: number): void;
				writeShort(param0: number): void;
				writeUTF(param0: string): void;
			});
			public constructor();
			public flush(): void;
			public writeInt(param0: number): void;
			public writeLong(param0: number): void;
			public writeUTF(param0: string): void;
			public writeByte(param0: number): void;
			public writeDouble(param0: number): void;
			public writeObject(param0: any): void;
			public writeBoolean(param0: boolean): void;
			public writeBytes(param0: string): void;
			public writeFloat(param0: number): void;
			public writeShort(param0: number): void;
			public write(param0: number): void;
			public writeChar(param0: number): void;
			public write(param0: native.Array<number>, param1: number, param2: number): void;
			public write(param0: native.Array<number>): void;
			public close(): void;
			public writeChars(param0: string): void;
		}
	}
}

declare module java {
	export module io {
		export class ObjectOutputStream extends java.io.OutputStream implements java.io.ObjectOutput, java.io.ObjectStreamConstants {
			public static class: java.lang.Class<java.io.ObjectOutputStream>;
			public writeFields(): void;
			public writeUTF(param0: string): void;
			public replaceObject(param0: any): any;
			public writeFloat(param0: number): void;
			public enableReplaceObject(param0: boolean): boolean;
			public useProtocolVersion(param0: number): void;
			public reset(): void;
			public writeChar(param0: number): void;
			public write(param0: native.Array<number>): void;
			public close(): void;
			public annotateClass(param0: java.lang.Class<any>): void;
			public flush(): void;
			public writeInt(param0: number): void;
			public writeLong(param0: number): void;
			public writeByte(param0: number): void;
			public writeDouble(param0: number): void;
			public writeClassDescriptor(param0: java.io.ObjectStreamClass): void;
			public constructor();
			public writeObject(param0: any): void;
			public writeBoolean(param0: boolean): void;
			public writeBytes(param0: string): void;
			public defaultWriteObject(): void;
			public writeObjectOverride(param0: any): void;
			public writeShort(param0: number): void;
			public putFields(): java.io.ObjectOutputStream.PutField;
			public write(param0: number): void;
			public constructor(param0: java.io.OutputStream);
			public write(param0: native.Array<number>, param1: number, param2: number): void;
			public annotateProxyClass(param0: java.lang.Class<any>): void;
			public writeStreamHeader(): void;
			public drain(): void;
			public writeChars(param0: string): void;
			public writeUnshared(param0: any): void;
		}
		export module ObjectOutputStream {
			export abstract class PutField extends java.lang.Object {
				public static class: java.lang.Class<java.io.ObjectOutputStream.PutField>;
				public put(param0: string, param1: number): void;
				/** @deprecated */
				public write(param0: java.io.ObjectOutput): void;
				public put(param0: string, param1: any): void;
				public put(param0: string, param1: boolean): void;
				public put(param0: string, param1: string): void;
				public constructor();
			}
		}
	}
}

declare module java {
	export module io {
		export class ObjectStreamClass extends java.lang.Object implements java.io.Serializable {
			public static class: java.lang.Class<java.io.ObjectStreamClass>;
			public static NO_FIELDS: native.Array<java.io.ObjectStreamField>;
			public getSerialVersionUID(): number;
			public static lookupAny(param0: java.lang.Class<any>): java.io.ObjectStreamClass;
			public toString(): string;
			public getName(): string;
			public forClass(): java.lang.Class<any>;
			public getFields(): native.Array<java.io.ObjectStreamField>;
			public getField(param0: string): java.io.ObjectStreamField;
			public static lookup(param0: java.lang.Class<any>): java.io.ObjectStreamClass;
		}
	}
}

declare module java {
	export module io {
		export class ObjectStreamConstants extends java.lang.Object {
			public static class: java.lang.Class<java.io.ObjectStreamConstants>;
			/**
			 * Constructs a new instance of the java.io.ObjectStreamConstants interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				<clinit>(): void;
			});
			public constructor();
			public static TC_REFERENCE: number;
			public static TC_BLOCKDATA: number;
			public static TC_MAX: number;
			public static SC_ENUM: number;
			public static TC_BLOCKDATALONG: number;
			public static TC_PROXYCLASSDESC: number;
			public static TC_ARRAY: number;
			public static TC_EXCEPTION: number;
			public static SC_EXTERNALIZABLE: number;
			public static TC_ENDBLOCKDATA: number;
			public static STREAM_VERSION: number;
			public static TC_STRING: number;
			public static TC_BASE: number;
			public static TC_CLASS: number;
			public static SUBCLASS_IMPLEMENTATION_PERMISSION: java.io.SerializablePermission;
			public static STREAM_MAGIC: number;
			public static PROTOCOL_VERSION_2: number;
			public static PROTOCOL_VERSION_1: number;
			public static SC_BLOCK_DATA: number;
			public static TC_ENUM: number;
			public static baseWireHandle: number;
			public static TC_NULL: number;
			public static TC_CLASSDESC: number;
			public static TC_OBJECT: number;
			public static SUBSTITUTION_PERMISSION: java.io.SerializablePermission;
			public static SC_SERIALIZABLE: number;
			public static TC_RESET: number;
			public static TC_LONGSTRING: number;
			public static SC_WRITE_METHOD: number;
		}
	}
}

declare module java {
	export module io {
		export abstract class ObjectStreamException extends java.io.IOException {
			public static class: java.lang.Class<java.io.ObjectStreamException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module io {
		export class ObjectStreamField extends java.lang.Comparable<any> {
			public static class: java.lang.Class<java.io.ObjectStreamField>;
			public constructor(param0: string, param1: java.lang.Class<any>, param2: boolean);
			public isUnshared(): boolean;
			public compareTo(param0: any): number;
			public toString(): string;
			public getName(): string;
			public constructor(param0: string, param1: java.lang.Class<any>);
			public getTypeCode(): string;
			public isPrimitive(): boolean;
			public getOffset(): number;
			public setOffset(param0: number): void;
			public getType(): java.lang.Class<any>;
			public getTypeString(): string;
		}
	}
}

declare module java {
	export module io {
		export class OptionalDataException extends java.io.ObjectStreamException {
			public static class: java.lang.Class<java.io.OptionalDataException>;
			public eof: boolean;
			public length: number;
		}
	}
}

declare module java {
	export module io {
		export abstract class OutputStream extends java.lang.Object implements java.io.Closeable, java.io.Flushable {
			public static class: java.lang.Class<java.io.OutputStream>;
			public flush(): void;
			public write(param0: number): void;
			public write(param0: native.Array<number>, param1: number, param2: number): void;
			public constructor();
			public write(param0: native.Array<number>): void;
			public close(): void;
		}
	}
}

declare module java {
	export module io {
		export class OutputStreamWriter extends java.io.Writer {
			public static class: java.lang.Class<java.io.OutputStreamWriter>;
			public flush(): void;
			public constructor(param0: java.io.OutputStream, param1: java.nio.charset.CharsetEncoder);
			public write(param0: string, param1: number, param2: number): void;
			public write(param0: native.Array<string>, param1: number, param2: number): void;
			public constructor(param0: java.io.OutputStream, param1: string);
			public constructor(param0: java.io.OutputStream, param1: java.nio.charset.Charset);
			public write(param0: native.Array<string>): void;
			public append(param0: string, param1: number, param2: number): java.lang.Appendable;
			public constructor();
			public constructor(param0: any);
			public write(param0: string): void;
			public getEncoding(): string;
			public write(param0: number): void;
			public append(param0: string): java.io.Writer;
			public constructor(param0: java.io.OutputStream);
			public append(param0: string, param1: number, param2: number): java.io.Writer;
			public close(): void;
			public append(param0: string): java.lang.Appendable;
		}
	}
}

declare module java {
	export module io {
		export class PipedInputStream extends java.io.InputStream {
			public static class: java.lang.Class<java.io.PipedInputStream>;
			public buffer: native.Array<number>;
			public in: number;
			public out: number;
			public static PIPE_SIZE: number;
			public receive(param0: number): void;
			public read(param0: native.Array<number>): number;
			public constructor(param0: number);
			public connect(param0: java.io.PipedOutputStream): void;
			public read(param0: native.Array<number>, param1: number, param2: number): number;
			public constructor();
			public close(): void;
			public constructor(param0: java.io.PipedOutputStream);
			public constructor(param0: java.io.PipedOutputStream, param1: number);
			public available(): number;
			public read(): number;
		}
	}
}

declare module java {
	export module io {
		export class PipedOutputStream extends java.io.OutputStream {
			public static class: java.lang.Class<java.io.PipedOutputStream>;
			public flush(): void;
			public connect(param0: java.io.PipedInputStream): void;
			public write(param0: number): void;
			public write(param0: native.Array<number>, param1: number, param2: number): void;
			public constructor();
			public write(param0: native.Array<number>): void;
			public close(): void;
			public constructor(param0: java.io.PipedInputStream);
		}
	}
}

declare module java {
	export module io {
		export class PipedReader extends java.io.Reader {
			public static class: java.lang.Class<java.io.PipedReader>;
			public ready(): boolean;
			public read(param0: native.Array<string>): number;
			public constructor(param0: java.io.PipedWriter, param1: number);
			public read(param0: java.nio.CharBuffer): number;
			public constructor(param0: java.io.PipedWriter);
			public constructor(param0: number);
			public read(param0: native.Array<string>, param1: number, param2: number): number;
			public constructor();
			public close(): void;
			public constructor(param0: any);
			public connect(param0: java.io.PipedWriter): void;
			public read(): number;
		}
	}
}

declare module java {
	export module io {
		export class PipedWriter extends java.io.Writer {
			public static class: java.lang.Class<java.io.PipedWriter>;
			public flush(): void;
			public write(param0: string, param1: number, param2: number): void;
			public write(param0: native.Array<string>, param1: number, param2: number): void;
			public write(param0: native.Array<string>): void;
			public append(param0: string, param1: number, param2: number): java.lang.Appendable;
			public constructor();
			public connect(param0: java.io.PipedReader): void;
			public constructor(param0: any);
			public write(param0: string): void;
			public write(param0: number): void;
			public append(param0: string): java.io.Writer;
			public constructor(param0: java.io.PipedReader);
			public append(param0: string, param1: number, param2: number): java.io.Writer;
			public close(): void;
			public append(param0: string): java.lang.Appendable;
		}
	}
}

declare module java {
	export module io {
		export class PrintStream extends java.io.FilterOutputStream implements java.lang.Appendable, java.io.Closeable {
			public static class: java.lang.Class<java.io.PrintStream>;
			public print(param0: number): void;
			public println(): void;
			public constructor(param0: java.io.OutputStream, param1: boolean);
			public print(param0: any): void;
			public printf(param0: java.util.Locale, param1: string, param2: native.Array<any>): java.io.PrintStream;
			public format(param0: java.util.Locale, param1: string, param2: native.Array<any>): java.io.PrintStream;
			public println(param0: any): void;
			public print(param0: boolean): void;
			public constructor(param0: string, param1: string);
			public append(param0: string, param1: number, param2: number): java.io.PrintStream;
			public setError(): void;
			public constructor(param0: java.io.File, param1: string);
			public println(param0: number): void;
			public println(param0: boolean): void;
			public constructor(param0: java.io.File);
			public print(param0: string): void;
			public checkError(): boolean;
			public constructor(param0: java.io.OutputStream, param1: boolean, param2: string);
			public write(param0: native.Array<number>): void;
			public close(): void;
			public clearError(): void;
			public constructor(param0: string);
			public flush(): void;
			public append(param0: string, param1: number, param2: number): java.lang.Appendable;
			public constructor();
			public println(param0: string): void;
			public print(param0: native.Array<string>): void;
			public println(param0: native.Array<string>): void;
			public write(param0: number): void;
			public constructor(param0: java.io.OutputStream);
			public format(param0: string, param1: native.Array<any>): java.io.PrintStream;
			public write(param0: native.Array<number>, param1: number, param2: number): void;
			public append(param0: string): java.io.PrintStream;
			public printf(param0: string, param1: native.Array<any>): java.io.PrintStream;
			public append(param0: string): java.lang.Appendable;
		}
	}
}

declare module java {
	export module io {
		export class PrintWriter extends java.io.Writer {
			public static class: java.lang.Class<java.io.PrintWriter>;
			public out: java.io.Writer;
			public print(param0: number): void;
			public println(): void;
			public printf(param0: string, param1: native.Array<any>): java.io.PrintWriter;
			public constructor(param0: java.io.OutputStream, param1: boolean);
			public print(param0: any): void;
			public write(param0: native.Array<string>, param1: number, param2: number): void;
			public write(param0: native.Array<string>): void;
			public append(param0: string, param1: number, param2: number): java.io.PrintWriter;
			public constructor(param0: any);
			public println(param0: any): void;
			public print(param0: boolean): void;
			public constructor(param0: string, param1: string);
			public format(param0: java.util.Locale, param1: string, param2: native.Array<any>): java.io.PrintWriter;
			public setError(): void;
			public constructor(param0: java.io.File, param1: string);
			public println(param0: number): void;
			public println(param0: boolean): void;
			public append(param0: string): java.io.Writer;
			public append(param0: string): java.io.PrintWriter;
			public constructor(param0: java.io.File);
			public print(param0: string): void;
			public checkError(): boolean;
			public append(param0: string, param1: number, param2: number): java.io.Writer;
			public close(): void;
			public format(param0: string, param1: native.Array<any>): java.io.PrintWriter;
			public clearError(): void;
			public printf(param0: java.util.Locale, param1: string, param2: native.Array<any>): java.io.PrintWriter;
			public constructor(param0: string);
			public constructor(param0: java.io.Writer);
			public flush(): void;
			public constructor(param0: java.io.Writer, param1: boolean);
			public write(param0: string, param1: number, param2: number): void;
			public append(param0: string, param1: number, param2: number): java.lang.Appendable;
			public constructor();
			public println(param0: string): void;
			public write(param0: string): void;
			public print(param0: native.Array<string>): void;
			public println(param0: native.Array<string>): void;
			public write(param0: number): void;
			public constructor(param0: java.io.OutputStream);
			public append(param0: string): java.lang.Appendable;
		}
	}
}

declare module java {
	export module io {
		export class PushbackInputStream extends java.io.FilterInputStream {
			public static class: java.lang.Class<java.io.PushbackInputStream>;
			public buf: native.Array<number>;
			public pos: number;
			public unread(param0: number): void;
			public markSupported(): boolean;
			public unread(param0: native.Array<number>, param1: number, param2: number): void;
			public read(param0: native.Array<number>, param1: number, param2: number): number;
			public constructor();
			public unread(param0: native.Array<number>): void;
			public available(): number;
			public read(): number;
			public constructor(param0: java.io.InputStream, param1: number);
			public read(param0: native.Array<number>): number;
			public skip(param0: number): number;
			public reset(): void;
			public constructor(param0: java.io.InputStream);
			public close(): void;
			public mark(param0: number): void;
		}
	}
}

declare module java {
	export module io {
		export class PushbackReader extends java.io.FilterReader {
			public static class: java.lang.Class<java.io.PushbackReader>;
			public ready(): boolean;
			public unread(param0: number): void;
			public markSupported(): boolean;
			public read(param0: native.Array<string>, param1: number, param2: number): number;
			public constructor();
			public constructor(param0: any);
			public read(): number;
			public constructor(param0: java.io.Reader);
			public read(param0: native.Array<string>): number;
			public constructor(param0: java.io.Reader, param1: number);
			public read(param0: java.nio.CharBuffer): number;
			public skip(param0: number): number;
			public reset(): void;
			public close(): void;
			public unread(param0: native.Array<string>): void;
			public unread(param0: native.Array<string>, param1: number, param2: number): void;
			public mark(param0: number): void;
		}
	}
}

declare module java {
	export module io {
		export class RandomAccessFile extends java.lang.Object implements java.io.DataInput, java.io.DataOutput, java.io.Closeable {
			public static class: java.lang.Class<java.io.RandomAccessFile>;
			public writeUTF(param0: string): void;
			public readFully(param0: native.Array<number>, param1: number, param2: number): void;
			public seek(param0: number): void;
			public readByte(): number;
			public readUnsignedByte(): number;
			public read(): number;
			public readShort(): number;
			public writeFloat(param0: number): void;
			public constructor(param0: string, param1: string);
			public constructor(param0: java.io.File, param1: string);
			public readDouble(): number;
			public writeChar(param0: number): void;
			public readChar(): string;
			public skipBytes(param0: number): number;
			public write(param0: native.Array<number>): void;
			public close(): void;
			public readUTF(): string;
			public readFloat(): number;
			public readInt(): number;
			public finalize(): void;
			public readLine(): string;
			public setLength(param0: number): void;
			public getFD(): java.io.FileDescriptor;
			public readUnsignedShort(): number;
			public writeInt(param0: number): void;
			public writeLong(param0: number): void;
			public length(): number;
			public readLong(): number;
			public writeByte(param0: number): void;
			public writeDouble(param0: number): void;
			public read(param0: native.Array<number>, param1: number, param2: number): number;
			public writeBoolean(param0: boolean): void;
			public readBoolean(): boolean;
			public writeBytes(param0: string): void;
			public getChannel(): java.nio.channels.FileChannel;
			public writeShort(param0: number): void;
			public getFilePointer(): number;
			public read(param0: native.Array<number>): number;
			public write(param0: number): void;
			public write(param0: native.Array<number>, param1: number, param2: number): void;
			public readFully(param0: native.Array<number>): void;
			public writeChars(param0: string): void;
		}
	}
}

declare module java {
	export module io {
		export abstract class Reader extends java.lang.Object implements java.lang.Readable, java.io.Closeable {
			public static class: java.lang.Class<java.io.Reader>;
			public lock: any;
			public ready(): boolean;
			public markSupported(): boolean;
			public read(param0: native.Array<string>): number;
			public read(param0: java.nio.CharBuffer): number;
			public skip(param0: number): number;
			public read(param0: native.Array<string>, param1: number, param2: number): number;
			public reset(): void;
			public constructor();
			public close(): void;
			public constructor(param0: any);
			public mark(param0: number): void;
			public read(): number;
		}
	}
}

declare module java {
	export module io {
		export class SequenceInputStream extends java.io.InputStream {
			public static class: java.lang.Class<java.io.SequenceInputStream>;
			public constructor(param0: java.util.Enumeration<any>);
			public read(param0: native.Array<number>): number;
			public read(param0: native.Array<number>, param1: number, param2: number): number;
			public constructor();
			public constructor(param0: java.io.InputStream, param1: java.io.InputStream);
			public close(): void;
			public available(): number;
			public read(): number;
		}
	}
}

declare module java {
	export module io {
		export class Serializable extends java.lang.Object {
			public static class: java.lang.Class<java.io.Serializable>;
			/**
			 * Constructs a new instance of the java.io.Serializable interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
			});
			public constructor();
		}
	}
}

declare module java {
	export module io {
		export class SerializablePermission extends java.security.BasicPermission {
			public static class: java.lang.Class<java.io.SerializablePermission>;
			public constructor(param0: string, param1: string);
			public implies(param0: java.security.Permission): boolean;
			public getActions(): string;
			public checkGuard(param0: any): void;
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module io {
		export class StreamCorruptedException extends java.io.ObjectStreamException {
			public static class: java.lang.Class<java.io.StreamCorruptedException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module io {
		export class StreamTokenizer extends java.lang.Object {
			public static class: java.lang.Class<java.io.StreamTokenizer>;
			public nval: number;
			public sval: string;
			public static TT_EOF: number;
			public static TT_EOL: number;
			public static TT_NUMBER: number;
			public static TT_WORD: number;
			public ttype: number;
			public eolIsSignificant(param0: boolean): void;
			public nextToken(): number;
			public resetSyntax(): void;
			public slashStarComments(param0: boolean): void;
			public wordChars(param0: number, param1: number): void;
			public commentChar(param0: number): void;
			public ordinaryChars(param0: number, param1: number): void;
			public pushBack(): void;
			public lineno(): number;
			public constructor(param0: java.io.Reader);
			public parseNumbers(): void;
			public toString(): string;
			public whitespaceChars(param0: number, param1: number): void;
			/** @deprecated */
			public constructor(param0: java.io.InputStream);
			public slashSlashComments(param0: boolean): void;
			public quoteChar(param0: number): void;
			public lowerCaseMode(param0: boolean): void;
			public ordinaryChar(param0: number): void;
		}
	}
}

declare module java {
	export module io {
		export class StringBufferInputStream extends java.io.InputStream {
			public static class: java.lang.Class<java.io.StringBufferInputStream>;
			public buffer: string;
			public count: number;
			public pos: number;
			public read(param0: native.Array<number>): number;
			public skip(param0: number): number;
			public reset(): void;
			public read(param0: native.Array<number>, param1: number, param2: number): number;
			public constructor();
			public close(): void;
			public constructor(param0: string);
			public available(): number;
			public read(): number;
		}
	}
}

declare module java {
	export module io {
		export class StringReader extends java.io.Reader {
			public static class: java.lang.Class<java.io.StringReader>;
			public ready(): boolean;
			public markSupported(): boolean;
			public read(param0: native.Array<string>, param1: number, param2: number): number;
			public constructor();
			public constructor(param0: any);
			public read(): number;
			public read(param0: native.Array<string>): number;
			public read(param0: java.nio.CharBuffer): number;
			public skip(param0: number): number;
			public reset(): void;
			public close(): void;
			public constructor(param0: string);
			public mark(param0: number): void;
		}
	}
}

declare module java {
	export module io {
		export class StringWriter extends java.io.Writer {
			public static class: java.lang.Class<java.io.StringWriter>;
			public flush(): void;
			public write(param0: string, param1: number, param2: number): void;
			public constructor(param0: number);
			public write(param0: native.Array<string>, param1: number, param2: number): void;
			public write(param0: native.Array<string>): void;
			public append(param0: string, param1: number, param2: number): java.lang.Appendable;
			public constructor();
			public constructor(param0: any);
			public write(param0: string): void;
			public getBuffer(): java.lang.StringBuffer;
			public toString(): string;
			public write(param0: number): void;
			public append(param0: string, param1: number, param2: number): java.io.StringWriter;
			public append(param0: string): java.io.Writer;
			public append(param0: string, param1: number, param2: number): java.io.Writer;
			public close(): void;
			public append(param0: string): java.lang.Appendable;
			public append(param0: string): java.io.StringWriter;
		}
	}
}

declare module java {
	export module io {
		export class SyncFailedException extends java.io.IOException {
			public static class: java.lang.Class<java.io.SyncFailedException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module io {
		export class UTFDataFormatException extends java.io.IOException {
			public static class: java.lang.Class<java.io.UTFDataFormatException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module io {
		export class UnsupportedEncodingException extends java.io.IOException {
			public static class: java.lang.Class<java.io.UnsupportedEncodingException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module io {
		export class WriteAbortedException extends java.io.ObjectStreamException {
			public static class: java.lang.Class<java.io.WriteAbortedException>;
			public detail: java.lang.Exception;
			public getMessage(): string;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public getCause(): java.lang.Throwable;
			public constructor();
			public constructor(param0: string, param1: java.lang.Exception);
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module io {
		export abstract class Writer extends java.lang.Object implements java.lang.Appendable, java.io.Closeable, java.io.Flushable {
			public static class: java.lang.Class<java.io.Writer>;
			public lock: any;
			public flush(): void;
			public write(param0: string, param1: number, param2: number): void;
			public write(param0: native.Array<string>, param1: number, param2: number): void;
			public write(param0: native.Array<string>): void;
			public append(param0: string, param1: number, param2: number): java.lang.Appendable;
			public constructor();
			public constructor(param0: any);
			public write(param0: string): void;
			public write(param0: number): void;
			public append(param0: string): java.io.Writer;
			public append(param0: string, param1: number, param2: number): java.io.Writer;
			public close(): void;
			public append(param0: string): java.lang.Appendable;
		}
	}
}

declare module java {
	export module lang {
		export class AbstractMethodError extends java.lang.IncompatibleClassChangeError {
			public static class: java.lang.Class<java.lang.AbstractMethodError>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export abstract class AbstractStringBuilder extends java.lang.Object {
			public static class: java.lang.Class<java.lang.AbstractStringBuilder>;
			public setLength(param0: number): void;
			public length(): number;
			public indexOf(param0: string, param1: number): number;
			public lastIndexOf(param0: string, param1: number): number;
			public indexOf(param0: string): number;
			public substring(param0: number, param1: number): string;
			public ensureCapacity(param0: number): void;
			public codePointAt(param0: number): number;
			public codePointCount(param0: number, param1: number): number;
			public setCharAt(param0: number, param1: string): void;
			public charAt(param0: number): string;
			public getChars(param0: number, param1: number, param2: native.Array<string>, param3: number): void;
			public toString(): string;
			public subSequence(param0: number, param1: number): string;
			public codePointBefore(param0: number): number;
			public offsetByCodePoints(param0: number, param1: number): number;
			public capacity(): number;
			public trimToSize(): void;
			public substring(param0: number): string;
			public lastIndexOf(param0: string): number;
		}
	}
}

declare module java {
	export module lang {
		export class Appendable extends java.lang.Object {
			public static class: java.lang.Class<java.lang.Appendable>;
			/**
			 * Constructs a new instance of the java.lang.Appendable interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				append(param0: string): java.lang.Appendable;
				append(param0: string): java.lang.Appendable;
				append(param0: string, param1: number, param2: number): java.lang.Appendable;
			});
			public constructor();
			public append(param0: string, param1: number, param2: number): java.lang.Appendable;
			public append(param0: string): java.lang.Appendable;
		}
	}
}

declare module java {
	export module lang {
		export class ArithmeticException extends java.lang.RuntimeException {
			public static class: java.lang.Class<java.lang.ArithmeticException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export class ArrayIndexOutOfBoundsException extends java.lang.IndexOutOfBoundsException {
			public static class: java.lang.Class<java.lang.ArrayIndexOutOfBoundsException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor(param0: number);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export class ArrayStoreException extends java.lang.RuntimeException {
			public static class: java.lang.Class<java.lang.ArrayStoreException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export class AssertionError extends java.lang.Error {
			public static class: java.lang.Class<java.lang.AssertionError>;
			public constructor(param0: boolean);
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor(param0: number);
			public constructor();
			public constructor(param0: any);
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export class Boolean extends java.lang.Object {
			public static class: java.lang.Class<java.lang.Boolean>;
			public static TYPE: java.lang.Class<java.lang.Boolean>;
			public static TRUE: java.lang.Boolean;
			public static FALSE: java.lang.Boolean;
			public booleanValue(): boolean;
			public static parseBoolean(param0: string): boolean;
			public equals(param0: any): boolean;
			public constructor(param0: boolean);
			public toString(): string;
			public static getBoolean(param0: string): boolean;
			public static toString(param0: boolean): string;
			public static valueOf(param0: string): java.lang.Boolean;
			public compareTo(param0: java.lang.Boolean): number;
			public constructor(param0: string);
			public hashCode(): number;
			public static valueOf(param0: boolean): java.lang.Boolean;
		}
	}
}

declare module java {
	export module lang {
		export class Byte extends java.lang.Number implements java.lang.Comparable<java.lang.Byte>  {
			public static class: java.lang.Class<java.lang.Byte>;
			public static MAX_VALUE: number;
			public static MIN_VALUE: number;
			public static SIZE: number;
			public static TYPE: java.lang.Class<java.lang.Byte>;
			public equals(param0: any): boolean;
			public static parseByte(param0: string, param1: number): number;
			public constructor(param0: number);
			public constructor();
			public shortValue(): number;
			public compareTo(param0: java.lang.Byte): number;
			public doubleValue(): number;
			public floatValue(): number;
			public static valueOf(param0: string, param1: number): java.lang.Byte;
			public static valueOf(param0: number): java.lang.Byte;
			public intValue(): number;
			public toString(): string;
			public byteValue(): number;
			public static valueOf(param0: string): java.lang.Byte;
			public static parseByte(param0: string): number;
			public constructor(param0: string);
			public static toString(param0: number): string;
			public static decode(param0: string): java.lang.Byte;
			public hashCode(): number;
			public longValue(): number;
		}
	}
}

declare module java {
	export module lang {
		export class CharSequence extends java.lang.Object {
			public static class: java.lang.Class<java.lang.CharSequence>;
			/**
			 * Constructs a new instance of the java.lang.CharSequence interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				length(): number;
				charAt(param0: number): string;
				subSequence(param0: number, param1: number): string;
				toString(): string;
			});
			public constructor();
			public charAt(param0: number): string;
			public subSequence(param0: number, param1: number): string;
			public toString(): string;
			public length(): number;
		}
	}
}

declare module java {
	export module lang {
		export class Character extends java.lang.Object {
			public static class: java.lang.Class<java.lang.Character>;
			public static MIN_VALUE: string;
			public static MAX_VALUE: string;
			public static MIN_RADIX: number;
			public static MAX_RADIX: number;
			public static TYPE: java.lang.Class<java.lang.Character>;
			public static UNASSIGNED: number;
			public static UPPERCASE_LETTER: number;
			public static LOWERCASE_LETTER: number;
			public static TITLECASE_LETTER: number;
			public static MODIFIER_LETTER: number;
			public static OTHER_LETTER: number;
			public static NON_SPACING_MARK: number;
			public static ENCLOSING_MARK: number;
			public static COMBINING_SPACING_MARK: number;
			public static DECIMAL_DIGIT_NUMBER: number;
			public static LETTER_NUMBER: number;
			public static OTHER_NUMBER: number;
			public static SPACE_SEPARATOR: number;
			public static LINE_SEPARATOR: number;
			public static PARAGRAPH_SEPARATOR: number;
			public static CONTROL: number;
			public static FORMAT: number;
			public static PRIVATE_USE: number;
			public static SURROGATE: number;
			public static DASH_PUNCTUATION: number;
			public static START_PUNCTUATION: number;
			public static END_PUNCTUATION: number;
			public static CONNECTOR_PUNCTUATION: number;
			public static OTHER_PUNCTUATION: number;
			public static MATH_SYMBOL: number;
			public static CURRENCY_SYMBOL: number;
			public static MODIFIER_SYMBOL: number;
			public static OTHER_SYMBOL: number;
			public static INITIAL_QUOTE_PUNCTUATION: number;
			public static FINAL_QUOTE_PUNCTUATION: number;
			public static DIRECTIONALITY_UNDEFINED: number;
			public static DIRECTIONALITY_LEFT_TO_RIGHT: number;
			public static DIRECTIONALITY_RIGHT_TO_LEFT: number;
			public static DIRECTIONALITY_RIGHT_TO_LEFT_ARABIC: number;
			public static DIRECTIONALITY_EUROPEAN_NUMBER: number;
			public static DIRECTIONALITY_EUROPEAN_NUMBER_SEPARATOR: number;
			public static DIRECTIONALITY_EUROPEAN_NUMBER_TERMINATOR: number;
			public static DIRECTIONALITY_ARABIC_NUMBER: number;
			public static DIRECTIONALITY_COMMON_NUMBER_SEPARATOR: number;
			public static DIRECTIONALITY_NONSPACING_MARK: number;
			public static DIRECTIONALITY_BOUNDARY_NEUTRAL: number;
			public static DIRECTIONALITY_PARAGRAPH_SEPARATOR: number;
			public static DIRECTIONALITY_SEGMENT_SEPARATOR: number;
			public static DIRECTIONALITY_WHITESPACE: number;
			public static DIRECTIONALITY_OTHER_NEUTRALS: number;
			public static DIRECTIONALITY_LEFT_TO_RIGHT_EMBEDDING: number;
			public static DIRECTIONALITY_LEFT_TO_RIGHT_OVERRIDE: number;
			public static DIRECTIONALITY_RIGHT_TO_LEFT_EMBEDDING: number;
			public static DIRECTIONALITY_RIGHT_TO_LEFT_OVERRIDE: number;
			public static DIRECTIONALITY_POP_DIRECTIONAL_FORMAT: number;
			public static MIN_HIGH_SURROGATE: string;
			public static MAX_HIGH_SURROGATE: string;
			public static MIN_LOW_SURROGATE: string;
			public static MAX_LOW_SURROGATE: string;
			public static MIN_SURROGATE: string;
			public static MAX_SURROGATE: string;
			public static MIN_SUPPLEMENTARY_CODE_POINT: number;
			public static MIN_CODE_POINT: number;
			public static MAX_CODE_POINT: number;
			public static SIZE: number;
			public static isUnicodeIdentifierPart(param0: number): boolean;
			public static isUnicodeIdentifierStart(param0: number): boolean;
			public static toTitleCase(param0: string): string;
			public static codePointBefore(param0: native.Array<string>, param1: number, param2: number): number;
			public static isLowSurrogate(param0: string): boolean;
			public static getDirectionality(param0: string): number;
			public static getType(param0: string): number;
			public static isDefined(param0: string): boolean;
			public charValue(): string;
			public static isMirrored(param0: number): boolean;
			public static isJavaIdentifierStart(param0: string): boolean;
			public static isValidCodePoint(param0: number): boolean;
			public static isISOControl(param0: number): boolean;
			public static isDigit(param0: number): boolean;
			public static charCount(param0: number): number;
			public static isIdentifierIgnorable(param0: number): boolean;
			public static isLetterOrDigit(param0: string): boolean;
			public static toLowerCase(param0: string): string;
			public static isDigit(param0: string): boolean;
			public static codePointBefore(param0: native.Array<string>, param1: number): number;
			public static isDefined(param0: number): boolean;
			public constructor(param0: string);
			public static isUpperCase(param0: string): boolean;
			public static isJavaIdentifierStart(param0: number): boolean;
			public static toCodePoint(param0: string, param1: string): number;
			/** @deprecated */
			public static isSpace(param0: string): boolean;
			public static codePointCount(param0: string, param1: number, param2: number): number;
			public static getType(param0: number): number;
			public static isLetterOrDigit(param0: number): boolean;
			public static getNumericValue(param0: number): number;
			public static getNumericValue(param0: string): number;
			public static getDirectionality(param0: number): number;
			public static isLetter(param0: number): boolean;
			public static forDigit(param0: number, param1: number): string;
			public static offsetByCodePoints(param0: string, param1: number, param2: number): number;
			public static isSpaceChar(param0: string): boolean;
			public static isWhitespace(param0: number): boolean;
			public static toChars(param0: number): native.Array<string>;
			public static digit(param0: number, param1: number): number;
			public static toTitleCase(param0: number): number;
			public static isJavaIdentifierPart(param0: number): boolean;
			public static toLowerCase(param0: number): number;
			public static isTitleCase(param0: number): boolean;
			public static isSupplementaryCodePoint(param0: number): boolean;
			public static offsetByCodePoints(param0: native.Array<string>, param1: number, param2: number, param3: number, param4: number): number;
			public equals(param0: any): boolean;
			public static toString(param0: string): string;
			public static isSurrogatePair(param0: string, param1: string): boolean;
			public static toUpperCase(param0: string): string;
			public static isIdentifierIgnorable(param0: string): boolean;
			public static toUpperCase(param0: number): number;
			/** @deprecated */
			public static isJavaLetterOrDigit(param0: string): boolean;
			/** @deprecated */
			public static isJavaLetter(param0: string): boolean;
			public static isLowerCase(param0: number): boolean;
			public static valueOf(param0: string): java.lang.Character;
			public static codePointAt(param0: string, param1: number): number;
			public static isUpperCase(param0: number): boolean;
			public static isMirrored(param0: string): boolean;
			public static isHighSurrogate(param0: string): boolean;
			public static codePointBefore(param0: string, param1: number): number;
			public static codePointAt(param0: native.Array<string>, param1: number, param2: number): number;
			public static toChars(param0: number, param1: native.Array<string>, param2: number): number;
			public static isUnicodeIdentifierStart(param0: string): boolean;
			public static isLowerCase(param0: string): boolean;
			public static isLetter(param0: string): boolean;
			public static isUnicodeIdentifierPart(param0: string): boolean;
			public static isSpaceChar(param0: number): boolean;
			public toString(): string;
			public static isTitleCase(param0: string): boolean;
			public static digit(param0: string, param1: number): number;
			public static isISOControl(param0: string): boolean;
			public static isJavaIdentifierPart(param0: string): boolean;
			public compareTo(param0: java.lang.Character): number;
			public static codePointAt(param0: native.Array<string>, param1: number): number;
			public static reverseBytes(param0: string): string;
			public static codePointCount(param0: native.Array<string>, param1: number, param2: number): number;
			public static isWhitespace(param0: string): boolean;
			public hashCode(): number;
		}
		export module Character {
			export class Subset extends java.lang.Object {
				public static class: java.lang.Class<java.lang.Character.Subset>;
				public hashCode(): number;
				public equals(param0: any): boolean;
				public toString(): string;
				public constructor(param0: string);
			}
			export class UnicodeBlock extends java.lang.Character.Subset {
				public static class: java.lang.Class<java.lang.Character.UnicodeBlock>;
				public static SURROGATES_AREA: java.lang.Character.UnicodeBlock;
				public static BASIC_LATIN: java.lang.Character.UnicodeBlock;
				public static LATIN_1_SUPPLEMENT: java.lang.Character.UnicodeBlock;
				public static LATIN_EXTENDED_A: java.lang.Character.UnicodeBlock;
				public static LATIN_EXTENDED_B: java.lang.Character.UnicodeBlock;
				public static IPA_EXTENSIONS: java.lang.Character.UnicodeBlock;
				public static SPACING_MODIFIER_LETTERS: java.lang.Character.UnicodeBlock;
				public static COMBINING_DIACRITICAL_MARKS: java.lang.Character.UnicodeBlock;
				public static GREEK: java.lang.Character.UnicodeBlock;
				public static CYRILLIC: java.lang.Character.UnicodeBlock;
				public static CYRILLIC_SUPPLEMENTARY: java.lang.Character.UnicodeBlock;
				public static ARMENIAN: java.lang.Character.UnicodeBlock;
				public static HEBREW: java.lang.Character.UnicodeBlock;
				public static ARABIC: java.lang.Character.UnicodeBlock;
				public static SYRIAC: java.lang.Character.UnicodeBlock;
				public static THAANA: java.lang.Character.UnicodeBlock;
				public static DEVANAGARI: java.lang.Character.UnicodeBlock;
				public static BENGALI: java.lang.Character.UnicodeBlock;
				public static GURMUKHI: java.lang.Character.UnicodeBlock;
				public static GUJARATI: java.lang.Character.UnicodeBlock;
				public static ORIYA: java.lang.Character.UnicodeBlock;
				public static TAMIL: java.lang.Character.UnicodeBlock;
				public static TELUGU: java.lang.Character.UnicodeBlock;
				public static KANNADA: java.lang.Character.UnicodeBlock;
				public static MALAYALAM: java.lang.Character.UnicodeBlock;
				public static SINHALA: java.lang.Character.UnicodeBlock;
				public static THAI: java.lang.Character.UnicodeBlock;
				public static LAO: java.lang.Character.UnicodeBlock;
				public static TIBETAN: java.lang.Character.UnicodeBlock;
				public static MYANMAR: java.lang.Character.UnicodeBlock;
				public static GEORGIAN: java.lang.Character.UnicodeBlock;
				public static HANGUL_JAMO: java.lang.Character.UnicodeBlock;
				public static ETHIOPIC: java.lang.Character.UnicodeBlock;
				public static CHEROKEE: java.lang.Character.UnicodeBlock;
				public static UNIFIED_CANADIAN_ABORIGINAL_SYLLABICS: java.lang.Character.UnicodeBlock;
				public static OGHAM: java.lang.Character.UnicodeBlock;
				public static RUNIC: java.lang.Character.UnicodeBlock;
				public static TAGALOG: java.lang.Character.UnicodeBlock;
				public static HANUNOO: java.lang.Character.UnicodeBlock;
				public static BUHID: java.lang.Character.UnicodeBlock;
				public static TAGBANWA: java.lang.Character.UnicodeBlock;
				public static KHMER: java.lang.Character.UnicodeBlock;
				public static MONGOLIAN: java.lang.Character.UnicodeBlock;
				public static LIMBU: java.lang.Character.UnicodeBlock;
				public static TAI_LE: java.lang.Character.UnicodeBlock;
				public static KHMER_SYMBOLS: java.lang.Character.UnicodeBlock;
				public static PHONETIC_EXTENSIONS: java.lang.Character.UnicodeBlock;
				public static LATIN_EXTENDED_ADDITIONAL: java.lang.Character.UnicodeBlock;
				public static GREEK_EXTENDED: java.lang.Character.UnicodeBlock;
				public static GENERAL_PUNCTUATION: java.lang.Character.UnicodeBlock;
				public static SUPERSCRIPTS_AND_SUBSCRIPTS: java.lang.Character.UnicodeBlock;
				public static CURRENCY_SYMBOLS: java.lang.Character.UnicodeBlock;
				public static COMBINING_MARKS_FOR_SYMBOLS: java.lang.Character.UnicodeBlock;
				public static LETTERLIKE_SYMBOLS: java.lang.Character.UnicodeBlock;
				public static NUMBER_FORMS: java.lang.Character.UnicodeBlock;
				public static ARROWS: java.lang.Character.UnicodeBlock;
				public static MATHEMATICAL_OPERATORS: java.lang.Character.UnicodeBlock;
				public static MISCELLANEOUS_TECHNICAL: java.lang.Character.UnicodeBlock;
				public static CONTROL_PICTURES: java.lang.Character.UnicodeBlock;
				public static OPTICAL_CHARACTER_RECOGNITION: java.lang.Character.UnicodeBlock;
				public static ENCLOSED_ALPHANUMERICS: java.lang.Character.UnicodeBlock;
				public static BOX_DRAWING: java.lang.Character.UnicodeBlock;
				public static BLOCK_ELEMENTS: java.lang.Character.UnicodeBlock;
				public static GEOMETRIC_SHAPES: java.lang.Character.UnicodeBlock;
				public static MISCELLANEOUS_SYMBOLS: java.lang.Character.UnicodeBlock;
				public static DINGBATS: java.lang.Character.UnicodeBlock;
				public static MISCELLANEOUS_MATHEMATICAL_SYMBOLS_A: java.lang.Character.UnicodeBlock;
				public static SUPPLEMENTAL_ARROWS_A: java.lang.Character.UnicodeBlock;
				public static BRAILLE_PATTERNS: java.lang.Character.UnicodeBlock;
				public static SUPPLEMENTAL_ARROWS_B: java.lang.Character.UnicodeBlock;
				public static MISCELLANEOUS_MATHEMATICAL_SYMBOLS_B: java.lang.Character.UnicodeBlock;
				public static SUPPLEMENTAL_MATHEMATICAL_OPERATORS: java.lang.Character.UnicodeBlock;
				public static MISCELLANEOUS_SYMBOLS_AND_ARROWS: java.lang.Character.UnicodeBlock;
				public static CJK_RADICALS_SUPPLEMENT: java.lang.Character.UnicodeBlock;
				public static KANGXI_RADICALS: java.lang.Character.UnicodeBlock;
				public static IDEOGRAPHIC_DESCRIPTION_CHARACTERS: java.lang.Character.UnicodeBlock;
				public static CJK_SYMBOLS_AND_PUNCTUATION: java.lang.Character.UnicodeBlock;
				public static HIRAGANA: java.lang.Character.UnicodeBlock;
				public static KATAKANA: java.lang.Character.UnicodeBlock;
				public static BOPOMOFO: java.lang.Character.UnicodeBlock;
				public static HANGUL_COMPATIBILITY_JAMO: java.lang.Character.UnicodeBlock;
				public static KANBUN: java.lang.Character.UnicodeBlock;
				public static BOPOMOFO_EXTENDED: java.lang.Character.UnicodeBlock;
				public static KATAKANA_PHONETIC_EXTENSIONS: java.lang.Character.UnicodeBlock;
				public static ENCLOSED_CJK_LETTERS_AND_MONTHS: java.lang.Character.UnicodeBlock;
				public static CJK_COMPATIBILITY: java.lang.Character.UnicodeBlock;
				public static CJK_UNIFIED_IDEOGRAPHS_EXTENSION_A: java.lang.Character.UnicodeBlock;
				public static YIJING_HEXAGRAM_SYMBOLS: java.lang.Character.UnicodeBlock;
				public static CJK_UNIFIED_IDEOGRAPHS: java.lang.Character.UnicodeBlock;
				public static YI_SYLLABLES: java.lang.Character.UnicodeBlock;
				public static YI_RADICALS: java.lang.Character.UnicodeBlock;
				public static HANGUL_SYLLABLES: java.lang.Character.UnicodeBlock;
				public static HIGH_SURROGATES: java.lang.Character.UnicodeBlock;
				public static HIGH_PRIVATE_USE_SURROGATES: java.lang.Character.UnicodeBlock;
				public static LOW_SURROGATES: java.lang.Character.UnicodeBlock;
				public static PRIVATE_USE_AREA: java.lang.Character.UnicodeBlock;
				public static CJK_COMPATIBILITY_IDEOGRAPHS: java.lang.Character.UnicodeBlock;
				public static ALPHABETIC_PRESENTATION_FORMS: java.lang.Character.UnicodeBlock;
				public static ARABIC_PRESENTATION_FORMS_A: java.lang.Character.UnicodeBlock;
				public static VARIATION_SELECTORS: java.lang.Character.UnicodeBlock;
				public static COMBINING_HALF_MARKS: java.lang.Character.UnicodeBlock;
				public static CJK_COMPATIBILITY_FORMS: java.lang.Character.UnicodeBlock;
				public static SMALL_FORM_VARIANTS: java.lang.Character.UnicodeBlock;
				public static ARABIC_PRESENTATION_FORMS_B: java.lang.Character.UnicodeBlock;
				public static HALFWIDTH_AND_FULLWIDTH_FORMS: java.lang.Character.UnicodeBlock;
				public static SPECIALS: java.lang.Character.UnicodeBlock;
				public static LINEAR_B_SYLLABARY: java.lang.Character.UnicodeBlock;
				public static LINEAR_B_IDEOGRAMS: java.lang.Character.UnicodeBlock;
				public static AEGEAN_NUMBERS: java.lang.Character.UnicodeBlock;
				public static OLD_ITALIC: java.lang.Character.UnicodeBlock;
				public static GOTHIC: java.lang.Character.UnicodeBlock;
				public static UGARITIC: java.lang.Character.UnicodeBlock;
				public static DESERET: java.lang.Character.UnicodeBlock;
				public static SHAVIAN: java.lang.Character.UnicodeBlock;
				public static OSMANYA: java.lang.Character.UnicodeBlock;
				public static CYPRIOT_SYLLABARY: java.lang.Character.UnicodeBlock;
				public static BYZANTINE_MUSICAL_SYMBOLS: java.lang.Character.UnicodeBlock;
				public static MUSICAL_SYMBOLS: java.lang.Character.UnicodeBlock;
				public static TAI_XUAN_JING_SYMBOLS: java.lang.Character.UnicodeBlock;
				public static MATHEMATICAL_ALPHANUMERIC_SYMBOLS: java.lang.Character.UnicodeBlock;
				public static CJK_UNIFIED_IDEOGRAPHS_EXTENSION_B: java.lang.Character.UnicodeBlock;
				public static CJK_COMPATIBILITY_IDEOGRAPHS_SUPPLEMENT: java.lang.Character.UnicodeBlock;
				public static TAGS: java.lang.Character.UnicodeBlock;
				public static VARIATION_SELECTORS_SUPPLEMENT: java.lang.Character.UnicodeBlock;
				public static SUPPLEMENTARY_PRIVATE_USE_AREA_A: java.lang.Character.UnicodeBlock;
				public static SUPPLEMENTARY_PRIVATE_USE_AREA_B: java.lang.Character.UnicodeBlock;
				public static forName(param0: string): java.lang.Character.UnicodeBlock;
				public static of(param0: string): java.lang.Character.UnicodeBlock;
				public static of(param0: number): java.lang.Character.UnicodeBlock;
			}
		}
	}
}

declare module java {
	export module lang {
		export class Class<T>  extends java.lang.Object {
			public static class: java.lang.Class<java.lang.Class<any>>;
			public getMethod(param0: string, param1: native.Array<java.lang.Class<any>>): java.lang.reflect.Method;
			public getEnclosingClass(): java.lang.Class<any>;
			public getClassLoader(): java.lang.ClassLoader;
			public isInterface(): boolean;
			public isArray(): boolean;
			public desiredAssertionStatus(): boolean;
			public getSuperclass(): java.lang.Class<any>;
			public getConstructors(): native.Array<java.lang.reflect.Constructor<any>>;
			public getProtectionDomain(): java.security.ProtectionDomain;
			public getCanonicalName(): string;
			public isPrimitive(): boolean;
			public getDeclaredFields(): native.Array<java.lang.reflect.Field>;
			public isInstance(param0: any): boolean;
			public static forName(param0: string): java.lang.Class<any>;
			public newInstance(): T;
			public getInterfaces(): native.Array<java.lang.Class<any>>;
			public getModifiers(): number;
			public getDeclaredField(param0: string): java.lang.reflect.Field;
			public getMethods(): native.Array<java.lang.reflect.Method>;
			public getGenericSuperclass(): java.lang.reflect.Type;
			public isEnum(): boolean;
			public isAssignableFrom(param0: java.lang.Class<any>): boolean;
			public isAnnotation(): boolean;
			public getDeclaredMethods(): native.Array<java.lang.reflect.Method>;
			public getResourceAsStream(param0: string): java.io.InputStream;
			public getTypeParameters(): native.Array<java.lang.reflect.TypeVariable<java.lang.Class<T>>>;
			public getGenericInterfaces(): native.Array<java.lang.reflect.Type>;
			public getTypeParameters(): native.Array<java.lang.reflect.TypeVariable<any>>;
			public getDeclaredConstructor(param0: native.Array<java.lang.Class<any>>): java.lang.reflect.Constructor<T>;
			public getConstructor(param0: native.Array<java.lang.Class<any>>): java.lang.reflect.Constructor<T>;
			public getSimpleName(): string;
			public getDeclaredAnnotations(): native.Array<java.lang.annotation.Annotation>;
			public getDeclaredClasses(): native.Array<java.lang.Class<any>>;
			public cast(param0: any): T;
			public getFields(): native.Array<java.lang.reflect.Field>;
			public isAnonymousClass(): boolean;
			public getAnnotation(param0: java.lang.Class<any>): java.lang.annotation.Annotation;
			public static forName(param0: string, param1: boolean, param2: java.lang.ClassLoader): java.lang.Class<any>;
			public getDeclaredConstructors(): native.Array<java.lang.reflect.Constructor<any>>;
			public getField(param0: string): java.lang.reflect.Field;
			public getSigners(): native.Array<any>;
			public getComponentType(): java.lang.Class<any>;
			public isAnnotationPresent(param0: java.lang.Class<any>): boolean;
			public getDeclaringClass(): java.lang.Class<any>;
			public getPackage(): java.lang.Package;
			public isSynthetic(): boolean;
			public toString(): string;
			public getEnclosingMethod(): java.lang.reflect.Method;
			public getName(): string;
			public getAnnotations(): native.Array<java.lang.annotation.Annotation>;
			public getEnclosingConstructor(): java.lang.reflect.Constructor<any>;
			public isLocalClass(): boolean;
			public asSubclass(param0: java.lang.Class<any>): java.lang.Class<any>;
			public getEnumConstants(): native.Array<T>;
			public isMemberClass(): boolean;
			public getClasses(): native.Array<java.lang.Class<any>>;
			public getResource(param0: string): java.net.URL;
			public getDeclaredMethod(param0: string, param1: native.Array<java.lang.Class<any>>): java.lang.reflect.Method;
		}
	}
}

declare module java {
	export module lang {
		export class ClassCastException extends java.lang.RuntimeException {
			public static class: java.lang.Class<java.lang.ClassCastException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export class ClassCircularityError extends java.lang.LinkageError {
			public static class: java.lang.Class<java.lang.ClassCircularityError>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export class ClassFormatError extends java.lang.LinkageError {
			public static class: java.lang.Class<java.lang.ClassFormatError>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export abstract class ClassLoader extends java.lang.Object {
			public static class: java.lang.Class<java.lang.ClassLoader>;
			public setSigners(param0: java.lang.Class<any>, param1: native.Array<any>): void;
			public findLibrary(param0: string): string;
			public findResource(param0: string): java.net.URL;
			public constructor(param0: java.lang.ClassLoader);
			public getParent(): java.lang.ClassLoader;
			public getPackage(param0: string): java.lang.Package;
			public loadClass(param0: string, param1: boolean): java.lang.Class<any>;
			/** @deprecated */
			public defineClass(param0: native.Array<number>, param1: number, param2: number): java.lang.Class<any>;
			public setPackageAssertionStatus(param0: string, param1: boolean): void;
			public getPackages(): native.Array<java.lang.Package>;
			public findLoadedClass(param0: string): java.lang.Class<any>;
			public setClassAssertionStatus(param0: string, param1: boolean): void;
			public static getSystemResource(param0: string): java.net.URL;
			public defineClass(param0: string, param1: java.nio.ByteBuffer, param2: java.security.ProtectionDomain): java.lang.Class<any>;
			public getResources(param0: string): java.util.Enumeration<java.net.URL>;
			public findSystemClass(param0: string): java.lang.Class<any>;
			public static getSystemResources(param0: string): java.util.Enumeration<java.net.URL>;
			public constructor();
			public static getSystemResourceAsStream(param0: string): java.io.InputStream;
			public defineClass(param0: string, param1: native.Array<number>, param2: number, param3: number): java.lang.Class<any>;
			public loadClass(param0: string): java.lang.Class<any>;
			public definePackage(param0: string, param1: string, param2: string, param3: string, param4: string, param5: string, param6: string, param7: java.net.URL): java.lang.Package;
			public static getSystemClassLoader(): java.lang.ClassLoader;
			public resolveClass(param0: java.lang.Class<any>): void;
			public getResourceAsStream(param0: string): java.io.InputStream;
			public findClass(param0: string): java.lang.Class<any>;
			public getResource(param0: string): java.net.URL;
			public defineClass(param0: string, param1: native.Array<number>, param2: number, param3: number, param4: java.security.ProtectionDomain): java.lang.Class<any>;
			public setDefaultAssertionStatus(param0: boolean): void;
			public clearAssertionStatus(): void;
			public findResources(param0: string): java.util.Enumeration<java.net.URL>;
		}
	}
}

declare module java {
	export module lang {
		export class ClassNotFoundException extends java.lang.Exception {
			public static class: java.lang.Class<java.lang.ClassNotFoundException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public getException(): java.lang.Throwable;
			public getCause(): java.lang.Throwable;
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export class CloneNotSupportedException extends java.lang.Exception {
			public static class: java.lang.Class<java.lang.CloneNotSupportedException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export class Cloneable extends java.lang.Object {
			public static class: java.lang.Class<java.lang.Cloneable>;
			/**
			 * Constructs a new instance of the java.lang.Cloneable interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
			});
			public constructor();
		}
	}
}

declare module java {
	export module lang {
		export class Comparable<T>  extends java.lang.Object {
			public static class: java.lang.Class<java.lang.Comparable<any>>;
			/**
			 * Constructs a new instance of the java.lang.Comparable<any> interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				compareTo(param0: T): number;
			});
			public constructor();
			public compareTo(param0: T): number;
		}
	}
}

declare module java {
	export module lang {
		export class Compiler extends java.lang.Object {
			public static class: java.lang.Class<java.lang.Compiler>;
			public static compileClass(param0: java.lang.Class<any>): boolean;
			public static command(param0: any): any;
			public static enable(): void;
			public static disable(): void;
			public static compileClasses(param0: string): boolean;
		}
	}
}

declare module java {
	export module lang {
		export class Deprecated extends java.lang.Object implements java.lang.annotation.Annotation {
			public static class: java.lang.Class<java.lang.Deprecated>;
			/**
			 * Constructs a new instance of the java.lang.Deprecated interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				annotationType(): java.lang.Class<any>;
				equals(param0: any): boolean;
				hashCode(): number;
				toString(): string;
			});
			public constructor();
			public equals(param0: any): boolean;
			public toString(): string;
			public annotationType(): java.lang.Class<any>;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module lang {
		export class Double extends java.lang.Number implements java.lang.Comparable<java.lang.Double>  {
			public static class: java.lang.Class<java.lang.Double>;
			public static MAX_VALUE: number;
			public static MIN_VALUE: number;
			public static NaN: number;
			public static POSITIVE_INFINITY: number;
			public static NEGATIVE_INFINITY: number;
			public static MIN_NORMAL: number;
			public static MAX_EXPONENT: number;
			public static MIN_EXPONENT: number;
			public static TYPE: java.lang.Class<java.lang.Double>;
			public static SIZE: number;
			public static doubleToRawLongBits(param0: number): number;
			public static valueOf(param0: string): java.lang.Double;
			public equals(param0: any): boolean;
			public static longBitsToDouble(param0: number): number;
			public shortValue(): number;
			public static valueOf(param0: number): java.lang.Double;
			public doubleValue(): number;
			public static parseDouble(param0: string): number;
			public isInfinite(): boolean;
			public compareTo(param0: java.lang.Double): number;
			public constructor(param0: string);
			public static doubleToLongBits(param0: number): number;
			public constructor(param0: number);
			public constructor();
			public floatValue(): number;
			public isNaN(): boolean;
			public intValue(): number;
			public toString(): string;
			public static toHexString(param0: number): string;
			public static compare(param0: number, param1: number): number;
			public byteValue(): number;
			public static isNaN(param0: number): boolean;
			public static isInfinite(param0: number): boolean;
			public static toString(param0: number): string;
			public hashCode(): number;
			public longValue(): number;
		}
	}
}

declare module java {
	export module lang {
		export abstract class Enum<E>  extends java.lang.Object {
			public static class: java.lang.Class<java.lang.Enum<any>>;
			public equals(param0: any): boolean;
			public toString(): string;
			public clone(): any;
			public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			public name(): string;
			public constructor(param0: string, param1: number);
			public ordinal(): number;
			public compareTo(param0: E): number;
			public getDeclaringClass(): java.lang.Class<E>;
			public finalize(): void;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module lang {
		export class EnumConstantNotPresentException extends java.lang.RuntimeException {
			public static class: java.lang.Class<java.lang.EnumConstantNotPresentException>;
			public constructor(param0: java.lang.Class<any>, param1: string);
			public constructor(param0: java.lang.Throwable);
			public enumType(): java.lang.Class<any>;
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
			public constantName(): string;
		}
	}
}

declare module java {
	export module lang {
		export class Error extends java.lang.Throwable {
			public static class: java.lang.Class<java.lang.Error>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export class Exception extends java.lang.Throwable {
			public static class: java.lang.Class<java.lang.Exception>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export class ExceptionInInitializerError extends java.lang.LinkageError {
			public static class: java.lang.Class<java.lang.ExceptionInInitializerError>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public getException(): java.lang.Throwable;
			public getCause(): java.lang.Throwable;
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export class Float extends java.lang.Number implements java.lang.Comparable<java.lang.Float>  {
			public static class: java.lang.Class<java.lang.Float>;
			public static MAX_VALUE: number;
			public static MIN_VALUE: number;
			public static NaN: number;
			public static POSITIVE_INFINITY: number;
			public static NEGATIVE_INFINITY: number;
			public static MIN_NORMAL: number;
			public static MAX_EXPONENT: number;
			public static MIN_EXPONENT: number;
			public static TYPE: java.lang.Class<java.lang.Float>;
			public static SIZE: number;
			public equals(param0: any): boolean;
			public static parseFloat(param0: string): number;
			public static floatToRawIntBits(param0: number): number;
			public shortValue(): number;
			public compareTo(param0: java.lang.Float): number;
			public doubleValue(): number;
			public isInfinite(): boolean;
			public constructor(param0: string);
			public constructor(param0: number);
			public static intBitsToFloat(param0: number): number;
			public static valueOf(param0: string): java.lang.Float;
			public constructor();
			public floatValue(): number;
			public isNaN(): boolean;
			public intValue(): number;
			public toString(): string;
			public static toHexString(param0: number): string;
			public static floatToIntBits(param0: number): number;
			public static compare(param0: number, param1: number): number;
			public byteValue(): number;
			public static isNaN(param0: number): boolean;
			public static valueOf(param0: number): java.lang.Float;
			public static isInfinite(param0: number): boolean;
			public static toString(param0: number): string;
			public hashCode(): number;
			public longValue(): number;
		}
	}
}

declare module java {
	export module lang {
		export class IllegalAccessError extends java.lang.IncompatibleClassChangeError {
			public static class: java.lang.Class<java.lang.IllegalAccessError>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export class IllegalAccessException extends java.lang.Exception {
			public static class: java.lang.Class<java.lang.IllegalAccessException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export class IllegalArgumentException extends java.lang.RuntimeException {
			public static class: java.lang.Class<java.lang.IllegalArgumentException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export class IllegalMonitorStateException extends java.lang.RuntimeException {
			public static class: java.lang.Class<java.lang.IllegalMonitorStateException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export class IllegalStateException extends java.lang.RuntimeException {
			public static class: java.lang.Class<java.lang.IllegalStateException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export class IllegalThreadStateException extends java.lang.IllegalArgumentException {
			public static class: java.lang.Class<java.lang.IllegalThreadStateException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export class IncompatibleClassChangeError extends java.lang.LinkageError {
			public static class: java.lang.Class<java.lang.IncompatibleClassChangeError>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export class IndexOutOfBoundsException extends java.lang.RuntimeException {
			public static class: java.lang.Class<java.lang.IndexOutOfBoundsException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export class InheritableThreadLocal<T>  extends java.lang.ThreadLocal<any> {
			public static class: java.lang.Class<java.lang.InheritableThreadLocal<any>>;
			public constructor();
			public childValue(param0: any): any;
		}
	}
}

declare module java {
	export module lang {
		export class InstantiationError extends java.lang.IncompatibleClassChangeError {
			public static class: java.lang.Class<java.lang.InstantiationError>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export class InstantiationException extends java.lang.Exception {
			public static class: java.lang.Class<java.lang.InstantiationException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export class Integer extends java.lang.Number implements java.lang.Comparable<java.lang.Integer>  {
			public static class: java.lang.Class<java.lang.Integer>;
			public static MAX_VALUE: number;
			public static MIN_VALUE: number;
			public static SIZE: number;
			public static TYPE: java.lang.Class<java.lang.Integer>;
			public equals(param0: any): boolean;
			public static bitCount(param0: number): number;
			public static toOctalString(param0: number): string;
			public static lowestOneBit(param0: number): number;
			public static highestOneBit(param0: number): number;
			public static valueOf(param0: number): java.lang.Integer;
			public shortValue(): number;
			public doubleValue(): number;
			public static parseInt(param0: string): number;
			public static signum(param0: number): number;
			public static reverseBytes(param0: number): number;
			public static getInteger(param0: string): java.lang.Integer;
			public static rotateLeft(param0: number, param1: number): number;
			public static parseInt(param0: string, param1: number): number;
			public constructor(param0: string);
			public static getInteger(param0: string, param1: java.lang.Integer): java.lang.Integer;
			public static numberOfLeadingZeros(param0: number): number;
			public static rotateRight(param0: number, param1: number): number;
			public static toString(param0: number, param1: number): string;
			public constructor(param0: number);
			public static reverse(param0: number): number;
			public constructor();
			public static getInteger(param0: string, param1: number): java.lang.Integer;
			public static valueOf(param0: string, param1: number): java.lang.Integer;
			public floatValue(): number;
			public compareTo(param0: java.lang.Integer): number;
			public intValue(): number;
			public static toHexString(param0: number): string;
			public toString(): string;
			public static numberOfTrailingZeros(param0: number): number;
			public static toBinaryString(param0: number): string;
			public byteValue(): number;
			public static decode(param0: string): java.lang.Integer;
			public static valueOf(param0: string): java.lang.Integer;
			public static toString(param0: number): string;
			public hashCode(): number;
			public longValue(): number;
		}
	}
}

declare module java {
	export module lang {
		export class InternalError extends java.lang.VirtualMachineError {
			public static class: java.lang.Class<java.lang.InternalError>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export class InterruptedException extends java.lang.Exception {
			public static class: java.lang.Class<java.lang.InterruptedException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export class Iterable<T>  extends java.lang.Object {
			public static class: java.lang.Class<java.lang.Iterable<any>>;
			/**
			 * Constructs a new instance of the java.lang.Iterable<any> interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				iterator(): java.util.Iterator<T>;
			});
			public constructor();
			public iterator(): java.util.Iterator<T>;
		}
	}
}

declare module java {
	export module lang {
		export class LinkageError extends java.lang.Error {
			public static class: java.lang.Class<java.lang.LinkageError>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export class Long extends java.lang.Number implements java.lang.Comparable<java.lang.Long>  {
			public static class: java.lang.Class<java.lang.Long>;
			public static MAX_VALUE: number;
			public static MIN_VALUE: number;
			public static TYPE: java.lang.Class<java.lang.Long>;
			public static SIZE: number;
			public equals(param0: any): boolean;
			public static parseLong(param0: string, param1: number): number;
			public static bitCount(param0: number): number;
			public static toOctalString(param0: number): string;
			public static decode(param0: string): java.lang.Long;
			public static valueOf(param0: string): java.lang.Long;
			public static lowestOneBit(param0: number): number;
			public static highestOneBit(param0: number): number;
			public static getLong(param0: string, param1: number): java.lang.Long;
			public static parseLong(param0: string): number;
			public static valueOf(param0: number): java.lang.Long;
			public shortValue(): number;
			public compareTo(param0: java.lang.Long): number;
			public doubleValue(): number;
			public static signum(param0: number): number;
			public static reverseBytes(param0: number): number;
			public static getLong(param0: string, param1: java.lang.Long): java.lang.Long;
			public static rotateLeft(param0: number, param1: number): number;
			public constructor(param0: string);
			public static numberOfLeadingZeros(param0: number): number;
			public static rotateRight(param0: number, param1: number): number;
			public static toString(param0: number, param1: number): string;
			public constructor(param0: number);
			public static reverse(param0: number): number;
			public constructor();
			public static valueOf(param0: string, param1: number): java.lang.Long;
			public floatValue(): number;
			public intValue(): number;
			public static toHexString(param0: number): string;
			public toString(): string;
			public static numberOfTrailingZeros(param0: number): number;
			public static toBinaryString(param0: number): string;
			public byteValue(): number;
			public static getLong(param0: string): java.lang.Long;
			public static toString(param0: number): string;
			public hashCode(): number;
			public longValue(): number;
		}
	}
}

declare module java {
	export module lang {
		export class Math extends java.lang.Object {
			public static class: java.lang.Class<java.lang.Math>;
			public static E: number;
			public static PI: number;
			public static getExponent(param0: number): number;
			public static ulp(param0: number): number;
			public static acos(param0: number): number;
			public static sin(param0: number): number;
			public static expm1(param0: number): number;
			public static log1p(param0: number): number;
			public static copySign(param0: number, param1: number): number;
			public static ceil(param0: number): number;
			public static atan2(param0: number, param1: number): number;
			public static signum(param0: number): number;
			public static cosh(param0: number): number;
			public static sqrt(param0: number): number;
			public static nextAfter(param0: number, param1: number): number;
			public static min(param0: number, param1: number): number;
			public static toDegrees(param0: number): number;
			public static random(): number;
			public static asin(param0: number): number;
			public static log10(param0: number): number;
			public static exp(param0: number): number;
			public static log(param0: number): number;
			public static floor(param0: number): number;
			public static round(param0: number): number;
			public static toRadians(param0: number): number;
			public static hypot(param0: number, param1: number): number;
			public static sinh(param0: number): number;
			public static tanh(param0: number): number;
			public static tan(param0: number): number;
			public static cos(param0: number): number;
			public static rint(param0: number): number;
			public static cbrt(param0: number): number;
			public static IEEEremainder(param0: number, param1: number): number;
			public static max(param0: number, param1: number): number;
			public static pow(param0: number, param1: number): number;
			public static scalb(param0: number, param1: number): number;
			public static abs(param0: number): number;
			public static atan(param0: number): number;
			public static nextUp(param0: number): number;
		}
	}
}

declare module java {
	export module lang {
		export class NegativeArraySizeException extends java.lang.RuntimeException {
			public static class: java.lang.Class<java.lang.NegativeArraySizeException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export class NoClassDefFoundError extends java.lang.LinkageError {
			public static class: java.lang.Class<java.lang.NoClassDefFoundError>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export class NoSuchFieldError extends java.lang.IncompatibleClassChangeError {
			public static class: java.lang.Class<java.lang.NoSuchFieldError>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export class NoSuchFieldException extends java.lang.Exception {
			public static class: java.lang.Class<java.lang.NoSuchFieldException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export class NoSuchMethodError extends java.lang.IncompatibleClassChangeError {
			public static class: java.lang.Class<java.lang.NoSuchMethodError>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export class NoSuchMethodException extends java.lang.Exception {
			public static class: java.lang.Class<java.lang.NoSuchMethodException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export class NullPointerException extends java.lang.RuntimeException {
			public static class: java.lang.Class<java.lang.NullPointerException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export abstract class Number extends java.lang.Object implements java.io.Serializable {
			public static class: java.lang.Class<java.lang.Number>;
			public doubleValue(): number;
			public floatValue(): number;
			public intValue(): number;
			public byteValue(): number;
			public constructor();
			public shortValue(): number;
			public longValue(): number;
		}
	}
}

declare module java {
	export module lang {
		export class NumberFormatException extends java.lang.IllegalArgumentException {
			public static class: java.lang.Class<java.lang.NumberFormatException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export class Object {
			public static class: java.lang.Class<java.lang.Object>;
			public wait(): void;
			public equals(param0: any): boolean;
			public wait(param0: number): void;
			public clone(): any;
			public toString(): string;
			public notify(): void;
			public getClass(): java.lang.Class<any>;
			public constructor();
			public wait(param0: number, param1: number): void;
			public finalize(): void;
			public hashCode(): number;
			public notifyAll(): void;
		}
	}
}

declare module java {
	export module lang {
		export class OutOfMemoryError extends java.lang.VirtualMachineError {
			public static class: java.lang.Class<java.lang.OutOfMemoryError>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export class Override extends java.lang.Object implements java.lang.annotation.Annotation {
			public static class: java.lang.Class<java.lang.Override>;
			/**
			 * Constructs a new instance of the java.lang.Override interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				annotationType(): java.lang.Class<any>;
				equals(param0: any): boolean;
				hashCode(): number;
				toString(): string;
			});
			public constructor();
			public equals(param0: any): boolean;
			public toString(): string;
			public annotationType(): java.lang.Class<any>;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module lang {
		export class Package extends java.lang.Object implements java.lang.reflect.AnnotatedElement {
			public static class: java.lang.Class<java.lang.Package>;
			public getImplementationVendor(): string;
			public static getPackage(param0: string): java.lang.Package;
			public getImplementationVersion(): string;
			public getDeclaredAnnotations(): native.Array<java.lang.annotation.Annotation>;
			public getSpecificationVersion(): string;
			public getSpecificationVendor(): string;
			public isSealed(): boolean;
			public toString(): string;
			public getAnnotation(param0: java.lang.Class<any>): java.lang.annotation.Annotation;
			public getName(): string;
			public isCompatibleWith(param0: string): boolean;
			public getAnnotations(): native.Array<java.lang.annotation.Annotation>;
			public isSealed(param0: java.net.URL): boolean;
			public static getPackages(): native.Array<java.lang.Package>;
			public isAnnotationPresent(param0: java.lang.Class<any>): boolean;
			public getImplementationTitle(): string;
			public getSpecificationTitle(): string;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module lang {
		export abstract class Process extends java.lang.Object {
			public static class: java.lang.Class<java.lang.Process>;
			public getInputStream(): java.io.InputStream;
			public exitValue(): number;
			public destroy(): void;
			public getOutputStream(): java.io.OutputStream;
			public constructor();
			public getErrorStream(): java.io.InputStream;
			public waitFor(): number;
		}
	}
}

declare module java {
	export module lang {
		export class ProcessBuilder extends java.lang.Object {
			public static class: java.lang.Class<java.lang.ProcessBuilder>;
			public command(param0: java.util.List<string>): java.lang.ProcessBuilder;
			public constructor(param0: native.Array<string>);
			public command(param0: native.Array<string>): java.lang.ProcessBuilder;
			public directory(): java.io.File;
			public environment(): java.util.Map<string,string>;
			public redirectErrorStream(): boolean;
			public command(): java.util.List<string>;
			public start(): java.lang.Process;
			public constructor(param0: java.util.List<string>);
			public directory(param0: java.io.File): java.lang.ProcessBuilder;
			public redirectErrorStream(param0: boolean): java.lang.ProcessBuilder;
		}
	}
}

declare module java {
	export module lang {
		export class Readable extends java.lang.Object {
			public static class: java.lang.Class<java.lang.Readable>;
			/**
			 * Constructs a new instance of the java.lang.Readable interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				read(param0: java.nio.CharBuffer): number;
			});
			public constructor();
			public read(param0: java.nio.CharBuffer): number;
		}
	}
}

declare module java {
	export module lang {
		export class Runnable extends java.lang.Object {
			public static class: java.lang.Class<java.lang.Runnable>;
			/**
			 * Constructs a new instance of the java.lang.Runnable interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				run(): void;
			});
			public constructor();
			public run(): void;
		}
	}
}

declare module java {
	export module lang {
		export class Runtime extends java.lang.Object {
			public static class: java.lang.Class<java.lang.Runtime>;
			public exit(param0: number): void;
			/** @deprecated */
			public static runFinalizersOnExit(param0: boolean): void;
			public totalMemory(): number;
			public exec(param0: native.Array<string>): java.lang.Process;
			public loadLibrary(param0: string): void;
			public addShutdownHook(param0: java.lang.Thread): void;
			public traceMethodCalls(param0: boolean): void;
			public availableProcessors(): number;
			public exec(param0: string, param1: native.Array<string>, param2: java.io.File): java.lang.Process;
			public load(param0: string): void;
			public maxMemory(): number;
			public exec(param0: string, param1: native.Array<string>): java.lang.Process;
			public gc(): void;
			public exec(param0: native.Array<string>, param1: native.Array<string>, param2: java.io.File): java.lang.Process;
			public removeShutdownHook(param0: java.lang.Thread): boolean;
			/** @deprecated */
			public getLocalizedInputStream(param0: java.io.InputStream): java.io.InputStream;
			public exec(param0: string): java.lang.Process;
			public freeMemory(): number;
			public exec(param0: native.Array<string>, param1: native.Array<string>): java.lang.Process;
			public static getRuntime(): java.lang.Runtime;
			public traceInstructions(param0: boolean): void;
			public runFinalization(): void;
			public halt(param0: number): void;
			/** @deprecated */
			public getLocalizedOutputStream(param0: java.io.OutputStream): java.io.OutputStream;
		}
	}
}

declare module java {
	export module lang {
		export class RuntimeException extends java.lang.Exception {
			public static class: java.lang.Class<java.lang.RuntimeException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export class RuntimePermission extends java.security.BasicPermission {
			public static class: java.lang.Class<java.lang.RuntimePermission>;
			public constructor(param0: string, param1: string);
			public implies(param0: java.security.Permission): boolean;
			public getActions(): string;
			public checkGuard(param0: any): void;
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export class SecurityException extends java.lang.RuntimeException {
			public static class: java.lang.Class<java.lang.SecurityException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export class SecurityManager extends java.lang.Object {
			public static class: java.lang.Class<java.lang.SecurityManager>;
			public inCheck: boolean;
			public checkAccess(param0: java.lang.Thread): void;
			public checkLink(param0: string): void;
			public checkPropertyAccess(param0: string): void;
			public checkConnect(param0: string, param1: number, param2: any): void;
			public checkExec(param0: string): void;
			/** @deprecated */
			public inClassLoader(): boolean;
			public checkWrite(param0: java.io.FileDescriptor): void;
			/** @deprecated */
			public checkMulticast(param0: java.net.InetAddress, param1: number): void;
			/** @deprecated */
			public currentLoadedClass(): java.lang.Class<any>;
			/** @deprecated */
			public inClass(param0: string): boolean;
			/** @deprecated */
			public classDepth(param0: string): number;
			/** @deprecated */
			public getInCheck(): boolean;
			public checkMemberAccess(param0: java.lang.Class<any>, param1: number): void;
			public checkPermission(param0: java.security.Permission, param1: any): void;
			public checkPackageDefinition(param0: string): void;
			public checkMulticast(param0: java.net.InetAddress): void;
			public checkRead(param0: java.io.FileDescriptor): void;
			public checkExit(param0: number): void;
			public checkRead(param0: string): void;
			public checkPropertiesAccess(): void;
			public checkSystemClipboardAccess(): void;
			/** @deprecated */
			public currentClassLoader(): java.lang.ClassLoader;
			public checkCreateClassLoader(): void;
			public checkAccess(param0: java.lang.ThreadGroup): void;
			public checkAwtEventQueueAccess(): void;
			/** @deprecated */
			public classLoaderDepth(): number;
			public checkPermission(param0: java.security.Permission): void;
			public checkDelete(param0: string): void;
			public constructor();
			public checkConnect(param0: string, param1: number): void;
			public getClassContext(): native.Array<java.lang.Class<any>>;
			public checkAccept(param0: string, param1: number): void;
			public checkListen(param0: number): void;
			public checkSetFactory(): void;
			public getThreadGroup(): java.lang.ThreadGroup;
			public checkRead(param0: string, param1: any): void;
			public checkPrintJobAccess(): void;
			public checkWrite(param0: string): void;
			public checkTopLevelWindow(param0: any): boolean;
			public getSecurityContext(): any;
			public checkSecurityAccess(param0: string): void;
			public checkPackageAccess(param0: string): void;
		}
	}
}

declare module java {
	export module lang {
		export class Short extends java.lang.Number implements java.lang.Comparable<java.lang.Short>  {
			public static class: java.lang.Class<java.lang.Short>;
			public static MAX_VALUE: number;
			public static MIN_VALUE: number;
			public static SIZE: number;
			public static TYPE: java.lang.Class<java.lang.Short>;
			public equals(param0: any): boolean;
			public static valueOf(param0: string): java.lang.Short;
			public static valueOf(param0: number): java.lang.Short;
			public static parseShort(param0: string, param1: number): number;
			public constructor(param0: number);
			public constructor();
			public shortValue(): number;
			public doubleValue(): number;
			public floatValue(): number;
			public intValue(): number;
			public toString(): string;
			public static reverseBytes(param0: number): number;
			public byteValue(): number;
			public compareTo(param0: java.lang.Short): number;
			public static decode(param0: string): java.lang.Short;
			public static parseShort(param0: string): number;
			public static valueOf(param0: string, param1: number): java.lang.Short;
			public constructor(param0: string);
			public static toString(param0: number): string;
			public hashCode(): number;
			public longValue(): number;
		}
	}
}

declare module java {
	export module lang {
		export class StackOverflowError extends java.lang.VirtualMachineError {
			public static class: java.lang.Class<java.lang.StackOverflowError>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export class StackTraceElement extends java.lang.Object implements java.io.Serializable {
			public static class: java.lang.Class<java.lang.StackTraceElement>;
			public equals(param0: any): boolean;
			public isNativeMethod(): boolean;
			public toString(): string;
			public getClassName(): string;
			public getFileName(): string;
			public getLineNumber(): number;
			public constructor(param0: string, param1: string, param2: string, param3: number);
			public getMethodName(): string;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module lang {
		export class StrictMath extends java.lang.Object {
			public static class: java.lang.Class<java.lang.StrictMath>;
			public static E: number;
			public static PI: number;
			public static getExponent(param0: number): number;
			public static ulp(param0: number): number;
			public static acos(param0: number): number;
			public static sin(param0: number): number;
			public static expm1(param0: number): number;
			public static log1p(param0: number): number;
			public static copySign(param0: number, param1: number): number;
			public static ceil(param0: number): number;
			public static atan2(param0: number, param1: number): number;
			public static signum(param0: number): number;
			public static cosh(param0: number): number;
			public static sqrt(param0: number): number;
			public static nextAfter(param0: number, param1: number): number;
			public static min(param0: number, param1: number): number;
			public static toDegrees(param0: number): number;
			public static random(): number;
			public static asin(param0: number): number;
			public static log10(param0: number): number;
			public static exp(param0: number): number;
			public static log(param0: number): number;
			public static floor(param0: number): number;
			public static round(param0: number): number;
			public static toRadians(param0: number): number;
			public static hypot(param0: number, param1: number): number;
			public static sinh(param0: number): number;
			public static tanh(param0: number): number;
			public static tan(param0: number): number;
			public static cos(param0: number): number;
			public static rint(param0: number): number;
			public static cbrt(param0: number): number;
			public static IEEEremainder(param0: number, param1: number): number;
			public static max(param0: number, param1: number): number;
			public static pow(param0: number, param1: number): number;
			public static scalb(param0: number, param1: number): number;
			public static abs(param0: number): number;
			public static atan(param0: number): number;
			public static nextUp(param0: number): number;
		}
	}
}

declare module java {
	export module lang {
		export class String extends java.lang.Object {
			public static class: java.lang.Class<java.lang.String>;
			public static CASE_INSENSITIVE_ORDER: java.util.Comparator<string>;
			public getBytes(param0: java.nio.charset.Charset): native.Array<number>;
			public getBytes(): native.Array<number>;
			public compareToIgnoreCase(param0: string): number;
			public indexOf(param0: string, param1: number): number;
			public equalsIgnoreCase(param0: string): boolean;
			public static valueOf(param0: string): string;
			public static format(param0: string, param1: native.Array<any>): string;
			public lastIndexOf(param0: string, param1: number): number;
			public startsWith(param0: string): boolean;
			public indexOf(param0: number): number;
			public constructor(param0: java.lang.StringBuilder);
			public codePointCount(param0: number, param1: number): number;
			public replaceAll(param0: string, param1: string): string;
			public subSequence(param0: number, param1: number): string;
			/** @deprecated */
			public getBytes(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
			public lastIndexOf(param0: number): number;
			/** @deprecated */
			public constructor(param0: native.Array<number>, param1: number);
			public contains(param0: string): boolean;
			public intern(): string;
			public toUpperCase(): string;
			public trim(): string;
			public constructor(param0: string);
			public constructor(param0: native.Array<string>, param1: number, param2: number);
			public getBytes(param0: string): native.Array<number>;
			public lastIndexOf(param0: number, param1: number): number;
			public constructor();
			public constructor(param0: native.Array<number>);
			public toUpperCase(param0: java.util.Locale): string;
			public static valueOf(param0: native.Array<string>): string;
			public static valueOf(param0: number): string;
			public endsWith(param0: string): boolean;
			public static valueOf(param0: boolean): string;
			public charAt(param0: number): string;
			public toLowerCase(): string;
			public toLowerCase(param0: java.util.Locale): string;
			public split(param0: string, param1: number): native.Array<string>;
			public lastIndexOf(param0: string): number;
			public equals(param0: any): boolean;
			public matches(param0: string): boolean;
			public regionMatches(param0: boolean, param1: number, param2: string, param3: number, param4: number): boolean;
			public replace(param0: string, param1: string): string;
			public toCharArray(): native.Array<string>;
			public substring(param0: number, param1: number): string;
			public codePointAt(param0: number): number;
			public getChars(param0: number, param1: number, param2: native.Array<string>, param3: number): void;
			public constructor(param0: native.Array<string>);
			public codePointBefore(param0: number): number;
			public static copyValueOf(param0: native.Array<string>, param1: number, param2: number): string;
			public contentEquals(param0: java.lang.StringBuffer): boolean;
			public constructor(param0: native.Array<number>, param1: number, param2: number);
			public constructor(param0: native.Array<number>, param1: number, param2: number, param3: string);
			public replaceFirst(param0: string, param1: string): string;
			public constructor(param0: native.Array<number>, param1: java.nio.charset.Charset);
			public constructor(param0: java.lang.StringBuffer);
			public isEmpty(): boolean;
			public constructor(param0: native.Array<number>, param1: string);
			public static copyValueOf(param0: native.Array<string>): string;
			public length(): number;
			public startsWith(param0: string, param1: number): boolean;
			/** @deprecated */
			public constructor(param0: native.Array<number>, param1: number, param2: number, param3: number);
			public constructor(param0: native.Array<number>, param1: number, param2: number, param3: java.nio.charset.Charset);
			public regionMatches(param0: number, param1: string, param2: number, param3: number): boolean;
			public static valueOf(param0: any): string;
			public indexOf(param0: string): number;
			public indexOf(param0: number, param1: number): number;
			public concat(param0: string): string;
			public toString(): string;
			public split(param0: string): native.Array<string>;
			public offsetByCodePoints(param0: number, param1: number): number;
			public contentEquals(param0: string): boolean;
			public substring(param0: number): string;
			public compareTo(param0: string): number;
			public static valueOf(param0: native.Array<string>, param1: number, param2: number): string;
			public hashCode(): number;
			public static format(param0: java.util.Locale, param1: string, param2: native.Array<any>): string;
		}
	}
}

declare module java {
	export module lang {
		export class StringBuffer extends java.lang.AbstractStringBuilder implements java.lang.Appendable, java.io.Serializable, java.lang.CharSequence {
			public static class: java.lang.Class<java.lang.StringBuffer>;
			public append(param0: string): java.lang.StringBuffer;
			public indexOf(param0: string, param1: number): number;
			public insert(param0: number, param1: string, param2: number, param3: number): java.lang.StringBuffer;
			public lastIndexOf(param0: string, param1: number): number;
			public insert(param0: number, param1: string): java.lang.StringBuffer;
			public insert(param0: number, param1: number): java.lang.StringBuffer;
			public substring(param0: number, param1: number): string;
			public replace(param0: number, param1: number, param2: string): java.lang.StringBuffer;
			public ensureCapacity(param0: number): void;
			public append(param0: string, param1: number, param2: number): java.lang.StringBuffer;
			public codePointAt(param0: number): number;
			public codePointCount(param0: number, param1: number): number;
			public delete(param0: number, param1: number): java.lang.StringBuffer;
			public setCharAt(param0: number, param1: string): void;
			public getChars(param0: number, param1: number, param2: native.Array<string>, param3: number): void;
			public codePointBefore(param0: number): number;
			public insert(param0: number, param1: native.Array<string>, param2: number, param3: number): java.lang.StringBuffer;
			public subSequence(param0: number, param1: number): string;
			public insert(param0: number, param1: any): java.lang.StringBuffer;
			public append(param0: native.Array<string>): java.lang.StringBuffer;
			public append(param0: any): java.lang.StringBuffer;
			public constructor(param0: string);
			public deleteCharAt(param0: number): java.lang.StringBuffer;
			public setLength(param0: number): void;
			public reverse(): java.lang.StringBuffer;
			public append(param0: java.lang.StringBuffer): java.lang.StringBuffer;
			public append(param0: native.Array<string>, param1: number, param2: number): java.lang.StringBuffer;
			public length(): number;
			public constructor(param0: number);
			public append(param0: string, param1: number, param2: number): java.lang.Appendable;
			public constructor();
			public indexOf(param0: string): number;
			public insert(param0: number, param1: boolean): java.lang.StringBuffer;
			public append(param0: number): java.lang.StringBuffer;
			public appendCodePoint(param0: number): java.lang.StringBuffer;
			public charAt(param0: number): string;
			public toString(): string;
			public insert(param0: number, param1: native.Array<string>): java.lang.StringBuffer;
			public offsetByCodePoints(param0: number, param1: number): number;
			public trimToSize(): void;
			public substring(param0: number): string;
			public append(param0: string): java.lang.Appendable;
			public append(param0: boolean): java.lang.StringBuffer;
			public lastIndexOf(param0: string): number;
		}
	}
}

declare module java {
	export module lang {
		export class StringBuilder extends java.lang.AbstractStringBuilder implements java.lang.Appendable, java.lang.CharSequence, java.io.Serializable {
			public static class: java.lang.Class<java.lang.StringBuilder>;
			public append(param0: number): java.lang.StringBuilder;
			public insert(param0: number, param1: string): java.lang.StringBuilder;
			public deleteCharAt(param0: number): java.lang.StringBuilder;
			public replace(param0: number, param1: number, param2: string): java.lang.StringBuilder;
			public append(param0: any): java.lang.StringBuilder;
			public subSequence(param0: number, param1: number): string;
			public append(param0: native.Array<string>): java.lang.StringBuilder;
			public append(param0: string): java.lang.StringBuilder;
			public append(param0: native.Array<string>, param1: number, param2: number): java.lang.StringBuilder;
			public constructor(param0: string);
			public insert(param0: number, param1: boolean): java.lang.StringBuilder;
			public appendCodePoint(param0: number): java.lang.StringBuilder;
			public insert(param0: number, param1: string, param2: number, param3: number): java.lang.StringBuilder;
			public insert(param0: number, param1: number): java.lang.StringBuilder;
			public length(): number;
			public constructor(param0: number);
			public append(param0: string, param1: number, param2: number): java.lang.Appendable;
			public constructor();
			public insert(param0: number, param1: any): java.lang.StringBuilder;
			public insert(param0: number, param1: native.Array<string>): java.lang.StringBuilder;
			public charAt(param0: number): string;
			public toString(): string;
			public append(param0: string, param1: number, param2: number): java.lang.StringBuilder;
			public insert(param0: number, param1: native.Array<string>, param2: number, param3: number): java.lang.StringBuilder;
			public append(param0: java.lang.StringBuffer): java.lang.StringBuilder;
			public append(param0: boolean): java.lang.StringBuilder;
			public delete(param0: number, param1: number): java.lang.StringBuilder;
			public reverse(): java.lang.StringBuilder;
			public append(param0: string): java.lang.Appendable;
		}
	}
}

declare module java {
	export module lang {
		export class StringIndexOutOfBoundsException extends java.lang.IndexOutOfBoundsException {
			public static class: java.lang.Class<java.lang.StringIndexOutOfBoundsException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor(param0: number);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export class SuppressWarnings extends java.lang.Object implements java.lang.annotation.Annotation {
			public static class: java.lang.Class<java.lang.SuppressWarnings>;
			/**
			 * Constructs a new instance of the java.lang.SuppressWarnings interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				value(): native.Array<string>;
				annotationType(): java.lang.Class<any>;
				equals(param0: any): boolean;
				hashCode(): number;
				toString(): string;
			});
			public constructor();
			public equals(param0: any): boolean;
			public toString(): string;
			public value(): native.Array<string>;
			public annotationType(): java.lang.Class<any>;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module lang {
		export class System extends java.lang.Object {
			public static class: java.lang.Class<java.lang.System>;
			public static in: java.io.InputStream;
			public static out: java.io.PrintStream;
			public static err: java.io.PrintStream;
			public static getenv(param0: string): string;
			public static gc(): void;
			/** @deprecated */
			public static runFinalizersOnExit(param0: boolean): void;
			public static getProperty(param0: string, param1: string): string;
			public static getProperties(): java.util.Properties;
			public static setOut(param0: java.io.PrintStream): void;
			public static mapLibraryName(param0: string): string;
			public static setProperty(param0: string, param1: string): string;
			public static runFinalization(): void;
			public static getenv(): java.util.Map<string,string>;
			public static setProperties(param0: java.util.Properties): void;
			public static load(param0: string): void;
			public static arraycopy(param0: any, param1: number, param2: any, param3: number, param4: number): void;
			public static identityHashCode(param0: any): number;
			public static setSecurityManager(param0: java.lang.SecurityManager): void;
			public static console(): java.io.Console;
			public static currentTimeMillis(): number;
			public static getProperty(param0: string): string;
			public static setErr(param0: java.io.PrintStream): void;
			public static inheritedChannel(): java.nio.channels.Channel;
			public static setIn(param0: java.io.InputStream): void;
			public static getSecurityManager(): java.lang.SecurityManager;
			public static nanoTime(): number;
			public static exit(param0: number): void;
			public static clearProperty(param0: string): string;
			public static loadLibrary(param0: string): void;
		}
	}
}

declare module java {
	export module lang {
		export class Thread extends java.lang.Object implements java.lang.Runnable {
			public static class: java.lang.Class<java.lang.Thread>;
			public static MAX_PRIORITY: number;
			public static MIN_PRIORITY: number;
			public static NORM_PRIORITY: number;
			public getState(): java.lang.Thread.State;
			public static setDefaultUncaughtExceptionHandler(param0: java.lang.Thread.UncaughtExceptionHandler): void;
			/** @deprecated */
			public destroy(): void;
			public static enumerate(param0: native.Array<java.lang.Thread>): number;
			public getId(): number;
			public isInterrupted(): boolean;
			public setUncaughtExceptionHandler(param0: java.lang.Thread.UncaughtExceptionHandler): void;
			public start(): void;
			public constructor(param0: string);
			public setContextClassLoader(param0: java.lang.ClassLoader): void;
			/** @deprecated */
			public resume(): void;
			public constructor();
			public getUncaughtExceptionHandler(): java.lang.Thread.UncaughtExceptionHandler;
			public getStackTrace(): native.Array<java.lang.StackTraceElement>;
			public join(param0: number, param1: number): void;
			public constructor(param0: java.lang.ThreadGroup, param1: string);
			public isAlive(): boolean;
			public constructor(param0: java.lang.Runnable);
			public static currentThread(): java.lang.Thread;
			public static holdsLock(param0: any): boolean;
			/** @deprecated */
			public countStackFrames(): number;
			public static sleep(param0: number, param1: number): void;
			public static activeCount(): number;
			public getContextClassLoader(): java.lang.ClassLoader;
			/** @deprecated */
			public suspend(): void;
			public run(): void;
			public constructor(param0: java.lang.ThreadGroup, param1: java.lang.Runnable);
			public isDaemon(): boolean;
			public static sleep(param0: number): void;
			public static dumpStack(): void;
			public interrupt(): void;
			public join(): void;
			/** @deprecated */
			public stop(param0: java.lang.Throwable): void;
			public checkAccess(): void;
			public setDaemon(param0: boolean): void;
			public static getDefaultUncaughtExceptionHandler(): java.lang.Thread.UncaughtExceptionHandler;
			public constructor(param0: java.lang.ThreadGroup, param1: java.lang.Runnable, param2: string);
			public join(param0: number): void;
			public static getAllStackTraces(): java.util.Map<java.lang.Thread,native.Array<java.lang.StackTraceElement>>;
			public getPriority(): number;
			public toString(): string;
			public constructor(param0: java.lang.Runnable, param1: string);
			public constructor(param0: java.lang.ThreadGroup, param1: java.lang.Runnable, param2: string, param3: number);
			public getName(): string;
			public getThreadGroup(): java.lang.ThreadGroup;
			public setPriority(param0: number): void;
			/** @deprecated */
			public stop(): void;
			public static yield(): void;
			public static interrupted(): boolean;
			public setName(param0: string): void;
		}
		export module Thread {
			export class State {
				public static class: java.lang.Class<java.lang.Thread.State>;
				public static BLOCKED: java.lang.Thread.State;
				public static NEW: java.lang.Thread.State;
				public static RUNNABLE: java.lang.Thread.State;
				public static TERMINATED: java.lang.Thread.State;
				public static TIMED_WAITING: java.lang.Thread.State;
				public static WAITING: java.lang.Thread.State;
				public static values(): native.Array<java.lang.Thread.State>;
				public static valueOf(param0: string): java.lang.Thread.State;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			}
			export class UncaughtExceptionHandler extends java.lang.Object {
				public static class: java.lang.Class<java.lang.Thread.UncaughtExceptionHandler>;
				/**
				 * Constructs a new instance of the java.lang.Thread$UncaughtExceptionHandler interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					uncaughtException(param0: java.lang.Thread, param1: java.lang.Throwable): void;
				});
				public constructor();
				public uncaughtException(param0: java.lang.Thread, param1: java.lang.Throwable): void;
			}
		}
	}
}

declare module java {
	export module lang {
		export class ThreadDeath extends java.lang.Error {
			public static class: java.lang.Class<java.lang.ThreadDeath>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export class ThreadGroup extends java.lang.Object implements java.lang.Thread.UncaughtExceptionHandler {
			public static class: java.lang.Class<java.lang.ThreadGroup>;
			public isDestroyed(): boolean;
			public uncaughtException(param0: java.lang.Thread, param1: java.lang.Throwable): void;
			public enumerate(param0: native.Array<java.lang.Thread>): number;
			public enumerate(param0: native.Array<java.lang.Thread>, param1: boolean): number;
			/** @deprecated */
			public allowThreadSuspension(param0: boolean): boolean;
			public getParent(): java.lang.ThreadGroup;
			/** @deprecated */
			public suspend(): void;
			public setMaxPriority(param0: number): void;
			public constructor(param0: string);
			public activeGroupCount(): number;
			public isDaemon(): boolean;
			public activeCount(): number;
			public interrupt(): void;
			public destroy(): void;
			/** @deprecated */
			public resume(): void;
			public enumerate(param0: native.Array<java.lang.ThreadGroup>): number;
			public checkAccess(): void;
			public parentOf(param0: java.lang.ThreadGroup): boolean;
			public setDaemon(param0: boolean): void;
			public toString(): string;
			public getName(): string;
			public getMaxPriority(): number;
			/** @deprecated */
			public stop(): void;
			public enumerate(param0: native.Array<java.lang.ThreadGroup>, param1: boolean): number;
			public list(): void;
			public constructor(param0: java.lang.ThreadGroup, param1: string);
		}
	}
}

declare module java {
	export module lang {
		export class ThreadLocal<T>  extends java.lang.Object {
			public static class: java.lang.Class<java.lang.ThreadLocal<any>>;
			public initialValue(): T;
			public constructor();
			public get(): T;
			public set(param0: T): void;
			public remove(): void;
		}
	}
}

declare module java {
	export module lang {
		export class Throwable extends java.lang.Object implements java.io.Serializable {
			public static class: java.lang.Class<java.lang.Throwable>;
			public initCause(param0: java.lang.Throwable): java.lang.Throwable;
			public constructor(param0: java.lang.Throwable);
			public getCause(): java.lang.Throwable;
			public constructor();
			public setStackTrace(param0: native.Array<java.lang.StackTraceElement>): void;
			public getMessage(): string;
			public printStackTrace(param0: java.io.PrintStream): void;
			public toString(): string;
			public fillInStackTrace(): java.lang.Throwable;
			public constructor(param0: string, param1: java.lang.Throwable);
			public printStackTrace(): void;
			public getLocalizedMessage(): string;
			public getStackTrace(): native.Array<java.lang.StackTraceElement>;
			public constructor(param0: string);
			public printStackTrace(param0: java.io.PrintWriter): void;
		}
	}
}

declare module java {
	export module lang {
		export class TypeNotPresentException extends java.lang.RuntimeException {
			public static class: java.lang.Class<java.lang.TypeNotPresentException>;
			public typeName(): string;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export class UnknownError extends java.lang.VirtualMachineError {
			public static class: java.lang.Class<java.lang.UnknownError>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export class UnsatisfiedLinkError extends java.lang.LinkageError {
			public static class: java.lang.Class<java.lang.UnsatisfiedLinkError>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export class UnsupportedClassVersionError extends java.lang.ClassFormatError {
			public static class: java.lang.Class<java.lang.UnsupportedClassVersionError>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export class UnsupportedOperationException extends java.lang.RuntimeException {
			public static class: java.lang.Class<java.lang.UnsupportedOperationException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export class VerifyError extends java.lang.LinkageError {
			public static class: java.lang.Class<java.lang.VerifyError>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export abstract class VirtualMachineError extends java.lang.Error {
			public static class: java.lang.Class<java.lang.VirtualMachineError>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module lang {
		export class Void extends java.lang.Object {
			public static class: java.lang.Class<java.lang.Void>;
			public static TYPE: java.lang.Class<java.lang.Void>;
		}
	}
}

declare module java {
	export module lang {
		export module annotation {
			export class Annotation extends java.lang.Object {
				public static class: java.lang.Class<java.lang.annotation.Annotation>;
				/**
				 * Constructs a new instance of the java.lang.annotation.Annotation interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					annotationType(): java.lang.Class<any>;
					equals(param0: any): boolean;
					hashCode(): number;
					toString(): string;
				});
				public constructor();
				public hashCode(): number;
				public equals(param0: any): boolean;
				public annotationType(): java.lang.Class<any>;
				public toString(): string;
			}
		}
	}
}

declare module java {
	export module lang {
		export module annotation {
			export class AnnotationFormatError extends java.lang.Error {
				public static class: java.lang.Class<java.lang.annotation.AnnotationFormatError>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module lang {
		export module annotation {
			export class AnnotationTypeMismatchException extends java.lang.RuntimeException {
				public static class: java.lang.Class<java.lang.annotation.AnnotationTypeMismatchException>;
				public constructor(param0: java.lang.reflect.Method, param1: string);
				public element(): java.lang.reflect.Method;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public foundType(): string;
				public constructor();
			}
		}
	}
}

declare module java {
	export module lang {
		export module annotation {
			export class Documented extends java.lang.Object implements java.lang.annotation.Annotation {
				public static class: java.lang.Class<java.lang.annotation.Documented>;
				/**
				 * Constructs a new instance of the java.lang.annotation.Documented interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					annotationType(): java.lang.Class<any>;
					equals(param0: any): boolean;
					hashCode(): number;
					toString(): string;
				});
				public constructor();
				public hashCode(): number;
				public equals(param0: any): boolean;
				public annotationType(): java.lang.Class<any>;
				public toString(): string;
			}
		}
	}
}

declare module java {
	export module lang {
		export module annotation {
			export class ElementType {
				public static class: java.lang.Class<java.lang.annotation.ElementType>;
				public static ANNOTATION_TYPE: java.lang.annotation.ElementType;
				public static CONSTRUCTOR: java.lang.annotation.ElementType;
				public static FIELD: java.lang.annotation.ElementType;
				public static LOCAL_VARIABLE: java.lang.annotation.ElementType;
				public static METHOD: java.lang.annotation.ElementType;
				public static PACKAGE: java.lang.annotation.ElementType;
				public static PARAMETER: java.lang.annotation.ElementType;
				public static TYPE: java.lang.annotation.ElementType;
				public static values(): native.Array<java.lang.annotation.ElementType>;
				public static valueOf(param0: string): java.lang.annotation.ElementType;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			}
		}
	}
}

declare module java {
	export module lang {
		export module annotation {
			export class IncompleteAnnotationException extends java.lang.RuntimeException {
				public static class: java.lang.Class<java.lang.annotation.IncompleteAnnotationException>;
				public constructor(param0: java.lang.Class<any>, param1: string);
				public annotationType(): java.lang.Class<any>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public elementName(): string;
				public constructor();
			}
		}
	}
}

declare module java {
	export module lang {
		export module annotation {
			export class Inherited extends java.lang.Object implements java.lang.annotation.Annotation {
				public static class: java.lang.Class<java.lang.annotation.Inherited>;
				/**
				 * Constructs a new instance of the java.lang.annotation.Inherited interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					annotationType(): java.lang.Class<any>;
					equals(param0: any): boolean;
					hashCode(): number;
					toString(): string;
				});
				public constructor();
				public hashCode(): number;
				public equals(param0: any): boolean;
				public annotationType(): java.lang.Class<any>;
				public toString(): string;
			}
		}
	}
}

declare module java {
	export module lang {
		export module annotation {
			export class Retention extends java.lang.Object implements java.lang.annotation.Annotation {
				public static class: java.lang.Class<java.lang.annotation.Retention>;
				/**
				 * Constructs a new instance of the java.lang.annotation.Retention interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					value(): java.lang.annotation.RetentionPolicy;
					annotationType(): java.lang.Class<any>;
					equals(param0: any): boolean;
					hashCode(): number;
					toString(): string;
				});
				public constructor();
				public hashCode(): number;
				public value(): java.lang.annotation.RetentionPolicy;
				public equals(param0: any): boolean;
				public annotationType(): java.lang.Class<any>;
				public toString(): string;
			}
		}
	}
}

declare module java {
	export module lang {
		export module annotation {
			export class RetentionPolicy {
				public static class: java.lang.Class<java.lang.annotation.RetentionPolicy>;
				public static CLASS: java.lang.annotation.RetentionPolicy;
				public static RUNTIME: java.lang.annotation.RetentionPolicy;
				public static SOURCE: java.lang.annotation.RetentionPolicy;
				public static valueOf(param0: string): java.lang.annotation.RetentionPolicy;
				public static values(): native.Array<java.lang.annotation.RetentionPolicy>;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			}
		}
	}
}

declare module java {
	export module lang {
		export module annotation {
			export class Target extends java.lang.Object implements java.lang.annotation.Annotation {
				public static class: java.lang.Class<java.lang.annotation.Target>;
				/**
				 * Constructs a new instance of the java.lang.annotation.Target interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					value(): native.Array<java.lang.annotation.ElementType>;
					annotationType(): java.lang.Class<any>;
					equals(param0: any): boolean;
					hashCode(): number;
					toString(): string;
				});
				public constructor();
				public hashCode(): number;
				public equals(param0: any): boolean;
				public annotationType(): java.lang.Class<any>;
				public value(): native.Array<java.lang.annotation.ElementType>;
				public toString(): string;
			}
		}
	}
}

declare module java {
	export module lang {
		export module ref {
			export class PhantomReference<T>  extends java.lang.ref.Reference<any> {
				public static class: java.lang.Class<java.lang.ref.PhantomReference<any>>;
				public constructor(param0: any, param1: java.lang.ref.ReferenceQueue<any>);
				public get(): any;
			}
		}
	}
}

declare module java {
	export module lang {
		export module ref {
			export abstract class Reference<T>  extends java.lang.Object {
				public static class: java.lang.Class<java.lang.ref.Reference<any>>;
				public enqueue(): boolean;
				public get(): T;
				public clear(): void;
				public isEnqueued(): boolean;
			}
		}
	}
}

declare module java {
	export module lang {
		export module ref {
			export class ReferenceQueue<T>  extends java.lang.Object {
				public static class: java.lang.Class<java.lang.ref.ReferenceQueue<any>>;
				public remove(): java.lang.ref.Reference<any>;
				public remove(param0: number): java.lang.ref.Reference<any>;
				public poll(): java.lang.ref.Reference<any>;
				public constructor();
			}
		}
	}
}

declare module java {
	export module lang {
		export module ref {
			export class SoftReference<T>  extends java.lang.ref.Reference<any> {
				public static class: java.lang.Class<java.lang.ref.SoftReference<any>>;
				public constructor(param0: any, param1: java.lang.ref.ReferenceQueue<any>);
				public constructor(param0: any);
			}
		}
	}
}

declare module java {
	export module lang {
		export module ref {
			export class WeakReference<T>  extends java.lang.ref.Reference<any> {
				public static class: java.lang.Class<java.lang.ref.WeakReference<any>>;
				public constructor(param0: any, param1: java.lang.ref.ReferenceQueue<any>);
				public constructor(param0: any);
			}
		}
	}
}

declare module java {
	export module lang {
		export module reflect {
			export class AccessibleObject extends java.lang.Object implements java.lang.reflect.AnnotatedElement {
				public static class: java.lang.Class<java.lang.reflect.AccessibleObject>;
				public getAnnotation(param0: java.lang.Class<any>): java.lang.annotation.Annotation;
				public getDeclaredAnnotations(): native.Array<java.lang.annotation.Annotation>;
				public isAccessible(): boolean;
				public static setAccessible(param0: native.Array<java.lang.reflect.AccessibleObject>, param1: boolean): void;
				public isAnnotationPresent(param0: java.lang.Class<any>): boolean;
				public setAccessible(param0: boolean): void;
				public getAnnotations(): native.Array<java.lang.annotation.Annotation>;
				public constructor();
			}
		}
	}
}

declare module java {
	export module lang {
		export module reflect {
			export class AnnotatedElement extends java.lang.Object {
				public static class: java.lang.Class<java.lang.reflect.AnnotatedElement>;
				/**
				 * Constructs a new instance of the java.lang.reflect.AnnotatedElement interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getAnnotation(param0: java.lang.Class<any>): java.lang.annotation.Annotation;
					getAnnotations(): native.Array<java.lang.annotation.Annotation>;
					getDeclaredAnnotations(): native.Array<java.lang.annotation.Annotation>;
					isAnnotationPresent(param0: java.lang.Class<any>): boolean;
				});
				public constructor();
				public getAnnotation(param0: java.lang.Class<any>): java.lang.annotation.Annotation;
				public getDeclaredAnnotations(): native.Array<java.lang.annotation.Annotation>;
				public isAnnotationPresent(param0: java.lang.Class<any>): boolean;
				public getAnnotations(): native.Array<java.lang.annotation.Annotation>;
			}
		}
	}
}

declare module java {
	export module lang {
		export module reflect {
			export class Array extends java.lang.Object {
				public static class: java.lang.Class<java.lang.reflect.Array>;
				public static setBoolean(param0: any, param1: number, param2: boolean): void;
				public static setChar(param0: any, param1: number, param2: string): void;
				public static getFloat(param0: any, param1: number): number;
				public static get(param0: any, param1: number): any;
				public static getInt(param0: any, param1: number): number;
				public static setFloat(param0: any, param1: number, param2: number): void;
				public static newInstance(param0: java.lang.Class<any>, param1: number): any;
				public static setShort(param0: any, param1: number, param2: number): void;
				public static setLong(param0: any, param1: number, param2: number): void;
				public static newInstance(param0: java.lang.Class<any>, param1: native.Array<number>): any;
				public static getDouble(param0: any, param1: number): number;
				public static getLong(param0: any, param1: number): number;
				public static getBoolean(param0: any, param1: number): boolean;
				public static getChar(param0: any, param1: number): string;
				public static set(param0: any, param1: number, param2: any): void;
				public static setByte(param0: any, param1: number, param2: number): void;
				public static getShort(param0: any, param1: number): number;
				public static setDouble(param0: any, param1: number, param2: number): void;
				public static setInt(param0: any, param1: number, param2: number): void;
				public static getByte(param0: any, param1: number): number;
				public static getLength(param0: any): number;
			}
		}
	}
}

declare module java {
	export module lang {
		export module reflect {
			export class Constructor<T>  extends java.lang.reflect.AccessibleObject {
				public static class: java.lang.Class<java.lang.reflect.Constructor<any>>;
				public getTypeParameters(): native.Array<java.lang.reflect.TypeVariable<java.lang.reflect.Constructor<any>>>;
				public getAnnotation(param0: java.lang.Class<any>): java.lang.annotation.Annotation;
				public getDeclaredAnnotations(): native.Array<java.lang.annotation.Annotation>;
				public getParameterAnnotations(): native.Array<native.Array<java.lang.annotation.Annotation>>;
				public getParameterTypes(): native.Array<java.lang.Class<any>>;
				public getModifiers(): number;
				public getName(): string;
				public toString(): string;
				public isSynthetic(): boolean;
				public getGenericParameterTypes(): native.Array<java.lang.reflect.Type>;
				public isVarArgs(): boolean;
				public getExceptionTypes(): native.Array<java.lang.Class<any>>;
				public getGenericExceptionTypes(): native.Array<java.lang.reflect.Type>;
				public getTypeParameters(): native.Array<java.lang.reflect.TypeVariable<any>>;
				public newInstance(param0: native.Array<any>): any;
				public hashCode(): number;
				public equals(param0: any): boolean;
				public isAnnotationPresent(param0: java.lang.Class<any>): boolean;
				public getAnnotations(): native.Array<java.lang.annotation.Annotation>;
				public toGenericString(): string;
				public getDeclaringClass(): java.lang.Class<any>;
			}
		}
	}
}

declare module java {
	export module lang {
		export module reflect {
			export class Field extends java.lang.reflect.AccessibleObject implements java.lang.reflect.Member {
				public static class: java.lang.Class<java.lang.reflect.Field>;
				public setInt(param0: any, param1: number): void;
				public get(param0: any): any;
				public getChar(param0: any): string;
				public getModifiers(): number;
				public isSynthetic(): boolean;
				public getType(): java.lang.Class<any>;
				public setByte(param0: any, param1: number): void;
				public hashCode(): number;
				public equals(param0: any): boolean;
				public getLong(param0: any): number;
				public isAnnotationPresent(param0: java.lang.Class<any>): boolean;
				public setChar(param0: any, param1: string): void;
				public getInt(param0: any): number;
				public setLong(param0: any, param1: number): void;
				public getAnnotations(): native.Array<java.lang.annotation.Annotation>;
				public toGenericString(): string;
				public getDeclaringClass(): java.lang.Class<any>;
				public getFloat(param0: any): number;
				public setFloat(param0: any, param1: number): void;
				public getGenericType(): java.lang.reflect.Type;
				public getAnnotation(param0: java.lang.Class<any>): java.lang.annotation.Annotation;
				public setBoolean(param0: any, param1: boolean): void;
				public getDeclaredAnnotations(): native.Array<java.lang.annotation.Annotation>;
				public getBoolean(param0: any): boolean;
				public getByte(param0: any): number;
				public setDouble(param0: any, param1: number): void;
				public getName(): string;
				public set(param0: any, param1: any): void;
				public getShort(param0: any): number;
				public toString(): string;
				public isEnumConstant(): boolean;
				public getDouble(param0: any): number;
				public setShort(param0: any, param1: number): void;
			}
		}
	}
}

declare module java {
	export module lang {
		export module reflect {
			export class GenericArrayType extends java.lang.Object implements java.lang.reflect.Type {
				public static class: java.lang.Class<java.lang.reflect.GenericArrayType>;
				/**
				 * Constructs a new instance of the java.lang.reflect.GenericArrayType interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getGenericComponentType(): java.lang.reflect.Type;
				});
				public constructor();
				public getGenericComponentType(): java.lang.reflect.Type;
			}
		}
	}
}

declare module java {
	export module lang {
		export module reflect {
			export class GenericDeclaration extends java.lang.Object {
				public static class: java.lang.Class<java.lang.reflect.GenericDeclaration>;
				/**
				 * Constructs a new instance of the java.lang.reflect.GenericDeclaration interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getTypeParameters(): native.Array<java.lang.reflect.TypeVariable<any>>;
				});
				public constructor();
				public getTypeParameters(): native.Array<java.lang.reflect.TypeVariable<any>>;
			}
		}
	}
}

declare module java {
	export module lang {
		export module reflect {
			export class GenericSignatureFormatError extends java.lang.ClassFormatError {
				public static class: java.lang.Class<java.lang.reflect.GenericSignatureFormatError>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module lang {
		export module reflect {
			export class InvocationHandler extends java.lang.Object {
				public static class: java.lang.Class<java.lang.reflect.InvocationHandler>;
				/**
				 * Constructs a new instance of the java.lang.reflect.InvocationHandler interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					invoke(param0: any, param1: java.lang.reflect.Method, param2: native.Array<any>): any;
				});
				public constructor();
				public invoke(param0: any, param1: java.lang.reflect.Method, param2: native.Array<any>): any;
			}
		}
	}
}

declare module java {
	export module lang {
		export module reflect {
			export class InvocationTargetException extends java.lang.Exception {
				public static class: java.lang.Class<java.lang.reflect.InvocationTargetException>;
				public constructor(param0: java.lang.Throwable, param1: string);
				public constructor(param0: string, param1: java.lang.Throwable);
				public getTargetException(): java.lang.Throwable;
				public getCause(): java.lang.Throwable;
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module lang {
		export module reflect {
			export class MalformedParameterizedTypeException extends java.lang.RuntimeException {
				public static class: java.lang.Class<java.lang.reflect.MalformedParameterizedTypeException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module lang {
		export module reflect {
			export class Member extends java.lang.Object {
				public static class: java.lang.Class<java.lang.reflect.Member>;
				/**
				 * Constructs a new instance of the java.lang.reflect.Member interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getDeclaringClass(): java.lang.Class<any>;
					getModifiers(): number;
					getName(): string;
					isSynthetic(): boolean;
				});
				public constructor();
				public static PUBLIC: number;
				public static DECLARED: number;
				public getModifiers(): number;
				public getName(): string;
				public isSynthetic(): boolean;
				public getDeclaringClass(): java.lang.Class<any>;
			}
		}
	}
}

declare module java {
	export module lang {
		export module reflect {
			export class Method extends java.lang.reflect.AccessibleObject implements java.lang.reflect.GenericDeclaration, java.lang.reflect.Member {
				public static class: java.lang.Class<java.lang.reflect.Method>;
				public invoke(param0: any, param1: native.Array<any>): any;
				public getModifiers(): number;
				public getDefaultValue(): any;
				public isSynthetic(): boolean;
				public getGenericParameterTypes(): native.Array<java.lang.reflect.Type>;
				public getGenericExceptionTypes(): native.Array<java.lang.reflect.Type>;
				public getTypeParameters(): native.Array<java.lang.reflect.TypeVariable<any>>;
				public hashCode(): number;
				public equals(param0: any): boolean;
				public isAnnotationPresent(param0: java.lang.Class<any>): boolean;
				public getAnnotations(): native.Array<java.lang.annotation.Annotation>;
				public toGenericString(): string;
				public getGenericReturnType(): java.lang.reflect.Type;
				public getDeclaringClass(): java.lang.Class<any>;
				public getAnnotation(param0: java.lang.Class<any>): java.lang.annotation.Annotation;
				public getDeclaredAnnotations(): native.Array<java.lang.annotation.Annotation>;
				public getParameterAnnotations(): native.Array<native.Array<java.lang.annotation.Annotation>>;
				public getParameterTypes(): native.Array<java.lang.Class<any>>;
				public getName(): string;
				public getTypeParameters(): native.Array<java.lang.reflect.TypeVariable<java.lang.reflect.Method>>;
				public getReturnType(): java.lang.Class<any>;
				public toString(): string;
				public isVarArgs(): boolean;
				public getExceptionTypes(): native.Array<java.lang.Class<any>>;
				public isBridge(): boolean;
			}
		}
	}
}

declare module java {
	export module lang {
		export module reflect {
			export class Modifier extends java.lang.Object {
				public static class: java.lang.Class<java.lang.reflect.Modifier>;
				public static PUBLIC: number;
				public static PRIVATE: number;
				public static PROTECTED: number;
				public static STATIC: number;
				public static FINAL: number;
				public static SYNCHRONIZED: number;
				public static VOLATILE: number;
				public static TRANSIENT: number;
				public static NATIVE: number;
				public static INTERFACE: number;
				public static ABSTRACT: number;
				public static STRICT: number;
				public static isSynchronized(param0: number): boolean;
				public static isPublic(param0: number): boolean;
				public static isStrict(param0: number): boolean;
				public static isProtected(param0: number): boolean;
				public toString(): string;
				public constructor();
				public static isFinal(param0: number): boolean;
				public static isInterface(param0: number): boolean;
				public static toString(param0: number): string;
				public static isNative(param0: number): boolean;
				public static isStatic(param0: number): boolean;
				public static isVolatile(param0: number): boolean;
				public static isAbstract(param0: number): boolean;
				public static isPrivate(param0: number): boolean;
				public static isTransient(param0: number): boolean;
			}
		}
	}
}

declare module java {
	export module lang {
		export module reflect {
			export class ParameterizedType extends java.lang.Object implements java.lang.reflect.Type {
				public static class: java.lang.Class<java.lang.reflect.ParameterizedType>;
				/**
				 * Constructs a new instance of the java.lang.reflect.ParameterizedType interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getActualTypeArguments(): native.Array<java.lang.reflect.Type>;
					getOwnerType(): java.lang.reflect.Type;
					getRawType(): java.lang.reflect.Type;
				});
				public constructor();
				public getOwnerType(): java.lang.reflect.Type;
				public getRawType(): java.lang.reflect.Type;
				public getActualTypeArguments(): native.Array<java.lang.reflect.Type>;
			}
		}
	}
}

declare module java {
	export module lang {
		export module reflect {
			export class Proxy extends java.lang.Object implements java.io.Serializable {
				public static class: java.lang.Class<java.lang.reflect.Proxy>;
				public h: java.lang.reflect.InvocationHandler;
				public static getProxyClass(param0: java.lang.ClassLoader, param1: native.Array<java.lang.Class<any>>): java.lang.Class<any>;
				public static getInvocationHandler(param0: any): java.lang.reflect.InvocationHandler;
				public static newProxyInstance(param0: java.lang.ClassLoader, param1: native.Array<java.lang.Class<any>>, param2: java.lang.reflect.InvocationHandler): any;
				public static isProxyClass(param0: java.lang.Class<any>): boolean;
				public constructor(param0: java.lang.reflect.InvocationHandler);
			}
		}
	}
}

declare module java {
	export module lang {
		export module reflect {
			export class ReflectPermission extends java.security.BasicPermission {
				public static class: java.lang.Class<java.lang.reflect.ReflectPermission>;
				public checkGuard(param0: any): void;
				public implies(param0: java.security.Permission): boolean;
				public getActions(): string;
				public constructor(param0: string);
				public constructor(param0: string, param1: string);
			}
		}
	}
}

declare module java {
	export module lang {
		export module reflect {
			export class Type extends java.lang.Object {
				public static class: java.lang.Class<java.lang.reflect.Type>;
				/**
				 * Constructs a new instance of the java.lang.reflect.Type interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
			}
		}
	}
}

declare module java {
	export module lang {
		export module reflect {
			export class TypeVariable<D>  extends java.lang.reflect.Type {
				public static class: java.lang.Class<java.lang.reflect.TypeVariable<any>>;
				/**
				 * Constructs a new instance of the java.lang.reflect.TypeVariable<any> interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getBounds(): native.Array<java.lang.reflect.Type>;
					getGenericDeclaration(): any;
					getName(): string;
				});
				public constructor();
				public getBounds(): native.Array<java.lang.reflect.Type>;
				public getGenericDeclaration(): any;
				public getName(): string;
			}
		}
	}
}

declare module java {
	export module lang {
		export module reflect {
			export class UndeclaredThrowableException extends java.lang.RuntimeException {
				public static class: java.lang.Class<java.lang.reflect.UndeclaredThrowableException>;
				public getUndeclaredThrowable(): java.lang.Throwable;
				public constructor(param0: java.lang.Throwable, param1: string);
				public constructor(param0: string, param1: java.lang.Throwable);
				public getCause(): java.lang.Throwable;
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module lang {
		export module reflect {
			export class WildcardType extends java.lang.Object implements java.lang.reflect.Type {
				public static class: java.lang.Class<java.lang.reflect.WildcardType>;
				/**
				 * Constructs a new instance of the java.lang.reflect.WildcardType interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getUpperBounds(): native.Array<java.lang.reflect.Type>;
					getLowerBounds(): native.Array<java.lang.reflect.Type>;
				});
				public constructor();
				public getLowerBounds(): native.Array<java.lang.reflect.Type>;
				public getUpperBounds(): native.Array<java.lang.reflect.Type>;
			}
		}
	}
}

declare module java {
	export module math {
		export class BigDecimal extends java.lang.Number {
			public static class: java.lang.Class<java.math.BigDecimal>;
			public static ROUND_UP: number;
			public static ROUND_DOWN: number;
			public static ROUND_CEILING: number;
			public static ROUND_FLOOR: number;
			public static ROUND_HALF_UP: number;
			public static ROUND_HALF_DOWN: number;
			public static ROUND_HALF_EVEN: number;
			public static ROUND_UNNECESSARY: number;
			public static ZERO: java.math.BigDecimal;
			public static ONE: java.math.BigDecimal;
			public static TEN: java.math.BigDecimal;
			public divide(param0: java.math.BigDecimal): java.math.BigDecimal;
			public pow(param0: number): java.math.BigDecimal;
			public divideToIntegralValue(param0: java.math.BigDecimal): java.math.BigDecimal;
			public max(param0: java.math.BigDecimal): java.math.BigDecimal;
			public scaleByPowerOfTen(param0: number): java.math.BigDecimal;
			public shortValueExact(): number;
			public divide(param0: java.math.BigDecimal, param1: java.math.MathContext): java.math.BigDecimal;
			public remainder(param0: java.math.BigDecimal): java.math.BigDecimal;
			public divideAndRemainder(param0: java.math.BigDecimal): native.Array<java.math.BigDecimal>;
			public toPlainString(): string;
			public multiply(param0: java.math.BigDecimal): java.math.BigDecimal;
			public constructor(param0: string);
			public constructor(param0: native.Array<string>, param1: java.math.MathContext);
			public constructor(param0: native.Array<string>, param1: number, param2: number);
			public subtract(param0: java.math.BigDecimal): java.math.BigDecimal;
			public byteValueExact(): number;
			public constructor(param0: number);
			public divide(param0: java.math.BigDecimal, param1: java.math.RoundingMode): java.math.BigDecimal;
			public constructor();
			public constructor(param0: java.math.BigInteger, param1: java.math.MathContext);
			public divideToIntegralValue(param0: java.math.BigDecimal, param1: java.math.MathContext): java.math.BigDecimal;
			public setScale(param0: number): java.math.BigDecimal;
			public pow(param0: number, param1: java.math.MathContext): java.math.BigDecimal;
			public toBigIntegerExact(): java.math.BigInteger;
			public constructor(param0: string, param1: java.math.MathContext);
			public floatValue(): number;
			public intValue(): number;
			public ulp(): java.math.BigDecimal;
			public abs(param0: java.math.MathContext): java.math.BigDecimal;
			public negate(param0: java.math.MathContext): java.math.BigDecimal;
			public unscaledValue(): java.math.BigInteger;
			public setScale(param0: number, param1: java.math.RoundingMode): java.math.BigDecimal;
			public setScale(param0: number, param1: number): java.math.BigDecimal;
			public abs(): java.math.BigDecimal;
			public plus(param0: java.math.MathContext): java.math.BigDecimal;
			public longValue(): number;
			public plus(): java.math.BigDecimal;
			public equals(param0: any): boolean;
			public min(param0: java.math.BigDecimal): java.math.BigDecimal;
			public compareTo(param0: java.math.BigDecimal): number;
			public constructor(param0: java.math.BigInteger, param1: number);
			public intValueExact(): number;
			public constructor(param0: java.math.BigInteger);
			public constructor(param0: java.math.BigInteger, param1: number, param2: java.math.MathContext);
			public stripTrailingZeros(): java.math.BigDecimal;
			public longValueExact(): number;
			public scale(): number;
			public doubleValue(): number;
			public constructor(param0: native.Array<string>, param1: number, param2: number, param3: java.math.MathContext);
			public subtract(param0: java.math.BigDecimal, param1: java.math.MathContext): java.math.BigDecimal;
			public constructor(param0: native.Array<string>);
			public toEngineeringString(): string;
			public remainder(param0: java.math.BigDecimal, param1: java.math.MathContext): java.math.BigDecimal;
			public toBigInteger(): java.math.BigInteger;
			public negate(): java.math.BigDecimal;
			public signum(): number;
			public static valueOf(param0: number): java.math.BigDecimal;
			public round(param0: java.math.MathContext): java.math.BigDecimal;
			public divide(param0: java.math.BigDecimal, param1: number): java.math.BigDecimal;
			public divide(param0: java.math.BigDecimal, param1: number, param2: number): java.math.BigDecimal;
			public static valueOf(param0: number, param1: number): java.math.BigDecimal;
			public add(param0: java.math.BigDecimal, param1: java.math.MathContext): java.math.BigDecimal;
			public multiply(param0: java.math.BigDecimal, param1: java.math.MathContext): java.math.BigDecimal;
			public divide(param0: java.math.BigDecimal, param1: number, param2: java.math.RoundingMode): java.math.BigDecimal;
			public toString(): string;
			public precision(): number;
			public movePointRight(param0: number): java.math.BigDecimal;
			public add(param0: java.math.BigDecimal): java.math.BigDecimal;
			public divideAndRemainder(param0: java.math.BigDecimal, param1: java.math.MathContext): native.Array<java.math.BigDecimal>;
			public movePointLeft(param0: number): java.math.BigDecimal;
			public constructor(param0: number, param1: java.math.MathContext);
			public hashCode(): number;
		}
	}
}

declare module java {
	export module math {
		export class BigInteger extends java.lang.Number {
			public static class: java.lang.Class<java.math.BigInteger>;
			public static ZERO: java.math.BigInteger;
			public static ONE: java.math.BigInteger;
			public static TEN: java.math.BigInteger;
			public remainder(param0: java.math.BigInteger): java.math.BigInteger;
			public isProbablePrime(param0: number): boolean;
			public constructor(param0: number, param1: native.Array<number>);
			public multiply(param0: java.math.BigInteger): java.math.BigInteger;
			public divideAndRemainder(param0: java.math.BigInteger): native.Array<java.math.BigInteger>;
			public testBit(param0: number): boolean;
			public divide(param0: java.math.BigInteger): java.math.BigInteger;
			public constructor(param0: string, param1: number);
			public constructor(param0: string);
			public pow(param0: number): java.math.BigInteger;
			public toByteArray(): native.Array<number>;
			public nextProbablePrime(): java.math.BigInteger;
			public bitCount(): number;
			public constructor(param0: number, param1: java.util.Random);
			public andNot(param0: java.math.BigInteger): java.math.BigInteger;
			public constructor();
			public constructor(param0: native.Array<number>);
			public add(param0: java.math.BigInteger): java.math.BigInteger;
			public floatValue(): number;
			public intValue(): number;
			public xor(param0: java.math.BigInteger): java.math.BigInteger;
			public toString(param0: number): string;
			public shiftLeft(param0: number): java.math.BigInteger;
			public flipBit(param0: number): java.math.BigInteger;
			public constructor(param0: number, param1: number, param2: java.util.Random);
			public longValue(): number;
			public equals(param0: any): boolean;
			public mod(param0: java.math.BigInteger): java.math.BigInteger;
			public setBit(param0: number): java.math.BigInteger;
			public abs(): java.math.BigInteger;
			public clearBit(param0: number): java.math.BigInteger;
			public getLowestSetBit(): number;
			public doubleValue(): number;
			public gcd(param0: java.math.BigInteger): java.math.BigInteger;
			public modInverse(param0: java.math.BigInteger): java.math.BigInteger;
			public compareTo(param0: java.math.BigInteger): number;
			public bitLength(): number;
			public min(param0: java.math.BigInteger): java.math.BigInteger;
			public signum(): number;
			public not(): java.math.BigInteger;
			public static valueOf(param0: number): java.math.BigInteger;
			public max(param0: java.math.BigInteger): java.math.BigInteger;
			public negate(): java.math.BigInteger;
			public toString(): string;
			public or(param0: java.math.BigInteger): java.math.BigInteger;
			public shiftRight(param0: number): java.math.BigInteger;
			public subtract(param0: java.math.BigInteger): java.math.BigInteger;
			public and(param0: java.math.BigInteger): java.math.BigInteger;
			public static probablePrime(param0: number, param1: java.util.Random): java.math.BigInteger;
			public hashCode(): number;
			public modPow(param0: java.math.BigInteger, param1: java.math.BigInteger): java.math.BigInteger;
		}
	}
}

declare module java {
	export module math {
		export class MathContext extends java.lang.Object implements java.io.Serializable {
			public static class: java.lang.Class<java.math.MathContext>;
			public static DECIMAL128: java.math.MathContext;
			public static DECIMAL32: java.math.MathContext;
			public static DECIMAL64: java.math.MathContext;
			public static UNLIMITED: java.math.MathContext;
			public equals(param0: any): boolean;
			public toString(): string;
			public getPrecision(): number;
			public constructor(param0: number);
			public constructor(param0: number, param1: java.math.RoundingMode);
			public constructor(param0: string);
			public getRoundingMode(): java.math.RoundingMode;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module math {
		export class RoundingMode {
			public static class: java.lang.Class<java.math.RoundingMode>;
			public static CEILING: java.math.RoundingMode;
			public static DOWN: java.math.RoundingMode;
			public static FLOOR: java.math.RoundingMode;
			public static HALF_DOWN: java.math.RoundingMode;
			public static HALF_EVEN: java.math.RoundingMode;
			public static HALF_UP: java.math.RoundingMode;
			public static UNNECESSARY: java.math.RoundingMode;
			public static UP: java.math.RoundingMode;
			public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			public static valueOf(param0: number): java.math.RoundingMode;
			public static values(): native.Array<java.math.RoundingMode>;
			public static valueOf(param0: string): java.math.RoundingMode;
		}
	}
}

declare module java {
	export module net {
		export abstract class Authenticator extends java.lang.Object {
			public static class: java.lang.Class<java.net.Authenticator>;
			public static requestPasswordAuthentication(param0: java.net.InetAddress, param1: number, param2: string, param3: string, param4: string): java.net.PasswordAuthentication;
			public getRequestingPrompt(): string;
			public getRequestingURL(): java.net.URL;
			public constructor();
			public static requestPasswordAuthentication(param0: string, param1: java.net.InetAddress, param2: number, param3: string, param4: string, param5: string, param6: java.net.URL, param7: java.net.Authenticator.RequestorType): java.net.PasswordAuthentication;
			public getRequestingHost(): string;
			public static setDefault(param0: java.net.Authenticator): void;
			public getPasswordAuthentication(): java.net.PasswordAuthentication;
			public getRequestingPort(): number;
			public getRequestingSite(): java.net.InetAddress;
			public getRequestingScheme(): string;
			public getRequestingProtocol(): string;
			public static requestPasswordAuthentication(param0: string, param1: java.net.InetAddress, param2: number, param3: string, param4: string, param5: string): java.net.PasswordAuthentication;
			public getRequestorType(): java.net.Authenticator.RequestorType;
		}
		export module Authenticator {
			export class RequestorType {
				public static class: java.lang.Class<java.net.Authenticator.RequestorType>;
				public static PROXY: java.net.Authenticator.RequestorType;
				public static SERVER: java.net.Authenticator.RequestorType;
				public static valueOf(param0: string): java.net.Authenticator.RequestorType;
				public static values(): native.Array<java.net.Authenticator.RequestorType>;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			}
		}
	}
}

declare module java {
	export module net {
		export class BindException extends java.net.SocketException {
			public static class: java.lang.Class<java.net.BindException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module net {
		export abstract class CacheRequest extends java.lang.Object {
			public static class: java.lang.Class<java.net.CacheRequest>;
			public abort(): void;
			public constructor();
			public getBody(): java.io.OutputStream;
		}
	}
}

declare module java {
	export module net {
		export abstract class CacheResponse extends java.lang.Object {
			public static class: java.lang.Class<java.net.CacheResponse>;
			public getBody(): java.io.InputStream;
			public getHeaders(): java.util.Map<string,java.util.List<string>>;
			public constructor();
		}
	}
}

declare module java {
	export module net {
		export class ConnectException extends java.net.SocketException {
			public static class: java.lang.Class<java.net.ConnectException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module net {
		export abstract class ContentHandler extends java.lang.Object {
			public static class: java.lang.Class<java.net.ContentHandler>;
			public getContent(param0: java.net.URLConnection, param1: native.Array<java.lang.Class<any>>): any;
			public constructor();
			public getContent(param0: java.net.URLConnection): any;
		}
	}
}

declare module java {
	export module net {
		export class ContentHandlerFactory extends java.lang.Object {
			public static class: java.lang.Class<java.net.ContentHandlerFactory>;
			/**
			 * Constructs a new instance of the java.net.ContentHandlerFactory interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				createContentHandler(param0: string): java.net.ContentHandler;
			});
			public constructor();
			public createContentHandler(param0: string): java.net.ContentHandler;
		}
	}
}

declare module java {
	export module net {
		export abstract class CookieHandler extends java.lang.Object {
			public static class: java.lang.Class<java.net.CookieHandler>;
			public static setDefault(param0: java.net.CookieHandler): void;
			public constructor();
			public static getDefault(): java.net.CookieHandler;
			public put(param0: java.net.URI, param1: java.util.Map<string,java.util.List<string>>): void;
			public get(param0: java.net.URI, param1: java.util.Map<string,java.util.List<string>>): java.util.Map<string,java.util.List<string>>;
		}
	}
}

declare module java {
	export module net {
		export class CookieManager extends java.net.CookieHandler {
			public static class: java.lang.Class<java.net.CookieManager>;
			public constructor(param0: java.net.CookieStore, param1: java.net.CookiePolicy);
			public getCookieStore(): java.net.CookieStore;
			public constructor();
			public put(param0: java.net.URI, param1: java.util.Map<string,java.util.List<string>>): void;
			public get(param0: java.net.URI, param1: java.util.Map<string,java.util.List<string>>): java.util.Map<string,java.util.List<string>>;
			public setCookiePolicy(param0: java.net.CookiePolicy): void;
		}
	}
}

declare module java {
	export module net {
		export class CookiePolicy extends java.lang.Object {
			public static class: java.lang.Class<java.net.CookiePolicy>;
			/**
			 * Constructs a new instance of the java.net.CookiePolicy interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				shouldAccept(param0: java.net.URI, param1: java.net.HttpCookie): boolean;
				<clinit>(): void;
			});
			public constructor();
			public static ACCEPT_NONE: java.net.CookiePolicy;
			public static ACCEPT_ALL: java.net.CookiePolicy;
			public static ACCEPT_ORIGINAL_SERVER: java.net.CookiePolicy;
			public shouldAccept(param0: java.net.URI, param1: java.net.HttpCookie): boolean;
		}
	}
}

declare module java {
	export module net {
		export class CookieStore extends java.lang.Object {
			public static class: java.lang.Class<java.net.CookieStore>;
			/**
			 * Constructs a new instance of the java.net.CookieStore interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				add(param0: java.net.URI, param1: java.net.HttpCookie): void;
				get(param0: java.net.URI): java.util.List<java.net.HttpCookie>;
				getCookies(): java.util.List<java.net.HttpCookie>;
				getURIs(): java.util.List<java.net.URI>;
				remove(param0: java.net.URI, param1: java.net.HttpCookie): boolean;
				removeAll(): boolean;
			});
			public constructor();
			public removeAll(): boolean;
			public remove(param0: java.net.URI, param1: java.net.HttpCookie): boolean;
			public add(param0: java.net.URI, param1: java.net.HttpCookie): void;
			public getCookies(): java.util.List<java.net.HttpCookie>;
			public get(param0: java.net.URI): java.util.List<java.net.HttpCookie>;
			public getURIs(): java.util.List<java.net.URI>;
		}
	}
}

declare module java {
	export module net {
		export class DatagramPacket extends java.lang.Object {
			public static class: java.lang.Class<java.net.DatagramPacket>;
			public setLength(param0: number): void;
			public setData(param0: native.Array<number>, param1: number, param2: number): void;
			public getLength(): number;
			public setAddress(param0: java.net.InetAddress): void;
			public constructor(param0: native.Array<number>, param1: number, param2: java.net.InetAddress, param3: number);
			public getSocketAddress(): java.net.SocketAddress;
			public getOffset(): number;
			public constructor(param0: native.Array<number>, param1: number, param2: number, param3: java.net.InetAddress, param4: number);
			public constructor(param0: native.Array<number>, param1: number, param2: number, param3: java.net.SocketAddress);
			public constructor(param0: native.Array<number>, param1: number);
			public getAddress(): java.net.InetAddress;
			public constructor(param0: native.Array<number>, param1: number, param2: java.net.SocketAddress);
			public getData(): native.Array<number>;
			public getPort(): number;
			public constructor(param0: native.Array<number>, param1: number, param2: number);
			public setSocketAddress(param0: java.net.SocketAddress): void;
			public setData(param0: native.Array<number>): void;
			public setPort(param0: number): void;
		}
	}
}

declare module java {
	export module net {
		export class DatagramSocket extends java.lang.Object {
			public static class: java.lang.Class<java.net.DatagramSocket>;
			public getReuseAddress(): boolean;
			public isClosed(): boolean;
			public setSendBufferSize(param0: number): void;
			public connect(param0: java.net.InetAddress, param1: number): void;
			public constructor(param0: java.net.SocketAddress);
			public bind(param0: java.net.SocketAddress): void;
			public setReceiveBufferSize(param0: number): void;
			public setBroadcast(param0: boolean): void;
			public getBroadcast(): boolean;
			public receive(param0: java.net.DatagramPacket): void;
			public getInetAddress(): java.net.InetAddress;
			public setSoTimeout(param0: number): void;
			public setTrafficClass(param0: number): void;
			public constructor(param0: java.net.DatagramSocketImpl);
			public getLocalPort(): number;
			public getTrafficClass(): number;
			public isConnected(): boolean;
			public close(): void;
			public getLocalAddress(): java.net.InetAddress;
			public setReuseAddress(param0: boolean): void;
			public constructor(param0: number, param1: java.net.InetAddress);
			public getSendBufferSize(): number;
			public getSoTimeout(): number;
			public isBound(): boolean;
			public constructor(param0: number);
			public getReceiveBufferSize(): number;
			public constructor();
			public send(param0: java.net.DatagramPacket): void;
			public connect(param0: java.net.SocketAddress): void;
			public getChannel(): java.nio.channels.DatagramChannel;
			public getLocalSocketAddress(): java.net.SocketAddress;
			public getRemoteSocketAddress(): java.net.SocketAddress;
			public static setDatagramSocketImplFactory(param0: java.net.DatagramSocketImplFactory): void;
			public getPort(): number;
			public disconnect(): void;
		}
	}
}

declare module java {
	export module net {
		export abstract class DatagramSocketImpl extends java.lang.Object implements java.net.SocketOptions {
			public static class: java.lang.Class<java.net.DatagramSocketImpl>;
			public fd: java.io.FileDescriptor;
			public localPort: number;
			public join(param0: java.net.InetAddress): void;
			public setOption(param0: number, param1: any): void;
			public create(): void;
			public connect(param0: java.net.InetAddress, param1: number): void;
			public joinGroup(param0: java.net.SocketAddress, param1: java.net.NetworkInterface): void;
			public constructor();
			public peekData(param0: java.net.DatagramPacket): number;
			/** @deprecated */
			public setTTL(param0: number): void;
			public send(param0: java.net.DatagramPacket): void;
			public receive(param0: java.net.DatagramPacket): void;
			public setTimeToLive(param0: number): void;
			public getLocalPort(): number;
			public leave(param0: java.net.InetAddress): void;
			public getFileDescriptor(): java.io.FileDescriptor;
			public leaveGroup(param0: java.net.SocketAddress, param1: java.net.NetworkInterface): void;
			public getOption(param0: number): any;
			public bind(param0: number, param1: java.net.InetAddress): void;
			public close(): void;
			/** @deprecated */
			public getTTL(): number;
			public getTimeToLive(): number;
			public peek(param0: java.net.InetAddress): number;
			public disconnect(): void;
		}
	}
}

declare module java {
	export module net {
		export class DatagramSocketImplFactory extends java.lang.Object {
			public static class: java.lang.Class<java.net.DatagramSocketImplFactory>;
			/**
			 * Constructs a new instance of the java.net.DatagramSocketImplFactory interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				createDatagramSocketImpl(): java.net.DatagramSocketImpl;
			});
			public constructor();
			public createDatagramSocketImpl(): java.net.DatagramSocketImpl;
		}
	}
}

declare module java {
	export module net {
		export class FileNameMap extends java.lang.Object {
			public static class: java.lang.Class<java.net.FileNameMap>;
			/**
			 * Constructs a new instance of the java.net.FileNameMap interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				getContentTypeFor(param0: string): string;
			});
			public constructor();
			public getContentTypeFor(param0: string): string;
		}
	}
}

declare module java {
	export module net {
		export class HttpCookie extends java.lang.Object implements java.lang.Cloneable {
			public static class: java.lang.Class<java.net.HttpCookie>;
			public getPortlist(): string;
			public equals(param0: any): boolean;
			public getComment(): string;
			public setCommentURL(param0: string): void;
			public setValue(param0: string): void;
			public getMaxAge(): number;
			public hasExpired(): boolean;
			public getVersion(): number;
			public setDiscard(param0: boolean): void;
			public constructor(param0: string, param1: string);
			public setMaxAge(param0: number): void;
			public getCommentURL(): string;
			public setPath(param0: string): void;
			public setPortlist(param0: string): void;
			public static parse(param0: string): java.util.List<java.net.HttpCookie>;
			public setDomain(param0: string): void;
			public static domainMatches(param0: string, param1: string): boolean;
			public setVersion(param0: number): void;
			public getPath(): string;
			public clone(): any;
			public toString(): string;
			public getName(): string;
			public setComment(param0: string): void;
			public getSecure(): boolean;
			public getDiscard(): boolean;
			public getDomain(): string;
			public setSecure(param0: boolean): void;
			public getValue(): string;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module net {
		export class HttpRetryException extends java.io.IOException {
			public static class: java.lang.Class<java.net.HttpRetryException>;
			public constructor(param0: string, param1: number, param2: string);
			public getReason(): string;
			public responseCode(): number;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor(param0: string, param1: number);
			public getLocation(): string;
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module net {
		export abstract class HttpURLConnection extends java.net.URLConnection {
			public static class: java.lang.Class<java.net.HttpURLConnection>;
			public method: string;
			public responseCode: number;
			public responseMessage: string;
			public instanceFollowRedirects: boolean;
			public chunkLength: number;
			public fixedContentLength: number;
			public static HTTP_ACCEPTED: number;
			public static HTTP_BAD_GATEWAY: number;
			public static HTTP_BAD_METHOD: number;
			public static HTTP_BAD_REQUEST: number;
			public static HTTP_CLIENT_TIMEOUT: number;
			public static HTTP_CONFLICT: number;
			public static HTTP_CREATED: number;
			public static HTTP_ENTITY_TOO_LARGE: number;
			public static HTTP_FORBIDDEN: number;
			public static HTTP_GATEWAY_TIMEOUT: number;
			public static HTTP_GONE: number;
			public static HTTP_INTERNAL_ERROR: number;
			public static HTTP_LENGTH_REQUIRED: number;
			public static HTTP_MOVED_PERM: number;
			public static HTTP_MOVED_TEMP: number;
			public static HTTP_MULT_CHOICE: number;
			public static HTTP_NO_CONTENT: number;
			public static HTTP_NOT_ACCEPTABLE: number;
			public static HTTP_NOT_AUTHORITATIVE: number;
			public static HTTP_NOT_FOUND: number;
			public static HTTP_NOT_IMPLEMENTED: number;
			public static HTTP_NOT_MODIFIED: number;
			public static HTTP_OK: number;
			public static HTTP_PARTIAL: number;
			public static HTTP_PAYMENT_REQUIRED: number;
			public static HTTP_PRECON_FAILED: number;
			public static HTTP_PROXY_AUTH: number;
			public static HTTP_REQ_TOO_LONG: number;
			public static HTTP_RESET: number;
			public static HTTP_SEE_OTHER: number;
			public static HTTP_SERVER_ERROR: number;
			public static HTTP_USE_PROXY: number;
			public static HTTP_UNAUTHORIZED: number;
			public static HTTP_UNSUPPORTED_TYPE: number;
			public static HTTP_UNAVAILABLE: number;
			public static HTTP_VERSION: number;
			public setFixedLengthStreamingMode(param0: number): void;
			public getRequestMethod(): string;
			public static getFollowRedirects(): boolean;
			public getContentEncoding(): string;
			public setInstanceFollowRedirects(param0: boolean): void;
			public getHeaderFieldDate(param0: string, param1: number): number;
			public getPermission(): java.security.Permission;
			public usingProxy(): boolean;
			public getErrorStream(): java.io.InputStream;
			public constructor(param0: java.net.URL);
			public getResponseCode(): number;
			public static setFollowRedirects(param0: boolean): void;
			public getResponseMessage(): string;
			public setRequestMethod(param0: string): void;
			public setChunkedStreamingMode(param0: number): void;
			public getInstanceFollowRedirects(): boolean;
			public disconnect(): void;
		}
	}
}

declare module java {
	export module net {
		export class IDN extends java.lang.Object {
			public static class: java.lang.Class<java.net.IDN>;
			public static ALLOW_UNASSIGNED: number;
			public static USE_STD3_ASCII_RULES: number;
			public static toUnicode(param0: string, param1: number): string;
			public static toUnicode(param0: string): string;
			public static toASCII(param0: string, param1: number): string;
			public static toASCII(param0: string): string;
		}
	}
}

declare module java {
	export module net {
		export class Inet4Address extends java.net.InetAddress {
			public static class: java.lang.Class<java.net.Inet4Address>;
			public isMCOrgLocal(): boolean;
			public isMulticastAddress(): boolean;
			public isAnyLocalAddress(): boolean;
			public isLinkLocalAddress(): boolean;
			public isLoopbackAddress(): boolean;
			public isMCSiteLocal(): boolean;
			public isMCGlobal(): boolean;
			public isMCNodeLocal(): boolean;
			public isMCLinkLocal(): boolean;
			public isSiteLocalAddress(): boolean;
		}
	}
}

declare module java {
	export module net {
		export class Inet6Address extends java.net.InetAddress {
			public static class: java.lang.Class<java.net.Inet6Address>;
			public static getByAddress(param0: string, param1: native.Array<number>, param2: java.net.NetworkInterface): java.net.Inet6Address;
			public isMCOrgLocal(): boolean;
			public isMulticastAddress(): boolean;
			public isLinkLocalAddress(): boolean;
			public isLoopbackAddress(): boolean;
			public getScopedInterface(): java.net.NetworkInterface;
			public isMCGlobal(): boolean;
			public getScopeId(): number;
			public static getByAddress(param0: string, param1: native.Array<number>): java.net.InetAddress;
			public isAnyLocalAddress(): boolean;
			public toString(): string;
			public static getByAddress(param0: string, param1: native.Array<number>, param2: number): java.net.Inet6Address;
			public isMCSiteLocal(): boolean;
			public static getByAddress(param0: native.Array<number>): java.net.InetAddress;
			public isMCNodeLocal(): boolean;
			public isMCLinkLocal(): boolean;
			public isIPv4CompatibleAddress(): boolean;
			public isSiteLocalAddress(): boolean;
		}
	}
}

declare module java {
	export module net {
		export class InetAddress extends java.lang.Object implements java.io.Serializable {
			public static class: java.lang.Class<java.net.InetAddress>;
			public equals(param0: any): boolean;
			public isMCOrgLocal(): boolean;
			public isMulticastAddress(): boolean;
			public isLinkLocalAddress(): boolean;
			public isLoopbackAddress(): boolean;
			public static getAllByName(param0: string): native.Array<java.net.InetAddress>;
			public isMCGlobal(): boolean;
			public getHostAddress(): string;
			public static getByName(param0: string): java.net.InetAddress;
			public isReachable(param0: java.net.NetworkInterface, param1: number, param2: number): boolean;
			public static getByAddress(param0: string, param1: native.Array<number>): java.net.InetAddress;
			public getCanonicalHostName(): string;
			public static getLocalHost(): java.net.InetAddress;
			public toString(): string;
			public isAnyLocalAddress(): boolean;
			public isMCSiteLocal(): boolean;
			public getAddress(): native.Array<number>;
			public isReachable(param0: number): boolean;
			public isMCNodeLocal(): boolean;
			public static getByAddress(param0: native.Array<number>): java.net.InetAddress;
			public isMCLinkLocal(): boolean;
			public getHostName(): string;
			public hashCode(): number;
			public isSiteLocalAddress(): boolean;
		}
	}
}

declare module java {
	export module net {
		export class InetSocketAddress extends java.net.SocketAddress {
			public static class: java.lang.Class<java.net.InetSocketAddress>;
			public equals(param0: any): boolean;
			public toString(): string;
			public static createUnresolved(param0: string, param1: number): java.net.InetSocketAddress;
			public constructor(param0: string, param1: number);
			public constructor(param0: number);
			public constructor();
			public isUnresolved(): boolean;
			public getAddress(): java.net.InetAddress;
			public getHostName(): string;
			public getPort(): number;
			public constructor(param0: java.net.InetAddress, param1: number);
			public hashCode(): number;
		}
	}
}

declare module java {
	export module net {
		export class InterfaceAddress extends java.lang.Object {
			public static class: java.lang.Class<java.net.InterfaceAddress>;
			public equals(param0: any): boolean;
			public getNetworkPrefixLength(): number;
			public toString(): string;
			public getBroadcast(): java.net.InetAddress;
			public getAddress(): java.net.InetAddress;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module net {
		export abstract class JarURLConnection extends java.net.URLConnection {
			public static class: java.lang.Class<java.net.JarURLConnection>;
			public jarFileURLConnection: java.net.URLConnection;
			public getEntryName(): string;
			public constructor(param0: java.net.URL);
			public getJarEntry(): java.util.jar.JarEntry;
			public getCertificates(): native.Array<java.security.cert.Certificate>;
			public getManifest(): java.util.jar.Manifest;
			public getMainAttributes(): java.util.jar.Attributes;
			public getAttributes(): java.util.jar.Attributes;
			public getJarFile(): java.util.jar.JarFile;
			public getJarFileURL(): java.net.URL;
		}
	}
}

declare module java {
	export module net {
		export class MalformedURLException extends java.io.IOException {
			public static class: java.lang.Class<java.net.MalformedURLException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module net {
		export class MulticastSocket extends java.net.DatagramSocket {
			public static class: java.lang.Class<java.net.MulticastSocket>;
			public leaveGroup(param0: java.net.InetAddress): void;
			public constructor(param0: number, param1: java.net.InetAddress);
			public setLoopbackMode(param0: boolean): void;
			public getNetworkInterface(): java.net.NetworkInterface;
			public constructor(param0: number);
			public joinGroup(param0: java.net.SocketAddress, param1: java.net.NetworkInterface): void;
			public constructor(param0: java.net.SocketAddress);
			public constructor();
			/** @deprecated */
			public setTTL(param0: number): void;
			public send(param0: java.net.DatagramPacket): void;
			public setNetworkInterface(param0: java.net.NetworkInterface): void;
			public getInterface(): java.net.InetAddress;
			public setTimeToLive(param0: number): void;
			public constructor(param0: java.net.DatagramSocketImpl);
			public leaveGroup(param0: java.net.SocketAddress, param1: java.net.NetworkInterface): void;
			public getLoopbackMode(): boolean;
			/** @deprecated */
			public getTTL(): number;
			public joinGroup(param0: java.net.InetAddress): void;
			/** @deprecated */
			public send(param0: java.net.DatagramPacket, param1: number): void;
			public getTimeToLive(): number;
			public setInterface(param0: java.net.InetAddress): void;
		}
	}
}

declare module java {
	export module net {
		export class NetPermission extends java.security.BasicPermission {
			public static class: java.lang.Class<java.net.NetPermission>;
			public constructor(param0: string, param1: string);
			public implies(param0: java.security.Permission): boolean;
			public getActions(): string;
			public checkGuard(param0: any): void;
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module net {
		export class NetworkInterface extends java.lang.Object {
			public static class: java.lang.Class<java.net.NetworkInterface>;
			public getParent(): java.net.NetworkInterface;
			public equals(param0: any): boolean;
			public getHardwareAddress(): native.Array<number>;
			public isVirtual(): boolean;
			public getInterfaceAddresses(): java.util.List<java.net.InterfaceAddress>;
			public isLoopback(): boolean;
			public getSubInterfaces(): java.util.Enumeration<java.net.NetworkInterface>;
			public getMTU(): number;
			public static getNetworkInterfaces(): java.util.Enumeration<java.net.NetworkInterface>;
			public getInetAddresses(): java.util.Enumeration<java.net.InetAddress>;
			public static getByInetAddress(param0: java.net.InetAddress): java.net.NetworkInterface;
			public toString(): string;
			public getName(): string;
			public static getByName(param0: string): java.net.NetworkInterface;
			public isPointToPoint(): boolean;
			public isUp(): boolean;
			public supportsMulticast(): boolean;
			public getDisplayName(): string;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module net {
		export class NoRouteToHostException extends java.net.SocketException {
			public static class: java.lang.Class<java.net.NoRouteToHostException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module net {
		export class PasswordAuthentication extends java.lang.Object {
			public static class: java.lang.Class<java.net.PasswordAuthentication>;
			public getUserName(): string;
			public getPassword(): native.Array<string>;
			public constructor(param0: string, param1: native.Array<string>);
		}
	}
}

declare module java {
	export module net {
		export class PortUnreachableException extends java.net.SocketException {
			public static class: java.lang.Class<java.net.PortUnreachableException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module net {
		export class ProtocolException extends java.io.IOException {
			public static class: java.lang.Class<java.net.ProtocolException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module net {
		export class Proxy extends java.lang.Object {
			public static class: java.lang.Class<java.net.Proxy>;
			public static NO_PROXY: java.net.Proxy;
			public equals(param0: any): boolean;
			public toString(): string;
			public type(): java.net.Proxy.Type;
			public address(): java.net.SocketAddress;
			public constructor(param0: java.net.Proxy.Type, param1: java.net.SocketAddress);
			public hashCode(): number;
		}
		export module Proxy {
			export class Type {
				public static class: java.lang.Class<java.net.Proxy.Type>;
				public static DIRECT: java.net.Proxy.Type;
				public static HTTP: java.net.Proxy.Type;
				public static SOCKS: java.net.Proxy.Type;
				public static values(): native.Array<java.net.Proxy.Type>;
				public static valueOf(param0: string): java.net.Proxy.Type;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			}
		}
	}
}

declare module java {
	export module net {
		export abstract class ProxySelector extends java.lang.Object {
			public static class: java.lang.Class<java.net.ProxySelector>;
			public connectFailed(param0: java.net.URI, param1: java.net.SocketAddress, param2: java.io.IOException): void;
			public static getDefault(): java.net.ProxySelector;
			public static setDefault(param0: java.net.ProxySelector): void;
			public select(param0: java.net.URI): java.util.List<java.net.Proxy>;
			public constructor();
		}
	}
}

declare module java {
	export module net {
		export abstract class ResponseCache extends java.lang.Object {
			public static class: java.lang.Class<java.net.ResponseCache>;
			public put(param0: java.net.URI, param1: java.net.URLConnection): java.net.CacheRequest;
			public static setDefault(param0: java.net.ResponseCache): void;
			public get(param0: java.net.URI, param1: string, param2: java.util.Map<string,java.util.List<string>>): java.net.CacheResponse;
			public constructor();
			public static getDefault(): java.net.ResponseCache;
		}
	}
}

declare module java {
	export module net {
		export abstract class SecureCacheResponse extends java.net.CacheResponse {
			public static class: java.lang.Class<java.net.SecureCacheResponse>;
			public getServerCertificateChain(): java.util.List<java.security.cert.Certificate>;
			public getLocalPrincipal(): java.security.Principal;
			public getCipherSuite(): string;
			public getLocalCertificateChain(): java.util.List<java.security.cert.Certificate>;
			public constructor();
			public getPeerPrincipal(): java.security.Principal;
		}
	}
}

declare module java {
	export module net {
		export class ServerSocket extends java.lang.Object {
			public static class: java.lang.Class<java.net.ServerSocket>;
			public isClosed(): boolean;
			public getReuseAddress(): boolean;
			public bind(param0: java.net.SocketAddress, param1: number): void;
			public getSoTimeout(): number;
			public static setSocketFactory(param0: java.net.SocketImplFactory): void;
			public isBound(): boolean;
			public constructor(param0: number);
			public getReceiveBufferSize(): number;
			public bind(param0: java.net.SocketAddress): void;
			public constructor();
			public constructor(param0: number, param1: number, param2: java.net.InetAddress);
			public getChannel(): java.nio.channels.ServerSocketChannel;
			public setReceiveBufferSize(param0: number): void;
			public toString(): string;
			public getInetAddress(): java.net.InetAddress;
			public setSoTimeout(param0: number): void;
			public implAccept(param0: java.net.Socket): void;
			public setPerformancePreferences(param0: number, param1: number, param2: number): void;
			public getLocalPort(): number;
			public getLocalSocketAddress(): java.net.SocketAddress;
			public close(): void;
			public constructor(param0: number, param1: number);
			public accept(): java.net.Socket;
			public setReuseAddress(param0: boolean): void;
		}
	}
}

declare module java {
	export module net {
		export class Socket extends java.lang.Object {
			public static class: java.lang.Class<java.net.Socket>;
			public constructor(param0: java.net.Proxy);
			public isInputShutdown(): boolean;
			public getInetAddress(): java.net.InetAddress;
			public setTrafficClass(param0: number): void;
			public constructor(param0: string, param1: number);
			public isConnected(): boolean;
			public getOutputStream(): java.io.OutputStream;
			public constructor(param0: java.net.InetAddress, param1: number);
			public constructor(param0: java.net.SocketImpl);
			public isOutputShutdown(): boolean;
			public sendUrgentData(param0: number): void;
			public getKeepAlive(): boolean;
			public isBound(): boolean;
			public constructor();
			public getOOBInline(): boolean;
			public constructor(param0: java.net.InetAddress, param1: number, param2: java.net.InetAddress, param3: number);
			public getLocalSocketAddress(): java.net.SocketAddress;
			public getRemoteSocketAddress(): java.net.SocketAddress;
			public getPort(): number;
			public shutdownOutput(): void;
			public isClosed(): boolean;
			public getReuseAddress(): boolean;
			public getTcpNoDelay(): boolean;
			public setSendBufferSize(param0: number): void;
			public constructor(param0: string, param1: number, param2: java.net.InetAddress, param3: number);
			public setKeepAlive(param0: boolean): void;
			public setSoLinger(param0: boolean, param1: number): void;
			public bind(param0: java.net.SocketAddress): void;
			public connect(param0: java.net.SocketAddress, param1: number): void;
			public getChannel(): java.nio.channels.SocketChannel;
			public setReceiveBufferSize(param0: number): void;
			/** @deprecated */
			public constructor(param0: string, param1: number, param2: boolean);
			public setSoTimeout(param0: number): void;
			public getLocalPort(): number;
			public getTrafficClass(): number;
			public close(): void;
			public getLocalAddress(): java.net.InetAddress;
			public getSoLinger(): number;
			public setReuseAddress(param0: boolean): void;
			public getSendBufferSize(): number;
			public getSoTimeout(): number;
			/** @deprecated */
			public constructor(param0: java.net.InetAddress, param1: number, param2: boolean);
			public getReceiveBufferSize(): number;
			public setOOBInline(param0: boolean): void;
			public static setSocketImplFactory(param0: java.net.SocketImplFactory): void;
			public shutdownInput(): void;
			public toString(): string;
			public getInputStream(): java.io.InputStream;
			public connect(param0: java.net.SocketAddress): void;
			public setPerformancePreferences(param0: number, param1: number, param2: number): void;
			public setTcpNoDelay(param0: boolean): void;
		}
	}
}

declare module java {
	export module net {
		export abstract class SocketAddress extends java.lang.Object implements java.io.Serializable {
			public static class: java.lang.Class<java.net.SocketAddress>;
			public constructor();
		}
	}
}

declare module java {
	export module net {
		export class SocketException extends java.io.IOException {
			public static class: java.lang.Class<java.net.SocketException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module net {
		export abstract class SocketImpl extends java.lang.Object implements java.net.SocketOptions {
			public static class: java.lang.Class<java.net.SocketImpl>;
			public address: java.net.InetAddress;
			public port: number;
			public fd: java.io.FileDescriptor;
			public localport: number;
			public shutdownOutput(): void;
			public bind(param0: java.net.InetAddress, param1: number): void;
			public supportsUrgentData(): boolean;
			public setOption(param0: number, param1: any): void;
			public sendUrgentData(param0: number): void;
			public connect(param0: java.net.InetAddress, param1: number): void;
			public create(param0: boolean): void;
			public constructor();
			public connect(param0: java.net.SocketAddress, param1: number): void;
			public available(): number;
			public listen(param0: number): void;
			public shutdownInput(): void;
			public toString(): string;
			public getInputStream(): java.io.InputStream;
			public getInetAddress(): java.net.InetAddress;
			public connect(param0: string, param1: number): void;
			public setPerformancePreferences(param0: number, param1: number, param2: number): void;
			public accept(param0: java.net.SocketImpl): void;
			public getLocalPort(): number;
			public getFileDescriptor(): java.io.FileDescriptor;
			public getOutputStream(): java.io.OutputStream;
			public getOption(param0: number): any;
			public close(): void;
			public getPort(): number;
		}
	}
}

declare module java {
	export module net {
		export class SocketImplFactory extends java.lang.Object {
			public static class: java.lang.Class<java.net.SocketImplFactory>;
			/**
			 * Constructs a new instance of the java.net.SocketImplFactory interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				createSocketImpl(): java.net.SocketImpl;
			});
			public constructor();
			public createSocketImpl(): java.net.SocketImpl;
		}
	}
}

declare module java {
	export module net {
		export class SocketOptions extends java.lang.Object {
			public static class: java.lang.Class<java.net.SocketOptions>;
			/**
			 * Constructs a new instance of the java.net.SocketOptions interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				getOption(param0: number): any;
				setOption(param0: number, param1: any): void;
			});
			public constructor();
			public static SO_REUSEADDR: number;
			public static TCP_NODELAY: number;
			public static IP_TOS: number;
			public static IP_MULTICAST_IF: number;
			public static SO_SNDBUF: number;
			public static SO_TIMEOUT: number;
			public static IP_MULTICAST_IF2: number;
			public static SO_BROADCAST: number;
			public static SO_OOBINLINE: number;
			public static SO_BINDADDR: number;
			public static IP_MULTICAST_LOOP: number;
			public static SO_LINGER: number;
			public static SO_RCVBUF: number;
			public static SO_KEEPALIVE: number;
			public setOption(param0: number, param1: any): void;
			public getOption(param0: number): any;
		}
	}
}

declare module java {
	export module net {
		export class SocketPermission extends java.security.Permission implements java.io.Serializable {
			public static class: java.lang.Class<java.net.SocketPermission>;
			public constructor(param0: string, param1: string);
			public implies(param0: java.security.Permission): boolean;
			public getActions(): string;
			public checkGuard(param0: any): void;
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module net {
		export class SocketTimeoutException extends java.io.InterruptedIOException {
			public static class: java.lang.Class<java.net.SocketTimeoutException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module net {
		export class URI extends java.lang.Object {
			public static class: java.lang.Class<java.net.URI>;
			public constructor(param0: string, param1: string, param2: string, param3: string, param4: string);
			public equals(param0: any): boolean;
			public resolve(param0: string): java.net.URI;
			public toASCIIString(): string;
			public getRawSchemeSpecificPart(): string;
			public getRawAuthority(): string;
			public getFragment(): string;
			public resolve(param0: java.net.URI): java.net.URI;
			public constructor(param0: string, param1: string, param2: string);
			public getUserInfo(): string;
			public getHost(): string;
			public constructor(param0: string, param1: string, param2: string, param3: string);
			public getSchemeSpecificPart(): string;
			public getAuthority(): string;
			public getScheme(): string;
			public getRawPath(): string;
			public getRawQuery(): string;
			public parseServerAuthority(): java.net.URI;
			public getQuery(): string;
			public static create(param0: string): java.net.URI;
			public constructor(param0: string);
			public isOpaque(): boolean;
			public relativize(param0: java.net.URI): java.net.URI;
			public getRawFragment(): string;
			public toURL(): java.net.URL;
			public constructor(param0: string, param1: string, param2: string, param3: number, param4: string, param5: string, param6: string);
			public getPath(): string;
			public toString(): string;
			public isAbsolute(): boolean;
			public compareTo(param0: java.net.URI): number;
			public getPort(): number;
			public normalize(): java.net.URI;
			public getRawUserInfo(): string;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module net {
		export class URISyntaxException extends java.lang.Exception {
			public static class: java.lang.Class<java.net.URISyntaxException>;
			public constructor(param0: string, param1: string);
			public getMessage(): string;
			public getIndex(): number;
			public getInput(): string;
			public getReason(): string;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
			public constructor(param0: string, param1: string, param2: number);
		}
	}
}

declare module java {
	export module net {
		export class URL extends java.lang.Object implements java.io.Serializable {
			public static class: java.lang.Class<java.net.URL>;
			public equals(param0: any): boolean;
			public sameFile(param0: java.net.URL): boolean;
			public constructor(param0: string, param1: string, param2: number, param3: string);
			public constructor(param0: string, param1: string, param2: string);
			public openStream(): java.io.InputStream;
			public getUserInfo(): string;
			public getHost(): string;
			public getFile(): string;
			public constructor(param0: java.net.URL, param1: string, param2: java.net.URLStreamHandler);
			public getAuthority(): string;
			public set(param0: string, param1: string, param2: number, param3: string, param4: string, param5: string, param6: string, param7: string): void;
			public constructor(param0: java.net.URL, param1: string);
			public toExternalForm(): string;
			public getProtocol(): string;
			public getQuery(): string;
			public static setURLStreamHandlerFactory(param0: java.net.URLStreamHandlerFactory): void;
			public constructor(param0: string);
			public toURI(): java.net.URI;
			public constructor(param0: string, param1: string, param2: number, param3: string, param4: java.net.URLStreamHandler);
			public openConnection(): java.net.URLConnection;
			public set(param0: string, param1: string, param2: number, param3: string, param4: string): void;
			public getDefaultPort(): number;
			public getContent(): any;
			public getRef(): string;
			public toString(): string;
			public getPath(): string;
			public getContent(param0: native.Array<java.lang.Class<any>>): any;
			public openConnection(param0: java.net.Proxy): java.net.URLConnection;
			public getPort(): number;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module net {
		export class URLClassLoader extends java.security.SecureClassLoader {
			public static class: java.lang.Class<java.net.URLClassLoader>;
			public definePackage(param0: string, param1: java.util.jar.Manifest, param2: java.net.URL): java.lang.Package;
			public constructor(param0: native.Array<java.net.URL>, param1: java.lang.ClassLoader);
			public getPermissions(param0: java.security.CodeSource): java.security.PermissionCollection;
			public findResource(param0: string): java.net.URL;
			public constructor(param0: java.lang.ClassLoader);
			public constructor();
			public addURL(param0: java.net.URL): void;
			public definePackage(param0: string, param1: string, param2: string, param3: string, param4: string, param5: string, param6: string, param7: java.net.URL): java.lang.Package;
			public constructor(param0: native.Array<java.net.URL>);
			public constructor(param0: native.Array<java.net.URL>, param1: java.lang.ClassLoader, param2: java.net.URLStreamHandlerFactory);
			public findClass(param0: string): java.lang.Class<any>;
			public static newInstance(param0: native.Array<java.net.URL>, param1: java.lang.ClassLoader): java.net.URLClassLoader;
			public getURLs(): native.Array<java.net.URL>;
			public static newInstance(param0: native.Array<java.net.URL>): java.net.URLClassLoader;
			public findResources(param0: string): java.util.Enumeration<java.net.URL>;
		}
	}
}

declare module java {
	export module net {
		export abstract class URLConnection extends java.lang.Object {
			public static class: java.lang.Class<java.net.URLConnection>;
			public url: java.net.URL;
			public ifModifiedSince: number;
			public useCaches: boolean;
			public connected: boolean;
			public doOutput: boolean;
			public doInput: boolean;
			public allowUserInteraction: boolean;
			public static guessContentTypeFromStream(param0: java.io.InputStream): string;
			public getExpiration(): number;
			public getHeaderFieldDate(param0: string, param1: number): number;
			/** @deprecated */
			public static setDefaultRequestProperty(param0: string, param1: string): void;
			public getDoOutput(): boolean;
			public getHeaderFieldKey(param0: number): string;
			public getPermission(): java.security.Permission;
			public setConnectTimeout(param0: number): void;
			public getURL(): java.net.URL;
			public static guessContentTypeFromName(param0: string): string;
			public getOutputStream(): java.io.OutputStream;
			public setReadTimeout(param0: number): void;
			/** @deprecated */
			public static getDefaultRequestProperty(param0: string): string;
			public setDefaultUseCaches(param0: boolean): void;
			public static getFileNameMap(): java.net.FileNameMap;
			public getAllowUserInteraction(): boolean;
			public getDefaultUseCaches(): boolean;
			public setAllowUserInteraction(param0: boolean): void;
			public getRequestProperty(param0: string): string;
			public getContentEncoding(): string;
			public getDate(): number;
			public getLastModified(): number;
			public getHeaderField(param0: number): string;
			public getHeaderFields(): java.util.Map<string,java.util.List<string>>;
			public static setFileNameMap(param0: java.net.FileNameMap): void;
			public getDoInput(): boolean;
			public setUseCaches(param0: boolean): void;
			public constructor(param0: java.net.URL);
			public addRequestProperty(param0: string, param1: string): void;
			public static getDefaultAllowUserInteraction(): boolean;
			public static setContentHandlerFactory(param0: java.net.ContentHandlerFactory): void;
			public getContentLength(): number;
			public getHeaderFieldInt(param0: string, param1: number): number;
			public setDoInput(param0: boolean): void;
			public getContentType(): string;
			public getContent(): any;
			public getConnectTimeout(): number;
			public getUseCaches(): boolean;
			public toString(): string;
			public getHeaderField(param0: string): string;
			public getInputStream(): java.io.InputStream;
			public getContent(param0: native.Array<java.lang.Class<any>>): any;
			public getIfModifiedSince(): number;
			public setRequestProperty(param0: string, param1: string): void;
			public getReadTimeout(): number;
			public getRequestProperties(): java.util.Map<string,java.util.List<string>>;
			public setDoOutput(param0: boolean): void;
			public connect(): void;
			public static setDefaultAllowUserInteraction(param0: boolean): void;
			public setIfModifiedSince(param0: number): void;
		}
	}
}

declare module java {
	export module net {
		export class URLDecoder extends java.lang.Object {
			public static class: java.lang.Class<java.net.URLDecoder>;
			/** @deprecated */
			public static decode(param0: string): string;
			public constructor();
			public static decode(param0: string, param1: string): string;
		}
	}
}

declare module java {
	export module net {
		export class URLEncoder extends java.lang.Object {
			public static class: java.lang.Class<java.net.URLEncoder>;
			public static encode(param0: string, param1: string): string;
			/** @deprecated */
			public static encode(param0: string): string;
		}
	}
}

declare module java {
	export module net {
		export abstract class URLStreamHandler extends java.lang.Object {
			public static class: java.lang.Class<java.net.URLStreamHandler>;
			public equals(param0: any): boolean;
			public hostsEqual(param0: java.net.URL, param1: java.net.URL): boolean;
			public setURL(param0: java.net.URL, param1: string, param2: string, param3: number, param4: string, param5: string, param6: string, param7: string, param8: string): void;
			public openConnection(param0: java.net.URL): java.net.URLConnection;
			public getDefaultPort(): number;
			public constructor();
			public getHostAddress(param0: java.net.URL): java.net.InetAddress;
			public parseURL(param0: java.net.URL, param1: string, param2: number, param3: number): void;
			public sameFile(param0: java.net.URL, param1: java.net.URL): boolean;
			/** @deprecated */
			public setURL(param0: java.net.URL, param1: string, param2: string, param3: number, param4: string, param5: string): void;
			public openConnection(param0: java.net.URL, param1: java.net.Proxy): java.net.URLConnection;
			public equals(param0: java.net.URL, param1: java.net.URL): boolean;
			public hashCode(param0: java.net.URL): number;
			public toExternalForm(param0: java.net.URL): string;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module net {
		export class URLStreamHandlerFactory extends java.lang.Object {
			public static class: java.lang.Class<java.net.URLStreamHandlerFactory>;
			/**
			 * Constructs a new instance of the java.net.URLStreamHandlerFactory interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				createURLStreamHandler(param0: string): java.net.URLStreamHandler;
			});
			public constructor();
			public createURLStreamHandler(param0: string): java.net.URLStreamHandler;
		}
	}
}

declare module java {
	export module net {
		export class UnknownHostException extends java.io.IOException {
			public static class: java.lang.Class<java.net.UnknownHostException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module net {
		export class UnknownServiceException extends java.io.IOException {
			public static class: java.lang.Class<java.net.UnknownServiceException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module nio {
		export abstract class Buffer extends java.lang.Object {
			public static class: java.lang.Class<java.nio.Buffer>;
			public isReadOnly(): boolean;
			public array(): any;
			public isDirect(): boolean;
			public hasRemaining(): boolean;
			public limit(param0: number): java.nio.Buffer;
			public position(param0: number): java.nio.Buffer;
			public clear(): java.nio.Buffer;
			public flip(): java.nio.Buffer;
			public mark(): java.nio.Buffer;
			public hasArray(): boolean;
			public limit(): number;
			public toString(): string;
			public capacity(): number;
			public position(): number;
			public remaining(): number;
			public reset(): java.nio.Buffer;
			public arrayOffset(): number;
			public rewind(): java.nio.Buffer;
		}
	}
}

declare module java {
	export module nio {
		export class BufferOverflowException extends java.lang.RuntimeException {
			public static class: java.lang.Class<java.nio.BufferOverflowException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module nio {
		export class BufferUnderflowException extends java.lang.RuntimeException {
			public static class: java.lang.Class<java.nio.BufferUnderflowException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module nio {
		export abstract class ByteBuffer extends java.nio.Buffer implements java.lang.Comparable<java.nio.ByteBuffer>  {
			public static class: java.lang.Class<java.nio.ByteBuffer>;
			public putShort(param0: number, param1: number): java.nio.ByteBuffer;
			public asIntBuffer(): java.nio.IntBuffer;
			public getChar(param0: number): string;
			public putLong(param0: number): java.nio.ByteBuffer;
			public isDirect(): boolean;
			public putFloat(param0: number, param1: number): java.nio.ByteBuffer;
			public compareTo(param0: java.nio.ByteBuffer): number;
			public getFloat(param0: number): number;
			public compact(): java.nio.ByteBuffer;
			public putFloat(param0: number): java.nio.ByteBuffer;
			public put(param0: java.nio.ByteBuffer): java.nio.ByteBuffer;
			public order(): java.nio.ByteOrder;
			public asShortBuffer(): java.nio.ShortBuffer;
			public put(param0: number): java.nio.ByteBuffer;
			public putLong(param0: number, param1: number): java.nio.ByteBuffer;
			public getShort(param0: number): number;
			public arrayOffset(): number;
			public asLongBuffer(): java.nio.LongBuffer;
			public putDouble(param0: number, param1: number): java.nio.ByteBuffer;
			public slice(): java.nio.ByteBuffer;
			public getDouble(param0: number): number;
			public array(): any;
			public putChar(param0: string): java.nio.ByteBuffer;
			public put(param0: native.Array<number>): java.nio.ByteBuffer;
			public static allocate(param0: number): java.nio.ByteBuffer;
			public static wrap(param0: native.Array<number>): java.nio.ByteBuffer;
			public duplicate(): java.nio.ByteBuffer;
			public asCharBuffer(): java.nio.CharBuffer;
			public hasArray(): boolean;
			public asReadOnlyBuffer(): java.nio.ByteBuffer;
			public order(param0: java.nio.ByteOrder): java.nio.ByteBuffer;
			public put(param0: number, param1: number): java.nio.ByteBuffer;
			public getInt(param0: number): number;
			public putChar(param0: number, param1: string): java.nio.ByteBuffer;
			public equals(param0: any): boolean;
			public getChar(): string;
			public static wrap(param0: native.Array<number>, param1: number, param2: number): java.nio.ByteBuffer;
			public get(param0: number): number;
			public get(param0: native.Array<number>): java.nio.ByteBuffer;
			public getShort(): number;
			public get(param0: native.Array<number>, param1: number, param2: number): java.nio.ByteBuffer;
			public static allocateDirect(param0: number): java.nio.ByteBuffer;
			public getInt(): number;
			public array(): native.Array<number>;
			public getLong(): number;
			public asFloatBuffer(): java.nio.FloatBuffer;
			public getDouble(): number;
			public putInt(param0: number): java.nio.ByteBuffer;
			public putShort(param0: number): java.nio.ByteBuffer;
			public getLong(param0: number): number;
			public asDoubleBuffer(): java.nio.DoubleBuffer;
			public get(): number;
			public put(param0: native.Array<number>, param1: number, param2: number): java.nio.ByteBuffer;
			public putDouble(param0: number): java.nio.ByteBuffer;
			public getFloat(): number;
			public hashCode(): number;
			public putInt(param0: number, param1: number): java.nio.ByteBuffer;
		}
	}
}

declare module java {
	export module nio {
		export class ByteOrder extends java.lang.Object {
			public static class: java.lang.Class<java.nio.ByteOrder>;
			public static BIG_ENDIAN: java.nio.ByteOrder;
			public static LITTLE_ENDIAN: java.nio.ByteOrder;
			public toString(): string;
			public static nativeOrder(): java.nio.ByteOrder;
		}
	}
}

declare module java {
	export module nio {
		export abstract class CharBuffer extends java.nio.Buffer {
			public static class: java.lang.Class<java.nio.CharBuffer>;
			public equals(param0: any): boolean;
			public get(param0: native.Array<string>): java.nio.CharBuffer;
			public isDirect(): boolean;
			public static wrap(param0: string): java.nio.CharBuffer;
			public put(param0: native.Array<string>): java.nio.CharBuffer;
			public order(): java.nio.ByteOrder;
			public array(): native.Array<string>;
			public asReadOnlyBuffer(): java.nio.CharBuffer;
			public get(param0: native.Array<string>, param1: number, param2: number): java.nio.CharBuffer;
			public compareTo(param0: java.nio.CharBuffer): number;
			public append(param0: string): java.nio.CharBuffer;
			public slice(): java.nio.CharBuffer;
			public subSequence(param0: number, param1: number): string;
			public duplicate(): java.nio.CharBuffer;
			public read(param0: java.nio.CharBuffer): number;
			public put(param0: java.nio.CharBuffer): java.nio.CharBuffer;
			public static wrap(param0: string, param1: number, param2: number): java.nio.CharBuffer;
			public put(param0: native.Array<string>, param1: number, param2: number): java.nio.CharBuffer;
			public static wrap(param0: native.Array<string>): java.nio.CharBuffer;
			public arrayOffset(): number;
			public array(): any;
			public compact(): java.nio.CharBuffer;
			public append(param0: string, param1: number, param2: number): java.nio.CharBuffer;
			public length(): number;
			public get(): string;
			public put(param0: number, param1: string): java.nio.CharBuffer;
			public append(param0: string, param1: number, param2: number): java.lang.Appendable;
			public put(param0: string, param1: number, param2: number): java.nio.CharBuffer;
			public get(param0: number): string;
			public hasArray(): boolean;
			public charAt(param0: number): string;
			public toString(): string;
			public put(param0: string): java.nio.CharBuffer;
			public static wrap(param0: native.Array<string>, param1: number, param2: number): java.nio.CharBuffer;
			public static allocate(param0: number): java.nio.CharBuffer;
			public append(param0: string): java.lang.Appendable;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module nio {
		export abstract class DoubleBuffer extends java.nio.Buffer implements java.lang.Comparable<java.nio.DoubleBuffer>  {
			public static class: java.lang.Class<java.nio.DoubleBuffer>;
			public asReadOnlyBuffer(): java.nio.DoubleBuffer;
			public equals(param0: any): boolean;
			public put(param0: number, param1: number): java.nio.DoubleBuffer;
			public isDirect(): boolean;
			public order(): java.nio.ByteOrder;
			public get(param0: native.Array<number>, param1: number, param2: number): java.nio.DoubleBuffer;
			public compareTo(param0: java.nio.DoubleBuffer): number;
			public get(param0: number): number;
			public put(param0: number): java.nio.DoubleBuffer;
			public put(param0: native.Array<number>): java.nio.DoubleBuffer;
			public put(param0: java.nio.DoubleBuffer): java.nio.DoubleBuffer;
			public arrayOffset(): number;
			public slice(): java.nio.DoubleBuffer;
			public compact(): java.nio.DoubleBuffer;
			public array(): any;
			public array(): native.Array<number>;
			public duplicate(): java.nio.DoubleBuffer;
			public static wrap(param0: native.Array<number>, param1: number, param2: number): java.nio.DoubleBuffer;
			public hasArray(): boolean;
			public put(param0: native.Array<number>, param1: number, param2: number): java.nio.DoubleBuffer;
			public get(param0: native.Array<number>): java.nio.DoubleBuffer;
			public get(): number;
			public static wrap(param0: native.Array<number>): java.nio.DoubleBuffer;
			public static allocate(param0: number): java.nio.DoubleBuffer;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module nio {
		export abstract class FloatBuffer extends java.nio.Buffer implements java.lang.Comparable<java.nio.FloatBuffer>  {
			public static class: java.lang.Class<java.nio.FloatBuffer>;
			public equals(param0: any): boolean;
			public static wrap(param0: native.Array<number>): java.nio.FloatBuffer;
			public isDirect(): boolean;
			public static allocate(param0: number): java.nio.FloatBuffer;
			public order(): java.nio.ByteOrder;
			public static wrap(param0: native.Array<number>, param1: number, param2: number): java.nio.FloatBuffer;
			public get(param0: native.Array<number>): java.nio.FloatBuffer;
			public put(param0: java.nio.FloatBuffer): java.nio.FloatBuffer;
			public compareTo(param0: java.nio.FloatBuffer): number;
			public get(param0: number): number;
			public arrayOffset(): number;
			public put(param0: number, param1: number): java.nio.FloatBuffer;
			public array(): any;
			public array(): native.Array<number>;
			public duplicate(): java.nio.FloatBuffer;
			public compact(): java.nio.FloatBuffer;
			public get(param0: native.Array<number>, param1: number, param2: number): java.nio.FloatBuffer;
			public asReadOnlyBuffer(): java.nio.FloatBuffer;
			public slice(): java.nio.FloatBuffer;
			public hasArray(): boolean;
			public put(param0: native.Array<number>, param1: number, param2: number): java.nio.FloatBuffer;
			public put(param0: number): java.nio.FloatBuffer;
			public put(param0: native.Array<number>): java.nio.FloatBuffer;
			public get(): number;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module nio {
		export abstract class IntBuffer extends java.nio.Buffer implements java.lang.Comparable<java.nio.IntBuffer>  {
			public static class: java.lang.Class<java.nio.IntBuffer>;
			public asReadOnlyBuffer(): java.nio.IntBuffer;
			public equals(param0: any): boolean;
			public isDirect(): boolean;
			public static allocate(param0: number): java.nio.IntBuffer;
			public static wrap(param0: native.Array<number>): java.nio.IntBuffer;
			public get(param0: native.Array<number>, param1: number, param2: number): java.nio.IntBuffer;
			public slice(): java.nio.IntBuffer;
			public order(): java.nio.ByteOrder;
			public put(param0: native.Array<number>): java.nio.IntBuffer;
			public duplicate(): java.nio.IntBuffer;
			public put(param0: java.nio.IntBuffer): java.nio.IntBuffer;
			public compact(): java.nio.IntBuffer;
			public get(param0: number): number;
			public compareTo(param0: java.nio.IntBuffer): number;
			public arrayOffset(): number;
			public put(param0: number): java.nio.IntBuffer;
			public array(): any;
			public array(): native.Array<number>;
			public put(param0: native.Array<number>, param1: number, param2: number): java.nio.IntBuffer;
			public hasArray(): boolean;
			public get(param0: native.Array<number>): java.nio.IntBuffer;
			public static wrap(param0: native.Array<number>, param1: number, param2: number): java.nio.IntBuffer;
			public get(): number;
			public put(param0: number, param1: number): java.nio.IntBuffer;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module nio {
		export class InvalidMarkException extends java.lang.IllegalStateException {
			public static class: java.lang.Class<java.nio.InvalidMarkException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module nio {
		export abstract class LongBuffer extends java.nio.Buffer implements java.lang.Comparable<java.nio.LongBuffer>  {
			public static class: java.lang.Class<java.nio.LongBuffer>;
			public equals(param0: any): boolean;
			public asReadOnlyBuffer(): java.nio.LongBuffer;
			public put(param0: number): java.nio.LongBuffer;
			public static wrap(param0: native.Array<number>): java.nio.LongBuffer;
			public isDirect(): boolean;
			public put(param0: java.nio.LongBuffer): java.nio.LongBuffer;
			public static wrap(param0: native.Array<number>, param1: number, param2: number): java.nio.LongBuffer;
			public order(): java.nio.ByteOrder;
			public slice(): java.nio.LongBuffer;
			public get(param0: native.Array<number>): java.nio.LongBuffer;
			public get(param0: number): number;
			public arrayOffset(): number;
			public compareTo(param0: java.nio.LongBuffer): number;
			public array(): any;
			public array(): native.Array<number>;
			public static allocate(param0: number): java.nio.LongBuffer;
			public compact(): java.nio.LongBuffer;
			public duplicate(): java.nio.LongBuffer;
			public hasArray(): boolean;
			public put(param0: native.Array<number>): java.nio.LongBuffer;
			public get(param0: native.Array<number>, param1: number, param2: number): java.nio.LongBuffer;
			public put(param0: number, param1: number): java.nio.LongBuffer;
			public put(param0: native.Array<number>, param1: number, param2: number): java.nio.LongBuffer;
			public get(): number;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module nio {
		export abstract class MappedByteBuffer extends java.nio.ByteBuffer {
			public static class: java.lang.Class<java.nio.MappedByteBuffer>;
			public load(): java.nio.MappedByteBuffer;
			public force(): java.nio.MappedByteBuffer;
			public isLoaded(): boolean;
		}
	}
}

declare module java {
	export module nio {
		export class ReadOnlyBufferException extends java.lang.UnsupportedOperationException {
			public static class: java.lang.Class<java.nio.ReadOnlyBufferException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module nio {
		export abstract class ShortBuffer extends java.nio.Buffer implements java.lang.Comparable<java.nio.ShortBuffer>  {
			public static class: java.lang.Class<java.nio.ShortBuffer>;
			public equals(param0: any): boolean;
			public isDirect(): boolean;
			public duplicate(): java.nio.ShortBuffer;
			public asReadOnlyBuffer(): java.nio.ShortBuffer;
			public order(): java.nio.ByteOrder;
			public put(param0: native.Array<number>, param1: number, param2: number): java.nio.ShortBuffer;
			public slice(): java.nio.ShortBuffer;
			public compareTo(param0: java.nio.ShortBuffer): number;
			public put(param0: native.Array<number>): java.nio.ShortBuffer;
			public put(param0: number): java.nio.ShortBuffer;
			public get(param0: number): number;
			public arrayOffset(): number;
			public static wrap(param0: native.Array<number>): java.nio.ShortBuffer;
			public array(): any;
			public array(): native.Array<number>;
			public put(param0: java.nio.ShortBuffer): java.nio.ShortBuffer;
			public static allocate(param0: number): java.nio.ShortBuffer;
			public static wrap(param0: native.Array<number>, param1: number, param2: number): java.nio.ShortBuffer;
			public hasArray(): boolean;
			public put(param0: number, param1: number): java.nio.ShortBuffer;
			public get(param0: native.Array<number>): java.nio.ShortBuffer;
			public compact(): java.nio.ShortBuffer;
			public get(param0: native.Array<number>, param1: number, param2: number): java.nio.ShortBuffer;
			public get(): number;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module nio {
		export module channels {
			export class AlreadyConnectedException extends java.lang.IllegalStateException {
				public static class: java.lang.Class<java.nio.channels.AlreadyConnectedException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module nio {
		export module channels {
			export class AsynchronousCloseException extends java.nio.channels.ClosedChannelException {
				public static class: java.lang.Class<java.nio.channels.AsynchronousCloseException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module nio {
		export module channels {
			export class ByteChannel extends java.lang.Object implements java.nio.channels.ReadableByteChannel, java.nio.channels.WritableByteChannel {
				public static class: java.lang.Class<java.nio.channels.ByteChannel>;
				/**
				 * Constructs a new instance of the java.nio.channels.ByteChannel interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					read(param0: java.nio.ByteBuffer): number;
					write(param0: java.nio.ByteBuffer): number;
					isOpen(): boolean;
					close(): void;
					isOpen(): boolean;
					close(): void;
					close(): void;
					close(): void;
				});
				public constructor();
				public close(): void;
				public write(param0: java.nio.ByteBuffer): number;
				public read(param0: java.nio.ByteBuffer): number;
				public isOpen(): boolean;
			}
		}
	}
}

declare module java {
	export module nio {
		export module channels {
			export class CancelledKeyException extends java.lang.IllegalStateException {
				public static class: java.lang.Class<java.nio.channels.CancelledKeyException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module nio {
		export module channels {
			export class Channel extends java.lang.Object implements java.io.Closeable {
				public static class: java.lang.Class<java.nio.channels.Channel>;
				/**
				 * Constructs a new instance of the java.nio.channels.Channel interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					isOpen(): boolean;
					close(): void;
					close(): void;
				});
				public constructor();
				public close(): void;
				public isOpen(): boolean;
			}
		}
	}
}

declare module java {
	export module nio {
		export module channels {
			export class Channels extends java.lang.Object {
				public static class: java.lang.Class<java.nio.channels.Channels>;
				public static newChannel(param0: java.io.InputStream): java.nio.channels.ReadableByteChannel;
				public static newOutputStream(param0: java.nio.channels.WritableByteChannel): java.io.OutputStream;
				public static newChannel(param0: java.io.OutputStream): java.nio.channels.WritableByteChannel;
				public static newInputStream(param0: java.nio.channels.ReadableByteChannel): java.io.InputStream;
				public static newWriter(param0: java.nio.channels.WritableByteChannel, param1: java.nio.charset.CharsetEncoder, param2: number): java.io.Writer;
				public static newWriter(param0: java.nio.channels.WritableByteChannel, param1: string): java.io.Writer;
				public static newReader(param0: java.nio.channels.ReadableByteChannel, param1: java.nio.charset.CharsetDecoder, param2: number): java.io.Reader;
				public static newReader(param0: java.nio.channels.ReadableByteChannel, param1: string): java.io.Reader;
			}
		}
	}
}

declare module java {
	export module nio {
		export module channels {
			export class ClosedByInterruptException extends java.nio.channels.AsynchronousCloseException {
				public static class: java.lang.Class<java.nio.channels.ClosedByInterruptException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module nio {
		export module channels {
			export class ClosedChannelException extends java.io.IOException {
				public static class: java.lang.Class<java.nio.channels.ClosedChannelException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module nio {
		export module channels {
			export class ClosedSelectorException extends java.lang.IllegalStateException {
				public static class: java.lang.Class<java.nio.channels.ClosedSelectorException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module nio {
		export module channels {
			export class ConnectionPendingException extends java.lang.IllegalStateException {
				public static class: java.lang.Class<java.nio.channels.ConnectionPendingException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module nio {
		export module channels {
			export abstract class DatagramChannel extends java.nio.channels.spi.AbstractSelectableChannel implements java.nio.channels.ByteChannel, java.nio.channels.ScatteringByteChannel, java.nio.channels.GatheringByteChannel {
				public static class: java.lang.Class<java.nio.channels.DatagramChannel>;
				public socket(): java.net.DatagramSocket;
				public read(param0: native.Array<java.nio.ByteBuffer>): number;
				public close(): void;
				public write(param0: java.nio.ByteBuffer): number;
				public validOps(): number;
				public disconnect(): java.nio.channels.DatagramChannel;
				public constructor(param0: java.nio.channels.spi.SelectorProvider);
				public receive(param0: java.nio.ByteBuffer): java.net.SocketAddress;
				public connect(param0: java.net.SocketAddress): java.nio.channels.DatagramChannel;
				public constructor();
				public isConnected(): boolean;
				public static open(): java.nio.channels.DatagramChannel;
				public read(param0: java.nio.ByteBuffer): number;
				public read(param0: native.Array<java.nio.ByteBuffer>, param1: number, param2: number): number;
				public write(param0: native.Array<java.nio.ByteBuffer>): number;
				public isOpen(): boolean;
				public write(param0: native.Array<java.nio.ByteBuffer>, param1: number, param2: number): number;
				public send(param0: java.nio.ByteBuffer, param1: java.net.SocketAddress): number;
			}
		}
	}
}

declare module java {
	export module nio {
		export module channels {
			export abstract class FileChannel extends java.nio.channels.spi.AbstractInterruptibleChannel implements java.nio.channels.GatheringByteChannel, java.nio.channels.ScatteringByteChannel, java.nio.channels.ByteChannel {
				public static class: java.lang.Class<java.nio.channels.FileChannel>;
				public read(param0: native.Array<java.nio.ByteBuffer>): number;
				public write(param0: java.nio.ByteBuffer, param1: number): number;
				public close(): void;
				public write(param0: java.nio.ByteBuffer): number;
				public map(param0: java.nio.channels.FileChannel.MapMode, param1: number, param2: number): java.nio.MappedByteBuffer;
				public transferTo(param0: number, param1: number, param2: java.nio.channels.WritableByteChannel): number;
				public force(param0: boolean): void;
				public lock(param0: number, param1: number, param2: boolean): java.nio.channels.FileLock;
				public constructor();
				public size(): number;
				public position(): number;
				public position(param0: number): java.nio.channels.FileChannel;
				public lock(): java.nio.channels.FileLock;
				public tryLock(): java.nio.channels.FileLock;
				public read(param0: java.nio.ByteBuffer): number;
				public read(param0: native.Array<java.nio.ByteBuffer>, param1: number, param2: number): number;
				public transferFrom(param0: java.nio.channels.ReadableByteChannel, param1: number, param2: number): number;
				public read(param0: java.nio.ByteBuffer, param1: number): number;
				public write(param0: native.Array<java.nio.ByteBuffer>): number;
				public isOpen(): boolean;
				public truncate(param0: number): java.nio.channels.FileChannel;
				public tryLock(param0: number, param1: number, param2: boolean): java.nio.channels.FileLock;
				public write(param0: native.Array<java.nio.ByteBuffer>, param1: number, param2: number): number;
			}
			export module FileChannel {
				export class MapMode extends java.lang.Object {
					public static class: java.lang.Class<java.nio.channels.FileChannel.MapMode>;
					public static PRIVATE: java.nio.channels.FileChannel.MapMode;
					public static READ_ONLY: java.nio.channels.FileChannel.MapMode;
					public static READ_WRITE: java.nio.channels.FileChannel.MapMode;
					public toString(): string;
				}
			}
		}
	}
}

declare module java {
	export module nio {
		export module channels {
			export abstract class FileLock extends java.lang.Object {
				public static class: java.lang.Class<java.nio.channels.FileLock>;
				public position(): number;
				public isShared(): boolean;
				public release(): void;
				public overlaps(param0: number, param1: number): boolean;
				public constructor(param0: java.nio.channels.FileChannel, param1: number, param2: number, param3: boolean);
				public channel(): java.nio.channels.FileChannel;
				public isValid(): boolean;
				public toString(): string;
				public size(): number;
			}
		}
	}
}

declare module java {
	export module nio {
		export module channels {
			export class FileLockInterruptionException extends java.io.IOException {
				public static class: java.lang.Class<java.nio.channels.FileLockInterruptionException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module nio {
		export module channels {
			export class GatheringByteChannel extends java.lang.Object implements java.nio.channels.WritableByteChannel {
				public static class: java.lang.Class<java.nio.channels.GatheringByteChannel>;
				/**
				 * Constructs a new instance of the java.nio.channels.GatheringByteChannel interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					write(param0: native.Array<java.nio.ByteBuffer>): number;
					write(param0: native.Array<java.nio.ByteBuffer>, param1: number, param2: number): number;
					write(param0: java.nio.ByteBuffer): number;
					isOpen(): boolean;
					close(): void;
					close(): void;
				});
				public constructor();
				public close(): void;
				public write(param0: java.nio.ByteBuffer): number;
				public write(param0: native.Array<java.nio.ByteBuffer>): number;
				public isOpen(): boolean;
				public write(param0: native.Array<java.nio.ByteBuffer>, param1: number, param2: number): number;
			}
		}
	}
}

declare module java {
	export module nio {
		export module channels {
			export class IllegalBlockingModeException extends java.lang.IllegalStateException {
				public static class: java.lang.Class<java.nio.channels.IllegalBlockingModeException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module nio {
		export module channels {
			export class IllegalSelectorException extends java.lang.IllegalArgumentException {
				public static class: java.lang.Class<java.nio.channels.IllegalSelectorException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module nio {
		export module channels {
			export class InterruptibleChannel extends java.lang.Object implements java.nio.channels.Channel {
				public static class: java.lang.Class<java.nio.channels.InterruptibleChannel>;
				/**
				 * Constructs a new instance of the java.nio.channels.InterruptibleChannel interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					close(): void;
					isOpen(): boolean;
					close(): void;
					close(): void;
				});
				public constructor();
				public close(): void;
				public isOpen(): boolean;
			}
		}
	}
}

declare module java {
	export module nio {
		export module channels {
			export class NoConnectionPendingException extends java.lang.IllegalStateException {
				public static class: java.lang.Class<java.nio.channels.NoConnectionPendingException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module nio {
		export module channels {
			export class NonReadableChannelException extends java.lang.IllegalStateException {
				public static class: java.lang.Class<java.nio.channels.NonReadableChannelException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module nio {
		export module channels {
			export class NonWritableChannelException extends java.lang.IllegalStateException {
				public static class: java.lang.Class<java.nio.channels.NonWritableChannelException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module nio {
		export module channels {
			export class NotYetBoundException extends java.lang.IllegalStateException {
				public static class: java.lang.Class<java.nio.channels.NotYetBoundException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module nio {
		export module channels {
			export class NotYetConnectedException extends java.lang.IllegalStateException {
				public static class: java.lang.Class<java.nio.channels.NotYetConnectedException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module nio {
		export module channels {
			export class OverlappingFileLockException extends java.lang.IllegalStateException {
				public static class: java.lang.Class<java.nio.channels.OverlappingFileLockException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module nio {
		export module channels {
			export abstract class Pipe extends java.lang.Object {
				public static class: java.lang.Class<java.nio.channels.Pipe>;
				public static open(): java.nio.channels.Pipe;
				public sink(): java.nio.channels.Pipe.SinkChannel;
				public source(): java.nio.channels.Pipe.SourceChannel;
				public constructor();
			}
			export module Pipe {
				export abstract class SinkChannel extends java.nio.channels.spi.AbstractSelectableChannel implements java.nio.channels.WritableByteChannel, java.nio.channels.GatheringByteChannel {
					public static class: java.lang.Class<java.nio.channels.Pipe.SinkChannel>;
					public constructor(param0: java.nio.channels.spi.SelectorProvider);
					public validOps(): number;
					public write(param0: java.nio.ByteBuffer): number;
					public isOpen(): boolean;
					public constructor();
					public write(param0: native.Array<java.nio.ByteBuffer>): number;
					public close(): void;
					public write(param0: native.Array<java.nio.ByteBuffer>, param1: number, param2: number): number;
				}
				export abstract class SourceChannel extends java.nio.channels.spi.AbstractSelectableChannel implements java.nio.channels.ReadableByteChannel, java.nio.channels.ScatteringByteChannel {
					public static class: java.lang.Class<java.nio.channels.Pipe.SourceChannel>;
					public constructor(param0: java.nio.channels.spi.SelectorProvider);
					public validOps(): number;
					public isOpen(): boolean;
					public constructor();
					public read(param0: java.nio.ByteBuffer): number;
					public read(param0: native.Array<java.nio.ByteBuffer>): number;
					public close(): void;
					public read(param0: native.Array<java.nio.ByteBuffer>, param1: number, param2: number): number;
				}
			}
		}
	}
}

declare module java {
	export module nio {
		export module channels {
			export class ReadableByteChannel extends java.lang.Object implements java.nio.channels.Channel {
				public static class: java.lang.Class<java.nio.channels.ReadableByteChannel>;
				/**
				 * Constructs a new instance of the java.nio.channels.ReadableByteChannel interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					read(param0: java.nio.ByteBuffer): number;
					isOpen(): boolean;
					close(): void;
					close(): void;
				});
				public constructor();
				public close(): void;
				public read(param0: java.nio.ByteBuffer): number;
				public isOpen(): boolean;
			}
		}
	}
}

declare module java {
	export module nio {
		export module channels {
			export class ScatteringByteChannel extends java.lang.Object implements java.nio.channels.ReadableByteChannel {
				public static class: java.lang.Class<java.nio.channels.ScatteringByteChannel>;
				/**
				 * Constructs a new instance of the java.nio.channels.ScatteringByteChannel interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					read(param0: native.Array<java.nio.ByteBuffer>): number;
					read(param0: native.Array<java.nio.ByteBuffer>, param1: number, param2: number): number;
					read(param0: java.nio.ByteBuffer): number;
					isOpen(): boolean;
					close(): void;
					close(): void;
				});
				public constructor();
				public read(param0: native.Array<java.nio.ByteBuffer>): number;
				public close(): void;
				public read(param0: native.Array<java.nio.ByteBuffer>, param1: number, param2: number): number;
				public read(param0: java.nio.ByteBuffer): number;
				public isOpen(): boolean;
			}
		}
	}
}

declare module java {
	export module nio {
		export module channels {
			export abstract class SelectableChannel extends java.nio.channels.spi.AbstractInterruptibleChannel implements java.nio.channels.Channel {
				public static class: java.lang.Class<java.nio.channels.SelectableChannel>;
				public keyFor(param0: java.nio.channels.Selector): java.nio.channels.SelectionKey;
				public provider(): java.nio.channels.spi.SelectorProvider;
				public close(): void;
				public blockingLock(): any;
				public isBlocking(): boolean;
				public validOps(): number;
				public configureBlocking(param0: boolean): java.nio.channels.SelectableChannel;
				public isOpen(): boolean;
				public register(param0: java.nio.channels.Selector, param1: number, param2: any): java.nio.channels.SelectionKey;
				public isRegistered(): boolean;
				public constructor();
				public register(param0: java.nio.channels.Selector, param1: number): java.nio.channels.SelectionKey;
			}
		}
	}
}

declare module java {
	export module nio {
		export module channels {
			export abstract class SelectionKey extends java.lang.Object {
				public static class: java.lang.Class<java.nio.channels.SelectionKey>;
				public static OP_ACCEPT: number;
				public static OP_CONNECT: number;
				public static OP_READ: number;
				public static OP_WRITE: number;
				public isConnectable(): boolean;
				public isValid(): boolean;
				public isReadable(): boolean;
				public constructor();
				public attach(param0: any): any;
				public isAcceptable(): boolean;
				public attachment(): any;
				public interestOps(param0: number): java.nio.channels.SelectionKey;
				public readyOps(): number;
				public interestOps(): number;
				public isWritable(): boolean;
				public cancel(): void;
				public selector(): java.nio.channels.Selector;
				public channel(): java.nio.channels.SelectableChannel;
			}
		}
	}
}

declare module java {
	export module nio {
		export module channels {
			export abstract class Selector extends java.lang.Object {
				public static class: java.lang.Class<java.nio.channels.Selector>;
				public provider(): java.nio.channels.spi.SelectorProvider;
				public close(): void;
				public select(): number;
				public wakeup(): java.nio.channels.Selector;
				public static open(): java.nio.channels.Selector;
				public isOpen(): boolean;
				public select(param0: number): number;
				public selectedKeys(): java.util.Set<java.nio.channels.SelectionKey>;
				public keys(): java.util.Set<java.nio.channels.SelectionKey>;
				public constructor();
				public selectNow(): number;
			}
		}
	}
}

declare module java {
	export module nio {
		export module channels {
			export abstract class ServerSocketChannel extends java.nio.channels.spi.AbstractSelectableChannel {
				public static class: java.lang.Class<java.nio.channels.ServerSocketChannel>;
				public close(): void;
				public validOps(): number;
				public static open(): java.nio.channels.ServerSocketChannel;
				public isOpen(): boolean;
				public accept(): java.nio.channels.SocketChannel;
				public constructor(param0: java.nio.channels.spi.SelectorProvider);
				public socket(): java.net.ServerSocket;
				public constructor();
			}
		}
	}
}

declare module java {
	export module nio {
		export module channels {
			export abstract class SocketChannel extends java.nio.channels.spi.AbstractSelectableChannel implements java.nio.channels.ByteChannel, java.nio.channels.ScatteringByteChannel, java.nio.channels.GatheringByteChannel {
				public static class: java.lang.Class<java.nio.channels.SocketChannel>;
				public isConnectionPending(): boolean;
				public read(param0: native.Array<java.nio.ByteBuffer>): number;
				public close(): void;
				public write(param0: java.nio.ByteBuffer): number;
				public validOps(): number;
				public connect(param0: java.net.SocketAddress): boolean;
				public constructor(param0: java.nio.channels.spi.SelectorProvider);
				public finishConnect(): boolean;
				public socket(): java.net.Socket;
				public constructor();
				public isConnected(): boolean;
				public static open(): java.nio.channels.SocketChannel;
				public static open(param0: java.net.SocketAddress): java.nio.channels.SocketChannel;
				public read(param0: java.nio.ByteBuffer): number;
				public read(param0: native.Array<java.nio.ByteBuffer>, param1: number, param2: number): number;
				public write(param0: native.Array<java.nio.ByteBuffer>): number;
				public isOpen(): boolean;
				public write(param0: native.Array<java.nio.ByteBuffer>, param1: number, param2: number): number;
			}
		}
	}
}

declare module java {
	export module nio {
		export module channels {
			export class UnresolvedAddressException extends java.lang.IllegalArgumentException {
				public static class: java.lang.Class<java.nio.channels.UnresolvedAddressException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module nio {
		export module channels {
			export class UnsupportedAddressTypeException extends java.lang.IllegalArgumentException {
				public static class: java.lang.Class<java.nio.channels.UnsupportedAddressTypeException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module nio {
		export module channels {
			export class WritableByteChannel extends java.lang.Object implements java.nio.channels.Channel {
				public static class: java.lang.Class<java.nio.channels.WritableByteChannel>;
				/**
				 * Constructs a new instance of the java.nio.channels.WritableByteChannel interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					write(param0: java.nio.ByteBuffer): number;
					isOpen(): boolean;
					close(): void;
					close(): void;
				});
				public constructor();
				public close(): void;
				public write(param0: java.nio.ByteBuffer): number;
				public isOpen(): boolean;
			}
		}
	}
}

declare module java {
	export module nio {
		export module channels {
			export module spi {
				export abstract class AbstractInterruptibleChannel extends java.lang.Object implements java.nio.channels.Channel, java.nio.channels.InterruptibleChannel {
					public static class: java.lang.Class<java.nio.channels.spi.AbstractInterruptibleChannel>;
					public begin(): void;
					public isOpen(): boolean;
					public constructor();
					public close(): void;
					public implCloseChannel(): void;
					public end(param0: boolean): void;
				}
			}
		}
	}
}

declare module java {
	export module nio {
		export module channels {
			export module spi {
				export abstract class AbstractSelectableChannel extends java.nio.channels.SelectableChannel {
					public static class: java.lang.Class<java.nio.channels.spi.AbstractSelectableChannel>;
					public constructor(param0: java.nio.channels.spi.SelectorProvider);
					public provider(): java.nio.channels.spi.SelectorProvider;
					public configureBlocking(param0: boolean): java.nio.channels.SelectableChannel;
					public register(param0: java.nio.channels.Selector, param1: number, param2: any): java.nio.channels.SelectionKey;
					public register(param0: java.nio.channels.Selector, param1: number): java.nio.channels.SelectionKey;
					public implCloseSelectableChannel(): void;
					public isBlocking(): boolean;
					public isOpen(): boolean;
					public constructor();
					public close(): void;
					public keyFor(param0: java.nio.channels.Selector): java.nio.channels.SelectionKey;
					public implCloseChannel(): void;
					public implConfigureBlocking(param0: boolean): void;
					public isRegistered(): boolean;
					public blockingLock(): any;
				}
			}
		}
	}
}

declare module java {
	export module nio {
		export module channels {
			export module spi {
				export abstract class AbstractSelectionKey extends java.nio.channels.SelectionKey {
					public static class: java.lang.Class<java.nio.channels.spi.AbstractSelectionKey>;
					public constructor();
					public isValid(): boolean;
					public cancel(): void;
				}
			}
		}
	}
}

declare module java {
	export module nio {
		export module channels {
			export module spi {
				export abstract class AbstractSelector extends java.nio.channels.Selector {
					public static class: java.lang.Class<java.nio.channels.spi.AbstractSelector>;
					public constructor(param0: java.nio.channels.spi.SelectorProvider);
					public deregister(param0: java.nio.channels.spi.AbstractSelectionKey): void;
					public begin(): void;
					public end(): void;
					public isOpen(): boolean;
					public cancelledKeys(): java.util.Set<java.nio.channels.SelectionKey>;
					public constructor();
					public provider(): java.nio.channels.spi.SelectorProvider;
					public implCloseSelector(): void;
					public close(): void;
					public register(param0: java.nio.channels.spi.AbstractSelectableChannel, param1: number, param2: any): java.nio.channels.SelectionKey;
				}
			}
		}
	}
}

declare module java {
	export module nio {
		export module channels {
			export module spi {
				export abstract class SelectorProvider extends java.lang.Object {
					public static class: java.lang.Class<java.nio.channels.spi.SelectorProvider>;
					public constructor();
					public inheritedChannel(): java.nio.channels.Channel;
					public static provider(): java.nio.channels.spi.SelectorProvider;
					public openDatagramChannel(): java.nio.channels.DatagramChannel;
					public openSelector(): java.nio.channels.spi.AbstractSelector;
					public openPipe(): java.nio.channels.Pipe;
					public openSocketChannel(): java.nio.channels.SocketChannel;
					public openServerSocketChannel(): java.nio.channels.ServerSocketChannel;
				}
			}
		}
	}
}

declare module java {
	export module nio {
		export module charset {
			export class CharacterCodingException extends java.io.IOException {
				public static class: java.lang.Class<java.nio.charset.CharacterCodingException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module nio {
		export module charset {
			export abstract class Charset extends java.lang.Comparable<java.nio.charset.Charset> {
				public static class: java.lang.Class<java.nio.charset.Charset>;
				public displayName(): string;
				public encode(param0: java.nio.CharBuffer): java.nio.ByteBuffer;
				public static forName(param0: string): java.nio.charset.Charset;
				public newDecoder(): java.nio.charset.CharsetDecoder;
				public encode(param0: string): java.nio.ByteBuffer;
				public displayName(param0: java.util.Locale): string;
				public decode(param0: java.nio.ByteBuffer): java.nio.CharBuffer;
				public canEncode(): boolean;
				public isRegistered(): boolean;
				public toString(): string;
				public static defaultCharset(): java.nio.charset.Charset;
				public static isSupported(param0: string): boolean;
				public compareTo(param0: java.nio.charset.Charset): number;
				public constructor(param0: string, param1: native.Array<string>);
				public name(): string;
				public hashCode(): number;
				public static availableCharsets(): java.util.SortedMap<string,java.nio.charset.Charset>;
				public equals(param0: any): boolean;
				public contains(param0: java.nio.charset.Charset): boolean;
				public aliases(): java.util.Set<string>;
				public newEncoder(): java.nio.charset.CharsetEncoder;
			}
		}
	}
}

declare module java {
	export module nio {
		export module charset {
			export abstract class CharsetDecoder extends java.lang.Object {
				public static class: java.lang.Class<java.nio.charset.CharsetDecoder>;
				public isAutoDetecting(): boolean;
				public decode(param0: java.nio.ByteBuffer, param1: java.nio.CharBuffer, param2: boolean): java.nio.charset.CoderResult;
				public detectedCharset(): java.nio.charset.Charset;
				public implReplaceWith(param0: string): void;
				public reset(): java.nio.charset.CharsetDecoder;
				public averageCharsPerByte(): number;
				public decode(param0: java.nio.ByteBuffer): java.nio.CharBuffer;
				public implFlush(param0: java.nio.CharBuffer): java.nio.charset.CoderResult;
				public implOnUnmappableCharacter(param0: java.nio.charset.CodingErrorAction): void;
				public replacement(): string;
				public decodeLoop(param0: java.nio.ByteBuffer, param1: java.nio.CharBuffer): java.nio.charset.CoderResult;
				public charset(): java.nio.charset.Charset;
				public replaceWith(param0: string): java.nio.charset.CharsetDecoder;
				public flush(param0: java.nio.CharBuffer): java.nio.charset.CoderResult;
				public implOnMalformedInput(param0: java.nio.charset.CodingErrorAction): void;
				public malformedInputAction(): java.nio.charset.CodingErrorAction;
				public isCharsetDetected(): boolean;
				public maxCharsPerByte(): number;
				public onMalformedInput(param0: java.nio.charset.CodingErrorAction): java.nio.charset.CharsetDecoder;
				public implReset(): void;
				public unmappableCharacterAction(): java.nio.charset.CodingErrorAction;
				public constructor(param0: java.nio.charset.Charset, param1: number, param2: number);
				public onUnmappableCharacter(param0: java.nio.charset.CodingErrorAction): java.nio.charset.CharsetDecoder;
			}
		}
	}
}

declare module java {
	export module nio {
		export module charset {
			export abstract class CharsetEncoder extends java.lang.Object {
				public static class: java.lang.Class<java.nio.charset.CharsetEncoder>;
				public encode(param0: java.nio.CharBuffer): java.nio.ByteBuffer;
				public maxBytesPerChar(): number;
				public averageBytesPerChar(): number;
				public implFlush(param0: java.nio.ByteBuffer): java.nio.charset.CoderResult;
				public implOnUnmappableCharacter(param0: java.nio.charset.CodingErrorAction): void;
				public canEncode(param0: string): boolean;
				public encodeLoop(param0: java.nio.CharBuffer, param1: java.nio.ByteBuffer): java.nio.charset.CoderResult;
				public charset(): java.nio.charset.Charset;
				public reset(): java.nio.charset.CharsetEncoder;
				public flush(param0: java.nio.ByteBuffer): java.nio.charset.CoderResult;
				public implOnMalformedInput(param0: java.nio.charset.CodingErrorAction): void;
				public malformedInputAction(): java.nio.charset.CodingErrorAction;
				public replaceWith(param0: native.Array<number>): java.nio.charset.CharsetEncoder;
				public constructor(param0: java.nio.charset.Charset, param1: number, param2: number, param3: native.Array<number>);
				public isLegalReplacement(param0: native.Array<number>): boolean;
				public onMalformedInput(param0: java.nio.charset.CodingErrorAction): java.nio.charset.CharsetEncoder;
				public implReplaceWith(param0: native.Array<number>): void;
				public implReset(): void;
				public unmappableCharacterAction(): java.nio.charset.CodingErrorAction;
				public constructor(param0: java.nio.charset.Charset, param1: number, param2: number);
				public encode(param0: java.nio.CharBuffer, param1: java.nio.ByteBuffer, param2: boolean): java.nio.charset.CoderResult;
				public onUnmappableCharacter(param0: java.nio.charset.CodingErrorAction): java.nio.charset.CharsetEncoder;
				public replacement(): native.Array<number>;
			}
		}
	}
}

declare module java {
	export module nio {
		export module charset {
			export class CoderMalfunctionError extends java.lang.Error {
				public static class: java.lang.Class<java.nio.charset.CoderMalfunctionError>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Exception);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module nio {
		export module charset {
			export class CoderResult extends java.lang.Object {
				public static class: java.lang.Class<java.nio.charset.CoderResult>;
				public static UNDERFLOW: java.nio.charset.CoderResult;
				public static OVERFLOW: java.nio.charset.CoderResult;
				public isUnmappable(): boolean;
				public isError(): boolean;
				public isOverflow(): boolean;
				public static unmappableForLength(param0: number): java.nio.charset.CoderResult;
				public length(): number;
				public throwException(): void;
				public isUnderflow(): boolean;
				public toString(): string;
				public static malformedForLength(param0: number): java.nio.charset.CoderResult;
				public isMalformed(): boolean;
			}
		}
	}
}

declare module java {
	export module nio {
		export module charset {
			export class CodingErrorAction extends java.lang.Object {
				public static class: java.lang.Class<java.nio.charset.CodingErrorAction>;
				public static IGNORE: java.nio.charset.CodingErrorAction;
				public static REPLACE: java.nio.charset.CodingErrorAction;
				public static REPORT: java.nio.charset.CodingErrorAction;
				public toString(): string;
			}
		}
	}
}

declare module java {
	export module nio {
		export module charset {
			export class IllegalCharsetNameException extends java.lang.IllegalArgumentException {
				public static class: java.lang.Class<java.nio.charset.IllegalCharsetNameException>;
				public getCharsetName(): string;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module nio {
		export module charset {
			export class MalformedInputException extends java.nio.charset.CharacterCodingException {
				public static class: java.lang.Class<java.nio.charset.MalformedInputException>;
				public constructor(param0: number);
				public constructor(param0: string, param1: java.lang.Throwable);
				public getInputLength(): number;
				public getMessage(): string;
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module nio {
		export module charset {
			export class UnmappableCharacterException extends java.nio.charset.CharacterCodingException {
				public static class: java.lang.Class<java.nio.charset.UnmappableCharacterException>;
				public constructor(param0: number);
				public constructor(param0: string, param1: java.lang.Throwable);
				public getInputLength(): number;
				public getMessage(): string;
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module nio {
		export module charset {
			export class UnsupportedCharsetException extends java.lang.IllegalArgumentException {
				public static class: java.lang.Class<java.nio.charset.UnsupportedCharsetException>;
				public getCharsetName(): string;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module nio {
		export module charset {
			export module spi {
				export abstract class CharsetProvider extends java.lang.Object {
					public static class: java.lang.Class<java.nio.charset.spi.CharsetProvider>;
					public constructor();
					public charsets(): java.util.Iterator<java.nio.charset.Charset>;
					public charsetForName(param0: string): java.nio.charset.Charset;
				}
			}
		}
	}
}

declare module java {
	export module security {
		export class AccessControlContext extends java.lang.Object {
			public static class: java.lang.Class<java.security.AccessControlContext>;
			public constructor(param0: native.Array<java.security.ProtectionDomain>);
			public getDomainCombiner(): java.security.DomainCombiner;
			public checkPermission(param0: java.security.Permission): void;
			public constructor(param0: java.security.AccessControlContext, param1: java.security.DomainCombiner);
		}
	}
}

declare module java {
	export module security {
		export class AccessControlException extends java.lang.SecurityException {
			public static class: java.lang.Class<java.security.AccessControlException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor(param0: string, param1: java.security.Permission);
			public getPermission(): java.security.Permission;
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module security {
		export class AccessController extends java.lang.Object {
			public static class: java.lang.Class<java.security.AccessController>;
			public static doPrivilegedWithCombiner(param0: java.security.PrivilegedAction<any>): any;
			public static doPrivileged(param0: java.security.PrivilegedAction<any>, param1: java.security.AccessControlContext): any;
			public static doPrivileged(param0: java.security.PrivilegedExceptionAction<any>, param1: java.security.AccessControlContext): any;
			public static doPrivilegedWithCombiner(param0: java.security.PrivilegedExceptionAction<any>): any;
			public static getContext(): java.security.AccessControlContext;
			public static checkPermission(param0: java.security.Permission): void;
			public static doPrivileged(param0: java.security.PrivilegedAction<any>): any;
			public static doPrivileged(param0: java.security.PrivilegedExceptionAction<any>): any;
		}
	}
}

declare module java {
	export module security {
		export class AlgorithmParameterGenerator extends java.lang.Object {
			public static class: java.lang.Class<java.security.AlgorithmParameterGenerator>;
			public static getInstance(param0: string, param1: string): java.security.AlgorithmParameterGenerator;
			public init(param0: number, param1: java.security.SecureRandom): void;
			public static getInstance(param0: string): java.security.AlgorithmParameterGenerator;
			public constructor(param0: java.security.AlgorithmParameterGeneratorSpi, param1: java.security.Provider, param2: string);
			public init(param0: java.security.spec.AlgorithmParameterSpec): void;
			public getAlgorithm(): string;
			public static getInstance(param0: string, param1: java.security.Provider): java.security.AlgorithmParameterGenerator;
			public init(param0: java.security.spec.AlgorithmParameterSpec, param1: java.security.SecureRandom): void;
			public init(param0: number): void;
			public getProvider(): java.security.Provider;
			public generateParameters(): java.security.AlgorithmParameters;
		}
	}
}

declare module java {
	export module security {
		export abstract class AlgorithmParameterGeneratorSpi extends java.lang.Object {
			public static class: java.lang.Class<java.security.AlgorithmParameterGeneratorSpi>;
			public engineGenerateParameters(): java.security.AlgorithmParameters;
			public engineInit(param0: java.security.spec.AlgorithmParameterSpec, param1: java.security.SecureRandom): void;
			public engineInit(param0: number, param1: java.security.SecureRandom): void;
			public constructor();
		}
	}
}

declare module java {
	export module security {
		export class AlgorithmParameters extends java.lang.Object {
			public static class: java.lang.Class<java.security.AlgorithmParameters>;
			public static getInstance(param0: string, param1: java.security.Provider): java.security.AlgorithmParameters;
			public init(param0: native.Array<number>): void;
			public getEncoded(param0: string): native.Array<number>;
			public constructor(param0: java.security.AlgorithmParametersSpi, param1: java.security.Provider, param2: string);
			public init(param0: java.security.spec.AlgorithmParameterSpec): void;
			public static getInstance(param0: string, param1: string): java.security.AlgorithmParameters;
			public init(param0: native.Array<number>, param1: string): void;
			public getProvider(): java.security.Provider;
			public getEncoded(): native.Array<number>;
			public toString(): string;
			public getAlgorithm(): string;
			public static getInstance(param0: string): java.security.AlgorithmParameters;
			public getParameterSpec(param0: java.lang.Class<any>): java.security.spec.AlgorithmParameterSpec;
		}
	}
}

declare module java {
	export module security {
		export abstract class AlgorithmParametersSpi extends java.lang.Object {
			public static class: java.lang.Class<java.security.AlgorithmParametersSpi>;
			public engineInit(param0: native.Array<number>, param1: string): void;
			public engineGetEncoded(): native.Array<number>;
			public engineInit(param0: java.security.spec.AlgorithmParameterSpec): void;
			public engineGetEncoded(param0: string): native.Array<number>;
			public engineToString(): string;
			public constructor();
			public engineInit(param0: native.Array<number>): void;
			public engineGetParameterSpec(param0: java.lang.Class<any>): java.security.spec.AlgorithmParameterSpec;
		}
	}
}

declare module java {
	export module security {
		export class AllPermission extends java.security.Permission {
			public static class: java.lang.Class<java.security.AllPermission>;
			public constructor(param0: string, param1: string);
			public implies(param0: java.security.Permission): boolean;
			public getActions(): string;
			public checkGuard(param0: any): void;
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module security {
		export abstract class AuthProvider extends java.security.Provider {
			public static class: java.lang.Class<java.security.AuthProvider>;
			public clear(): void;
			public equals(param0: any): boolean;
			public constructor(param0: java.util.Properties);
			public entrySet(): java.util.Set<java.util.Map.Entry<any,any>>;
			public isEmpty(): boolean;
			public keySet(): java.util.Set<any>;
			public size(): number;
			public containsValue(param0: any): boolean;
			public setCallbackHandler(param0: javax.security.auth.callback.CallbackHandler): void;
			public constructor(param0: number);
			public logout(): void;
			public constructor(param0: java.util.Map<any,any>);
			public constructor();
			public get(param0: any): any;
			public put(param0: any, param1: any): any;
			public constructor(param0: string, param1: number, param2: string);
			public login(param0: javax.security.auth.Subject, param1: javax.security.auth.callback.CallbackHandler): void;
			public remove(param0: any): any;
			public putAll(param0: java.util.Map<any,any>): void;
			public containsKey(param0: any): boolean;
			public values(): java.util.Collection<any>;
			public constructor(param0: number, param1: number);
			public hashCode(): number;
		}
	}
}

declare module java {
	export module security {
		export abstract class BasicPermission extends java.security.Permission implements java.io.Serializable {
			public static class: java.lang.Class<java.security.BasicPermission>;
			public constructor(param0: string, param1: string);
			public implies(param0: java.security.Permission): boolean;
			public getActions(): string;
			public checkGuard(param0: any): void;
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module security {
		export class Certificate extends java.lang.Object {
			public static class: java.lang.Class<java.security.Certificate>;
			/**
			 * Constructs a new instance of the java.security.Certificate interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				decode(param0: java.io.InputStream): void;
				encode(param0: java.io.OutputStream): void;
				getFormat(): string;
				getGuarantor(): java.security.Principal;
				getPrincipal(): java.security.Principal;
				getPublicKey(): java.security.PublicKey;
				toString(param0: boolean): string;
			});
			public constructor();
			public decode(param0: java.io.InputStream): void;
			public toString(param0: boolean): string;
			public getPublicKey(): java.security.PublicKey;
			public encode(param0: java.io.OutputStream): void;
			public getGuarantor(): java.security.Principal;
			public toString(): string;
			public getPrincipal(): java.security.Principal;
			public getFormat(): string;
		}
	}
}

declare module java {
	export module security {
		export class CodeSigner extends java.lang.Object implements java.io.Serializable {
			public static class: java.lang.Class<java.security.CodeSigner>;
			public equals(param0: any): boolean;
			public getTimestamp(): java.security.Timestamp;
			public toString(): string;
			public getSignerCertPath(): java.security.cert.CertPath;
			public constructor(param0: java.security.cert.CertPath, param1: java.security.Timestamp);
			public hashCode(): number;
		}
	}
}

declare module java {
	export module security {
		export class CodeSource extends java.lang.Object implements java.io.Serializable {
			public static class: java.lang.Class<java.security.CodeSource>;
			public getLocation(): java.net.URL;
			public getCertificates(): native.Array<java.security.cert.Certificate>;
			public constructor(param0: java.net.URL, param1: native.Array<java.security.CodeSigner>);
			public getCodeSigners(): native.Array<java.security.CodeSigner>;
			public constructor(param0: java.net.URL, param1: native.Array<java.security.cert.Certificate>);
			public implies(param0: java.security.CodeSource): boolean;
		}
	}
}

declare module java {
	export module security {
		export class DigestException extends java.security.GeneralSecurityException {
			public static class: java.lang.Class<java.security.DigestException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module security {
		export class DigestInputStream extends java.io.FilterInputStream {
			public static class: java.lang.Class<java.security.DigestInputStream>;
			public digest: java.security.MessageDigest;
			public toString(): string;
			public setMessageDigest(param0: java.security.MessageDigest): void;
			public read(param0: native.Array<number>): number;
			public getMessageDigest(): java.security.MessageDigest;
			public constructor(param0: java.io.InputStream, param1: java.security.MessageDigest);
			public on(param0: boolean): void;
			public constructor(param0: java.io.InputStream);
			public read(param0: native.Array<number>, param1: number, param2: number): number;
			public constructor();
			public close(): void;
			public read(): number;
		}
	}
}

declare module java {
	export module security {
		export class DigestOutputStream extends java.io.FilterOutputStream {
			public static class: java.lang.Class<java.security.DigestOutputStream>;
			public digest: java.security.MessageDigest;
			public constructor(param0: java.io.OutputStream, param1: java.security.MessageDigest);
			public flush(): void;
			public toString(): string;
			public setMessageDigest(param0: java.security.MessageDigest): void;
			public write(param0: number): void;
			public getMessageDigest(): java.security.MessageDigest;
			public on(param0: boolean): void;
			public constructor(param0: java.io.OutputStream);
			public write(param0: native.Array<number>, param1: number, param2: number): void;
			public constructor();
			public write(param0: native.Array<number>): void;
			public close(): void;
		}
	}
}

declare module java {
	export module security {
		export class DomainCombiner extends java.lang.Object {
			public static class: java.lang.Class<java.security.DomainCombiner>;
			/**
			 * Constructs a new instance of the java.security.DomainCombiner interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				combine(param0: native.Array<java.security.ProtectionDomain>, param1: native.Array<java.security.ProtectionDomain>): native.Array<java.security.ProtectionDomain>;
			});
			public constructor();
			public combine(param0: native.Array<java.security.ProtectionDomain>, param1: native.Array<java.security.ProtectionDomain>): native.Array<java.security.ProtectionDomain>;
		}
	}
}

declare module java {
	export module security {
		export class GeneralSecurityException extends java.lang.Exception {
			public static class: java.lang.Class<java.security.GeneralSecurityException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module security {
		export class Guard extends java.lang.Object {
			public static class: java.lang.Class<java.security.Guard>;
			/**
			 * Constructs a new instance of the java.security.Guard interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				checkGuard(param0: any): void;
			});
			public constructor();
			public checkGuard(param0: any): void;
		}
	}
}

declare module java {
	export module security {
		export class GuardedObject extends java.lang.Object implements java.io.Serializable {
			public static class: java.lang.Class<java.security.GuardedObject>;
			public getObject(): any;
			public constructor(param0: any, param1: java.security.Guard);
		}
	}
}

declare module java {
	export module security {
		export abstract class Identity extends java.lang.Object implements java.security.Principal, java.io.Serializable {
			public static class: java.lang.Class<java.security.Identity>;
			public toString(param0: boolean): string;
			public setPublicKey(param0: java.security.PublicKey): void;
			public equals(param0: any): boolean;
			public getPublicKey(): java.security.PublicKey;
			public identityEquals(param0: java.security.Identity): boolean;
			public constructor();
			public setInfo(param0: string): void;
			public constructor(param0: string, param1: java.security.IdentityScope);
			public getScope(): java.security.IdentityScope;
			public certificates(): native.Array<java.security.Certificate>;
			public toString(): string;
			public getInfo(): string;
			public getName(): string;
			public removeCertificate(param0: java.security.Certificate): void;
			public constructor(param0: string);
			public addCertificate(param0: java.security.Certificate): void;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module security {
		export abstract class IdentityScope extends java.security.Identity {
			public static class: java.lang.Class<java.security.IdentityScope>;
			public toString(param0: boolean): string;
			public equals(param0: any): boolean;
			public static getSystemScope(): java.security.IdentityScope;
			public size(): number;
			public getIdentity(param0: java.security.PublicKey): java.security.Identity;
			public removeIdentity(param0: java.security.Identity): void;
			public addIdentity(param0: java.security.Identity): void;
			public constructor();
			public constructor(param0: string, param1: java.security.IdentityScope);
			public getIdentity(param0: string): java.security.Identity;
			public toString(): string;
			public getIdentity(param0: java.security.Principal): java.security.Identity;
			public getName(): string;
			public static setSystemScope(param0: java.security.IdentityScope): void;
			public constructor(param0: string);
			public identities(): java.util.Enumeration<java.security.Identity>;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module security {
		export class InvalidAlgorithmParameterException extends java.security.GeneralSecurityException {
			public static class: java.lang.Class<java.security.InvalidAlgorithmParameterException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module security {
		export class InvalidKeyException extends java.security.KeyException {
			public static class: java.lang.Class<java.security.InvalidKeyException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module security {
		export class InvalidParameterException extends java.lang.IllegalArgumentException {
			public static class: java.lang.Class<java.security.InvalidParameterException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module security {
		export class Key extends java.lang.Object implements java.io.Serializable {
			public static class: java.lang.Class<java.security.Key>;
			/**
			 * Constructs a new instance of the java.security.Key interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				getAlgorithm(): string;
				getFormat(): string;
				getEncoded(): native.Array<number>;
			});
			public constructor();
			public static serialVersionUID: number;
			public getAlgorithm(): string;
			public getFormat(): string;
			public getEncoded(): native.Array<number>;
		}
	}
}

declare module java {
	export module security {
		export class KeyException extends java.security.GeneralSecurityException {
			public static class: java.lang.Class<java.security.KeyException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module security {
		export class KeyFactory extends java.lang.Object {
			public static class: java.lang.Class<java.security.KeyFactory>;
			public constructor(param0: java.security.KeyFactorySpi, param1: java.security.Provider, param2: string);
			public generatePrivate(param0: java.security.spec.KeySpec): java.security.PrivateKey;
			public static getInstance(param0: string, param1: java.security.Provider): java.security.KeyFactory;
			public translateKey(param0: java.security.Key): java.security.Key;
			public static getInstance(param0: string, param1: string): java.security.KeyFactory;
			public getAlgorithm(): string;
			public generatePublic(param0: java.security.spec.KeySpec): java.security.PublicKey;
			public static getInstance(param0: string): java.security.KeyFactory;
			public getKeySpec(param0: java.security.Key, param1: java.lang.Class<any>): java.security.spec.KeySpec;
			public getProvider(): java.security.Provider;
		}
	}
}

declare module java {
	export module security {
		export abstract class KeyFactorySpi extends java.lang.Object {
			public static class: java.lang.Class<java.security.KeyFactorySpi>;
			public engineGetKeySpec(param0: java.security.Key, param1: java.lang.Class<any>): java.security.spec.KeySpec;
			public engineGeneratePrivate(param0: java.security.spec.KeySpec): java.security.PrivateKey;
			public engineGeneratePublic(param0: java.security.spec.KeySpec): java.security.PublicKey;
			public engineTranslateKey(param0: java.security.Key): java.security.Key;
			public constructor();
		}
	}
}

declare module java {
	export module security {
		export class KeyManagementException extends java.security.KeyException {
			public static class: java.lang.Class<java.security.KeyManagementException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module security {
		export class KeyPair extends java.lang.Object implements java.io.Serializable {
			public static class: java.lang.Class<java.security.KeyPair>;
			public constructor(param0: java.security.PublicKey, param1: java.security.PrivateKey);
			public getPublic(): java.security.PublicKey;
			public getPrivate(): java.security.PrivateKey;
		}
	}
}

declare module java {
	export module security {
		export abstract class KeyPairGenerator extends java.security.KeyPairGeneratorSpi {
			public static class: java.lang.Class<java.security.KeyPairGenerator>;
			public static getInstance(param0: string, param1: string): java.security.KeyPairGenerator;
			public initialize(param0: java.security.spec.AlgorithmParameterSpec): void;
			public initialize(param0: java.security.spec.AlgorithmParameterSpec, param1: java.security.SecureRandom): void;
			public static getInstance(param0: string): java.security.KeyPairGenerator;
			public constructor();
			public static getInstance(param0: string, param1: java.security.Provider): java.security.KeyPairGenerator;
			public generateKeyPair(): java.security.KeyPair;
			public getProvider(): java.security.Provider;
			public initialize(param0: number, param1: java.security.SecureRandom): void;
			public getAlgorithm(): string;
			public initialize(param0: number): void;
			public genKeyPair(): java.security.KeyPair;
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module security {
		export abstract class KeyPairGeneratorSpi extends java.lang.Object {
			public static class: java.lang.Class<java.security.KeyPairGeneratorSpi>;
			public initialize(param0: number, param1: java.security.SecureRandom): void;
			public initialize(param0: java.security.spec.AlgorithmParameterSpec, param1: java.security.SecureRandom): void;
			public constructor();
			public generateKeyPair(): java.security.KeyPair;
		}
	}
}

declare module java {
	export module security {
		export class KeyRep extends java.lang.Object implements java.io.Serializable {
			public static class: java.lang.Class<java.security.KeyRep>;
			public readResolve(): any;
			public constructor(param0: java.security.KeyRep.Type, param1: string, param2: string, param3: native.Array<number>);
		}
		export module KeyRep {
			export class Type {
				public static class: java.lang.Class<java.security.KeyRep.Type>;
				public static PRIVATE: java.security.KeyRep.Type;
				public static PUBLIC: java.security.KeyRep.Type;
				public static SECRET: java.security.KeyRep.Type;
				public static values(): native.Array<java.security.KeyRep.Type>;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
				public static valueOf(param0: string): java.security.KeyRep.Type;
			}
		}
	}
}

declare module java {
	export module security {
		export class KeyStore extends java.lang.Object {
			public static class: java.lang.Class<java.security.KeyStore>;
			public entryInstanceOf(param0: string, param1: java.lang.Class<any>): boolean;
			public static getDefaultType(): string;
			public setKeyEntry(param0: string, param1: native.Array<number>, param2: native.Array<java.security.cert.Certificate>): void;
			public constructor(param0: java.security.KeyStoreSpi, param1: java.security.Provider, param2: string);
			public store(param0: java.io.OutputStream, param1: native.Array<string>): void;
			public getKey(param0: string, param1: native.Array<string>): java.security.Key;
			public getCreationDate(param0: string): java.util.Date;
			public containsAlias(param0: string): boolean;
			public aliases(): java.util.Enumeration<string>;
			public load(param0: java.io.InputStream, param1: native.Array<string>): void;
			public getCertificateChain(param0: string): native.Array<java.security.cert.Certificate>;
			public setEntry(param0: string, param1: java.security.KeyStore.Entry, param2: java.security.KeyStore.ProtectionParameter): void;
			public getType(): string;
			public static getInstance(param0: string, param1: java.security.Provider): java.security.KeyStore;
			public getCertificateAlias(param0: java.security.cert.Certificate): string;
			public setKeyEntry(param0: string, param1: java.security.Key, param2: native.Array<string>, param3: native.Array<java.security.cert.Certificate>): void;
			public size(): number;
			public static getInstance(param0: string, param1: string): java.security.KeyStore;
			public getEntry(param0: string, param1: java.security.KeyStore.ProtectionParameter): java.security.KeyStore.Entry;
			public store(param0: java.security.KeyStore.LoadStoreParameter): void;
			public setCertificateEntry(param0: string, param1: java.security.cert.Certificate): void;
			public getProvider(): java.security.Provider;
			public getCertificate(param0: string): java.security.cert.Certificate;
			public deleteEntry(param0: string): void;
			public isKeyEntry(param0: string): boolean;
			public static getInstance(param0: string): java.security.KeyStore;
			public load(param0: java.security.KeyStore.LoadStoreParameter): void;
			public isCertificateEntry(param0: string): boolean;
		}
		export module KeyStore {
			export abstract class Builder extends java.lang.Object {
				public static class: java.lang.Class<java.security.KeyStore.Builder>;
				public static newInstance(param0: string, param1: java.security.Provider, param2: java.io.File, param3: java.security.KeyStore.ProtectionParameter): java.security.KeyStore.Builder;
				public static newInstance(param0: string, param1: java.security.Provider, param2: java.security.KeyStore.ProtectionParameter): java.security.KeyStore.Builder;
				public getProtectionParameter(param0: string): java.security.KeyStore.ProtectionParameter;
				public getKeyStore(): java.security.KeyStore;
				public static newInstance(param0: java.security.KeyStore, param1: java.security.KeyStore.ProtectionParameter): java.security.KeyStore.Builder;
				public constructor();
			}
			export class CallbackHandlerProtection extends java.lang.Object implements java.security.KeyStore.ProtectionParameter {
				public static class: java.lang.Class<java.security.KeyStore.CallbackHandlerProtection>;
				public constructor(param0: javax.security.auth.callback.CallbackHandler);
				public getCallbackHandler(): javax.security.auth.callback.CallbackHandler;
			}
			export class Entry extends java.lang.Object {
				public static class: java.lang.Class<java.security.KeyStore.Entry>;
				/**
				 * Constructs a new instance of the java.security.KeyStore$Entry interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
			}
			export class LoadStoreParameter extends java.lang.Object {
				public static class: java.lang.Class<java.security.KeyStore.LoadStoreParameter>;
				/**
				 * Constructs a new instance of the java.security.KeyStore$LoadStoreParameter interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getProtectionParameter(): java.security.KeyStore.ProtectionParameter;
				});
				public constructor();
				public getProtectionParameter(): java.security.KeyStore.ProtectionParameter;
			}
			export class PasswordProtection extends java.lang.Object implements java.security.KeyStore.ProtectionParameter, javax.security.auth.Destroyable {
				public static class: java.lang.Class<java.security.KeyStore.PasswordProtection>;
				public destroy(): void;
				public getPassword(): native.Array<string>;
				public isDestroyed(): boolean;
				public constructor(param0: native.Array<string>);
			}
			export class PrivateKeyEntry extends java.lang.Object implements java.security.KeyStore.Entry {
				public static class: java.lang.Class<java.security.KeyStore.PrivateKeyEntry>;
				public getCertificateChain(): native.Array<java.security.cert.Certificate>;
				public getCertificate(): java.security.cert.Certificate;
				public getPrivateKey(): java.security.PrivateKey;
				public constructor(param0: java.security.PrivateKey, param1: native.Array<java.security.cert.Certificate>);
				public toString(): string;
			}
			export class ProtectionParameter extends java.lang.Object {
				public static class: java.lang.Class<java.security.KeyStore.ProtectionParameter>;
				/**
				 * Constructs a new instance of the java.security.KeyStore$ProtectionParameter interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
			}
			export class SecretKeyEntry extends java.lang.Object implements java.security.KeyStore.Entry {
				public static class: java.lang.Class<java.security.KeyStore.SecretKeyEntry>;
				public constructor(param0: javax.crypto.SecretKey);
				public getSecretKey(): javax.crypto.SecretKey;
				public toString(): string;
			}
			export class TrustedCertificateEntry extends java.lang.Object implements java.security.KeyStore.Entry {
				public static class: java.lang.Class<java.security.KeyStore.TrustedCertificateEntry>;
				public getTrustedCertificate(): java.security.cert.Certificate;
				public constructor(param0: java.security.cert.Certificate);
				public toString(): string;
			}
		}
	}
}

declare module java {
	export module security {
		export class KeyStoreException extends java.security.GeneralSecurityException {
			public static class: java.lang.Class<java.security.KeyStoreException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module security {
		export abstract class KeyStoreSpi extends java.lang.Object {
			public static class: java.lang.Class<java.security.KeyStoreSpi>;
			public engineGetCreationDate(param0: string): java.util.Date;
			public engineEntryInstanceOf(param0: string, param1: java.lang.Class<any>): boolean;
			public engineGetCertificateChain(param0: string): native.Array<java.security.cert.Certificate>;
			public engineContainsAlias(param0: string): boolean;
			public constructor();
			public engineSetCertificateEntry(param0: string, param1: java.security.cert.Certificate): void;
			public engineLoad(param0: java.io.InputStream, param1: native.Array<string>): void;
			public engineGetEntry(param0: string, param1: java.security.KeyStore.ProtectionParameter): java.security.KeyStore.Entry;
			public engineStore(param0: java.io.OutputStream, param1: native.Array<string>): void;
			public engineAliases(): java.util.Enumeration<string>;
			public engineSetKeyEntry(param0: string, param1: java.security.Key, param2: native.Array<string>, param3: native.Array<java.security.cert.Certificate>): void;
			public engineSetEntry(param0: string, param1: java.security.KeyStore.Entry, param2: java.security.KeyStore.ProtectionParameter): void;
			public engineSetKeyEntry(param0: string, param1: native.Array<number>, param2: native.Array<java.security.cert.Certificate>): void;
			public engineGetCertificateAlias(param0: java.security.cert.Certificate): string;
			public engineGetKey(param0: string, param1: native.Array<string>): java.security.Key;
			public engineDeleteEntry(param0: string): void;
			public engineSize(): number;
			public engineIsCertificateEntry(param0: string): boolean;
			public engineStore(param0: java.security.KeyStore.LoadStoreParameter): void;
			public engineLoad(param0: java.security.KeyStore.LoadStoreParameter): void;
			public engineGetCertificate(param0: string): java.security.cert.Certificate;
			public engineIsKeyEntry(param0: string): boolean;
		}
	}
}

declare module java {
	export module security {
		export abstract class MessageDigest extends java.security.MessageDigestSpi {
			public static class: java.lang.Class<java.security.MessageDigest>;
			public update(param0: number): void;
			public digest(param0: native.Array<number>): native.Array<number>;
			public static isEqual(param0: native.Array<number>, param1: native.Array<number>): boolean;
			public update(param0: java.nio.ByteBuffer): void;
			public digest(param0: native.Array<number>, param1: number, param2: number): number;
			public static getInstance(param0: string, param1: java.security.Provider): java.security.MessageDigest;
			public constructor();
			public digest(): native.Array<number>;
			public getProvider(): java.security.Provider;
			public update(param0: native.Array<number>): void;
			public toString(): string;
			public getDigestLength(): number;
			public clone(): any;
			public static getInstance(param0: string): java.security.MessageDigest;
			public reset(): void;
			public getAlgorithm(): string;
			public update(param0: native.Array<number>, param1: number, param2: number): void;
			public static getInstance(param0: string, param1: string): java.security.MessageDigest;
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module security {
		export abstract class MessageDigestSpi extends java.lang.Object {
			public static class: java.lang.Class<java.security.MessageDigestSpi>;
			public engineUpdate(param0: java.nio.ByteBuffer): void;
			public clone(): any;
			public engineGetDigestLength(): number;
			public engineUpdate(param0: native.Array<number>, param1: number, param2: number): void;
			public engineDigest(): native.Array<number>;
			public engineDigest(param0: native.Array<number>, param1: number, param2: number): number;
			public engineUpdate(param0: number): void;
			public engineReset(): void;
			public constructor();
		}
	}
}

declare module java {
	export module security {
		export class NoSuchAlgorithmException extends java.security.GeneralSecurityException {
			public static class: java.lang.Class<java.security.NoSuchAlgorithmException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module security {
		export class NoSuchProviderException extends java.security.GeneralSecurityException {
			public static class: java.lang.Class<java.security.NoSuchProviderException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module security {
		export abstract class Permission extends java.lang.Object implements java.security.Guard, java.io.Serializable {
			public static class: java.lang.Class<java.security.Permission>;
			public getName(): string;
			public implies(param0: java.security.Permission): boolean;
			public getActions(): string;
			public checkGuard(param0: any): void;
			public constructor(param0: string);
			public newPermissionCollection(): java.security.PermissionCollection;
		}
	}
}

declare module java {
	export module security {
		export abstract class PermissionCollection extends java.lang.Object implements java.io.Serializable {
			public static class: java.lang.Class<java.security.PermissionCollection>;
			public isReadOnly(): boolean;
			public setReadOnly(): void;
			public elements(): java.util.Enumeration<java.security.Permission>;
			public implies(param0: java.security.Permission): boolean;
			public constructor();
			public add(param0: java.security.Permission): void;
		}
	}
}

declare module java {
	export module security {
		export class Permissions extends java.security.PermissionCollection implements java.io.Serializable {
			public static class: java.lang.Class<java.security.Permissions>;
			public elements(): java.util.Enumeration<java.security.Permission>;
			public implies(param0: java.security.Permission): boolean;
			public constructor();
			public add(param0: java.security.Permission): void;
		}
	}
}

declare module java {
	export module security {
		export abstract class Policy extends java.lang.Object {
			public static class: java.lang.Class<java.security.Policy>;
			public static UNSUPPORTED_EMPTY_COLLECTION: java.security.PermissionCollection;
			public refresh(): void;
			public implies(param0: java.security.ProtectionDomain, param1: java.security.Permission): boolean;
			public static getPolicy(): java.security.Policy;
			public getPermissions(param0: java.security.CodeSource): java.security.PermissionCollection;
			public static getInstance(param0: string, param1: java.security.Policy.Parameters, param2: string): java.security.Policy;
			public getParameters(): java.security.Policy.Parameters;
			public constructor();
			public static getInstance(param0: string, param1: java.security.Policy.Parameters): java.security.Policy;
			public getProvider(): java.security.Provider;
			public getPermissions(param0: java.security.ProtectionDomain): java.security.PermissionCollection;
			public static setPolicy(param0: java.security.Policy): void;
			public static getInstance(param0: string, param1: java.security.Policy.Parameters, param2: java.security.Provider): java.security.Policy;
			public getType(): string;
		}
		export module Policy {
			export class Parameters extends java.lang.Object {
				public static class: java.lang.Class<java.security.Policy.Parameters>;
				/**
				 * Constructs a new instance of the java.security.Policy$Parameters interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
			}
		}
	}
}

declare module java {
	export module security {
		export abstract class PolicySpi extends java.lang.Object {
			public static class: java.lang.Class<java.security.PolicySpi>;
			public engineImplies(param0: java.security.ProtectionDomain, param1: java.security.Permission): boolean;
			public engineRefresh(): void;
			public engineGetPermissions(param0: java.security.CodeSource): java.security.PermissionCollection;
			public constructor();
			public engineGetPermissions(param0: java.security.ProtectionDomain): java.security.PermissionCollection;
		}
	}
}

declare module java {
	export module security {
		export class Principal extends java.lang.Object {
			public static class: java.lang.Class<java.security.Principal>;
			/**
			 * Constructs a new instance of the java.security.Principal interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				equals(param0: any): boolean;
				getName(): string;
				hashCode(): number;
				toString(): string;
			});
			public constructor();
			public equals(param0: any): boolean;
			public toString(): string;
			public getName(): string;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module security {
		export class PrivateKey extends java.lang.Object implements java.security.Key {
			public static class: java.lang.Class<java.security.PrivateKey>;
			/**
			 * Constructs a new instance of the java.security.PrivateKey interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				getAlgorithm(): string;
				getFormat(): string;
				getEncoded(): native.Array<number>;
			});
			public constructor();
			public static serialVersionUID: number;
			public getAlgorithm(): string;
			public getFormat(): string;
			public getEncoded(): native.Array<number>;
		}
	}
}

declare module java {
	export module security {
		export class PrivilegedAction<T>  extends java.lang.Object {
			public static class: java.lang.Class<java.security.PrivilegedAction<any>>;
			/**
			 * Constructs a new instance of the java.security.PrivilegedAction<any> interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				run(): T;
			});
			public constructor();
			public run(): T;
		}
	}
}

declare module java {
	export module security {
		export class PrivilegedActionException extends java.lang.Exception {
			public static class: java.lang.Class<java.security.PrivilegedActionException>;
			public getException(): java.lang.Exception;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
			public constructor(param0: java.lang.Exception);
		}
	}
}

declare module java {
	export module security {
		export class PrivilegedExceptionAction<T>  extends java.lang.Object {
			public static class: java.lang.Class<java.security.PrivilegedExceptionAction<any>>;
			/**
			 * Constructs a new instance of the java.security.PrivilegedExceptionAction<any> interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				run(): T;
			});
			public constructor();
			public run(): T;
		}
	}
}

declare module java {
	export module security {
		export class ProtectionDomain extends java.lang.Object {
			public static class: java.lang.Class<java.security.ProtectionDomain>;
			public getClassLoader(): java.lang.ClassLoader;
			public constructor(param0: java.security.CodeSource, param1: java.security.PermissionCollection);
			public constructor(param0: java.security.CodeSource, param1: java.security.PermissionCollection, param2: java.lang.ClassLoader, param3: native.Array<java.security.Principal>);
			public implies(param0: java.security.Permission): boolean;
			public getPermissions(): java.security.PermissionCollection;
			public getCodeSource(): java.security.CodeSource;
			public getPrincipals(): native.Array<java.security.Principal>;
		}
	}
}

declare module java {
	export module security {
		export abstract class Provider extends java.util.Properties {
			public static class: java.lang.Class<java.security.Provider>;
			public getServices(): java.util.Set<java.security.Provider.Service>;
			public equals(param0: any): boolean;
			public constructor(param0: java.util.Properties);
			public containsValue(param0: any): boolean;
			public get(param0: any): any;
			public getVersion(): number;
			public remove(param0: any): any;
			public putAll(param0: java.util.Map<any,any>): void;
			public putService(param0: java.security.Provider.Service): void;
			public load(param0: java.io.Reader): void;
			public values(): java.util.Collection<any>;
			public constructor(param0: number, param1: number);
			public clear(): void;
			public entrySet(): java.util.Set<java.util.Map.Entry<any,any>>;
			public keySet(): java.util.Set<any>;
			public isEmpty(): boolean;
			public size(): number;
			public constructor(param0: number);
			public constructor(param0: java.util.Map<any,any>);
			public constructor();
			public put(param0: any, param1: any): any;
			public constructor(param0: string, param1: number, param2: string);
			public removeService(param0: java.security.Provider.Service): void;
			public toString(): string;
			public getName(): string;
			public getInfo(): string;
			public containsKey(param0: any): boolean;
			public getService(param0: string, param1: string): java.security.Provider.Service;
			public load(param0: java.io.InputStream): void;
			public hashCode(): number;
		}
		export module Provider {
			export class Service extends java.lang.Object {
				public static class: java.lang.Class<java.security.Provider.Service>;
				public constructor(param0: java.security.Provider, param1: string, param2: string, param3: string, param4: java.util.List<string>, param5: java.util.Map<string,string>);
				public getAlgorithm(): string;
				public getAttribute(param0: string): string;
				public getType(): string;
				public getClassName(): string;
				public supportsParameter(param0: any): boolean;
				public getProvider(): java.security.Provider;
				public toString(): string;
				public newInstance(param0: any): any;
			}
		}
	}
}

declare module java {
	export module security {
		export class ProviderException extends java.lang.RuntimeException {
			public static class: java.lang.Class<java.security.ProviderException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module security {
		export class PublicKey extends java.lang.Object implements java.security.Key {
			public static class: java.lang.Class<java.security.PublicKey>;
			/**
			 * Constructs a new instance of the java.security.PublicKey interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				getAlgorithm(): string;
				getFormat(): string;
				getEncoded(): native.Array<number>;
			});
			public constructor();
			public static serialVersionUID: number;
			public getAlgorithm(): string;
			public getFormat(): string;
			public getEncoded(): native.Array<number>;
		}
	}
}

declare module java {
	export module security {
		export class SecureClassLoader extends java.lang.ClassLoader {
			public static class: java.lang.Class<java.security.SecureClassLoader>;
			public getPermissions(param0: java.security.CodeSource): java.security.PermissionCollection;
			public constructor(param0: java.lang.ClassLoader);
			public defineClass(param0: string, param1: java.nio.ByteBuffer, param2: java.security.ProtectionDomain): java.lang.Class<any>;
			public defineClass(param0: string, param1: native.Array<number>, param2: number, param3: number, param4: java.security.CodeSource): java.lang.Class<any>;
			public defineClass(param0: string, param1: java.nio.ByteBuffer, param2: java.security.CodeSource): java.lang.Class<any>;
			public constructor();
			public defineClass(param0: string, param1: native.Array<number>, param2: number, param3: number, param4: java.security.ProtectionDomain): java.lang.Class<any>;
			/** @deprecated */
			public defineClass(param0: native.Array<number>, param1: number, param2: number): java.lang.Class<any>;
			public defineClass(param0: string, param1: native.Array<number>, param2: number, param3: number): java.lang.Class<any>;
		}
	}
}

declare module java {
	export module security {
		export class SecureRandom extends java.util.Random {
			public static class: java.lang.Class<java.security.SecureRandom>;
			public setSeed(param0: native.Array<number>): void;
			public static getInstance(param0: string, param1: java.security.Provider): java.security.SecureRandom;
			public setSeed(param0: number): void;
			public nextBytes(param0: native.Array<number>): void;
			public static getInstance(param0: string, param1: string): java.security.SecureRandom;
			public constructor(param0: number);
			public generateSeed(param0: number): native.Array<number>;
			public constructor();
			public constructor(param0: native.Array<number>);
			public next(param0: number): number;
			public getProvider(): java.security.Provider;
			public constructor(param0: java.security.SecureRandomSpi, param1: java.security.Provider);
			public static getSeed(param0: number): native.Array<number>;
			public getAlgorithm(): string;
			public static getInstance(param0: string): java.security.SecureRandom;
		}
	}
}

declare module java {
	export module security {
		export abstract class SecureRandomSpi extends java.lang.Object implements java.io.Serializable {
			public static class: java.lang.Class<java.security.SecureRandomSpi>;
			public engineGenerateSeed(param0: number): native.Array<number>;
			public engineNextBytes(param0: native.Array<number>): void;
			public engineSetSeed(param0: native.Array<number>): void;
			public constructor();
		}
	}
}

declare module java {
	export module security {
		export class Security extends java.lang.Object {
			public static class: java.lang.Class<java.security.Security>;
			/** @deprecated */
			public static getAlgorithmProperty(param0: string, param1: string): string;
			public static insertProviderAt(param0: java.security.Provider, param1: number): number;
			public static setProperty(param0: string, param1: string): void;
			public static getProviders(param0: java.util.Map<string,string>): native.Array<java.security.Provider>;
			public static getProvider(param0: string): java.security.Provider;
			public static getProperty(param0: string): string;
			public static getProviders(param0: string): native.Array<java.security.Provider>;
			public static getAlgorithms(param0: string): java.util.Set<string>;
			public static addProvider(param0: java.security.Provider): number;
			public static getProviders(): native.Array<java.security.Provider>;
			public static removeProvider(param0: string): void;
		}
	}
}

declare module java {
	export module security {
		export class SecurityPermission extends java.security.BasicPermission {
			public static class: java.lang.Class<java.security.SecurityPermission>;
			public constructor(param0: string, param1: string);
			public implies(param0: java.security.Permission): boolean;
			public getActions(): string;
			public checkGuard(param0: any): void;
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module security {
		export abstract class Signature extends java.security.SignatureSpi {
			public static class: java.lang.Class<java.security.Signature>;
			public static UNINITIALIZED: number;
			public static SIGN: number;
			public static VERIFY: number;
			public state: number;
			public getParameters(): java.security.AlgorithmParameters;
			public static getInstance(param0: string): java.security.Signature;
			public update(param0: java.nio.ByteBuffer): void;
			public sign(param0: native.Array<number>, param1: number, param2: number): number;
			public verify(param0: native.Array<number>): boolean;
			/** @deprecated */
			public getParameter(param0: string): any;
			public initSign(param0: java.security.PrivateKey, param1: java.security.SecureRandom): void;
			public static getInstance(param0: string, param1: string): java.security.Signature;
			public update(param0: native.Array<number>, param1: number, param2: number): void;
			public verify(param0: native.Array<number>, param1: number, param2: number): boolean;
			public constructor(param0: string);
			public update(param0: number): void;
			public constructor();
			public getProvider(): java.security.Provider;
			/** @deprecated */
			public setParameter(param0: string, param1: any): void;
			public setParameter(param0: java.security.spec.AlgorithmParameterSpec): void;
			public update(param0: native.Array<number>): void;
			public initVerify(param0: java.security.cert.Certificate): void;
			public toString(): string;
			public clone(): any;
			public static getInstance(param0: string, param1: java.security.Provider): java.security.Signature;
			public getAlgorithm(): string;
			public sign(): native.Array<number>;
			public initVerify(param0: java.security.PublicKey): void;
			public initSign(param0: java.security.PrivateKey): void;
		}
	}
}

declare module java {
	export module security {
		export class SignatureException extends java.security.GeneralSecurityException {
			public static class: java.lang.Class<java.security.SignatureException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module security {
		export abstract class SignatureSpi extends java.lang.Object {
			public static class: java.lang.Class<java.security.SignatureSpi>;
			public appRandom: java.security.SecureRandom;
			public engineSign(): native.Array<number>;
			public engineUpdate(param0: native.Array<number>, param1: number, param2: number): void;
			public engineUpdate(param0: number): void;
			public constructor();
			public engineVerify(param0: native.Array<number>): boolean;
			public engineInitSign(param0: java.security.PrivateKey, param1: java.security.SecureRandom): void;
			public engineVerify(param0: native.Array<number>, param1: number, param2: number): boolean;
			public engineUpdate(param0: java.nio.ByteBuffer): void;
			public engineSetParameter(param0: java.security.spec.AlgorithmParameterSpec): void;
			public clone(): any;
			/** @deprecated */
			public engineSetParameter(param0: string, param1: any): void;
			/** @deprecated */
			public engineGetParameter(param0: string): any;
			public engineInitVerify(param0: java.security.PublicKey): void;
			public engineInitSign(param0: java.security.PrivateKey): void;
			public engineSign(param0: native.Array<number>, param1: number, param2: number): number;
			public engineGetParameters(): java.security.AlgorithmParameters;
		}
	}
}

declare module java {
	export module security {
		export class SignedObject extends java.lang.Object implements java.io.Serializable {
			public static class: java.lang.Class<java.security.SignedObject>;
			public getObject(): any;
			public getAlgorithm(): string;
			public verify(param0: java.security.PublicKey, param1: java.security.Signature): boolean;
			public constructor(param0: java.io.Serializable, param1: java.security.PrivateKey, param2: java.security.Signature);
			public getSignature(): native.Array<number>;
		}
	}
}

declare module java {
	export module security {
		export abstract class Signer extends java.security.Identity {
			public static class: java.lang.Class<java.security.Signer>;
			public getPrivateKey(): java.security.PrivateKey;
			public toString(param0: boolean): string;
			public equals(param0: any): boolean;
			public toString(): string;
			public getName(): string;
			public setKeyPair(param0: java.security.KeyPair): void;
			public constructor();
			public constructor(param0: string);
			public constructor(param0: string, param1: java.security.IdentityScope);
			public hashCode(): number;
		}
	}
}

declare module java {
	export module security {
		export class Timestamp extends java.lang.Object implements java.io.Serializable {
			public static class: java.lang.Class<java.security.Timestamp>;
			public equals(param0: any): boolean;
			public toString(): string;
			public getSignerCertPath(): java.security.cert.CertPath;
			public getTimestamp(): java.util.Date;
			public constructor(param0: java.util.Date, param1: java.security.cert.CertPath);
			public hashCode(): number;
		}
	}
}

declare module java {
	export module security {
		export class UnrecoverableEntryException extends java.security.GeneralSecurityException {
			public static class: java.lang.Class<java.security.UnrecoverableEntryException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module security {
		export class UnrecoverableKeyException extends java.security.UnrecoverableEntryException {
			public static class: java.lang.Class<java.security.UnrecoverableKeyException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module security {
		export class UnresolvedPermission extends java.security.Permission implements java.io.Serializable {
			public static class: java.lang.Class<java.security.UnresolvedPermission>;
			public getUnresolvedCerts(): native.Array<java.security.cert.Certificate>;
			public getUnresolvedName(): string;
			public getUnresolvedType(): string;
			public constructor(param0: string, param1: string, param2: string, param3: native.Array<java.security.cert.Certificate>);
			public getUnresolvedActions(): string;
			public implies(param0: java.security.Permission): boolean;
			public getActions(): string;
			public checkGuard(param0: any): void;
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module security {
		export module acl {
			export class Acl extends java.lang.Object implements java.security.acl.Owner {
				public static class: java.lang.Class<java.security.acl.Acl>;
				/**
				 * Constructs a new instance of the java.security.acl.Acl interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					setName(param0: java.security.Principal, param1: string): void;
					getName(): string;
					addEntry(param0: java.security.Principal, param1: java.security.acl.AclEntry): boolean;
					removeEntry(param0: java.security.Principal, param1: java.security.acl.AclEntry): boolean;
					getPermissions(param0: java.security.Principal): java.util.Enumeration<java.security.acl.Permission>;
					entries(): java.util.Enumeration<java.security.acl.AclEntry>;
					checkPermission(param0: java.security.Principal, param1: java.security.acl.Permission): boolean;
					toString(): string;
					addOwner(param0: java.security.Principal, param1: java.security.Principal): boolean;
					deleteOwner(param0: java.security.Principal, param1: java.security.Principal): boolean;
					isOwner(param0: java.security.Principal): boolean;
				});
				public constructor();
				public deleteOwner(param0: java.security.Principal, param1: java.security.Principal): boolean;
				public isOwner(param0: java.security.Principal): boolean;
				public addOwner(param0: java.security.Principal, param1: java.security.Principal): boolean;
				public addEntry(param0: java.security.Principal, param1: java.security.acl.AclEntry): boolean;
				public removeEntry(param0: java.security.Principal, param1: java.security.acl.AclEntry): boolean;
				public checkPermission(param0: java.security.Principal, param1: java.security.acl.Permission): boolean;
				public setName(param0: java.security.Principal, param1: string): void;
				public entries(): java.util.Enumeration<java.security.acl.AclEntry>;
				public getName(): string;
				public toString(): string;
				public getPermissions(param0: java.security.Principal): java.util.Enumeration<java.security.acl.Permission>;
			}
		}
	}
}

declare module java {
	export module security {
		export module acl {
			export class AclEntry extends java.lang.Object implements java.lang.Cloneable {
				public static class: java.lang.Class<java.security.acl.AclEntry>;
				/**
				 * Constructs a new instance of the java.security.acl.AclEntry interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					setPrincipal(param0: java.security.Principal): boolean;
					getPrincipal(): java.security.Principal;
					setNegativePermissions(): void;
					isNegative(): boolean;
					addPermission(param0: java.security.acl.Permission): boolean;
					removePermission(param0: java.security.acl.Permission): boolean;
					checkPermission(param0: java.security.acl.Permission): boolean;
					permissions(): java.util.Enumeration<java.security.acl.Permission>;
					toString(): string;
					clone(): any;
				});
				public constructor();
				public addPermission(param0: java.security.acl.Permission): boolean;
				public permissions(): java.util.Enumeration<java.security.acl.Permission>;
				public checkPermission(param0: java.security.acl.Permission): boolean;
				public setNegativePermissions(): void;
				public clone(): any;
				public setPrincipal(param0: java.security.Principal): boolean;
				public isNegative(): boolean;
				public removePermission(param0: java.security.acl.Permission): boolean;
				public toString(): string;
				public getPrincipal(): java.security.Principal;
			}
		}
	}
}

declare module java {
	export module security {
		export module acl {
			export class AclNotFoundException extends java.lang.Exception {
				public static class: java.lang.Class<java.security.acl.AclNotFoundException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module security {
		export module acl {
			export class Group extends java.lang.Object implements java.security.Principal {
				public static class: java.lang.Class<java.security.acl.Group>;
				/**
				 * Constructs a new instance of the java.security.acl.Group interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					addMember(param0: java.security.Principal): boolean;
					removeMember(param0: java.security.Principal): boolean;
					isMember(param0: java.security.Principal): boolean;
					members(): java.util.Enumeration<any>;
					equals(param0: any): boolean;
					getName(): string;
					hashCode(): number;
					toString(): string;
				});
				public constructor();
				public addMember(param0: java.security.Principal): boolean;
				public removeMember(param0: java.security.Principal): boolean;
				public hashCode(): number;
				public equals(param0: any): boolean;
				public getName(): string;
				public isMember(param0: java.security.Principal): boolean;
				public toString(): string;
				public members(): java.util.Enumeration<any>;
			}
		}
	}
}

declare module java {
	export module security {
		export module acl {
			export class LastOwnerException extends java.lang.Exception {
				public static class: java.lang.Class<java.security.acl.LastOwnerException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module security {
		export module acl {
			export class NotOwnerException extends java.lang.Exception {
				public static class: java.lang.Class<java.security.acl.NotOwnerException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module security {
		export module acl {
			export class Owner extends java.lang.Object {
				public static class: java.lang.Class<java.security.acl.Owner>;
				/**
				 * Constructs a new instance of the java.security.acl.Owner interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					addOwner(param0: java.security.Principal, param1: java.security.Principal): boolean;
					deleteOwner(param0: java.security.Principal, param1: java.security.Principal): boolean;
					isOwner(param0: java.security.Principal): boolean;
				});
				public constructor();
				public deleteOwner(param0: java.security.Principal, param1: java.security.Principal): boolean;
				public isOwner(param0: java.security.Principal): boolean;
				public addOwner(param0: java.security.Principal, param1: java.security.Principal): boolean;
			}
		}
	}
}

declare module java {
	export module security {
		export module acl {
			export class Permission extends java.lang.Object {
				public static class: java.lang.Class<java.security.acl.Permission>;
				/**
				 * Constructs a new instance of the java.security.acl.Permission interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					equals(param0: any): boolean;
					toString(): string;
				});
				public constructor();
				public equals(param0: any): boolean;
				public toString(): string;
			}
		}
	}
}

declare module java {
	export module security {
		export module cert {
			export abstract class CRL extends java.lang.Object {
				public static class: java.lang.Class<java.security.cert.CRL>;
				public getType(): string;
				public isRevoked(param0: java.security.cert.Certificate): boolean;
				public toString(): string;
				public constructor(param0: string);
			}
		}
	}
}

declare module java {
	export module security {
		export module cert {
			export class CRLException extends java.security.GeneralSecurityException {
				public static class: java.lang.Class<java.security.cert.CRLException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module security {
		export module cert {
			export class CRLSelector extends java.lang.Object implements java.lang.Cloneable {
				public static class: java.lang.Class<java.security.cert.CRLSelector>;
				/**
				 * Constructs a new instance of the java.security.cert.CRLSelector interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					clone(): any;
					match(param0: java.security.cert.CRL): boolean;
				});
				public constructor();
				public match(param0: java.security.cert.CRL): boolean;
				public clone(): any;
			}
		}
	}
}

declare module java {
	export module security {
		export module cert {
			export abstract class CertPath extends java.lang.Object implements java.io.Serializable {
				public static class: java.lang.Class<java.security.cert.CertPath>;
				public getCertificates(): java.util.List<any>;
				public getType(): string;
				public hashCode(): number;
				public equals(param0: any): boolean;
				public getEncoded(): native.Array<number>;
				public getEncodings(): java.util.Iterator<string>;
				public getEncoded(param0: string): native.Array<number>;
				public toString(): string;
				public writeReplace(): any;
				public constructor(param0: string);
			}
			export module CertPath {
				export class CertPathRep extends java.lang.Object implements java.io.Serializable {
					public static class: java.lang.Class<java.security.cert.CertPath.CertPathRep>;
					public constructor(param0: string, param1: native.Array<number>);
					public readResolve(): any;
				}
			}
		}
	}
}

declare module java {
	export module security {
		export module cert {
			export class CertPathBuilder extends java.lang.Object {
				public static class: java.lang.Class<java.security.cert.CertPathBuilder>;
				public getAlgorithm(): string;
				public static getInstance(param0: string): java.security.cert.CertPathBuilder;
				public static getInstance(param0: string, param1: java.security.Provider): java.security.cert.CertPathBuilder;
				public build(param0: java.security.cert.CertPathParameters): java.security.cert.CertPathBuilderResult;
				public constructor(param0: java.security.cert.CertPathBuilderSpi, param1: java.security.Provider, param2: string);
				public static getInstance(param0: string, param1: string): java.security.cert.CertPathBuilder;
				public static getDefaultType(): string;
				public getProvider(): java.security.Provider;
			}
		}
	}
}

declare module java {
	export module security {
		export module cert {
			export class CertPathBuilderException extends java.security.GeneralSecurityException {
				public static class: java.lang.Class<java.security.cert.CertPathBuilderException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module security {
		export module cert {
			export class CertPathBuilderResult extends java.lang.Object implements java.lang.Cloneable {
				public static class: java.lang.Class<java.security.cert.CertPathBuilderResult>;
				/**
				 * Constructs a new instance of the java.security.cert.CertPathBuilderResult interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					clone(): any;
					getCertPath(): java.security.cert.CertPath;
				});
				public constructor();
				public getCertPath(): java.security.cert.CertPath;
				public clone(): any;
			}
		}
	}
}

declare module java {
	export module security {
		export module cert {
			export abstract class CertPathBuilderSpi extends java.lang.Object {
				public static class: java.lang.Class<java.security.cert.CertPathBuilderSpi>;
				public engineBuild(param0: java.security.cert.CertPathParameters): java.security.cert.CertPathBuilderResult;
				public constructor();
			}
		}
	}
}

declare module java {
	export module security {
		export module cert {
			export class CertPathParameters extends java.lang.Object implements java.lang.Cloneable {
				public static class: java.lang.Class<java.security.cert.CertPathParameters>;
				/**
				 * Constructs a new instance of the java.security.cert.CertPathParameters interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					clone(): any;
				});
				public constructor();
				public clone(): any;
			}
		}
	}
}

declare module java {
	export module security {
		export module cert {
			export class CertPathValidator extends java.lang.Object {
				public static class: java.lang.Class<java.security.cert.CertPathValidator>;
				public getAlgorithm(): string;
				public constructor(param0: java.security.cert.CertPathValidatorSpi, param1: java.security.Provider, param2: string);
				public static getInstance(param0: string, param1: string): java.security.cert.CertPathValidator;
				public static getDefaultType(): string;
				public getProvider(): java.security.Provider;
				public static getInstance(param0: string): java.security.cert.CertPathValidator;
				public static getInstance(param0: string, param1: java.security.Provider): java.security.cert.CertPathValidator;
				public validate(param0: java.security.cert.CertPath, param1: java.security.cert.CertPathParameters): java.security.cert.CertPathValidatorResult;
			}
		}
	}
}

declare module java {
	export module security {
		export module cert {
			export class CertPathValidatorException extends java.security.GeneralSecurityException {
				public static class: java.lang.Class<java.security.cert.CertPathValidatorException>;
				public getCertPath(): java.security.cert.CertPath;
				public constructor(param0: string, param1: java.lang.Throwable, param2: java.security.cert.CertPath, param3: number);
				public constructor(param0: string, param1: java.lang.Throwable);
				public getIndex(): number;
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module security {
		export module cert {
			export class CertPathValidatorResult extends java.lang.Object implements java.lang.Cloneable {
				public static class: java.lang.Class<java.security.cert.CertPathValidatorResult>;
				/**
				 * Constructs a new instance of the java.security.cert.CertPathValidatorResult interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					clone(): any;
				});
				public constructor();
				public clone(): any;
			}
		}
	}
}

declare module java {
	export module security {
		export module cert {
			export abstract class CertPathValidatorSpi extends java.lang.Object {
				public static class: java.lang.Class<java.security.cert.CertPathValidatorSpi>;
				public engineValidate(param0: java.security.cert.CertPath, param1: java.security.cert.CertPathParameters): java.security.cert.CertPathValidatorResult;
				public constructor();
			}
		}
	}
}

declare module java {
	export module security {
		export module cert {
			export class CertSelector extends java.lang.Object implements java.lang.Cloneable {
				public static class: java.lang.Class<java.security.cert.CertSelector>;
				/**
				 * Constructs a new instance of the java.security.cert.CertSelector interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					clone(): any;
					match(param0: java.security.cert.Certificate): boolean;
				});
				public constructor();
				public clone(): any;
				public match(param0: java.security.cert.Certificate): boolean;
			}
		}
	}
}

declare module java {
	export module security {
		export module cert {
			export class CertStore extends java.lang.Object {
				public static class: java.lang.Class<java.security.cert.CertStore>;
				public constructor(param0: java.security.cert.CertStoreSpi, param1: java.security.Provider, param2: string, param3: java.security.cert.CertStoreParameters);
				public getType(): string;
				public getCertificates(param0: java.security.cert.CertSelector): java.util.Collection<any>;
				public static getInstance(param0: string, param1: java.security.cert.CertStoreParameters, param2: java.security.Provider): java.security.cert.CertStore;
				public static getInstance(param0: string, param1: java.security.cert.CertStoreParameters): java.security.cert.CertStore;
				public static getInstance(param0: string, param1: java.security.cert.CertStoreParameters, param2: string): java.security.cert.CertStore;
				public getCRLs(param0: java.security.cert.CRLSelector): java.util.Collection<any>;
				public static getDefaultType(): string;
				public getProvider(): java.security.Provider;
				public getCertStoreParameters(): java.security.cert.CertStoreParameters;
			}
		}
	}
}

declare module java {
	export module security {
		export module cert {
			export class CertStoreException extends java.security.GeneralSecurityException {
				public static class: java.lang.Class<java.security.cert.CertStoreException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module security {
		export module cert {
			export class CertStoreParameters extends java.lang.Object implements java.lang.Cloneable {
				public static class: java.lang.Class<java.security.cert.CertStoreParameters>;
				/**
				 * Constructs a new instance of the java.security.cert.CertStoreParameters interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					clone(): any;
				});
				public constructor();
				public clone(): any;
			}
		}
	}
}

declare module java {
	export module security {
		export module cert {
			export abstract class CertStoreSpi extends java.lang.Object {
				public static class: java.lang.Class<java.security.cert.CertStoreSpi>;
				public constructor(param0: java.security.cert.CertStoreParameters);
				public engineGetCertificates(param0: java.security.cert.CertSelector): java.util.Collection<any>;
				public engineGetCRLs(param0: java.security.cert.CRLSelector): java.util.Collection<any>;
			}
		}
	}
}

declare module java {
	export module security {
		export module cert {
			export abstract class Certificate extends java.lang.Object implements java.io.Serializable {
				public static class: java.lang.Class<java.security.cert.Certificate>;
				public getType(): string;
				public verify(param0: java.security.PublicKey, param1: string): void;
				public hashCode(): number;
				public verify(param0: java.security.PublicKey): void;
				public getPublicKey(): java.security.PublicKey;
				public equals(param0: any): boolean;
				public getEncoded(): native.Array<number>;
				public toString(): string;
				public writeReplace(): any;
				public constructor(param0: string);
			}
			export module Certificate {
				export class CertificateRep extends java.lang.Object implements java.io.Serializable {
					public static class: java.lang.Class<java.security.cert.Certificate.CertificateRep>;
					public constructor(param0: string, param1: native.Array<number>);
					public readResolve(): any;
				}
			}
		}
	}
}

declare module java {
	export module security {
		export module cert {
			export class CertificateEncodingException extends java.security.cert.CertificateException {
				public static class: java.lang.Class<java.security.cert.CertificateEncodingException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module security {
		export module cert {
			export class CertificateException extends java.security.GeneralSecurityException {
				public static class: java.lang.Class<java.security.cert.CertificateException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module security {
		export module cert {
			export class CertificateExpiredException extends java.security.cert.CertificateException {
				public static class: java.lang.Class<java.security.cert.CertificateExpiredException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module security {
		export module cert {
			export class CertificateFactory extends java.lang.Object {
				public static class: java.lang.Class<java.security.cert.CertificateFactory>;
				public getType(): string;
				public generateCertPath(param0: java.util.List<any>): java.security.cert.CertPath;
				public getCertPathEncodings(): java.util.Iterator<string>;
				public static getInstance(param0: string, param1: java.security.Provider): java.security.cert.CertificateFactory;
				public generateCertPath(param0: java.io.InputStream, param1: string): java.security.cert.CertPath;
				public generateCertificates(param0: java.io.InputStream): java.util.Collection<any>;
				public generateCertPath(param0: java.io.InputStream): java.security.cert.CertPath;
				public constructor(param0: java.security.cert.CertificateFactorySpi, param1: java.security.Provider, param2: string);
				public getProvider(): java.security.Provider;
				public static getInstance(param0: string): java.security.cert.CertificateFactory;
				public generateCertificate(param0: java.io.InputStream): java.security.cert.Certificate;
				public generateCRL(param0: java.io.InputStream): java.security.cert.CRL;
				public static getInstance(param0: string, param1: string): java.security.cert.CertificateFactory;
				public generateCRLs(param0: java.io.InputStream): java.util.Collection<any>;
			}
		}
	}
}

declare module java {
	export module security {
		export module cert {
			export abstract class CertificateFactorySpi extends java.lang.Object {
				public static class: java.lang.Class<java.security.cert.CertificateFactorySpi>;
				public engineGenerateCertPath(param0: java.io.InputStream): java.security.cert.CertPath;
				public engineGenerateCertPath(param0: java.io.InputStream, param1: string): java.security.cert.CertPath;
				public engineGenerateCertificates(param0: java.io.InputStream): java.util.Collection<any>;
				public engineGenerateCertificate(param0: java.io.InputStream): java.security.cert.Certificate;
				public engineGenerateCRL(param0: java.io.InputStream): java.security.cert.CRL;
				public engineGetCertPathEncodings(): java.util.Iterator<string>;
				public engineGenerateCRLs(param0: java.io.InputStream): java.util.Collection<any>;
				public constructor();
				public engineGenerateCertPath(param0: java.util.List<any>): java.security.cert.CertPath;
			}
		}
	}
}

declare module java {
	export module security {
		export module cert {
			export class CertificateNotYetValidException extends java.security.cert.CertificateException {
				public static class: java.lang.Class<java.security.cert.CertificateNotYetValidException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module security {
		export module cert {
			export class CertificateParsingException extends java.security.cert.CertificateException {
				public static class: java.lang.Class<java.security.cert.CertificateParsingException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module security {
		export module cert {
			export class CollectionCertStoreParameters extends java.lang.Object implements java.security.cert.CertStoreParameters {
				public static class: java.lang.Class<java.security.cert.CollectionCertStoreParameters>;
				public constructor(param0: java.util.Collection<any>);
				public clone(): any;
				public toString(): string;
				public getCollection(): java.util.Collection<any>;
				public constructor();
			}
		}
	}
}

declare module java {
	export module security {
		export module cert {
			export class LDAPCertStoreParameters extends java.lang.Object implements java.security.cert.CertStoreParameters {
				public static class: java.lang.Class<java.security.cert.LDAPCertStoreParameters>;
				public getServerName(): string;
				public getPort(): number;
				public constructor(param0: string, param1: number);
				public clone(): any;
				public toString(): string;
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module security {
		export module cert {
			export class PKIXBuilderParameters extends java.security.cert.PKIXParameters {
				public static class: java.lang.Class<java.security.cert.PKIXBuilderParameters>;
				public constructor(param0: java.security.KeyStore);
				public constructor(param0: java.security.KeyStore, param1: java.security.cert.CertSelector);
				public clone(): any;
				public getMaxPathLength(): number;
				public setMaxPathLength(param0: number): void;
				public constructor(param0: java.util.Set<java.security.cert.TrustAnchor>, param1: java.security.cert.CertSelector);
				public toString(): string;
				public constructor(param0: java.util.Set<java.security.cert.TrustAnchor>);
			}
		}
	}
}

declare module java {
	export module security {
		export module cert {
			export class PKIXCertPathBuilderResult extends java.security.cert.PKIXCertPathValidatorResult implements java.security.cert.CertPathBuilderResult {
				public static class: java.lang.Class<java.security.cert.PKIXCertPathBuilderResult>;
				public getCertPath(): java.security.cert.CertPath;
				public constructor(param0: java.security.cert.TrustAnchor, param1: java.security.cert.PolicyNode, param2: java.security.PublicKey);
				public clone(): any;
				public toString(): string;
				public constructor(param0: java.security.cert.CertPath, param1: java.security.cert.TrustAnchor, param2: java.security.cert.PolicyNode, param3: java.security.PublicKey);
			}
		}
	}
}

declare module java {
	export module security {
		export module cert {
			export abstract class PKIXCertPathChecker extends java.lang.Object implements java.lang.Cloneable {
				public static class: java.lang.Class<java.security.cert.PKIXCertPathChecker>;
				public check(param0: java.security.cert.Certificate, param1: java.util.Collection<string>): void;
				public init(param0: boolean): void;
				public isForwardCheckingSupported(): boolean;
				public clone(): any;
				public getSupportedExtensions(): java.util.Set<string>;
				public constructor();
			}
		}
	}
}

declare module java {
	export module security {
		export module cert {
			export class PKIXCertPathValidatorResult extends java.lang.Object implements java.security.cert.CertPathValidatorResult {
				public static class: java.lang.Class<java.security.cert.PKIXCertPathValidatorResult>;
				public getPublicKey(): java.security.PublicKey;
				public getTrustAnchor(): java.security.cert.TrustAnchor;
				public constructor(param0: java.security.cert.TrustAnchor, param1: java.security.cert.PolicyNode, param2: java.security.PublicKey);
				public getPolicyTree(): java.security.cert.PolicyNode;
				public clone(): any;
				public toString(): string;
			}
		}
	}
}

declare module java {
	export module security {
		export module cert {
			export class PKIXParameters extends java.lang.Object implements java.security.cert.CertPathParameters {
				public static class: java.lang.Class<java.security.cert.PKIXParameters>;
				public getInitialPolicies(): java.util.Set<string>;
				public getTrustAnchors(): java.util.Set<java.security.cert.TrustAnchor>;
				public setTrustAnchors(param0: java.util.Set<java.security.cert.TrustAnchor>): void;
				public setAnyPolicyInhibited(param0: boolean): void;
				public isExplicitPolicyRequired(): boolean;
				public setPolicyQualifiersRejected(param0: boolean): void;
				public setCertStores(param0: java.util.List<java.security.cert.CertStore>): void;
				public setRevocationEnabled(param0: boolean): void;
				public constructor(param0: java.security.KeyStore);
				public clone(): any;
				public getCertStores(): java.util.List<java.security.cert.CertStore>;
				public isPolicyMappingInhibited(): boolean;
				public getPolicyQualifiersRejected(): boolean;
				public constructor(param0: java.util.Set<java.security.cert.TrustAnchor>);
				public getTargetCertConstraints(): java.security.cert.CertSelector;
				public isRevocationEnabled(): boolean;
				public setPolicyMappingInhibited(param0: boolean): void;
				public getCertPathCheckers(): java.util.List<java.security.cert.PKIXCertPathChecker>;
				public setExplicitPolicyRequired(param0: boolean): void;
				public setTargetCertConstraints(param0: java.security.cert.CertSelector): void;
				public getDate(): java.util.Date;
				public isAnyPolicyInhibited(): boolean;
				public toString(): string;
				public addCertStore(param0: java.security.cert.CertStore): void;
				public setDate(param0: java.util.Date): void;
				public setCertPathCheckers(param0: java.util.List<java.security.cert.PKIXCertPathChecker>): void;
				public addCertPathChecker(param0: java.security.cert.PKIXCertPathChecker): void;
				public setInitialPolicies(param0: java.util.Set<string>): void;
				public getSigProvider(): string;
				public setSigProvider(param0: string): void;
			}
		}
	}
}

declare module java {
	export module security {
		export module cert {
			export class PolicyNode extends java.lang.Object {
				public static class: java.lang.Class<java.security.cert.PolicyNode>;
				/**
				 * Constructs a new instance of the java.security.cert.PolicyNode interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getChildren(): java.util.Iterator<any>;
					getDepth(): number;
					getExpectedPolicies(): java.util.Set<string>;
					getParent(): java.security.cert.PolicyNode;
					getPolicyQualifiers(): java.util.Set<any>;
					getValidPolicy(): string;
					isCritical(): boolean;
				});
				public constructor();
				public getParent(): java.security.cert.PolicyNode;
				public getValidPolicy(): string;
				public getPolicyQualifiers(): java.util.Set<any>;
				public getChildren(): java.util.Iterator<any>;
				public isCritical(): boolean;
				public getDepth(): number;
				public getExpectedPolicies(): java.util.Set<string>;
			}
		}
	}
}

declare module java {
	export module security {
		export module cert {
			export class PolicyQualifierInfo extends java.lang.Object {
				public static class: java.lang.Class<java.security.cert.PolicyQualifierInfo>;
				public constructor(param0: native.Array<number>);
				public getPolicyQualifier(): native.Array<number>;
				public getEncoded(): native.Array<number>;
				public getPolicyQualifierId(): string;
				public toString(): string;
			}
		}
	}
}

declare module java {
	export module security {
		export module cert {
			export class TrustAnchor extends java.lang.Object {
				public static class: java.lang.Class<java.security.cert.TrustAnchor>;
				public getCA(): javax.security.auth.x500.X500Principal;
				public getCAPublicKey(): java.security.PublicKey;
				public constructor(param0: javax.security.auth.x500.X500Principal, param1: java.security.PublicKey, param2: native.Array<number>);
				public getNameConstraints(): native.Array<number>;
				public getTrustedCert(): java.security.cert.X509Certificate;
				public constructor(param0: java.security.cert.X509Certificate, param1: native.Array<number>);
				public constructor(param0: string, param1: java.security.PublicKey, param2: native.Array<number>);
				public toString(): string;
				public getCAName(): string;
			}
		}
	}
}

declare module java {
	export module security {
		export module cert {
			export abstract class X509CRL extends java.security.cert.CRL implements java.security.cert.X509Extension {
				public static class: java.lang.Class<java.security.cert.X509CRL>;
				public getRevokedCertificate(param0: java.security.cert.X509Certificate): java.security.cert.X509CRLEntry;
				public getCriticalExtensionOIDs(): java.util.Set<string>;
				public getIssuerX500Principal(): javax.security.auth.x500.X500Principal;
				public getTBSCertList(): native.Array<number>;
				public getSignature(): native.Array<number>;
				public getSigAlgParams(): native.Array<number>;
				public getNonCriticalExtensionOIDs(): java.util.Set<string>;
				public constructor(param0: string);
				public getIssuerDN(): java.security.Principal;
				public constructor();
				public verify(param0: java.security.PublicKey, param1: string): void;
				public hasUnsupportedCriticalExtension(): boolean;
				public getVersion(): number;
				public getRevokedCertificate(param0: java.math.BigInteger): java.security.cert.X509CRLEntry;
				public getRevokedCertificates(): java.util.Set<any>;
				public hashCode(): number;
				public getThisUpdate(): java.util.Date;
				public getNextUpdate(): java.util.Date;
				public getExtensionValue(param0: string): native.Array<number>;
				public verify(param0: java.security.PublicKey): void;
				public equals(param0: any): boolean;
				public getEncoded(): native.Array<number>;
				public getSigAlgName(): string;
				public getSigAlgOID(): string;
			}
		}
	}
}

declare module java {
	export module security {
		export module cert {
			export abstract class X509CRLEntry extends java.lang.Object implements java.security.cert.X509Extension {
				public static class: java.lang.Class<java.security.cert.X509CRLEntry>;
				public getCriticalExtensionOIDs(): java.util.Set<string>;
				public getSerialNumber(): java.math.BigInteger;
				public getRevocationDate(): java.util.Date;
				public toString(): string;
				public getNonCriticalExtensionOIDs(): java.util.Set<string>;
				public constructor();
				public getCertificateIssuer(): javax.security.auth.x500.X500Principal;
				public hasUnsupportedCriticalExtension(): boolean;
				public hashCode(): number;
				public getExtensionValue(param0: string): native.Array<number>;
				public hasExtensions(): boolean;
				public equals(param0: any): boolean;
				public getEncoded(): native.Array<number>;
			}
		}
	}
}

declare module java {
	export module security {
		export module cert {
			export class X509CRLSelector extends java.lang.Object implements java.security.cert.CRLSelector {
				public static class: java.lang.Class<java.security.cert.X509CRLSelector>;
				public getDateAndTime(): java.util.Date;
				public getIssuerNames(): java.util.Collection<any>;
				public setMaxCRLNumber(param0: java.math.BigInteger): void;
				public getIssuers(): java.util.Collection<javax.security.auth.x500.X500Principal>;
				public toString(): string;
				public setMinCRLNumber(param0: java.math.BigInteger): void;
				public constructor();
				public setIssuers(param0: java.util.Collection<javax.security.auth.x500.X500Principal>): void;
				public setCertificateChecking(param0: java.security.cert.X509Certificate): void;
				public getMinCRL(): java.math.BigInteger;
				public match(param0: java.security.cert.CRL): boolean;
				public setDateAndTime(param0: java.util.Date): void;
				public clone(): any;
				public addIssuerName(param0: string): void;
				public getCertificateChecking(): java.security.cert.X509Certificate;
				public addIssuer(param0: javax.security.auth.x500.X500Principal): void;
				public addIssuerName(param0: native.Array<number>): void;
				public setIssuerNames(param0: java.util.Collection<any>): void;
				public getMaxCRL(): java.math.BigInteger;
			}
		}
	}
}

declare module java {
	export module security {
		export module cert {
			export class X509CertSelector extends java.lang.Object implements java.security.cert.CertSelector {
				public static class: java.lang.Class<java.security.cert.X509CertSelector>;
				public setIssuer(param0: javax.security.auth.x500.X500Principal): void;
				public getSerialNumber(): java.math.BigInteger;
				public setSubject(param0: javax.security.auth.x500.X500Principal): void;
				public setSubjectPublicKey(param0: native.Array<number>): void;
				public setNameConstraints(param0: native.Array<number>): void;
				public constructor();
				public setIssuer(param0: string): void;
				public getSubjectAsBytes(): native.Array<number>;
				public getBasicConstraints(): number;
				public clone(): any;
				public getExtendedKeyUsage(): java.util.Set<string>;
				public match(param0: java.security.cert.Certificate): boolean;
				public addSubjectAlternativeName(param0: number, param1: string): void;
				public getPrivateKeyValid(): java.util.Date;
				public setKeyUsage(param0: native.Array<boolean>): void;
				public setSubjectKeyIdentifier(param0: native.Array<number>): void;
				public getMatchAllSubjectAltNames(): boolean;
				public setPathToNames(param0: java.util.Collection<java.util.List<any>>): void;
				public setAuthorityKeyIdentifier(param0: native.Array<number>): void;
				public toString(): string;
				public setSubjectAlternativeNames(param0: java.util.Collection<java.util.List<any>>): void;
				public setPolicy(param0: java.util.Set<string>): void;
				public getKeyUsage(): native.Array<boolean>;
				public getSubject(): javax.security.auth.x500.X500Principal;
				public getIssuerAsBytes(): native.Array<number>;
				public setBasicConstraints(param0: number): void;
				public getNameConstraints(): native.Array<number>;
				public setSerialNumber(param0: java.math.BigInteger): void;
				public setPrivateKeyValid(param0: java.util.Date): void;
				public getSubjectKeyIdentifier(): native.Array<number>;
				public setSubject(param0: string): void;
				public getCertificateValid(): java.util.Date;
				public setSubject(param0: native.Array<number>): void;
				public getPathToNames(): java.util.Collection<java.util.List<any>>;
				public getSubjectAlternativeNames(): java.util.Collection<java.util.List<any>>;
				public addPathToName(param0: number, param1: native.Array<number>): void;
				public setSubjectPublicKey(param0: java.security.PublicKey): void;
				public setSubjectPublicKeyAlgID(param0: string): void;
				public getSubjectPublicKeyAlgID(): string;
				public setIssuer(param0: native.Array<number>): void;
				public getAuthorityKeyIdentifier(): native.Array<number>;
				public getCertificate(): java.security.cert.X509Certificate;
				public getSubjectAsString(): string;
				public getSubjectPublicKey(): java.security.PublicKey;
				public setMatchAllSubjectAltNames(param0: boolean): void;
				public getIssuer(): javax.security.auth.x500.X500Principal;
				public getPolicy(): java.util.Set<string>;
				public setExtendedKeyUsage(param0: java.util.Set<string>): void;
				public addSubjectAlternativeName(param0: number, param1: native.Array<number>): void;
				public addPathToName(param0: number, param1: string): void;
				public setCertificate(param0: java.security.cert.X509Certificate): void;
				public getIssuerAsString(): string;
				public setCertificateValid(param0: java.util.Date): void;
			}
		}
	}
}

declare module java {
	export module security {
		export module cert {
			export abstract class X509Certificate extends java.security.cert.Certificate implements java.security.cert.X509Extension {
				public static class: java.lang.Class<java.security.cert.X509Certificate>;
				public getCriticalExtensionOIDs(): java.util.Set<string>;
				public getSerialNumber(): java.math.BigInteger;
				public getSignature(): native.Array<number>;
				public getSubjectUniqueID(): native.Array<boolean>;
				public getNonCriticalExtensionOIDs(): java.util.Set<string>;
				public constructor(param0: string);
				public getIssuerDN(): java.security.Principal;
				public constructor();
				public getBasicConstraints(): number;
				public getIssuerUniqueID(): native.Array<boolean>;
				public getSubjectAlternativeNames(): java.util.Collection<java.util.List<any>>;
				public checkValidity(param0: java.util.Date): void;
				public getNotBefore(): java.util.Date;
				public getNotAfter(): java.util.Date;
				public getIssuerX500Principal(): javax.security.auth.x500.X500Principal;
				public getExtendedKeyUsage(): java.util.List<string>;
				public getIssuerAlternativeNames(): java.util.Collection<java.util.List<any>>;
				public getSubjectDN(): java.security.Principal;
				public getSigAlgParams(): native.Array<number>;
				public getKeyUsage(): native.Array<boolean>;
				public hasUnsupportedCriticalExtension(): boolean;
				public getVersion(): number;
				public getExtensionValue(param0: string): native.Array<number>;
				public checkValidity(): void;
				public getTBSCertificate(): native.Array<number>;
				public getSigAlgName(): string;
				public getSubjectX500Principal(): javax.security.auth.x500.X500Principal;
				public getSigAlgOID(): string;
			}
		}
	}
}

declare module java {
	export module security {
		export module cert {
			export class X509Extension extends java.lang.Object {
				public static class: java.lang.Class<java.security.cert.X509Extension>;
				/**
				 * Constructs a new instance of the java.security.cert.X509Extension interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getCriticalExtensionOIDs(): java.util.Set<string>;
					getExtensionValue(param0: string): native.Array<number>;
					getNonCriticalExtensionOIDs(): java.util.Set<string>;
					hasUnsupportedCriticalExtension(): boolean;
				});
				public constructor();
				public getCriticalExtensionOIDs(): java.util.Set<string>;
				public hasUnsupportedCriticalExtension(): boolean;
				public getExtensionValue(param0: string): native.Array<number>;
				public getNonCriticalExtensionOIDs(): java.util.Set<string>;
			}
		}
	}
}

declare module java {
	export module security {
		export module interfaces {
			export class DSAKey extends java.lang.Object {
				public static class: java.lang.Class<java.security.interfaces.DSAKey>;
				/**
				 * Constructs a new instance of the java.security.interfaces.DSAKey interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getParams(): java.security.interfaces.DSAParams;
				});
				public constructor();
				public getParams(): java.security.interfaces.DSAParams;
			}
		}
	}
}

declare module java {
	export module security {
		export module interfaces {
			export class DSAKeyPairGenerator extends java.lang.Object {
				public static class: java.lang.Class<java.security.interfaces.DSAKeyPairGenerator>;
				/**
				 * Constructs a new instance of the java.security.interfaces.DSAKeyPairGenerator interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					initialize(param0: java.security.interfaces.DSAParams, param1: java.security.SecureRandom): void;
					initialize(param0: number, param1: boolean, param2: java.security.SecureRandom): void;
				});
				public constructor();
				public initialize(param0: java.security.interfaces.DSAParams, param1: java.security.SecureRandom): void;
				public initialize(param0: number, param1: boolean, param2: java.security.SecureRandom): void;
			}
		}
	}
}

declare module java {
	export module security {
		export module interfaces {
			export class DSAParams extends java.lang.Object {
				public static class: java.lang.Class<java.security.interfaces.DSAParams>;
				/**
				 * Constructs a new instance of the java.security.interfaces.DSAParams interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getG(): java.math.BigInteger;
					getP(): java.math.BigInteger;
					getQ(): java.math.BigInteger;
				});
				public constructor();
				public getQ(): java.math.BigInteger;
				public getG(): java.math.BigInteger;
				public getP(): java.math.BigInteger;
			}
		}
	}
}

declare module java {
	export module security {
		export module interfaces {
			export class DSAPrivateKey extends java.lang.Object implements java.security.interfaces.DSAKey, java.security.PrivateKey {
				public static class: java.lang.Class<java.security.interfaces.DSAPrivateKey>;
				/**
				 * Constructs a new instance of the java.security.interfaces.DSAPrivateKey interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getX(): java.math.BigInteger;
					getParams(): java.security.interfaces.DSAParams;
					getAlgorithm(): string;
					getFormat(): string;
					getEncoded(): native.Array<number>;
				});
				public constructor();
				public static serialVersionUID: number;
				public getAlgorithm(): string;
				public getFormat(): string;
				public getParams(): java.security.interfaces.DSAParams;
				public getEncoded(): native.Array<number>;
				public getX(): java.math.BigInteger;
			}
		}
	}
}

declare module java {
	export module security {
		export module interfaces {
			export class DSAPublicKey extends java.lang.Object implements java.security.interfaces.DSAKey, java.security.PublicKey {
				public static class: java.lang.Class<java.security.interfaces.DSAPublicKey>;
				/**
				 * Constructs a new instance of the java.security.interfaces.DSAPublicKey interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getY(): java.math.BigInteger;
					getParams(): java.security.interfaces.DSAParams;
					getAlgorithm(): string;
					getFormat(): string;
					getEncoded(): native.Array<number>;
				});
				public constructor();
				public static serialVersionUID: number;
				public getAlgorithm(): string;
				public getFormat(): string;
				public getParams(): java.security.interfaces.DSAParams;
				public getEncoded(): native.Array<number>;
				public getY(): java.math.BigInteger;
			}
		}
	}
}

declare module java {
	export module security {
		export module interfaces {
			export class ECKey extends java.lang.Object {
				public static class: java.lang.Class<java.security.interfaces.ECKey>;
				/**
				 * Constructs a new instance of the java.security.interfaces.ECKey interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getParams(): java.security.spec.ECParameterSpec;
				});
				public constructor();
				public getParams(): java.security.spec.ECParameterSpec;
			}
		}
	}
}

declare module java {
	export module security {
		export module interfaces {
			export class ECPrivateKey extends java.lang.Object implements java.security.PrivateKey, java.security.interfaces.ECKey {
				public static class: java.lang.Class<java.security.interfaces.ECPrivateKey>;
				/**
				 * Constructs a new instance of the java.security.interfaces.ECPrivateKey interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getS(): java.math.BigInteger;
					getParams(): java.security.spec.ECParameterSpec;
					getAlgorithm(): string;
					getFormat(): string;
					getEncoded(): native.Array<number>;
				});
				public constructor();
				public static serialVersionUID: number;
				public getAlgorithm(): string;
				public getFormat(): string;
				public getS(): java.math.BigInteger;
				public getParams(): java.security.spec.ECParameterSpec;
				public getEncoded(): native.Array<number>;
			}
		}
	}
}

declare module java {
	export module security {
		export module interfaces {
			export class ECPublicKey extends java.lang.Object implements java.security.PublicKey, java.security.interfaces.ECKey {
				public static class: java.lang.Class<java.security.interfaces.ECPublicKey>;
				/**
				 * Constructs a new instance of the java.security.interfaces.ECPublicKey interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getW(): java.security.spec.ECPoint;
					getParams(): java.security.spec.ECParameterSpec;
					getAlgorithm(): string;
					getFormat(): string;
					getEncoded(): native.Array<number>;
				});
				public constructor();
				public static serialVersionUID: number;
				public getAlgorithm(): string;
				public getFormat(): string;
				public getParams(): java.security.spec.ECParameterSpec;
				public getEncoded(): native.Array<number>;
				public getW(): java.security.spec.ECPoint;
			}
		}
	}
}

declare module java {
	export module security {
		export module interfaces {
			export class RSAKey extends java.lang.Object {
				public static class: java.lang.Class<java.security.interfaces.RSAKey>;
				/**
				 * Constructs a new instance of the java.security.interfaces.RSAKey interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getModulus(): java.math.BigInteger;
				});
				public constructor();
				public getModulus(): java.math.BigInteger;
			}
		}
	}
}

declare module java {
	export module security {
		export module interfaces {
			export class RSAMultiPrimePrivateCrtKey extends java.lang.Object implements java.security.interfaces.RSAPrivateKey {
				public static class: java.lang.Class<java.security.interfaces.RSAMultiPrimePrivateCrtKey>;
				/**
				 * Constructs a new instance of the java.security.interfaces.RSAMultiPrimePrivateCrtKey interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getCrtCoefficient(): java.math.BigInteger;
					getOtherPrimeInfo(): native.Array<java.security.spec.RSAOtherPrimeInfo>;
					getPrimeP(): java.math.BigInteger;
					getPrimeQ(): java.math.BigInteger;
					getPrimeExponentP(): java.math.BigInteger;
					getPrimeExponentQ(): java.math.BigInteger;
					getPublicExponent(): java.math.BigInteger;
					getPrivateExponent(): java.math.BigInteger;
					getModulus(): java.math.BigInteger;
					getAlgorithm(): string;
					getFormat(): string;
					getEncoded(): native.Array<number>;
				});
				public constructor();
				public static serialVersionUID: number;
				public getPrimeQ(): java.math.BigInteger;
				public getAlgorithm(): string;
				public getPrimeExponentP(): java.math.BigInteger;
				public getPrivateExponent(): java.math.BigInteger;
				public getFormat(): string;
				public getPublicExponent(): java.math.BigInteger;
				public getOtherPrimeInfo(): native.Array<java.security.spec.RSAOtherPrimeInfo>;
				public getCrtCoefficient(): java.math.BigInteger;
				public getEncoded(): native.Array<number>;
				public getPrimeExponentQ(): java.math.BigInteger;
				public getModulus(): java.math.BigInteger;
				public getPrimeP(): java.math.BigInteger;
			}
		}
	}
}

declare module java {
	export module security {
		export module interfaces {
			export class RSAPrivateCrtKey extends java.lang.Object implements java.security.interfaces.RSAPrivateKey {
				public static class: java.lang.Class<java.security.interfaces.RSAPrivateCrtKey>;
				/**
				 * Constructs a new instance of the java.security.interfaces.RSAPrivateCrtKey interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getCrtCoefficient(): java.math.BigInteger;
					getPrimeP(): java.math.BigInteger;
					getPrimeQ(): java.math.BigInteger;
					getPrimeExponentP(): java.math.BigInteger;
					getPrimeExponentQ(): java.math.BigInteger;
					getPublicExponent(): java.math.BigInteger;
					getPrivateExponent(): java.math.BigInteger;
					getModulus(): java.math.BigInteger;
					getAlgorithm(): string;
					getFormat(): string;
					getEncoded(): native.Array<number>;
				});
				public constructor();
				public static serialVersionUID: number;
				public getPrimeQ(): java.math.BigInteger;
				public getAlgorithm(): string;
				public getPrimeExponentP(): java.math.BigInteger;
				public getPrivateExponent(): java.math.BigInteger;
				public getFormat(): string;
				public getPublicExponent(): java.math.BigInteger;
				public getCrtCoefficient(): java.math.BigInteger;
				public getEncoded(): native.Array<number>;
				public getPrimeExponentQ(): java.math.BigInteger;
				public getModulus(): java.math.BigInteger;
				public getPrimeP(): java.math.BigInteger;
			}
		}
	}
}

declare module java {
	export module security {
		export module interfaces {
			export class RSAPrivateKey extends java.lang.Object implements java.security.PrivateKey, java.security.interfaces.RSAKey {
				public static class: java.lang.Class<java.security.interfaces.RSAPrivateKey>;
				/**
				 * Constructs a new instance of the java.security.interfaces.RSAPrivateKey interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getPrivateExponent(): java.math.BigInteger;
					getModulus(): java.math.BigInteger;
					getAlgorithm(): string;
					getFormat(): string;
					getEncoded(): native.Array<number>;
				});
				public constructor();
				public static serialVersionUID: number;
				public getAlgorithm(): string;
				public getPrivateExponent(): java.math.BigInteger;
				public getFormat(): string;
				public getEncoded(): native.Array<number>;
				public getModulus(): java.math.BigInteger;
			}
		}
	}
}

declare module java {
	export module security {
		export module interfaces {
			export class RSAPublicKey extends java.lang.Object implements java.security.PublicKey, java.security.interfaces.RSAKey {
				public static class: java.lang.Class<java.security.interfaces.RSAPublicKey>;
				/**
				 * Constructs a new instance of the java.security.interfaces.RSAPublicKey interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getPublicExponent(): java.math.BigInteger;
					getModulus(): java.math.BigInteger;
					getAlgorithm(): string;
					getFormat(): string;
					getEncoded(): native.Array<number>;
				});
				public constructor();
				public static serialVersionUID: number;
				public getAlgorithm(): string;
				public getFormat(): string;
				public getPublicExponent(): java.math.BigInteger;
				public getEncoded(): native.Array<number>;
				public getModulus(): java.math.BigInteger;
			}
		}
	}
}

declare module java {
	export module security {
		export module spec {
			export class AlgorithmParameterSpec extends java.lang.Object {
				public static class: java.lang.Class<java.security.spec.AlgorithmParameterSpec>;
				/**
				 * Constructs a new instance of the java.security.spec.AlgorithmParameterSpec interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
			}
		}
	}
}

declare module java {
	export module security {
		export module spec {
			export class DSAParameterSpec extends java.lang.Object implements java.security.spec.AlgorithmParameterSpec, java.security.interfaces.DSAParams {
				public static class: java.lang.Class<java.security.spec.DSAParameterSpec>;
				public constructor(param0: java.math.BigInteger, param1: java.math.BigInteger, param2: java.math.BigInteger);
				public getQ(): java.math.BigInteger;
				public getG(): java.math.BigInteger;
				public getP(): java.math.BigInteger;
			}
		}
	}
}

declare module java {
	export module security {
		export module spec {
			export class DSAPrivateKeySpec extends java.lang.Object implements java.security.spec.KeySpec {
				public static class: java.lang.Class<java.security.spec.DSAPrivateKeySpec>;
				public constructor(param0: java.math.BigInteger, param1: java.math.BigInteger, param2: java.math.BigInteger, param3: java.math.BigInteger);
				public getQ(): java.math.BigInteger;
				public getG(): java.math.BigInteger;
				public getX(): java.math.BigInteger;
				public getP(): java.math.BigInteger;
			}
		}
	}
}

declare module java {
	export module security {
		export module spec {
			export class DSAPublicKeySpec extends java.lang.Object implements java.security.spec.KeySpec {
				public static class: java.lang.Class<java.security.spec.DSAPublicKeySpec>;
				public constructor(param0: java.math.BigInteger, param1: java.math.BigInteger, param2: java.math.BigInteger, param3: java.math.BigInteger);
				public getQ(): java.math.BigInteger;
				public getG(): java.math.BigInteger;
				public getY(): java.math.BigInteger;
				public getP(): java.math.BigInteger;
			}
		}
	}
}

declare module java {
	export module security {
		export module spec {
			export class ECField extends java.lang.Object {
				public static class: java.lang.Class<java.security.spec.ECField>;
				/**
				 * Constructs a new instance of the java.security.spec.ECField interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getFieldSize(): number;
				});
				public constructor();
				public getFieldSize(): number;
			}
		}
	}
}

declare module java {
	export module security {
		export module spec {
			export class ECFieldF2m extends java.lang.Object implements java.security.spec.ECField {
				public static class: java.lang.Class<java.security.spec.ECFieldF2m>;
				public hashCode(): number;
				public getMidTermsOfReductionPolynomial(): native.Array<number>;
				public constructor(param0: number, param1: java.math.BigInteger);
				public equals(param0: any): boolean;
				public constructor(param0: number);
				public getFieldSize(): number;
				public getReductionPolynomial(): java.math.BigInteger;
				public constructor(param0: number, param1: native.Array<number>);
				public getM(): number;
			}
		}
	}
}

declare module java {
	export module security {
		export module spec {
			export class ECFieldFp extends java.lang.Object implements java.security.spec.ECField {
				public static class: java.lang.Class<java.security.spec.ECFieldFp>;
				public hashCode(): number;
				public equals(param0: any): boolean;
				public getFieldSize(): number;
				public constructor(param0: java.math.BigInteger);
				public getP(): java.math.BigInteger;
			}
		}
	}
}

declare module java {
	export module security {
		export module spec {
			export class ECGenParameterSpec extends java.lang.Object implements java.security.spec.AlgorithmParameterSpec {
				public static class: java.lang.Class<java.security.spec.ECGenParameterSpec>;
				public getName(): string;
				public constructor(param0: string);
			}
		}
	}
}

declare module java {
	export module security {
		export module spec {
			export class ECParameterSpec extends java.lang.Object implements java.security.spec.AlgorithmParameterSpec {
				public static class: java.lang.Class<java.security.spec.ECParameterSpec>;
				public getCurve(): java.security.spec.EllipticCurve;
				public getGenerator(): java.security.spec.ECPoint;
				public getOrder(): java.math.BigInteger;
				public constructor(param0: java.security.spec.EllipticCurve, param1: java.security.spec.ECPoint, param2: java.math.BigInteger, param3: number);
				public getCofactor(): number;
			}
		}
	}
}

declare module java {
	export module security {
		export module spec {
			export class ECPoint extends java.lang.Object {
				public static class: java.lang.Class<java.security.spec.ECPoint>;
				public static POINT_INFINITY: java.security.spec.ECPoint;
				public getAffineY(): java.math.BigInteger;
				public constructor(param0: java.math.BigInteger, param1: java.math.BigInteger);
				public getAffineX(): java.math.BigInteger;
				public hashCode(): number;
				public equals(param0: any): boolean;
			}
		}
	}
}

declare module java {
	export module security {
		export module spec {
			export class ECPrivateKeySpec extends java.lang.Object implements java.security.spec.KeySpec {
				public static class: java.lang.Class<java.security.spec.ECPrivateKeySpec>;
				public constructor(param0: java.math.BigInteger, param1: java.security.spec.ECParameterSpec);
				public getS(): java.math.BigInteger;
				public getParams(): java.security.spec.ECParameterSpec;
			}
		}
	}
}

declare module java {
	export module security {
		export module spec {
			export class ECPublicKeySpec extends java.lang.Object implements java.security.spec.KeySpec {
				public static class: java.lang.Class<java.security.spec.ECPublicKeySpec>;
				public constructor(param0: java.security.spec.ECPoint, param1: java.security.spec.ECParameterSpec);
				public getParams(): java.security.spec.ECParameterSpec;
				public getW(): java.security.spec.ECPoint;
			}
		}
	}
}

declare module java {
	export module security {
		export module spec {
			export class EllipticCurve extends java.lang.Object {
				public static class: java.lang.Class<java.security.spec.EllipticCurve>;
				public getA(): java.math.BigInteger;
				public constructor(param0: java.security.spec.ECField, param1: java.math.BigInteger, param2: java.math.BigInteger, param3: native.Array<number>);
				public constructor(param0: java.security.spec.ECField, param1: java.math.BigInteger, param2: java.math.BigInteger);
				public getSeed(): native.Array<number>;
				public hashCode(): number;
				public equals(param0: any): boolean;
				public getB(): java.math.BigInteger;
				public getField(): java.security.spec.ECField;
			}
		}
	}
}

declare module java {
	export module security {
		export module spec {
			export abstract class EncodedKeySpec extends java.lang.Object implements java.security.spec.KeySpec {
				public static class: java.lang.Class<java.security.spec.EncodedKeySpec>;
				public constructor(param0: native.Array<number>);
				public getFormat(): string;
				public getEncoded(): native.Array<number>;
			}
		}
	}
}

declare module java {
	export module security {
		export module spec {
			export class InvalidKeySpecException extends java.security.GeneralSecurityException {
				public static class: java.lang.Class<java.security.spec.InvalidKeySpecException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module security {
		export module spec {
			export class InvalidParameterSpecException extends java.security.GeneralSecurityException {
				public static class: java.lang.Class<java.security.spec.InvalidParameterSpecException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module security {
		export module spec {
			export class KeySpec extends java.lang.Object {
				public static class: java.lang.Class<java.security.spec.KeySpec>;
				/**
				 * Constructs a new instance of the java.security.spec.KeySpec interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
			}
		}
	}
}

declare module java {
	export module security {
		export module spec {
			export class MGF1ParameterSpec extends java.lang.Object implements java.security.spec.AlgorithmParameterSpec {
				public static class: java.lang.Class<java.security.spec.MGF1ParameterSpec>;
				public static SHA1: java.security.spec.MGF1ParameterSpec;
				public static SHA256: java.security.spec.MGF1ParameterSpec;
				public static SHA384: java.security.spec.MGF1ParameterSpec;
				public static SHA512: java.security.spec.MGF1ParameterSpec;
				public getDigestAlgorithm(): string;
				public constructor(param0: string);
			}
		}
	}
}

declare module java {
	export module security {
		export module spec {
			export class PKCS8EncodedKeySpec extends java.security.spec.EncodedKeySpec {
				public static class: java.lang.Class<java.security.spec.PKCS8EncodedKeySpec>;
				public constructor(param0: native.Array<number>);
				public getFormat(): string;
				public getEncoded(): native.Array<number>;
			}
		}
	}
}

declare module java {
	export module security {
		export module spec {
			export class PSSParameterSpec extends java.lang.Object implements java.security.spec.AlgorithmParameterSpec {
				public static class: java.lang.Class<java.security.spec.PSSParameterSpec>;
				public static DEFAULT: java.security.spec.PSSParameterSpec;
				public getSaltLength(): number;
				public getDigestAlgorithm(): string;
				public getMGFAlgorithm(): string;
				public getTrailerField(): number;
				public constructor(param0: number);
				public constructor(param0: string, param1: string, param2: java.security.spec.AlgorithmParameterSpec, param3: number, param4: number);
				public getMGFParameters(): java.security.spec.AlgorithmParameterSpec;
			}
		}
	}
}

declare module java {
	export module security {
		export module spec {
			export class RSAKeyGenParameterSpec extends java.lang.Object implements java.security.spec.AlgorithmParameterSpec {
				public static class: java.lang.Class<java.security.spec.RSAKeyGenParameterSpec>;
				public static F0: java.math.BigInteger;
				public static F4: java.math.BigInteger;
				public getPublicExponent(): java.math.BigInteger;
				public constructor(param0: number, param1: java.math.BigInteger);
				public getKeysize(): number;
			}
		}
	}
}

declare module java {
	export module security {
		export module spec {
			export class RSAMultiPrimePrivateCrtKeySpec extends java.security.spec.RSAPrivateKeySpec {
				public static class: java.lang.Class<java.security.spec.RSAMultiPrimePrivateCrtKeySpec>;
				public getPrimeQ(): java.math.BigInteger;
				public constructor(param0: java.math.BigInteger, param1: java.math.BigInteger, param2: java.math.BigInteger, param3: java.math.BigInteger, param4: java.math.BigInteger, param5: java.math.BigInteger, param6: java.math.BigInteger, param7: java.math.BigInteger, param8: native.Array<java.security.spec.RSAOtherPrimeInfo>);
				public constructor(param0: java.math.BigInteger, param1: java.math.BigInteger);
				public getPrimeExponentP(): java.math.BigInteger;
				public getPublicExponent(): java.math.BigInteger;
				public getOtherPrimeInfo(): native.Array<java.security.spec.RSAOtherPrimeInfo>;
				public getCrtCoefficient(): java.math.BigInteger;
				public getPrimeExponentQ(): java.math.BigInteger;
				public getPrimeP(): java.math.BigInteger;
			}
		}
	}
}

declare module java {
	export module security {
		export module spec {
			export class RSAOtherPrimeInfo extends java.lang.Object {
				public static class: java.lang.Class<java.security.spec.RSAOtherPrimeInfo>;
				public getExponent(): java.math.BigInteger;
				public constructor(param0: java.math.BigInteger, param1: java.math.BigInteger, param2: java.math.BigInteger);
				public getPrime(): java.math.BigInteger;
				public getCrtCoefficient(): java.math.BigInteger;
			}
		}
	}
}

declare module java {
	export module security {
		export module spec {
			export class RSAPrivateCrtKeySpec extends java.security.spec.RSAPrivateKeySpec {
				public static class: java.lang.Class<java.security.spec.RSAPrivateCrtKeySpec>;
				public getPrimeQ(): java.math.BigInteger;
				public constructor(param0: java.math.BigInteger, param1: java.math.BigInteger);
				public getPrimeExponentP(): java.math.BigInteger;
				public getPublicExponent(): java.math.BigInteger;
				public constructor(param0: java.math.BigInteger, param1: java.math.BigInteger, param2: java.math.BigInteger, param3: java.math.BigInteger, param4: java.math.BigInteger, param5: java.math.BigInteger, param6: java.math.BigInteger, param7: java.math.BigInteger);
				public getCrtCoefficient(): java.math.BigInteger;
				public getPrimeExponentQ(): java.math.BigInteger;
				public getPrimeP(): java.math.BigInteger;
			}
		}
	}
}

declare module java {
	export module security {
		export module spec {
			export class RSAPrivateKeySpec extends java.lang.Object implements java.security.spec.KeySpec {
				public static class: java.lang.Class<java.security.spec.RSAPrivateKeySpec>;
				public constructor(param0: java.math.BigInteger, param1: java.math.BigInteger);
				public getPrivateExponent(): java.math.BigInteger;
				public getModulus(): java.math.BigInteger;
			}
		}
	}
}

declare module java {
	export module security {
		export module spec {
			export class RSAPublicKeySpec extends java.lang.Object implements java.security.spec.KeySpec {
				public static class: java.lang.Class<java.security.spec.RSAPublicKeySpec>;
				public constructor(param0: java.math.BigInteger, param1: java.math.BigInteger);
				public getPublicExponent(): java.math.BigInteger;
				public getModulus(): java.math.BigInteger;
			}
		}
	}
}

declare module java {
	export module security {
		export module spec {
			export class X509EncodedKeySpec extends java.security.spec.EncodedKeySpec {
				public static class: java.lang.Class<java.security.spec.X509EncodedKeySpec>;
				public constructor(param0: native.Array<number>);
				public getFormat(): string;
				public getEncoded(): native.Array<number>;
			}
		}
	}
}

declare module java {
	export module sql {
		export class Array extends java.lang.Object {
			public static class: java.lang.Class<java.sql.Array>;
			/**
			 * Constructs a new instance of the java.sql.Array interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				getArray(): any;
				getArray(param0: number, param1: number): any;
				getArray(param0: number, param1: number, param2: java.util.Map<string,java.lang.Class<any>>): any;
				getArray(param0: java.util.Map<string,java.lang.Class<any>>): any;
				getBaseType(): number;
				getBaseTypeName(): string;
				getResultSet(): java.sql.ResultSet;
				getResultSet(param0: number, param1: number): java.sql.ResultSet;
				getResultSet(param0: number, param1: number, param2: java.util.Map<string,java.lang.Class<any>>): java.sql.ResultSet;
				getResultSet(param0: java.util.Map<string,java.lang.Class<any>>): java.sql.ResultSet;
				free(): void;
			});
			public constructor();
			public getArray(param0: number, param1: number): any;
			public free(): void;
			public getResultSet(): java.sql.ResultSet;
			public getResultSet(param0: number, param1: number, param2: java.util.Map<string,java.lang.Class<any>>): java.sql.ResultSet;
			public getResultSet(param0: java.util.Map<string,java.lang.Class<any>>): java.sql.ResultSet;
			public getArray(): any;
			public getArray(param0: java.util.Map<string,java.lang.Class<any>>): any;
			public getArray(param0: number, param1: number, param2: java.util.Map<string,java.lang.Class<any>>): any;
			public getBaseType(): number;
			public getResultSet(param0: number, param1: number): java.sql.ResultSet;
			public getBaseTypeName(): string;
		}
	}
}

declare module java {
	export module sql {
		export class BatchUpdateException extends java.sql.SQLException implements java.io.Serializable {
			public static class: java.lang.Class<java.sql.BatchUpdateException>;
			public constructor(param0: string, param1: string, param2: number, param3: native.Array<number>);
			public constructor(param0: string, param1: native.Array<number>, param2: java.lang.Throwable);
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: native.Array<number>, param1: java.lang.Throwable);
			public constructor(param0: string, param1: string, param2: native.Array<number>);
			public constructor();
			public constructor(param0: native.Array<number>);
			public constructor(param0: string, param1: string, param2: java.lang.Throwable);
			public constructor(param0: string, param1: string);
			public constructor(param0: string, param1: string, param2: number, param3: java.lang.Throwable);
			public getUpdateCounts(): native.Array<number>;
			public constructor(param0: string, param1: native.Array<number>);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor(param0: string, param1: string, param2: native.Array<number>, param3: java.lang.Throwable);
			public constructor(param0: string, param1: string, param2: number, param3: native.Array<number>, param4: java.lang.Throwable);
			public constructor(param0: string);
			public constructor(param0: string, param1: string, param2: number);
			public iterator(): java.util.Iterator<java.lang.Throwable>;
			public iterator(): java.util.Iterator<any>;
		}
	}
}

declare module java {
	export module sql {
		export class Blob extends java.lang.Object {
			public static class: java.lang.Class<java.sql.Blob>;
			/**
			 * Constructs a new instance of the java.sql.Blob interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				getBinaryStream(): java.io.InputStream;
				getBinaryStream(param0: number, param1: number): java.io.InputStream;
				getBytes(param0: number, param1: number): native.Array<number>;
				length(): number;
				position(param0: java.sql.Blob, param1: number): number;
				position(param0: native.Array<number>, param1: number): number;
				setBinaryStream(param0: number): java.io.OutputStream;
				setBytes(param0: number, param1: native.Array<number>): number;
				setBytes(param0: number, param1: native.Array<number>, param2: number, param3: number): number;
				truncate(param0: number): void;
				free(): void;
			});
			public constructor();
			public getBinaryStream(): java.io.InputStream;
			public free(): void;
			public getBinaryStream(param0: number, param1: number): java.io.InputStream;
			public getBytes(param0: number, param1: number): native.Array<number>;
			public truncate(param0: number): void;
			public length(): number;
			public setBinaryStream(param0: number): java.io.OutputStream;
			public position(param0: native.Array<number>, param1: number): number;
			public setBytes(param0: number, param1: native.Array<number>, param2: number, param3: number): number;
			public position(param0: java.sql.Blob, param1: number): number;
			public setBytes(param0: number, param1: native.Array<number>): number;
		}
	}
}

declare module java {
	export module sql {
		export class CallableStatement extends java.lang.Object implements java.sql.PreparedStatement {
			public static class: java.lang.Class<java.sql.CallableStatement>;
			/**
			 * Constructs a new instance of the java.sql.CallableStatement interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				getArray(param0: number): java.sql.Array;
				getArray(param0: string): java.sql.Array;
				getBigDecimal(param0: number): java.math.BigDecimal;
				getBigDecimal(param0: number, param1: number): java.math.BigDecimal;
				getBigDecimal(param0: string): java.math.BigDecimal;
				getBlob(param0: number): java.sql.Blob;
				getBlob(param0: string): java.sql.Blob;
				getBoolean(param0: number): boolean;
				getBoolean(param0: string): boolean;
				getByte(param0: number): number;
				getByte(param0: string): number;
				getBytes(param0: number): native.Array<number>;
				getBytes(param0: string): native.Array<number>;
				getClob(param0: number): java.sql.Clob;
				getClob(param0: string): java.sql.Clob;
				getDate(param0: number): java.sql.Date;
				getDate(param0: number, param1: java.util.Calendar): java.sql.Date;
				getDate(param0: string): java.sql.Date;
				getDate(param0: string, param1: java.util.Calendar): java.sql.Date;
				getDouble(param0: number): number;
				getDouble(param0: string): number;
				getFloat(param0: number): number;
				getFloat(param0: string): number;
				getInt(param0: number): number;
				getInt(param0: string): number;
				getLong(param0: number): number;
				getLong(param0: string): number;
				getObject(param0: number): any;
				getObject(param0: number, param1: java.util.Map<string,java.lang.Class<any>>): any;
				getObject(param0: string): any;
				getObject(param0: string, param1: java.util.Map<string,java.lang.Class<any>>): any;
				getRef(param0: number): java.sql.Ref;
				getRef(param0: string): java.sql.Ref;
				getShort(param0: number): number;
				getShort(param0: string): number;
				getString(param0: number): string;
				getString(param0: string): string;
				getTime(param0: number): java.sql.Time;
				getTime(param0: number, param1: java.util.Calendar): java.sql.Time;
				getTime(param0: string): java.sql.Time;
				getTime(param0: string, param1: java.util.Calendar): java.sql.Time;
				getTimestamp(param0: number): java.sql.Timestamp;
				getTimestamp(param0: number, param1: java.util.Calendar): java.sql.Timestamp;
				getTimestamp(param0: string): java.sql.Timestamp;
				getTimestamp(param0: string, param1: java.util.Calendar): java.sql.Timestamp;
				getURL(param0: number): java.net.URL;
				getURL(param0: string): java.net.URL;
				registerOutParameter(param0: number, param1: number): void;
				registerOutParameter(param0: number, param1: number, param2: number): void;
				registerOutParameter(param0: number, param1: number, param2: string): void;
				registerOutParameter(param0: string, param1: number): void;
				registerOutParameter(param0: string, param1: number, param2: number): void;
				registerOutParameter(param0: string, param1: number, param2: string): void;
				setAsciiStream(param0: string, param1: java.io.InputStream, param2: number): void;
				setBigDecimal(param0: string, param1: java.math.BigDecimal): void;
				setBinaryStream(param0: string, param1: java.io.InputStream, param2: number): void;
				setBoolean(param0: string, param1: boolean): void;
				setByte(param0: string, param1: number): void;
				setBytes(param0: string, param1: native.Array<number>): void;
				setCharacterStream(param0: string, param1: java.io.Reader, param2: number): void;
				setDate(param0: string, param1: java.sql.Date): void;
				setDate(param0: string, param1: java.sql.Date, param2: java.util.Calendar): void;
				setDouble(param0: string, param1: number): void;
				setFloat(param0: string, param1: number): void;
				setInt(param0: string, param1: number): void;
				setLong(param0: string, param1: number): void;
				setNull(param0: string, param1: number): void;
				setNull(param0: string, param1: number, param2: string): void;
				setObject(param0: string, param1: any): void;
				setObject(param0: string, param1: any, param2: number): void;
				setObject(param0: string, param1: any, param2: number, param3: number): void;
				setShort(param0: string, param1: number): void;
				setString(param0: string, param1: string): void;
				setTime(param0: string, param1: java.sql.Time): void;
				setTime(param0: string, param1: java.sql.Time, param2: java.util.Calendar): void;
				setTimestamp(param0: string, param1: java.sql.Timestamp): void;
				setTimestamp(param0: string, param1: java.sql.Timestamp, param2: java.util.Calendar): void;
				setURL(param0: string, param1: java.net.URL): void;
				wasNull(): boolean;
				getRowId(param0: number): java.sql.RowId;
				getRowId(param0: string): java.sql.RowId;
				setRowId(param0: string, param1: java.sql.RowId): void;
				setNString(param0: string, param1: string): void;
				setNCharacterStream(param0: string, param1: java.io.Reader, param2: number): void;
				setNClob(param0: string, param1: java.sql.NClob): void;
				setClob(param0: string, param1: java.io.Reader, param2: number): void;
				setBlob(param0: string, param1: java.io.InputStream, param2: number): void;
				setNClob(param0: string, param1: java.io.Reader, param2: number): void;
				getNClob(param0: number): java.sql.NClob;
				getNClob(param0: string): java.sql.NClob;
				setSQLXML(param0: string, param1: java.sql.SQLXML): void;
				getSQLXML(param0: number): java.sql.SQLXML;
				getSQLXML(param0: string): java.sql.SQLXML;
				getNString(param0: number): string;
				getNString(param0: string): string;
				getNCharacterStream(param0: number): java.io.Reader;
				getNCharacterStream(param0: string): java.io.Reader;
				getCharacterStream(param0: number): java.io.Reader;
				getCharacterStream(param0: string): java.io.Reader;
				setBlob(param0: string, param1: java.sql.Blob): void;
				setClob(param0: string, param1: java.sql.Clob): void;
				setAsciiStream(param0: string, param1: java.io.InputStream, param2: number): void;
				setAsciiStream(param0: string, param1: java.io.InputStream): void;
				setBinaryStream(param0: string, param1: java.io.InputStream, param2: number): void;
				setBinaryStream(param0: string, param1: java.io.InputStream): void;
				setCharacterStream(param0: string, param1: java.io.Reader, param2: number): void;
				setCharacterStream(param0: string, param1: java.io.Reader): void;
				setNCharacterStream(param0: string, param1: java.io.Reader): void;
				setClob(param0: string, param1: java.io.Reader): void;
				setBlob(param0: string, param1: java.io.InputStream): void;
				setNClob(param0: string, param1: java.io.Reader): void;
				addBatch(): void;
				clearParameters(): void;
				execute(): boolean;
				executeQuery(): java.sql.ResultSet;
				executeUpdate(): number;
				getMetaData(): java.sql.ResultSetMetaData;
				getParameterMetaData(): java.sql.ParameterMetaData;
				setArray(param0: number, param1: java.sql.Array): void;
				setAsciiStream(param0: number, param1: java.io.InputStream, param2: number): void;
				setBigDecimal(param0: number, param1: java.math.BigDecimal): void;
				setBinaryStream(param0: number, param1: java.io.InputStream, param2: number): void;
				setBlob(param0: number, param1: java.sql.Blob): void;
				setBoolean(param0: number, param1: boolean): void;
				setByte(param0: number, param1: number): void;
				setBytes(param0: number, param1: native.Array<number>): void;
				setCharacterStream(param0: number, param1: java.io.Reader, param2: number): void;
				setClob(param0: number, param1: java.sql.Clob): void;
				setDate(param0: number, param1: java.sql.Date): void;
				setDate(param0: number, param1: java.sql.Date, param2: java.util.Calendar): void;
				setDouble(param0: number, param1: number): void;
				setFloat(param0: number, param1: number): void;
				setInt(param0: number, param1: number): void;
				setLong(param0: number, param1: number): void;
				setNull(param0: number, param1: number): void;
				setNull(param0: number, param1: number, param2: string): void;
				setObject(param0: number, param1: any): void;
				setObject(param0: number, param1: any, param2: number): void;
				setObject(param0: number, param1: any, param2: number, param3: number): void;
				setRef(param0: number, param1: java.sql.Ref): void;
				setShort(param0: number, param1: number): void;
				setString(param0: number, param1: string): void;
				setTime(param0: number, param1: java.sql.Time): void;
				setTime(param0: number, param1: java.sql.Time, param2: java.util.Calendar): void;
				setTimestamp(param0: number, param1: java.sql.Timestamp): void;
				setTimestamp(param0: number, param1: java.sql.Timestamp, param2: java.util.Calendar): void;
				setUnicodeStream(param0: number, param1: java.io.InputStream, param2: number): void;
				setURL(param0: number, param1: java.net.URL): void;
				setRowId(param0: number, param1: java.sql.RowId): void;
				setNString(param0: number, param1: string): void;
				setNCharacterStream(param0: number, param1: java.io.Reader, param2: number): void;
				setNClob(param0: number, param1: java.sql.NClob): void;
				setClob(param0: number, param1: java.io.Reader, param2: number): void;
				setBlob(param0: number, param1: java.io.InputStream, param2: number): void;
				setNClob(param0: number, param1: java.io.Reader, param2: number): void;
				setSQLXML(param0: number, param1: java.sql.SQLXML): void;
				setAsciiStream(param0: number, param1: java.io.InputStream, param2: number): void;
				setBinaryStream(param0: number, param1: java.io.InputStream, param2: number): void;
				setCharacterStream(param0: number, param1: java.io.Reader, param2: number): void;
				setAsciiStream(param0: number, param1: java.io.InputStream): void;
				setBinaryStream(param0: number, param1: java.io.InputStream): void;
				setCharacterStream(param0: number, param1: java.io.Reader): void;
				setNCharacterStream(param0: number, param1: java.io.Reader): void;
				setClob(param0: number, param1: java.io.Reader): void;
				setBlob(param0: number, param1: java.io.InputStream): void;
				setNClob(param0: number, param1: java.io.Reader): void;
				addBatch(param0: string): void;
				cancel(): void;
				clearBatch(): void;
				clearWarnings(): void;
				close(): void;
				execute(param0: string): boolean;
				execute(param0: string, param1: number): boolean;
				execute(param0: string, param1: native.Array<number>): boolean;
				execute(param0: string, param1: native.Array<string>): boolean;
				executeBatch(): native.Array<number>;
				executeQuery(param0: string): java.sql.ResultSet;
				executeUpdate(param0: string): number;
				executeUpdate(param0: string, param1: number): number;
				executeUpdate(param0: string, param1: native.Array<number>): number;
				executeUpdate(param0: string, param1: native.Array<string>): number;
				getConnection(): java.sql.Connection;
				getFetchDirection(): number;
				getFetchSize(): number;
				getGeneratedKeys(): java.sql.ResultSet;
				getMaxFieldSize(): number;
				getMaxRows(): number;
				getMoreResults(): boolean;
				getMoreResults(param0: number): boolean;
				getQueryTimeout(): number;
				getResultSet(): java.sql.ResultSet;
				getResultSetConcurrency(): number;
				getResultSetHoldability(): number;
				getResultSetType(): number;
				getUpdateCount(): number;
				getWarnings(): java.sql.SQLWarning;
				setCursorName(param0: string): void;
				setEscapeProcessing(param0: boolean): void;
				setFetchDirection(param0: number): void;
				setFetchSize(param0: number): void;
				setMaxFieldSize(param0: number): void;
				setMaxRows(param0: number): void;
				setQueryTimeout(param0: number): void;
				isClosed(): boolean;
				setPoolable(param0: boolean): void;
				isPoolable(): boolean;
				unwrap(param0: java.lang.Class<any>): any;
				isWrapperFor(param0: java.lang.Class<any>): boolean;
			});
			public constructor();
			public static CLOSE_CURRENT_RESULT: number;
			public static EXECUTE_FAILED: number;
			public static KEEP_CURRENT_RESULT: number;
			public static NO_GENERATED_KEYS: number;
			public static RETURN_GENERATED_KEYS: number;
			public static CLOSE_ALL_RESULTS: number;
			public static SUCCESS_NO_INFO: number;
			public setNClob(param0: string, param1: java.io.Reader): void;
			public cancel(): void;
			public setNString(param0: string, param1: string): void;
			public setBlob(param0: number, param1: java.io.InputStream): void;
			public setPoolable(param0: boolean): void;
			public setByte(param0: number, param1: number): void;
			public setSQLXML(param0: number, param1: java.sql.SQLXML): void;
			public addBatch(param0: string): void;
			public wasNull(): boolean;
			public registerOutParameter(param0: string, param1: number, param2: number): void;
			public setNull(param0: string, param1: number, param2: string): void;
			public getNClob(param0: string): java.sql.NClob;
			public setNCharacterStream(param0: string, param1: java.io.Reader): void;
			public setCharacterStream(param0: number, param1: java.io.Reader, param2: number): void;
			public setNClob(param0: number, param1: java.sql.NClob): void;
			public getParameterMetaData(): java.sql.ParameterMetaData;
			public executeQuery(): java.sql.ResultSet;
			public setEscapeProcessing(param0: boolean): void;
			public getObject(param0: string): any;
			public getDouble(param0: string): number;
			public setBlob(param0: string, param1: java.io.InputStream): void;
			public getMoreResults(param0: number): boolean;
			/** @deprecated */
			public getBigDecimal(param0: number, param1: number): java.math.BigDecimal;
			public setLong(param0: string, param1: number): void;
			public getRef(param0: number): java.sql.Ref;
			public isClosed(): boolean;
			public getObject(param0: number, param1: java.util.Map<string,java.lang.Class<any>>): any;
			public setDate(param0: string, param1: java.sql.Date, param2: java.util.Calendar): void;
			public clearParameters(): void;
			public setDate(param0: string, param1: java.sql.Date): void;
			public isPoolable(): boolean;
			public getSQLXML(param0: number): java.sql.SQLXML;
			public registerOutParameter(param0: string, param1: number, param2: string): void;
			public execute(param0: string): boolean;
			public getCharacterStream(param0: number): java.io.Reader;
			public registerOutParameter(param0: string, param1: number): void;
			public getObject(param0: string, param1: java.util.Map<string,java.lang.Class<any>>): any;
			public setClob(param0: number, param1: java.io.Reader, param2: number): void;
			public setBytes(param0: number, param1: native.Array<number>): void;
			public getString(param0: string): string;
			public setString(param0: string, param1: string): void;
			public setCharacterStream(param0: number, param1: java.io.Reader): void;
			public setTimestamp(param0: number, param1: java.sql.Timestamp): void;
			public setArray(param0: number, param1: java.sql.Array): void;
			public setTimestamp(param0: string, param1: java.sql.Timestamp, param2: java.util.Calendar): void;
			public setClob(param0: number, param1: java.io.Reader): void;
			public setBlob(param0: number, param1: java.io.InputStream, param2: number): void;
			public setDouble(param0: number, param1: number): void;
			public getRowId(param0: string): java.sql.RowId;
			public getArray(param0: number): java.sql.Array;
			public getDate(param0: number): java.sql.Date;
			public setClob(param0: string, param1: java.io.Reader): void;
			public getTimestamp(param0: string, param1: java.util.Calendar): java.sql.Timestamp;
			public setBlob(param0: string, param1: java.io.InputStream, param2: number): void;
			public setDouble(param0: string, param1: number): void;
			public getBoolean(param0: string): boolean;
			public setNCharacterStream(param0: string, param1: java.io.Reader, param2: number): void;
			public setNClob(param0: string, param1: java.io.Reader, param2: number): void;
			public setFloat(param0: number, param1: number): void;
			public getBigDecimal(param0: number): java.math.BigDecimal;
			public setBlob(param0: string, param1: java.sql.Blob): void;
			public getShort(param0: number): number;
			public setBoolean(param0: number, param1: boolean): void;
			public setShort(param0: string, param1: number): void;
			public getDouble(param0: number): number;
			public getBytes(param0: string): native.Array<number>;
			public getString(param0: number): string;
			public setNull(param0: number, param1: number): void;
			public getFetchDirection(): number;
			public executeUpdate(): number;
			public setTimestamp(param0: number, param1: java.sql.Timestamp, param2: java.util.Calendar): void;
			public setInt(param0: number, param1: number): void;
			public getTime(param0: string, param1: java.util.Calendar): java.sql.Time;
			public getRowId(param0: number): java.sql.RowId;
			public setSQLXML(param0: string, param1: java.sql.SQLXML): void;
			public isWrapperFor(param0: java.lang.Class<any>): boolean;
			public setTime(param0: string, param1: java.sql.Time, param2: java.util.Calendar): void;
			public setTime(param0: number, param1: java.sql.Time, param2: java.util.Calendar): void;
			public setURL(param0: number, param1: java.net.URL): void;
			public getRef(param0: string): java.sql.Ref;
			public getGeneratedKeys(): java.sql.ResultSet;
			public setBigDecimal(param0: number, param1: java.math.BigDecimal): void;
			public setTime(param0: number, param1: java.sql.Time): void;
			/** @deprecated */
			public setUnicodeStream(param0: number, param1: java.io.InputStream, param2: number): void;
			public getNString(param0: number): string;
			public clearBatch(): void;
			public setRowId(param0: string, param1: java.sql.RowId): void;
			public execute(): boolean;
			public getLong(param0: number): number;
			public execute(param0: string, param1: native.Array<number>): boolean;
			public getQueryTimeout(): number;
			public setAsciiStream(param0: number, param1: java.io.InputStream): void;
			public getClob(param0: string): java.sql.Clob;
			public setLong(param0: number, param1: number): void;
			public setNull(param0: number, param1: number, param2: string): void;
			public setObject(param0: number, param1: any, param2: number): void;
			public setMaxRows(param0: number): void;
			public setBinaryStream(param0: string, param1: java.io.InputStream): void;
			public setCharacterStream(param0: string, param1: java.io.Reader): void;
			public registerOutParameter(param0: number, param1: number): void;
			public registerOutParameter(param0: number, param1: number, param2: number): void;
			public clearWarnings(): void;
			public setByte(param0: string, param1: number): void;
			public setAsciiStream(param0: string, param1: java.io.InputStream): void;
			public getResultSetHoldability(): number;
			public getByte(param0: number): number;
			public getNString(param0: string): string;
			public setCursorName(param0: string): void;
			public getMoreResults(): boolean;
			public setClob(param0: number, param1: java.sql.Clob): void;
			public setBinaryStream(param0: number, param1: java.io.InputStream): void;
			public setQueryTimeout(param0: number): void;
			public setNClob(param0: number, param1: java.io.Reader): void;
			public setMaxFieldSize(param0: number): void;
			public getFloat(param0: string): number;
			public setObject(param0: number, param1: any): void;
			public setFetchSize(param0: number): void;
			public setNString(param0: number, param1: string): void;
			public getResultSet(): java.sql.ResultSet;
			public addBatch(): void;
			public setNCharacterStream(param0: number, param1: java.io.Reader, param2: number): void;
			public getInt(param0: number): number;
			public setNull(param0: string, param1: number): void;
			public setDate(param0: number, param1: java.sql.Date): void;
			public setCharacterStream(param0: string, param1: java.io.Reader, param2: number): void;
			public getMaxRows(): number;
			public setNClob(param0: string, param1: java.sql.NClob): void;
			public executeUpdate(param0: string, param1: native.Array<number>): number;
			public getMetaData(): java.sql.ResultSetMetaData;
			public setURL(param0: string, param1: java.net.URL): void;
			public getUpdateCount(): number;
			public executeBatch(): native.Array<number>;
			public getTimestamp(param0: number, param1: java.util.Calendar): java.sql.Timestamp;
			public setNClob(param0: number, param1: java.io.Reader, param2: number): void;
			public close(): void;
			public setFloat(param0: string, param1: number): void;
			public setDate(param0: number, param1: java.sql.Date, param2: java.util.Calendar): void;
			public setObject(param0: string, param1: any, param2: number): void;
			public getDate(param0: string): java.sql.Date;
			public getResultSetConcurrency(): number;
			public getObject(param0: number): any;
			public getURL(param0: number): java.net.URL;
			public executeQuery(param0: string): java.sql.ResultSet;
			public setBigDecimal(param0: string, param1: java.math.BigDecimal): void;
			public getShort(param0: string): number;
			public setBlob(param0: number, param1: java.sql.Blob): void;
			public getDate(param0: number, param1: java.util.Calendar): java.sql.Date;
			public setInt(param0: string, param1: number): void;
			public setBoolean(param0: string, param1: boolean): void;
			public getFloat(param0: number): number;
			public setClob(param0: string, param1: java.io.Reader, param2: number): void;
			public setObject(param0: number, param1: any, param2: number, param3: number): void;
			public executeUpdate(param0: string, param1: native.Array<string>): number;
			public getWarnings(): java.sql.SQLWarning;
			public getBlob(param0: string): java.sql.Blob;
			public getSQLXML(param0: string): java.sql.SQLXML;
			public getCharacterStream(param0: string): java.io.Reader;
			public getMaxFieldSize(): number;
			public getTime(param0: number, param1: java.util.Calendar): java.sql.Time;
			public getFetchSize(): number;
			public getLong(param0: string): number;
			public getTime(param0: number): java.sql.Time;
			public getClob(param0: number): java.sql.Clob;
			public getInt(param0: string): number;
			public getArray(param0: string): java.sql.Array;
			public getByte(param0: string): number;
			public setObject(param0: string, param1: any): void;
			public setRef(param0: number, param1: java.sql.Ref): void;
			public setClob(param0: string, param1: java.sql.Clob): void;
			public executeUpdate(param0: string, param1: number): number;
			public getNCharacterStream(param0: string): java.io.Reader;
			public getBoolean(param0: number): boolean;
			public setString(param0: number, param1: string): void;
			public getBytes(param0: number): native.Array<number>;
			public setRowId(param0: number, param1: java.sql.RowId): void;
			public getTimestamp(param0: string): java.sql.Timestamp;
			public getTime(param0: string): java.sql.Time;
			public setShort(param0: number, param1: number): void;
			public unwrap(param0: java.lang.Class<any>): any;
			public getBlob(param0: number): java.sql.Blob;
			public setTime(param0: string, param1: java.sql.Time): void;
			public setBinaryStream(param0: number, param1: java.io.InputStream, param2: number): void;
			public getDate(param0: string, param1: java.util.Calendar): java.sql.Date;
			public getNClob(param0: number): java.sql.NClob;
			public execute(param0: string, param1: number): boolean;
			public getConnection(): java.sql.Connection;
			public getURL(param0: string): java.net.URL;
			public getTimestamp(param0: number): java.sql.Timestamp;
			public setObject(param0: string, param1: any, param2: number, param3: number): void;
			public getResultSetType(): number;
			public executeUpdate(param0: string): number;
			public setBinaryStream(param0: string, param1: java.io.InputStream, param2: number): void;
			public setBytes(param0: string, param1: native.Array<number>): void;
			public getNCharacterStream(param0: number): java.io.Reader;
			public setNCharacterStream(param0: number, param1: java.io.Reader): void;
			public registerOutParameter(param0: number, param1: number, param2: string): void;
			public setFetchDirection(param0: number): void;
			public getBigDecimal(param0: string): java.math.BigDecimal;
			public setAsciiStream(param0: string, param1: java.io.InputStream, param2: number): void;
			public setTimestamp(param0: string, param1: java.sql.Timestamp): void;
			public setAsciiStream(param0: number, param1: java.io.InputStream, param2: number): void;
			public execute(param0: string, param1: native.Array<string>): boolean;
		}
	}
}

declare module java {
	export module sql {
		export class ClientInfoStatus {
			public static class: java.lang.Class<java.sql.ClientInfoStatus>;
			public static REASON_UNKNOWN: java.sql.ClientInfoStatus;
			public static REASON_UNKNOWN_PROPERTY: java.sql.ClientInfoStatus;
			public static REASON_VALUE_INVALID: java.sql.ClientInfoStatus;
			public static REASON_VALUE_TRUNCATED: java.sql.ClientInfoStatus;
			public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			public static values(): native.Array<java.sql.ClientInfoStatus>;
			public static valueOf(param0: string): java.sql.ClientInfoStatus;
		}
	}
}

declare module java {
	export module sql {
		export class Clob extends java.lang.Object {
			public static class: java.lang.Class<java.sql.Clob>;
			/**
			 * Constructs a new instance of the java.sql.Clob interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				getAsciiStream(): java.io.InputStream;
				getCharacterStream(): java.io.Reader;
				getSubString(param0: number, param1: number): string;
				length(): number;
				position(param0: java.sql.Clob, param1: number): number;
				position(param0: string, param1: number): number;
				setAsciiStream(param0: number): java.io.OutputStream;
				setCharacterStream(param0: number): java.io.Writer;
				setString(param0: number, param1: string): number;
				setString(param0: number, param1: string, param2: number, param3: number): number;
				truncate(param0: number): void;
				free(): void;
				getCharacterStream(param0: number, param1: number): java.io.Reader;
			});
			public constructor();
			public getSubString(param0: number, param1: number): string;
			public setCharacterStream(param0: number): java.io.Writer;
			public free(): void;
			public truncate(param0: number): void;
			public getCharacterStream(param0: number, param1: number): java.io.Reader;
			public length(): number;
			public setString(param0: number, param1: string, param2: number, param3: number): number;
			public setString(param0: number, param1: string): number;
			public getCharacterStream(): java.io.Reader;
			public position(param0: string, param1: number): number;
			public setAsciiStream(param0: number): java.io.OutputStream;
			public position(param0: java.sql.Clob, param1: number): number;
			public getAsciiStream(): java.io.InputStream;
		}
	}
}

declare module java {
	export module sql {
		export class Connection extends java.lang.Object implements java.sql.Wrapper {
			public static class: java.lang.Class<java.sql.Connection>;
			/**
			 * Constructs a new instance of the java.sql.Connection interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				clearWarnings(): void;
				close(): void;
				commit(): void;
				createStatement(): java.sql.Statement;
				createStatement(param0: number, param1: number): java.sql.Statement;
				createStatement(param0: number, param1: number, param2: number): java.sql.Statement;
				getAutoCommit(): boolean;
				getCatalog(): string;
				getHoldability(): number;
				getMetaData(): java.sql.DatabaseMetaData;
				getTransactionIsolation(): number;
				getTypeMap(): java.util.Map<string,java.lang.Class<any>>;
				getWarnings(): java.sql.SQLWarning;
				isClosed(): boolean;
				isReadOnly(): boolean;
				nativeSQL(param0: string): string;
				prepareCall(param0: string): java.sql.CallableStatement;
				prepareCall(param0: string, param1: number, param2: number): java.sql.CallableStatement;
				prepareCall(param0: string, param1: number, param2: number, param3: number): java.sql.CallableStatement;
				prepareStatement(param0: string): java.sql.PreparedStatement;
				prepareStatement(param0: string, param1: number): java.sql.PreparedStatement;
				prepareStatement(param0: string, param1: native.Array<number>): java.sql.PreparedStatement;
				prepareStatement(param0: string, param1: number, param2: number): java.sql.PreparedStatement;
				prepareStatement(param0: string, param1: number, param2: number, param3: number): java.sql.PreparedStatement;
				prepareStatement(param0: string, param1: native.Array<string>): java.sql.PreparedStatement;
				releaseSavepoint(param0: java.sql.Savepoint): void;
				rollback(): void;
				rollback(param0: java.sql.Savepoint): void;
				setAutoCommit(param0: boolean): void;
				setCatalog(param0: string): void;
				setHoldability(param0: number): void;
				setReadOnly(param0: boolean): void;
				setSavepoint(): java.sql.Savepoint;
				setSavepoint(param0: string): java.sql.Savepoint;
				setTransactionIsolation(param0: number): void;
				setTypeMap(param0: java.util.Map<string,java.lang.Class<any>>): void;
				createClob(): java.sql.Clob;
				createBlob(): java.sql.Blob;
				createNClob(): java.sql.NClob;
				createSQLXML(): java.sql.SQLXML;
				isValid(param0: number): boolean;
				setClientInfo(param0: string, param1: string): void;
				setClientInfo(param0: java.util.Properties): void;
				getClientInfo(param0: string): string;
				getClientInfo(): java.util.Properties;
				createArrayOf(param0: string, param1: native.Array<any>): java.sql.Array;
				createStruct(param0: string, param1: native.Array<any>): java.sql.Struct;
				unwrap(param0: java.lang.Class<any>): any;
				isWrapperFor(param0: java.lang.Class<any>): boolean;
			});
			public constructor();
			public static TRANSACTION_READ_COMMITTED: number;
			public static TRANSACTION_NONE: number;
			public static TRANSACTION_READ_UNCOMMITTED: number;
			public static TRANSACTION_SERIALIZABLE: number;
			public static TRANSACTION_REPEATABLE_READ: number;
			public isReadOnly(): boolean;
			public rollback(param0: java.sql.Savepoint): void;
			public commit(): void;
			public releaseSavepoint(param0: java.sql.Savepoint): void;
			public setSavepoint(param0: string): java.sql.Savepoint;
			public createSQLXML(): java.sql.SQLXML;
			public getWarnings(): java.sql.SQLWarning;
			public isValid(param0: number): boolean;
			public prepareStatement(param0: string): java.sql.PreparedStatement;
			public prepareStatement(param0: string, param1: native.Array<string>): java.sql.PreparedStatement;
			public clearWarnings(): void;
			public getClientInfo(param0: string): string;
			public setClientInfo(param0: string, param1: string): void;
			public getMetaData(): java.sql.DatabaseMetaData;
			public prepareCall(param0: string, param1: number, param2: number): java.sql.CallableStatement;
			public prepareCall(param0: string): java.sql.CallableStatement;
			public createArrayOf(param0: string, param1: native.Array<any>): java.sql.Array;
			public prepareStatement(param0: string, param1: number, param2: number): java.sql.PreparedStatement;
			public rollback(): void;
			public setHoldability(param0: number): void;
			public prepareStatement(param0: string, param1: number, param2: number, param3: number): java.sql.PreparedStatement;
			public createStatement(): java.sql.Statement;
			public createNClob(): java.sql.NClob;
			public isClosed(): boolean;
			public createStatement(param0: number, param1: number): java.sql.Statement;
			public setCatalog(param0: string): void;
			public isWrapperFor(param0: java.lang.Class<any>): boolean;
			public setSavepoint(): java.sql.Savepoint;
			public unwrap(param0: java.lang.Class<any>): any;
			public setReadOnly(param0: boolean): void;
			public createStatement(param0: number, param1: number, param2: number): java.sql.Statement;
			public getCatalog(): string;
			public createClob(): java.sql.Clob;
			public getTypeMap(): java.util.Map<string,java.lang.Class<any>>;
			public setAutoCommit(param0: boolean): void;
			public getClientInfo(): java.util.Properties;
			public createStruct(param0: string, param1: native.Array<any>): java.sql.Struct;
			public getHoldability(): number;
			public close(): void;
			public createBlob(): java.sql.Blob;
			public prepareStatement(param0: string, param1: number): java.sql.PreparedStatement;
			public setClientInfo(param0: java.util.Properties): void;
			public prepareCall(param0: string, param1: number, param2: number, param3: number): java.sql.CallableStatement;
			public setTransactionIsolation(param0: number): void;
			public nativeSQL(param0: string): string;
			public setTypeMap(param0: java.util.Map<string,java.lang.Class<any>>): void;
			public getAutoCommit(): boolean;
			public getTransactionIsolation(): number;
			public prepareStatement(param0: string, param1: native.Array<number>): java.sql.PreparedStatement;
		}
	}
}

declare module java {
	export module sql {
		export class DataTruncation extends java.sql.SQLWarning implements java.io.Serializable {
			public static class: java.lang.Class<java.sql.DataTruncation>;
			public constructor(param0: number, param1: boolean, param2: boolean, param3: number, param4: number);
			public getIndex(): number;
			public constructor(param0: java.lang.Throwable);
			public getParameter(): boolean;
			public getDataSize(): number;
			public constructor();
			public constructor(param0: string, param1: string, param2: java.lang.Throwable);
			public constructor(param0: string, param1: string);
			public constructor(param0: string, param1: string, param2: number, param3: java.lang.Throwable);
			public constructor(param0: number, param1: boolean, param2: boolean, param3: number, param4: number, param5: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public getTransferSize(): number;
			public constructor(param0: string);
			public constructor(param0: string, param1: string, param2: number);
			public getRead(): boolean;
			public iterator(): java.util.Iterator<java.lang.Throwable>;
			public iterator(): java.util.Iterator<any>;
		}
	}
}

declare module java {
	export module sql {
		export class DatabaseMetaData extends java.lang.Object implements java.sql.Wrapper {
			public static class: java.lang.Class<java.sql.DatabaseMetaData>;
			/**
			 * Constructs a new instance of the java.sql.DatabaseMetaData interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				allProceduresAreCallable(): boolean;
				allTablesAreSelectable(): boolean;
				dataDefinitionCausesTransactionCommit(): boolean;
				dataDefinitionIgnoredInTransactions(): boolean;
				deletesAreDetected(param0: number): boolean;
				doesMaxRowSizeIncludeBlobs(): boolean;
				getAttributes(param0: string, param1: string, param2: string, param3: string): java.sql.ResultSet;
				getBestRowIdentifier(param0: string, param1: string, param2: string, param3: number, param4: boolean): java.sql.ResultSet;
				getCatalogs(): java.sql.ResultSet;
				getCatalogSeparator(): string;
				getCatalogTerm(): string;
				getColumnPrivileges(param0: string, param1: string, param2: string, param3: string): java.sql.ResultSet;
				getColumns(param0: string, param1: string, param2: string, param3: string): java.sql.ResultSet;
				getConnection(): java.sql.Connection;
				getCrossReference(param0: string, param1: string, param2: string, param3: string, param4: string, param5: string): java.sql.ResultSet;
				getDatabaseMajorVersion(): number;
				getDatabaseMinorVersion(): number;
				getDatabaseProductName(): string;
				getDatabaseProductVersion(): string;
				getDefaultTransactionIsolation(): number;
				getDriverMajorVersion(): number;
				getDriverMinorVersion(): number;
				getDriverName(): string;
				getDriverVersion(): string;
				getExportedKeys(param0: string, param1: string, param2: string): java.sql.ResultSet;
				getExtraNameCharacters(): string;
				getIdentifierQuoteString(): string;
				getImportedKeys(param0: string, param1: string, param2: string): java.sql.ResultSet;
				getIndexInfo(param0: string, param1: string, param2: string, param3: boolean, param4: boolean): java.sql.ResultSet;
				getJDBCMajorVersion(): number;
				getJDBCMinorVersion(): number;
				getMaxBinaryLiteralLength(): number;
				getMaxCatalogNameLength(): number;
				getMaxCharLiteralLength(): number;
				getMaxColumnNameLength(): number;
				getMaxColumnsInGroupBy(): number;
				getMaxColumnsInIndex(): number;
				getMaxColumnsInOrderBy(): number;
				getMaxColumnsInSelect(): number;
				getMaxColumnsInTable(): number;
				getMaxConnections(): number;
				getMaxCursorNameLength(): number;
				getMaxIndexLength(): number;
				getMaxProcedureNameLength(): number;
				getMaxRowSize(): number;
				getMaxSchemaNameLength(): number;
				getMaxStatementLength(): number;
				getMaxStatements(): number;
				getMaxTableNameLength(): number;
				getMaxTablesInSelect(): number;
				getMaxUserNameLength(): number;
				getNumericFunctions(): string;
				getPrimaryKeys(param0: string, param1: string, param2: string): java.sql.ResultSet;
				getProcedureColumns(param0: string, param1: string, param2: string, param3: string): java.sql.ResultSet;
				getProcedures(param0: string, param1: string, param2: string): java.sql.ResultSet;
				getProcedureTerm(): string;
				getResultSetHoldability(): number;
				getSchemas(): java.sql.ResultSet;
				getSchemaTerm(): string;
				getSearchStringEscape(): string;
				getSQLKeywords(): string;
				getSQLStateType(): number;
				getStringFunctions(): string;
				getSuperTables(param0: string, param1: string, param2: string): java.sql.ResultSet;
				getSuperTypes(param0: string, param1: string, param2: string): java.sql.ResultSet;
				getSystemFunctions(): string;
				getTablePrivileges(param0: string, param1: string, param2: string): java.sql.ResultSet;
				getTables(param0: string, param1: string, param2: string, param3: native.Array<string>): java.sql.ResultSet;
				getTableTypes(): java.sql.ResultSet;
				getTimeDateFunctions(): string;
				getTypeInfo(): java.sql.ResultSet;
				getUDTs(param0: string, param1: string, param2: string, param3: native.Array<number>): java.sql.ResultSet;
				getURL(): string;
				getUserName(): string;
				getVersionColumns(param0: string, param1: string, param2: string): java.sql.ResultSet;
				insertsAreDetected(param0: number): boolean;
				isCatalogAtStart(): boolean;
				isReadOnly(): boolean;
				locatorsUpdateCopy(): boolean;
				nullPlusNonNullIsNull(): boolean;
				nullsAreSortedAtEnd(): boolean;
				nullsAreSortedAtStart(): boolean;
				nullsAreSortedHigh(): boolean;
				nullsAreSortedLow(): boolean;
				othersDeletesAreVisible(param0: number): boolean;
				othersInsertsAreVisible(param0: number): boolean;
				othersUpdatesAreVisible(param0: number): boolean;
				ownDeletesAreVisible(param0: number): boolean;
				ownInsertsAreVisible(param0: number): boolean;
				ownUpdatesAreVisible(param0: number): boolean;
				storesLowerCaseIdentifiers(): boolean;
				storesLowerCaseQuotedIdentifiers(): boolean;
				storesMixedCaseIdentifiers(): boolean;
				storesMixedCaseQuotedIdentifiers(): boolean;
				storesUpperCaseIdentifiers(): boolean;
				storesUpperCaseQuotedIdentifiers(): boolean;
				supportsAlterTableWithAddColumn(): boolean;
				supportsAlterTableWithDropColumn(): boolean;
				supportsANSI92EntryLevelSQL(): boolean;
				supportsANSI92FullSQL(): boolean;
				supportsANSI92IntermediateSQL(): boolean;
				supportsBatchUpdates(): boolean;
				supportsCatalogsInDataManipulation(): boolean;
				supportsCatalogsInIndexDefinitions(): boolean;
				supportsCatalogsInPrivilegeDefinitions(): boolean;
				supportsCatalogsInProcedureCalls(): boolean;
				supportsCatalogsInTableDefinitions(): boolean;
				supportsColumnAliasing(): boolean;
				supportsConvert(): boolean;
				supportsConvert(param0: number, param1: number): boolean;
				supportsCoreSQLGrammar(): boolean;
				supportsCorrelatedSubqueries(): boolean;
				supportsDataDefinitionAndDataManipulationTransactions(): boolean;
				supportsDataManipulationTransactionsOnly(): boolean;
				supportsDifferentTableCorrelationNames(): boolean;
				supportsExpressionsInOrderBy(): boolean;
				supportsExtendedSQLGrammar(): boolean;
				supportsFullOuterJoins(): boolean;
				supportsGetGeneratedKeys(): boolean;
				supportsGroupBy(): boolean;
				supportsGroupByBeyondSelect(): boolean;
				supportsGroupByUnrelated(): boolean;
				supportsIntegrityEnhancementFacility(): boolean;
				supportsLikeEscapeClause(): boolean;
				supportsLimitedOuterJoins(): boolean;
				supportsMinimumSQLGrammar(): boolean;
				supportsMixedCaseIdentifiers(): boolean;
				supportsMixedCaseQuotedIdentifiers(): boolean;
				supportsMultipleOpenResults(): boolean;
				supportsMultipleResultSets(): boolean;
				supportsMultipleTransactions(): boolean;
				supportsNamedParameters(): boolean;
				supportsNonNullableColumns(): boolean;
				supportsOpenCursorsAcrossCommit(): boolean;
				supportsOpenCursorsAcrossRollback(): boolean;
				supportsOpenStatementsAcrossCommit(): boolean;
				supportsOpenStatementsAcrossRollback(): boolean;
				supportsOrderByUnrelated(): boolean;
				supportsOuterJoins(): boolean;
				supportsPositionedDelete(): boolean;
				supportsPositionedUpdate(): boolean;
				supportsResultSetConcurrency(param0: number, param1: number): boolean;
				supportsResultSetHoldability(param0: number): boolean;
				supportsResultSetType(param0: number): boolean;
				supportsSavepoints(): boolean;
				supportsSchemasInDataManipulation(): boolean;
				supportsSchemasInIndexDefinitions(): boolean;
				supportsSchemasInPrivilegeDefinitions(): boolean;
				supportsSchemasInProcedureCalls(): boolean;
				supportsSchemasInTableDefinitions(): boolean;
				supportsSelectForUpdate(): boolean;
				supportsStatementPooling(): boolean;
				supportsStoredProcedures(): boolean;
				supportsSubqueriesInComparisons(): boolean;
				supportsSubqueriesInExists(): boolean;
				supportsSubqueriesInIns(): boolean;
				supportsSubqueriesInQuantifieds(): boolean;
				supportsTableCorrelationNames(): boolean;
				supportsTransactionIsolationLevel(param0: number): boolean;
				supportsTransactions(): boolean;
				supportsUnion(): boolean;
				supportsUnionAll(): boolean;
				updatesAreDetected(param0: number): boolean;
				usesLocalFilePerTable(): boolean;
				usesLocalFiles(): boolean;
				autoCommitFailureClosesAllResultSets(): boolean;
				getClientInfoProperties(): java.sql.ResultSet;
				getFunctionColumns(param0: string, param1: string, param2: string, param3: string): java.sql.ResultSet;
				getFunctions(param0: string, param1: string, param2: string): java.sql.ResultSet;
				getRowIdLifetime(): java.sql.RowIdLifetime;
				getSchemas(param0: string, param1: string): java.sql.ResultSet;
				supportsStoredFunctionsUsingCallSyntax(): boolean;
				unwrap(param0: java.lang.Class<any>): any;
				isWrapperFor(param0: java.lang.Class<any>): boolean;
			});
			public constructor();
			public static bestRowNotPseudo: number;
			public static procedureColumnOut: number;
			public static attributeNullableUnknown: number;
			public static typePredNone: number;
			public static typeNoNulls: number;
			public static functionNoTable: number;
			public static functionColumnOut: number;
			public static typeNullable: number;
			public static bestRowTemporary: number;
			public static importedKeyInitiallyImmediate: number;
			public static tableIndexHashed: number;
			public static versionColumnUnknown: number;
			public static functionColumnUnknown: number;
			public static versionColumnNotPseudo: number;
			public static versionColumnPseudo: number;
			public static importedKeyNotDeferrable: number;
			public static functionColumnInOut: number;
			public static bestRowPseudo: number;
			public static procedureNullable: number;
			public static procedureColumnResult: number;
			public static tableIndexClustered: number;
			public static importedKeySetNull: number;
			public static importedKeyRestrict: number;
			public static columnNoNulls: number;
			public static bestRowTransaction: number;
			public static typePredChar: number;
			public static columnNullableUnknown: number;
			public static procedureColumnUnknown: number;
			public static procedureColumnInOut: number;
			public static functionNullable: number;
			public static attributeNullable: number;
			public static procedureColumnReturn: number;
			public static functionReturnsTable: number;
			public static functionNullableUnknown: number;
			public static functionColumnIn: number;
			public static functionReturn: number;
			public static importedKeySetDefault: number;
			public static bestRowSession: number;
			public static tableIndexStatistic: number;
			public static procedureNoNulls: number;
			public static procedureNullableUnknown: number;
			public static typeSearchable: number;
			public static importedKeyNoAction: number;
			public static sqlStateSQL99: number;
			public static sqlStateSQL: number;
			public static functionNoNulls: number;
			public static importedKeyCascade: number;
			public static procedureNoResult: number;
			public static tableIndexOther: number;
			public static columnNullable: number;
			public static importedKeyInitiallyDeferred: number;
			public static procedureColumnIn: number;
			public static typeNullableUnknown: number;
			public static typePredBasic: number;
			public static procedureResultUnknown: number;
			public static functionColumnResult: number;
			public static attributeNoNulls: number;
			public static procedureReturnsResult: number;
			public static sqlStateXOpen: number;
			public static functionResultUnknown: number;
			public static bestRowUnknown: number;
			public isReadOnly(): boolean;
			public nullsAreSortedAtStart(): boolean;
			public storesUpperCaseIdentifiers(): boolean;
			public supportsBatchUpdates(): boolean;
			public getDatabaseMajorVersion(): number;
			public updatesAreDetected(param0: number): boolean;
			public getJDBCMinorVersion(): number;
			public supportsNonNullableColumns(): boolean;
			public othersInsertsAreVisible(param0: number): boolean;
			public getRowIdLifetime(): java.sql.RowIdLifetime;
			public getNumericFunctions(): string;
			public supportsSubqueriesInQuantifieds(): boolean;
			public ownUpdatesAreVisible(param0: number): boolean;
			public supportsSchemasInProcedureCalls(): boolean;
			public getMaxStatementLength(): number;
			public getColumnPrivileges(param0: string, param1: string, param2: string, param3: string): java.sql.ResultSet;
			public supportsMixedCaseIdentifiers(): boolean;
			public getTypeInfo(): java.sql.ResultSet;
			public usesLocalFiles(): boolean;
			public getMaxCatalogNameLength(): number;
			public getStringFunctions(): string;
			public supportsSchemasInTableDefinitions(): boolean;
			public getSystemFunctions(): string;
			public getFunctionColumns(param0: string, param1: string, param2: string, param3: string): java.sql.ResultSet;
			public isCatalogAtStart(): boolean;
			public getMaxSchemaNameLength(): number;
			public supportsMultipleResultSets(): boolean;
			public getDatabaseProductVersion(): string;
			public getResultSetHoldability(): number;
			public getDriverMajorVersion(): number;
			public usesLocalFilePerTable(): boolean;
			public supportsStatementPooling(): boolean;
			public getFunctions(param0: string, param1: string, param2: string): java.sql.ResultSet;
			public supportsResultSetHoldability(param0: number): boolean;
			public supportsUnionAll(): boolean;
			public storesLowerCaseIdentifiers(): boolean;
			public supportsAlterTableWithDropColumn(): boolean;
			public supportsStoredProcedures(): boolean;
			public getProcedureColumns(param0: string, param1: string, param2: string, param3: string): java.sql.ResultSet;
			public supportsOpenCursorsAcrossCommit(): boolean;
			public getExtraNameCharacters(): string;
			public supportsPositionedDelete(): boolean;
			public getMaxColumnsInOrderBy(): number;
			public supportsConvert(): boolean;
			public supportsANSI92EntryLevelSQL(): boolean;
			public getSchemas(): java.sql.ResultSet;
			public nullsAreSortedAtEnd(): boolean;
			public getDefaultTransactionIsolation(): number;
			public supportsOpenStatementsAcrossRollback(): boolean;
			public supportsOuterJoins(): boolean;
			public getDriverMinorVersion(): number;
			public getMaxBinaryLiteralLength(): number;
			public supportsAlterTableWithAddColumn(): boolean;
			public supportsLikeEscapeClause(): boolean;
			public getMaxColumnNameLength(): number;
			public getPrimaryKeys(param0: string, param1: string, param2: string): java.sql.ResultSet;
			public dataDefinitionIgnoredInTransactions(): boolean;
			public getMaxCharLiteralLength(): number;
			public ownInsertsAreVisible(param0: number): boolean;
			public getMaxStatements(): number;
			public supportsPositionedUpdate(): boolean;
			public getIndexInfo(param0: string, param1: string, param2: string, param3: boolean, param4: boolean): java.sql.ResultSet;
			public nullsAreSortedLow(): boolean;
			public supportsSavepoints(): boolean;
			public supportsGroupBy(): boolean;
			public supportsOpenCursorsAcrossRollback(): boolean;
			public getProcedureTerm(): string;
			public supportsUnion(): boolean;
			public supportsConvert(param0: number, param1: number): boolean;
			public supportsResultSetType(param0: number): boolean;
			public nullPlusNonNullIsNull(): boolean;
			public getMaxConnections(): number;
			public supportsColumnAliasing(): boolean;
			public supportsGroupByBeyondSelect(): boolean;
			public getIdentifierQuoteString(): string;
			public getMaxTablesInSelect(): number;
			public nullsAreSortedHigh(): boolean;
			public getSchemas(param0: string, param1: string): java.sql.ResultSet;
			public storesUpperCaseQuotedIdentifiers(): boolean;
			public getMaxColumnsInSelect(): number;
			public dataDefinitionCausesTransactionCommit(): boolean;
			public supportsOrderByUnrelated(): boolean;
			public getDriverName(): string;
			public getSQLKeywords(): string;
			public supportsFullOuterJoins(): boolean;
			public doesMaxRowSizeIncludeBlobs(): boolean;
			public getSearchStringEscape(): string;
			public storesMixedCaseIdentifiers(): boolean;
			public getMaxProcedureNameLength(): number;
			public getUDTs(param0: string, param1: string, param2: string, param3: native.Array<number>): java.sql.ResultSet;
			public supportsSchemasInPrivilegeDefinitions(): boolean;
			public supportsStoredFunctionsUsingCallSyntax(): boolean;
			public supportsCatalogsInPrivilegeDefinitions(): boolean;
			public supportsMinimumSQLGrammar(): boolean;
			public getTableTypes(): java.sql.ResultSet;
			public supportsSubqueriesInExists(): boolean;
			public supportsMixedCaseQuotedIdentifiers(): boolean;
			public supportsCatalogsInProcedureCalls(): boolean;
			public supportsGroupByUnrelated(): boolean;
			public getImportedKeys(param0: string, param1: string, param2: string): java.sql.ResultSet;
			public getSuperTypes(param0: string, param1: string, param2: string): java.sql.ResultSet;
			public getMaxColumnsInGroupBy(): number;
			public getMaxIndexLength(): number;
			public supportsCoreSQLGrammar(): boolean;
			public getDatabaseMinorVersion(): number;
			public supportsExpressionsInOrderBy(): boolean;
			public supportsSchemasInDataManipulation(): boolean;
			public supportsDataDefinitionAndDataManipulationTransactions(): boolean;
			public supportsTransactions(): boolean;
			public getClientInfoProperties(): java.sql.ResultSet;
			public supportsOpenStatementsAcrossCommit(): boolean;
			public supportsGetGeneratedKeys(): boolean;
			public supportsDataManipulationTransactionsOnly(): boolean;
			public supportsCatalogsInDataManipulation(): boolean;
			public othersDeletesAreVisible(param0: number): boolean;
			public allTablesAreSelectable(): boolean;
			public getCrossReference(param0: string, param1: string, param2: string, param3: string, param4: string, param5: string): java.sql.ResultSet;
			public ownDeletesAreVisible(param0: number): boolean;
			public storesMixedCaseQuotedIdentifiers(): boolean;
			public supportsCorrelatedSubqueries(): boolean;
			public getProcedures(param0: string, param1: string, param2: string): java.sql.ResultSet;
			public getMaxColumnsInIndex(): number;
			public getSQLStateType(): number;
			public getTimeDateFunctions(): string;
			public supportsMultipleTransactions(): boolean;
			public getCatalogTerm(): string;
			public getTablePrivileges(param0: string, param1: string, param2: string): java.sql.ResultSet;
			public supportsCatalogsInTableDefinitions(): boolean;
			public getSchemaTerm(): string;
			public insertsAreDetected(param0: number): boolean;
			public getColumns(param0: string, param1: string, param2: string, param3: string): java.sql.ResultSet;
			public getVersionColumns(param0: string, param1: string, param2: string): java.sql.ResultSet;
			public supportsSubqueriesInIns(): boolean;
			public isWrapperFor(param0: java.lang.Class<any>): boolean;
			public getMaxUserNameLength(): number;
			public getDatabaseProductName(): string;
			public unwrap(param0: java.lang.Class<any>): any;
			public deletesAreDetected(param0: number): boolean;
			public getCatalogs(): java.sql.ResultSet;
			public othersUpdatesAreVisible(param0: number): boolean;
			public getCatalogSeparator(): string;
			public getTables(param0: string, param1: string, param2: string, param3: native.Array<string>): java.sql.ResultSet;
			public supportsTransactionIsolationLevel(param0: number): boolean;
			public supportsMultipleOpenResults(): boolean;
			public storesLowerCaseQuotedIdentifiers(): boolean;
			public getMaxColumnsInTable(): number;
			public getConnection(): java.sql.Connection;
			public getMaxTableNameLength(): number;
			public locatorsUpdateCopy(): boolean;
			public getDriverVersion(): string;
			public supportsSelectForUpdate(): boolean;
			public supportsANSI92FullSQL(): boolean;
			public supportsCatalogsInIndexDefinitions(): boolean;
			public supportsExtendedSQLGrammar(): boolean;
			public getBestRowIdentifier(param0: string, param1: string, param2: string, param3: number, param4: boolean): java.sql.ResultSet;
			public getAttributes(param0: string, param1: string, param2: string, param3: string): java.sql.ResultSet;
			public getSuperTables(param0: string, param1: string, param2: string): java.sql.ResultSet;
			public supportsIntegrityEnhancementFacility(): boolean;
			public supportsNamedParameters(): boolean;
			public supportsSchemasInIndexDefinitions(): boolean;
			public allProceduresAreCallable(): boolean;
			public getUserName(): string;
			public getExportedKeys(param0: string, param1: string, param2: string): java.sql.ResultSet;
			public getMaxRowSize(): number;
			public autoCommitFailureClosesAllResultSets(): boolean;
			public getURL(): string;
			public supportsANSI92IntermediateSQL(): boolean;
			public supportsResultSetConcurrency(param0: number, param1: number): boolean;
			public supportsSubqueriesInComparisons(): boolean;
			public supportsTableCorrelationNames(): boolean;
			public getJDBCMajorVersion(): number;
			public supportsDifferentTableCorrelationNames(): boolean;
			public getMaxCursorNameLength(): number;
			public supportsLimitedOuterJoins(): boolean;
		}
	}
}

declare module java {
	export module sql {
		export class Date extends java.util.Date {
			public static class: java.lang.Class<java.sql.Date>;
			public static valueOf(param0: string): java.sql.Date;
			/** @deprecated */
			public constructor(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number);
			public constructor(param0: number);
			public constructor();
			/** @deprecated */
			public constructor(param0: number, param1: number, param2: number);
			/** @deprecated */
			public getMinutes(): number;
			public toString(): string;
			/** @deprecated */
			public getHours(): number;
			public setTime(param0: number): void;
			/** @deprecated */
			public setHours(param0: number): void;
			/** @deprecated */
			public getSeconds(): number;
			/** @deprecated */
			public setMinutes(param0: number): void;
			/** @deprecated */
			public setSeconds(param0: number): void;
			/** @deprecated */
			public constructor(param0: number, param1: number, param2: number, param3: number, param4: number);
			/** @deprecated */
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module sql {
		export class Driver extends java.lang.Object {
			public static class: java.lang.Class<java.sql.Driver>;
			/**
			 * Constructs a new instance of the java.sql.Driver interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				acceptsURL(param0: string): boolean;
				connect(param0: string, param1: java.util.Properties): java.sql.Connection;
				getMajorVersion(): number;
				getMinorVersion(): number;
				getPropertyInfo(param0: string, param1: java.util.Properties): native.Array<java.sql.DriverPropertyInfo>;
				jdbcCompliant(): boolean;
			});
			public constructor();
			public connect(param0: string, param1: java.util.Properties): java.sql.Connection;
			public getMinorVersion(): number;
			public getMajorVersion(): number;
			public jdbcCompliant(): boolean;
			public acceptsURL(param0: string): boolean;
			public getPropertyInfo(param0: string, param1: java.util.Properties): native.Array<java.sql.DriverPropertyInfo>;
		}
	}
}

declare module java {
	export module sql {
		export class DriverManager extends java.lang.Object {
			public static class: java.lang.Class<java.sql.DriverManager>;
			public static deregisterDriver(param0: java.sql.Driver): void;
			public static getConnection(param0: string, param1: string, param2: string): java.sql.Connection;
			public static getDrivers(): java.util.Enumeration<java.sql.Driver>;
			/** @deprecated */
			public static setLogStream(param0: java.io.PrintStream): void;
			public static getDriver(param0: string): java.sql.Driver;
			public static getConnection(param0: string, param1: java.util.Properties): java.sql.Connection;
			public static setLogWriter(param0: java.io.PrintWriter): void;
			public static getLogWriter(): java.io.PrintWriter;
			public static getConnection(param0: string): java.sql.Connection;
			public static getLoginTimeout(): number;
			public static println(param0: string): void;
			public static registerDriver(param0: java.sql.Driver): void;
			/** @deprecated */
			public static getLogStream(): java.io.PrintStream;
			public static setLoginTimeout(param0: number): void;
		}
	}
}

declare module java {
	export module sql {
		export class DriverPropertyInfo extends java.lang.Object {
			public static class: java.lang.Class<java.sql.DriverPropertyInfo>;
			public choices: native.Array<string>;
			public description: string;
			public name: string;
			public required: boolean;
			public value: string;
			public constructor(param0: string, param1: string);
		}
	}
}

declare module java {
	export module sql {
		export class NClob extends java.lang.Object implements java.sql.Clob {
			public static class: java.lang.Class<java.sql.NClob>;
			/**
			 * Constructs a new instance of the java.sql.NClob interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				getAsciiStream(): java.io.InputStream;
				getCharacterStream(): java.io.Reader;
				getSubString(param0: number, param1: number): string;
				length(): number;
				position(param0: java.sql.Clob, param1: number): number;
				position(param0: string, param1: number): number;
				setAsciiStream(param0: number): java.io.OutputStream;
				setCharacterStream(param0: number): java.io.Writer;
				setString(param0: number, param1: string): number;
				setString(param0: number, param1: string, param2: number, param3: number): number;
				truncate(param0: number): void;
				free(): void;
				getCharacterStream(param0: number, param1: number): java.io.Reader;
			});
			public constructor();
			public getSubString(param0: number, param1: number): string;
			public setCharacterStream(param0: number): java.io.Writer;
			public free(): void;
			public truncate(param0: number): void;
			public getCharacterStream(param0: number, param1: number): java.io.Reader;
			public length(): number;
			public setString(param0: number, param1: string, param2: number, param3: number): number;
			public setString(param0: number, param1: string): number;
			public getCharacterStream(): java.io.Reader;
			public position(param0: string, param1: number): number;
			public setAsciiStream(param0: number): java.io.OutputStream;
			public position(param0: java.sql.Clob, param1: number): number;
			public getAsciiStream(): java.io.InputStream;
		}
	}
}

declare module java {
	export module sql {
		export class ParameterMetaData extends java.lang.Object implements java.sql.Wrapper {
			public static class: java.lang.Class<java.sql.ParameterMetaData>;
			/**
			 * Constructs a new instance of the java.sql.ParameterMetaData interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				getParameterClassName(param0: number): string;
				getParameterCount(): number;
				getParameterMode(param0: number): number;
				getParameterType(param0: number): number;
				getParameterTypeName(param0: number): string;
				getPrecision(param0: number): number;
				getScale(param0: number): number;
				isNullable(param0: number): number;
				isSigned(param0: number): boolean;
				unwrap(param0: java.lang.Class<any>): any;
				isWrapperFor(param0: java.lang.Class<any>): boolean;
			});
			public constructor();
			public static parameterNullableUnknown: number;
			public static parameterModeIn: number;
			public static parameterNoNulls: number;
			public static parameterModeOut: number;
			public static parameterModeInOut: number;
			public static parameterNullable: number;
			public static parameterModeUnknown: number;
			public isWrapperFor(param0: java.lang.Class<any>): boolean;
			public getParameterMode(param0: number): number;
			public getParameterType(param0: number): number;
			public getParameterClassName(param0: number): string;
			public getPrecision(param0: number): number;
			public unwrap(param0: java.lang.Class<any>): any;
			public getParameterCount(): number;
			public getParameterTypeName(param0: number): string;
			public isSigned(param0: number): boolean;
			public getScale(param0: number): number;
			public isNullable(param0: number): number;
		}
	}
}

declare module java {
	export module sql {
		export class PreparedStatement extends java.lang.Object implements java.sql.Statement {
			public static class: java.lang.Class<java.sql.PreparedStatement>;
			/**
			 * Constructs a new instance of the java.sql.PreparedStatement interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				addBatch(): void;
				clearParameters(): void;
				execute(): boolean;
				executeQuery(): java.sql.ResultSet;
				executeUpdate(): number;
				getMetaData(): java.sql.ResultSetMetaData;
				getParameterMetaData(): java.sql.ParameterMetaData;
				setArray(param0: number, param1: java.sql.Array): void;
				setAsciiStream(param0: number, param1: java.io.InputStream, param2: number): void;
				setBigDecimal(param0: number, param1: java.math.BigDecimal): void;
				setBinaryStream(param0: number, param1: java.io.InputStream, param2: number): void;
				setBlob(param0: number, param1: java.sql.Blob): void;
				setBoolean(param0: number, param1: boolean): void;
				setByte(param0: number, param1: number): void;
				setBytes(param0: number, param1: native.Array<number>): void;
				setCharacterStream(param0: number, param1: java.io.Reader, param2: number): void;
				setClob(param0: number, param1: java.sql.Clob): void;
				setDate(param0: number, param1: java.sql.Date): void;
				setDate(param0: number, param1: java.sql.Date, param2: java.util.Calendar): void;
				setDouble(param0: number, param1: number): void;
				setFloat(param0: number, param1: number): void;
				setInt(param0: number, param1: number): void;
				setLong(param0: number, param1: number): void;
				setNull(param0: number, param1: number): void;
				setNull(param0: number, param1: number, param2: string): void;
				setObject(param0: number, param1: any): void;
				setObject(param0: number, param1: any, param2: number): void;
				setObject(param0: number, param1: any, param2: number, param3: number): void;
				setRef(param0: number, param1: java.sql.Ref): void;
				setShort(param0: number, param1: number): void;
				setString(param0: number, param1: string): void;
				setTime(param0: number, param1: java.sql.Time): void;
				setTime(param0: number, param1: java.sql.Time, param2: java.util.Calendar): void;
				setTimestamp(param0: number, param1: java.sql.Timestamp): void;
				setTimestamp(param0: number, param1: java.sql.Timestamp, param2: java.util.Calendar): void;
				setUnicodeStream(param0: number, param1: java.io.InputStream, param2: number): void;
				setURL(param0: number, param1: java.net.URL): void;
				setRowId(param0: number, param1: java.sql.RowId): void;
				setNString(param0: number, param1: string): void;
				setNCharacterStream(param0: number, param1: java.io.Reader, param2: number): void;
				setNClob(param0: number, param1: java.sql.NClob): void;
				setClob(param0: number, param1: java.io.Reader, param2: number): void;
				setBlob(param0: number, param1: java.io.InputStream, param2: number): void;
				setNClob(param0: number, param1: java.io.Reader, param2: number): void;
				setSQLXML(param0: number, param1: java.sql.SQLXML): void;
				setAsciiStream(param0: number, param1: java.io.InputStream, param2: number): void;
				setBinaryStream(param0: number, param1: java.io.InputStream, param2: number): void;
				setCharacterStream(param0: number, param1: java.io.Reader, param2: number): void;
				setAsciiStream(param0: number, param1: java.io.InputStream): void;
				setBinaryStream(param0: number, param1: java.io.InputStream): void;
				setCharacterStream(param0: number, param1: java.io.Reader): void;
				setNCharacterStream(param0: number, param1: java.io.Reader): void;
				setClob(param0: number, param1: java.io.Reader): void;
				setBlob(param0: number, param1: java.io.InputStream): void;
				setNClob(param0: number, param1: java.io.Reader): void;
				addBatch(param0: string): void;
				cancel(): void;
				clearBatch(): void;
				clearWarnings(): void;
				close(): void;
				execute(param0: string): boolean;
				execute(param0: string, param1: number): boolean;
				execute(param0: string, param1: native.Array<number>): boolean;
				execute(param0: string, param1: native.Array<string>): boolean;
				executeBatch(): native.Array<number>;
				executeQuery(param0: string): java.sql.ResultSet;
				executeUpdate(param0: string): number;
				executeUpdate(param0: string, param1: number): number;
				executeUpdate(param0: string, param1: native.Array<number>): number;
				executeUpdate(param0: string, param1: native.Array<string>): number;
				getConnection(): java.sql.Connection;
				getFetchDirection(): number;
				getFetchSize(): number;
				getGeneratedKeys(): java.sql.ResultSet;
				getMaxFieldSize(): number;
				getMaxRows(): number;
				getMoreResults(): boolean;
				getMoreResults(param0: number): boolean;
				getQueryTimeout(): number;
				getResultSet(): java.sql.ResultSet;
				getResultSetConcurrency(): number;
				getResultSetHoldability(): number;
				getResultSetType(): number;
				getUpdateCount(): number;
				getWarnings(): java.sql.SQLWarning;
				setCursorName(param0: string): void;
				setEscapeProcessing(param0: boolean): void;
				setFetchDirection(param0: number): void;
				setFetchSize(param0: number): void;
				setMaxFieldSize(param0: number): void;
				setMaxRows(param0: number): void;
				setQueryTimeout(param0: number): void;
				isClosed(): boolean;
				setPoolable(param0: boolean): void;
				isPoolable(): boolean;
				unwrap(param0: java.lang.Class<any>): any;
				isWrapperFor(param0: java.lang.Class<any>): boolean;
			});
			public constructor();
			public static CLOSE_CURRENT_RESULT: number;
			public static EXECUTE_FAILED: number;
			public static KEEP_CURRENT_RESULT: number;
			public static NO_GENERATED_KEYS: number;
			public static RETURN_GENERATED_KEYS: number;
			public static CLOSE_ALL_RESULTS: number;
			public static SUCCESS_NO_INFO: number;
			public setAsciiStream(param0: number, param1: java.io.InputStream): void;
			public cancel(): void;
			public setFloat(param0: number, param1: number): void;
			public setLong(param0: number, param1: number): void;
			public setNull(param0: number, param1: number, param2: string): void;
			public setObject(param0: number, param1: any, param2: number): void;
			public setMaxRows(param0: number): void;
			public setObject(param0: number, param1: any, param2: number, param3: number): void;
			public setBlob(param0: number, param1: java.io.InputStream): void;
			public setPoolable(param0: boolean): void;
			public setByte(param0: number, param1: number): void;
			public executeUpdate(param0: string, param1: native.Array<string>): number;
			public getWarnings(): java.sql.SQLWarning;
			public setSQLXML(param0: number, param1: java.sql.SQLXML): void;
			public addBatch(param0: string): void;
			public getMaxFieldSize(): number;
			public clearWarnings(): void;
			public setBoolean(param0: number, param1: boolean): void;
			public getFetchSize(): number;
			public getResultSetHoldability(): number;
			public setCharacterStream(param0: number, param1: java.io.Reader, param2: number): void;
			public setCursorName(param0: string): void;
			public getMoreResults(): boolean;
			public setClob(param0: number, param1: java.sql.Clob): void;
			public setNull(param0: number, param1: number): void;
			public setBinaryStream(param0: number, param1: java.io.InputStream): void;
			public setQueryTimeout(param0: number): void;
			public setNClob(param0: number, param1: java.sql.NClob): void;
			public setNClob(param0: number, param1: java.io.Reader): void;
			public getFetchDirection(): number;
			public setMaxFieldSize(param0: number): void;
			public getParameterMetaData(): java.sql.ParameterMetaData;
			public executeUpdate(): number;
			public setTimestamp(param0: number, param1: java.sql.Timestamp, param2: java.util.Calendar): void;
			public setInt(param0: number, param1: number): void;
			public setObject(param0: number, param1: any): void;
			public setRef(param0: number, param1: java.sql.Ref): void;
			public setFetchSize(param0: number): void;
			public executeQuery(): java.sql.ResultSet;
			public setNString(param0: number, param1: string): void;
			public setEscapeProcessing(param0: boolean): void;
			public executeUpdate(param0: string, param1: number): number;
			public getResultSet(): java.sql.ResultSet;
			public getMoreResults(param0: number): boolean;
			public addBatch(): void;
			public setString(param0: number, param1: string): void;
			public setNCharacterStream(param0: number, param1: java.io.Reader, param2: number): void;
			public setRowId(param0: number, param1: java.sql.RowId): void;
			public setDate(param0: number, param1: java.sql.Date): void;
			public isClosed(): boolean;
			public getMaxRows(): number;
			public isWrapperFor(param0: java.lang.Class<any>): boolean;
			public clearParameters(): void;
			public setShort(param0: number, param1: number): void;
			public unwrap(param0: java.lang.Class<any>): any;
			public executeUpdate(param0: string, param1: native.Array<number>): number;
			public getMetaData(): java.sql.ResultSetMetaData;
			public setBinaryStream(param0: number, param1: java.io.InputStream, param2: number): void;
			public setTime(param0: number, param1: java.sql.Time, param2: java.util.Calendar): void;
			public getUpdateCount(): number;
			public executeBatch(): native.Array<number>;
			public isPoolable(): boolean;
			public execute(param0: string, param1: number): boolean;
			public getConnection(): java.sql.Connection;
			public setNClob(param0: number, param1: java.io.Reader, param2: number): void;
			public close(): void;
			public execute(param0: string): boolean;
			public setURL(param0: number, param1: java.net.URL): void;
			public getResultSetType(): number;
			public setDate(param0: number, param1: java.sql.Date, param2: java.util.Calendar): void;
			public executeUpdate(param0: string): number;
			public setClob(param0: number, param1: java.io.Reader, param2: number): void;
			public getGeneratedKeys(): java.sql.ResultSet;
			public setBigDecimal(param0: number, param1: java.math.BigDecimal): void;
			public setBytes(param0: number, param1: native.Array<number>): void;
			public getResultSetConcurrency(): number;
			public setCharacterStream(param0: number, param1: java.io.Reader): void;
			public setTime(param0: number, param1: java.sql.Time): void;
			/** @deprecated */
			public setUnicodeStream(param0: number, param1: java.io.InputStream, param2: number): void;
			public setTimestamp(param0: number, param1: java.sql.Timestamp): void;
			public setArray(param0: number, param1: java.sql.Array): void;
			public clearBatch(): void;
			public setClob(param0: number, param1: java.io.Reader): void;
			public execute(): boolean;
			public setNCharacterStream(param0: number, param1: java.io.Reader): void;
			public executeQuery(param0: string): java.sql.ResultSet;
			public setFetchDirection(param0: number): void;
			public setBlob(param0: number, param1: java.io.InputStream, param2: number): void;
			public setDouble(param0: number, param1: number): void;
			public setBlob(param0: number, param1: java.sql.Blob): void;
			public execute(param0: string, param1: native.Array<number>): boolean;
			public getQueryTimeout(): number;
			public setAsciiStream(param0: number, param1: java.io.InputStream, param2: number): void;
			public execute(param0: string, param1: native.Array<string>): boolean;
		}
	}
}

declare module java {
	export module sql {
		export class Ref extends java.lang.Object {
			public static class: java.lang.Class<java.sql.Ref>;
			/**
			 * Constructs a new instance of the java.sql.Ref interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				getBaseTypeName(): string;
				getObject(): any;
				getObject(param0: java.util.Map<string,java.lang.Class<any>>): any;
				setObject(param0: any): void;
			});
			public constructor();
			public setObject(param0: any): void;
			public getObject(): any;
			public getObject(param0: java.util.Map<string,java.lang.Class<any>>): any;
			public getBaseTypeName(): string;
		}
	}
}

declare module java {
	export module sql {
		export class ResultSet extends java.lang.Object implements java.sql.Wrapper {
			public static class: java.lang.Class<java.sql.ResultSet>;
			/**
			 * Constructs a new instance of the java.sql.ResultSet interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				absolute(param0: number): boolean;
				afterLast(): void;
				beforeFirst(): void;
				cancelRowUpdates(): void;
				clearWarnings(): void;
				close(): void;
				deleteRow(): void;
				findColumn(param0: string): number;
				first(): boolean;
				getArray(param0: number): java.sql.Array;
				getArray(param0: string): java.sql.Array;
				getAsciiStream(param0: number): java.io.InputStream;
				getAsciiStream(param0: string): java.io.InputStream;
				getBigDecimal(param0: number): java.math.BigDecimal;
				getBigDecimal(param0: number, param1: number): java.math.BigDecimal;
				getBigDecimal(param0: string): java.math.BigDecimal;
				getBigDecimal(param0: string, param1: number): java.math.BigDecimal;
				getBinaryStream(param0: number): java.io.InputStream;
				getBinaryStream(param0: string): java.io.InputStream;
				getBlob(param0: number): java.sql.Blob;
				getBlob(param0: string): java.sql.Blob;
				getBoolean(param0: number): boolean;
				getBoolean(param0: string): boolean;
				getByte(param0: number): number;
				getByte(param0: string): number;
				getBytes(param0: number): native.Array<number>;
				getBytes(param0: string): native.Array<number>;
				getCharacterStream(param0: number): java.io.Reader;
				getCharacterStream(param0: string): java.io.Reader;
				getClob(param0: number): java.sql.Clob;
				getClob(param0: string): java.sql.Clob;
				getConcurrency(): number;
				getCursorName(): string;
				getDate(param0: number): java.sql.Date;
				getDate(param0: number, param1: java.util.Calendar): java.sql.Date;
				getDate(param0: string): java.sql.Date;
				getDate(param0: string, param1: java.util.Calendar): java.sql.Date;
				getDouble(param0: number): number;
				getDouble(param0: string): number;
				getFetchDirection(): number;
				getFetchSize(): number;
				getFloat(param0: number): number;
				getFloat(param0: string): number;
				getInt(param0: number): number;
				getInt(param0: string): number;
				getLong(param0: number): number;
				getLong(param0: string): number;
				getMetaData(): java.sql.ResultSetMetaData;
				getObject(param0: number): any;
				getObject(param0: number, param1: java.util.Map<string,java.lang.Class<any>>): any;
				getObject(param0: string): any;
				getObject(param0: string, param1: java.util.Map<string,java.lang.Class<any>>): any;
				getRef(param0: number): java.sql.Ref;
				getRef(param0: string): java.sql.Ref;
				getRow(): number;
				getShort(param0: number): number;
				getShort(param0: string): number;
				getStatement(): java.sql.Statement;
				getString(param0: number): string;
				getString(param0: string): string;
				getTime(param0: number): java.sql.Time;
				getTime(param0: number, param1: java.util.Calendar): java.sql.Time;
				getTime(param0: string): java.sql.Time;
				getTime(param0: string, param1: java.util.Calendar): java.sql.Time;
				getTimestamp(param0: number): java.sql.Timestamp;
				getTimestamp(param0: number, param1: java.util.Calendar): java.sql.Timestamp;
				getTimestamp(param0: string): java.sql.Timestamp;
				getTimestamp(param0: string, param1: java.util.Calendar): java.sql.Timestamp;
				getType(): number;
				getUnicodeStream(param0: number): java.io.InputStream;
				getUnicodeStream(param0: string): java.io.InputStream;
				getURL(param0: number): java.net.URL;
				getURL(param0: string): java.net.URL;
				getWarnings(): java.sql.SQLWarning;
				insertRow(): void;
				isAfterLast(): boolean;
				isBeforeFirst(): boolean;
				isFirst(): boolean;
				isLast(): boolean;
				last(): boolean;
				moveToCurrentRow(): void;
				moveToInsertRow(): void;
				next(): boolean;
				previous(): boolean;
				refreshRow(): void;
				relative(param0: number): boolean;
				rowDeleted(): boolean;
				rowInserted(): boolean;
				rowUpdated(): boolean;
				setFetchDirection(param0: number): void;
				setFetchSize(param0: number): void;
				updateArray(param0: number, param1: java.sql.Array): void;
				updateArray(param0: string, param1: java.sql.Array): void;
				updateAsciiStream(param0: number, param1: java.io.InputStream, param2: number): void;
				updateAsciiStream(param0: string, param1: java.io.InputStream, param2: number): void;
				updateBigDecimal(param0: number, param1: java.math.BigDecimal): void;
				updateBigDecimal(param0: string, param1: java.math.BigDecimal): void;
				updateBinaryStream(param0: number, param1: java.io.InputStream, param2: number): void;
				updateBinaryStream(param0: string, param1: java.io.InputStream, param2: number): void;
				updateBlob(param0: number, param1: java.sql.Blob): void;
				updateBlob(param0: string, param1: java.sql.Blob): void;
				updateBoolean(param0: number, param1: boolean): void;
				updateBoolean(param0: string, param1: boolean): void;
				updateByte(param0: number, param1: number): void;
				updateByte(param0: string, param1: number): void;
				updateBytes(param0: number, param1: native.Array<number>): void;
				updateBytes(param0: string, param1: native.Array<number>): void;
				updateCharacterStream(param0: number, param1: java.io.Reader, param2: number): void;
				updateCharacterStream(param0: string, param1: java.io.Reader, param2: number): void;
				updateClob(param0: number, param1: java.sql.Clob): void;
				updateClob(param0: string, param1: java.sql.Clob): void;
				updateDate(param0: number, param1: java.sql.Date): void;
				updateDate(param0: string, param1: java.sql.Date): void;
				updateDouble(param0: number, param1: number): void;
				updateDouble(param0: string, param1: number): void;
				updateFloat(param0: number, param1: number): void;
				updateFloat(param0: string, param1: number): void;
				updateInt(param0: number, param1: number): void;
				updateInt(param0: string, param1: number): void;
				updateLong(param0: number, param1: number): void;
				updateLong(param0: string, param1: number): void;
				updateNull(param0: number): void;
				updateNull(param0: string): void;
				updateObject(param0: number, param1: any): void;
				updateObject(param0: number, param1: any, param2: number): void;
				updateObject(param0: string, param1: any): void;
				updateObject(param0: string, param1: any, param2: number): void;
				updateRef(param0: number, param1: java.sql.Ref): void;
				updateRef(param0: string, param1: java.sql.Ref): void;
				updateRow(): void;
				updateShort(param0: number, param1: number): void;
				updateShort(param0: string, param1: number): void;
				updateString(param0: number, param1: string): void;
				updateString(param0: string, param1: string): void;
				updateTime(param0: number, param1: java.sql.Time): void;
				updateTime(param0: string, param1: java.sql.Time): void;
				updateTimestamp(param0: number, param1: java.sql.Timestamp): void;
				updateTimestamp(param0: string, param1: java.sql.Timestamp): void;
				wasNull(): boolean;
				getRowId(param0: number): java.sql.RowId;
				getRowId(param0: string): java.sql.RowId;
				updateRowId(param0: number, param1: java.sql.RowId): void;
				updateRowId(param0: string, param1: java.sql.RowId): void;
				getHoldability(): number;
				isClosed(): boolean;
				updateNString(param0: number, param1: string): void;
				updateNString(param0: string, param1: string): void;
				updateNClob(param0: number, param1: java.sql.NClob): void;
				updateNClob(param0: string, param1: java.sql.NClob): void;
				getNClob(param0: number): java.sql.NClob;
				getNClob(param0: string): java.sql.NClob;
				getSQLXML(param0: number): java.sql.SQLXML;
				getSQLXML(param0: string): java.sql.SQLXML;
				updateSQLXML(param0: number, param1: java.sql.SQLXML): void;
				updateSQLXML(param0: string, param1: java.sql.SQLXML): void;
				getNString(param0: number): string;
				getNString(param0: string): string;
				getNCharacterStream(param0: number): java.io.Reader;
				getNCharacterStream(param0: string): java.io.Reader;
				updateNCharacterStream(param0: number, param1: java.io.Reader, param2: number): void;
				updateNCharacterStream(param0: string, param1: java.io.Reader, param2: number): void;
				updateAsciiStream(param0: number, param1: java.io.InputStream, param2: number): void;
				updateBinaryStream(param0: number, param1: java.io.InputStream, param2: number): void;
				updateCharacterStream(param0: number, param1: java.io.Reader, param2: number): void;
				updateAsciiStream(param0: string, param1: java.io.InputStream, param2: number): void;
				updateBinaryStream(param0: string, param1: java.io.InputStream, param2: number): void;
				updateCharacterStream(param0: string, param1: java.io.Reader, param2: number): void;
				updateBlob(param0: number, param1: java.io.InputStream, param2: number): void;
				updateBlob(param0: string, param1: java.io.InputStream, param2: number): void;
				updateClob(param0: number, param1: java.io.Reader, param2: number): void;
				updateClob(param0: string, param1: java.io.Reader, param2: number): void;
				updateNClob(param0: number, param1: java.io.Reader, param2: number): void;
				updateNClob(param0: string, param1: java.io.Reader, param2: number): void;
				updateNCharacterStream(param0: number, param1: java.io.Reader): void;
				updateNCharacterStream(param0: string, param1: java.io.Reader): void;
				updateAsciiStream(param0: number, param1: java.io.InputStream): void;
				updateBinaryStream(param0: number, param1: java.io.InputStream): void;
				updateCharacterStream(param0: number, param1: java.io.Reader): void;
				updateAsciiStream(param0: string, param1: java.io.InputStream): void;
				updateBinaryStream(param0: string, param1: java.io.InputStream): void;
				updateCharacterStream(param0: string, param1: java.io.Reader): void;
				updateBlob(param0: number, param1: java.io.InputStream): void;
				updateBlob(param0: string, param1: java.io.InputStream): void;
				updateClob(param0: number, param1: java.io.Reader): void;
				updateClob(param0: string, param1: java.io.Reader): void;
				updateNClob(param0: number, param1: java.io.Reader): void;
				updateNClob(param0: string, param1: java.io.Reader): void;
				unwrap(param0: java.lang.Class<any>): any;
				isWrapperFor(param0: java.lang.Class<any>): boolean;
			});
			public constructor();
			public static HOLD_CURSORS_OVER_COMMIT: number;
			public static CLOSE_CURSORS_AT_COMMIT: number;
			public static FETCH_UNKNOWN: number;
			public static FETCH_REVERSE: number;
			public static CONCUR_READ_ONLY: number;
			public static TYPE_SCROLL_SENSITIVE: number;
			public static CONCUR_UPDATABLE: number;
			public static TYPE_FORWARD_ONLY: number;
			public static TYPE_SCROLL_INSENSITIVE: number;
			public static FETCH_FORWARD: number;
			public getAsciiStream(param0: number): java.io.InputStream;
			public updateBinaryStream(param0: string, param1: java.io.InputStream): void;
			public updateObject(param0: number, param1: any): void;
			public getClob(param0: string): java.sql.Clob;
			public updateDouble(param0: number, param1: number): void;
			public previous(): boolean;
			public updateBinaryStream(param0: string, param1: java.io.InputStream, param2: number): void;
			public cancelRowUpdates(): void;
			public getConcurrency(): number;
			public afterLast(): void;
			public wasNull(): boolean;
			public updateSQLXML(param0: string, param1: java.sql.SQLXML): void;
			public updateRef(param0: string, param1: java.sql.Ref): void;
			public clearWarnings(): void;
			public updateNClob(param0: number, param1: java.io.Reader, param2: number): void;
			public updateArray(param0: number, param1: java.sql.Array): void;
			public updateCharacterStream(param0: number, param1: java.io.Reader, param2: number): void;
			public getNClob(param0: string): java.sql.NClob;
			public updateArray(param0: string, param1: java.sql.Array): void;
			public getByte(param0: number): number;
			public getNString(param0: string): string;
			public refreshRow(): void;
			public updateBinaryStream(param0: number, param1: java.io.InputStream): void;
			public updateTime(param0: number, param1: java.sql.Time): void;
			public updateCharacterStream(param0: string, param1: java.io.Reader): void;
			public getFloat(param0: string): number;
			public setFetchSize(param0: number): void;
			public getCursorName(): string;
			public getObject(param0: string): any;
			public absolute(param0: number): boolean;
			public getDouble(param0: string): number;
			public last(): boolean;
			public relative(param0: number): boolean;
			/** @deprecated */
			public getBigDecimal(param0: number, param1: number): java.math.BigDecimal;
			public updateNString(param0: string, param1: string): void;
			public getInt(param0: number): number;
			public getRef(param0: number): java.sql.Ref;
			public getType(): number;
			public isClosed(): boolean;
			public getObject(param0: number, param1: java.util.Map<string,java.lang.Class<any>>): any;
			public updateBlob(param0: number, param1: java.sql.Blob): void;
			public updateAsciiStream(param0: number, param1: java.io.InputStream, param2: number): void;
			public updateBytes(param0: string, param1: native.Array<number>): void;
			/** @deprecated */
			public getBigDecimal(param0: string, param1: number): java.math.BigDecimal;
			public updateNClob(param0: string, param1: java.io.Reader, param2: number): void;
			public getMetaData(): java.sql.ResultSetMetaData;
			public updateNull(param0: number): void;
			public updateCharacterStream(param0: string, param1: java.io.Reader, param2: number): void;
			public updateCharacterStream(param0: number, param1: java.io.Reader): void;
			public updateBlob(param0: string, param1: java.sql.Blob): void;
			public updateAsciiStream(param0: number, param1: java.io.InputStream): void;
			public updateAsciiStream(param0: string, param1: java.io.InputStream, param2: number): void;
			public updateString(param0: number, param1: string): void;
			public getTimestamp(param0: number, param1: java.util.Calendar): java.sql.Timestamp;
			/** @deprecated */
			public getUnicodeStream(param0: string): java.io.InputStream;
			public isLast(): boolean;
			public updateString(param0: string, param1: string): void;
			public getSQLXML(param0: number): java.sql.SQLXML;
			public updateNull(param0: string): void;
			public close(): void;
			public getCharacterStream(param0: number): java.io.Reader;
			public updateBigDecimal(param0: string, param1: java.math.BigDecimal): void;
			public updateClob(param0: number, param1: java.sql.Clob): void;
			public getObject(param0: string, param1: java.util.Map<string,java.lang.Class<any>>): any;
			public getDate(param0: string): java.sql.Date;
			public isFirst(): boolean;
			public updateObject(param0: number, param1: any, param2: number): void;
			public updateNClob(param0: number, param1: java.sql.NClob): void;
			public findColumn(param0: string): number;
			public getString(param0: string): string;
			public updateDate(param0: string, param1: java.sql.Date): void;
			public updateNString(param0: number, param1: string): void;
			public getAsciiStream(param0: string): java.io.InputStream;
			public rowUpdated(): boolean;
			public getObject(param0: number): any;
			public getURL(param0: number): java.net.URL;
			public getRow(): number;
			public updateSQLXML(param0: number, param1: java.sql.SQLXML): void;
			public rowInserted(): boolean;
			public next(): boolean;
			public getShort(param0: string): number;
			/** @deprecated */
			public getUnicodeStream(param0: number): java.io.InputStream;
			public getRowId(param0: string): java.sql.RowId;
			public getArray(param0: number): java.sql.Array;
			public updateInt(param0: string, param1: number): void;
			public getDate(param0: number, param1: java.util.Calendar): java.sql.Date;
			public getDate(param0: number): java.sql.Date;
			public rowDeleted(): boolean;
			public insertRow(): void;
			public updateBlob(param0: string, param1: java.io.InputStream, param2: number): void;
			public getTimestamp(param0: string, param1: java.util.Calendar): java.sql.Timestamp;
			public updateInt(param0: number, param1: number): void;
			public updateObject(param0: string, param1: any): void;
			public updateLong(param0: number, param1: number): void;
			public getBoolean(param0: string): boolean;
			public getFloat(param0: number): number;
			public updateDate(param0: number, param1: java.sql.Date): void;
			public updateClob(param0: string, param1: java.sql.Clob): void;
			public updateTime(param0: string, param1: java.sql.Time): void;
			public getBigDecimal(param0: number): java.math.BigDecimal;
			public isAfterLast(): boolean;
			public updateBinaryStream(param0: number, param1: java.io.InputStream, param2: number): void;
			public getWarnings(): java.sql.SQLWarning;
			public beforeFirst(): void;
			public getStatement(): java.sql.Statement;
			public getBlob(param0: string): java.sql.Blob;
			public updateShort(param0: string, param1: number): void;
			public updateByte(param0: number, param1: number): void;
			public updateNClob(param0: string, param1: java.sql.NClob): void;
			public getCharacterStream(param0: string): java.io.Reader;
			public getSQLXML(param0: string): java.sql.SQLXML;
			public getTime(param0: number, param1: java.util.Calendar): java.sql.Time;
			public updateByte(param0: string, param1: number): void;
			public updateNCharacterStream(param0: number, param1: java.io.Reader, param2: number): void;
			public getShort(param0: number): number;
			public updateBlob(param0: number, param1: java.io.InputStream): void;
			public getFetchSize(): number;
			public getLong(param0: string): number;
			public getTime(param0: number): java.sql.Time;
			public getClob(param0: number): java.sql.Clob;
			public getInt(param0: string): number;
			public getArray(param0: string): java.sql.Array;
			public getDouble(param0: number): number;
			public getBytes(param0: string): native.Array<number>;
			public getString(param0: number): string;
			public getFetchDirection(): number;
			public getByte(param0: string): number;
			public updateAsciiStream(param0: string, param1: java.io.InputStream): void;
			public getBinaryStream(param0: number): java.io.InputStream;
			public getTime(param0: string, param1: java.util.Calendar): java.sql.Time;
			public getRowId(param0: number): java.sql.RowId;
			public updateClob(param0: string, param1: java.io.Reader, param2: number): void;
			public updateBoolean(param0: number, param1: boolean): void;
			public updateShort(param0: number, param1: number): void;
			public updateTimestamp(param0: number, param1: java.sql.Timestamp): void;
			public updateTimestamp(param0: string, param1: java.sql.Timestamp): void;
			public updateFloat(param0: number, param1: number): void;
			public getNCharacterStream(param0: string): java.io.Reader;
			public updateRef(param0: number, param1: java.sql.Ref): void;
			public getBoolean(param0: number): boolean;
			public updateNCharacterStream(param0: string, param1: java.io.Reader): void;
			public updateRowId(param0: string, param1: java.sql.RowId): void;
			public first(): boolean;
			public getBytes(param0: number): native.Array<number>;
			public getTimestamp(param0: string): java.sql.Timestamp;
			public getTime(param0: string): java.sql.Time;
			public isWrapperFor(param0: java.lang.Class<any>): boolean;
			public updateBoolean(param0: string, param1: boolean): void;
			public updateBytes(param0: number, param1: native.Array<number>): void;
			public unwrap(param0: java.lang.Class<any>): any;
			public updateFloat(param0: string, param1: number): void;
			public updateNCharacterStream(param0: string, param1: java.io.Reader, param2: number): void;
			public getBlob(param0: number): java.sql.Blob;
			public isBeforeFirst(): boolean;
			public updateBigDecimal(param0: number, param1: java.math.BigDecimal): void;
			public updateNClob(param0: string, param1: java.io.Reader): void;
			public updateRow(): void;
			public getDate(param0: string, param1: java.util.Calendar): java.sql.Date;
			public updateBlob(param0: string, param1: java.io.InputStream): void;
			public getNClob(param0: number): java.sql.NClob;
			public updateClob(param0: string, param1: java.io.Reader): void;
			public getURL(param0: string): java.net.URL;
			public getHoldability(): number;
			public updateClob(param0: number, param1: java.io.Reader): void;
			public moveToInsertRow(): void;
			public updateClob(param0: number, param1: java.io.Reader, param2: number): void;
			public getTimestamp(param0: number): java.sql.Timestamp;
			public updateDouble(param0: string, param1: number): void;
			public getBinaryStream(param0: string): java.io.InputStream;
			public updateNClob(param0: number, param1: java.io.Reader): void;
			public getRef(param0: string): java.sql.Ref;
			public moveToCurrentRow(): void;
			public getNString(param0: number): string;
			public deleteRow(): void;
			public getNCharacterStream(param0: number): java.io.Reader;
			public setFetchDirection(param0: number): void;
			public updateBlob(param0: number, param1: java.io.InputStream, param2: number): void;
			public getBigDecimal(param0: string): java.math.BigDecimal;
			public getLong(param0: number): number;
			public updateRowId(param0: number, param1: java.sql.RowId): void;
			public updateNCharacterStream(param0: number, param1: java.io.Reader): void;
			public updateObject(param0: string, param1: any, param2: number): void;
			public updateLong(param0: string, param1: number): void;
		}
	}
}

declare module java {
	export module sql {
		export class ResultSetMetaData extends java.lang.Object implements java.sql.Wrapper {
			public static class: java.lang.Class<java.sql.ResultSetMetaData>;
			/**
			 * Constructs a new instance of the java.sql.ResultSetMetaData interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				getCatalogName(param0: number): string;
				getColumnClassName(param0: number): string;
				getColumnCount(): number;
				getColumnDisplaySize(param0: number): number;
				getColumnLabel(param0: number): string;
				getColumnName(param0: number): string;
				getColumnType(param0: number): number;
				getColumnTypeName(param0: number): string;
				getPrecision(param0: number): number;
				getScale(param0: number): number;
				getSchemaName(param0: number): string;
				getTableName(param0: number): string;
				isAutoIncrement(param0: number): boolean;
				isCaseSensitive(param0: number): boolean;
				isCurrency(param0: number): boolean;
				isDefinitelyWritable(param0: number): boolean;
				isNullable(param0: number): number;
				isReadOnly(param0: number): boolean;
				isSearchable(param0: number): boolean;
				isSigned(param0: number): boolean;
				isWritable(param0: number): boolean;
				unwrap(param0: java.lang.Class<any>): any;
				isWrapperFor(param0: java.lang.Class<any>): boolean;
			});
			public constructor();
			public static columnNullableUnknown: number;
			public static columnNullable: number;
			public static columnNoNulls: number;
			public getColumnCount(): number;
			public getColumnName(param0: number): string;
			public getColumnType(param0: number): number;
			public isCurrency(param0: number): boolean;
			public getTableName(param0: number): string;
			public isReadOnly(param0: number): boolean;
			public isWrapperFor(param0: java.lang.Class<any>): boolean;
			public getColumnDisplaySize(param0: number): number;
			public getColumnTypeName(param0: number): string;
			public getPrecision(param0: number): number;
			public unwrap(param0: java.lang.Class<any>): any;
			public isSigned(param0: number): boolean;
			public getColumnLabel(param0: number): string;
			public getScale(param0: number): number;
			public isAutoIncrement(param0: number): boolean;
			public isDefinitelyWritable(param0: number): boolean;
			public isCaseSensitive(param0: number): boolean;
			public getSchemaName(param0: number): string;
			public getCatalogName(param0: number): string;
			public isSearchable(param0: number): boolean;
			public isWritable(param0: number): boolean;
			public getColumnClassName(param0: number): string;
			public isNullable(param0: number): number;
		}
	}
}

declare module java {
	export module sql {
		export class RowId extends java.lang.Object {
			public static class: java.lang.Class<java.sql.RowId>;
			/**
			 * Constructs a new instance of the java.sql.RowId interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				equals(param0: any): boolean;
				getBytes(): native.Array<number>;
				toString(): string;
				hashCode(): number;
			});
			public constructor();
			public equals(param0: any): boolean;
			public toString(): string;
			public getBytes(): native.Array<number>;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module sql {
		export class RowIdLifetime {
			public static class: java.lang.Class<java.sql.RowIdLifetime>;
			public static ROWID_UNSUPPORTED: java.sql.RowIdLifetime;
			public static ROWID_VALID_FOREVER: java.sql.RowIdLifetime;
			public static ROWID_VALID_OTHER: java.sql.RowIdLifetime;
			public static ROWID_VALID_SESSION: java.sql.RowIdLifetime;
			public static ROWID_VALID_TRANSACTION: java.sql.RowIdLifetime;
			public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			public static valueOf(param0: string): java.sql.RowIdLifetime;
			public static values(): native.Array<java.sql.RowIdLifetime>;
		}
	}
}

declare module java {
	export module sql {
		export class SQLClientInfoException extends java.sql.SQLException {
			public static class: java.lang.Class<java.sql.SQLClientInfoException>;
			public constructor(param0: string, param1: string, param2: number, param3: java.util.Map<string,java.sql.ClientInfoStatus>, param4: java.lang.Throwable);
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: java.util.Map<string,java.sql.ClientInfoStatus>, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string, param1: string, param2: java.lang.Throwable);
			public constructor(param0: string, param1: java.util.Map<string,java.sql.ClientInfoStatus>);
			public getFailedProperties(): java.util.Map<string,java.sql.ClientInfoStatus>;
			public constructor(param0: string, param1: string);
			public constructor(param0: string, param1: java.util.Map<string,java.sql.ClientInfoStatus>, param2: java.lang.Throwable);
			public constructor(param0: string, param1: string, param2: number, param3: java.lang.Throwable);
			public constructor(param0: string, param1: string, param2: number, param3: java.util.Map<string,java.sql.ClientInfoStatus>);
			public constructor(param0: java.util.Map<string,java.sql.ClientInfoStatus>);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor(param0: string, param1: string, param2: java.util.Map<string,java.sql.ClientInfoStatus>, param3: java.lang.Throwable);
			public constructor(param0: string, param1: string, param2: java.util.Map<string,java.sql.ClientInfoStatus>);
			public constructor(param0: string);
			public constructor(param0: string, param1: string, param2: number);
			public iterator(): java.util.Iterator<java.lang.Throwable>;
			public iterator(): java.util.Iterator<any>;
		}
	}
}

declare module java {
	export module sql {
		export class SQLData extends java.lang.Object {
			public static class: java.lang.Class<java.sql.SQLData>;
			/**
			 * Constructs a new instance of the java.sql.SQLData interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				getSQLTypeName(): string;
				readSQL(param0: java.sql.SQLInput, param1: string): void;
				writeSQL(param0: java.sql.SQLOutput): void;
			});
			public constructor();
			public getSQLTypeName(): string;
			public writeSQL(param0: java.sql.SQLOutput): void;
			public readSQL(param0: java.sql.SQLInput, param1: string): void;
		}
	}
}

declare module java {
	export module sql {
		export class SQLDataException extends java.sql.SQLNonTransientException {
			public static class: java.lang.Class<java.sql.SQLDataException>;
			public constructor(param0: string, param1: string);
			public constructor(param0: string, param1: string, param2: number, param3: java.lang.Throwable);
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
			public constructor(param0: string, param1: string, param2: number);
			public iterator(): java.util.Iterator<java.lang.Throwable>;
			public constructor(param0: string, param1: string, param2: java.lang.Throwable);
			public iterator(): java.util.Iterator<any>;
		}
	}
}

declare module java {
	export module sql {
		export class SQLException extends java.lang.Exception {
			public static class: java.lang.Class<java.sql.SQLException>;
			public getErrorCode(): number;
			public getNextException(): java.sql.SQLException;
			public setNextException(param0: java.sql.SQLException): void;
			public constructor(param0: java.lang.Throwable);
			public constructor();
			public constructor(param0: string, param1: string, param2: java.lang.Throwable);
			public constructor(param0: string, param1: string);
			public constructor(param0: string, param1: string, param2: number, param3: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor(param0: string);
			public constructor(param0: string, param1: string, param2: number);
			public getSQLState(): string;
			public iterator(): java.util.Iterator<java.lang.Throwable>;
			public iterator(): java.util.Iterator<any>;
		}
	}
}

declare module java {
	export module sql {
		export class SQLFeatureNotSupportedException extends java.sql.SQLNonTransientException {
			public static class: java.lang.Class<java.sql.SQLFeatureNotSupportedException>;
			public constructor(param0: string, param1: string);
			public constructor(param0: string, param1: string, param2: number, param3: java.lang.Throwable);
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
			public constructor(param0: string, param1: string, param2: number);
			public iterator(): java.util.Iterator<java.lang.Throwable>;
			public constructor(param0: string, param1: string, param2: java.lang.Throwable);
			public iterator(): java.util.Iterator<any>;
		}
	}
}

declare module java {
	export module sql {
		export class SQLInput extends java.lang.Object {
			public static class: java.lang.Class<java.sql.SQLInput>;
			/**
			 * Constructs a new instance of the java.sql.SQLInput interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				readString(): string;
				readBoolean(): boolean;
				readByte(): number;
				readShort(): number;
				readInt(): number;
				readLong(): number;
				readFloat(): number;
				readDouble(): number;
				readBigDecimal(): java.math.BigDecimal;
				readBytes(): native.Array<number>;
				readDate(): java.sql.Date;
				readTime(): java.sql.Time;
				readTimestamp(): java.sql.Timestamp;
				readCharacterStream(): java.io.Reader;
				readAsciiStream(): java.io.InputStream;
				readBinaryStream(): java.io.InputStream;
				readObject(): any;
				readRef(): java.sql.Ref;
				readBlob(): java.sql.Blob;
				readClob(): java.sql.Clob;
				readArray(): java.sql.Array;
				wasNull(): boolean;
				readURL(): java.net.URL;
				readNClob(): java.sql.NClob;
				readNString(): string;
				readSQLXML(): java.sql.SQLXML;
				readRowId(): java.sql.RowId;
			});
			public constructor();
			public readSQLXML(): java.sql.SQLXML;
			public readBinaryStream(): java.io.InputStream;
			public readString(): string;
			public readByte(): number;
			public readShort(): number;
			public readRef(): java.sql.Ref;
			public readURL(): java.net.URL;
			public readDate(): java.sql.Date;
			public readNString(): string;
			public readRowId(): java.sql.RowId;
			public wasNull(): boolean;
			public readDouble(): number;
			public readBigDecimal(): java.math.BigDecimal;
			public readObject(): any;
			public readTime(): java.sql.Time;
			public readNClob(): java.sql.NClob;
			public readInt(): number;
			public readFloat(): number;
			public readCharacterStream(): java.io.Reader;
			public readBytes(): native.Array<number>;
			public readLong(): number;
			public readAsciiStream(): java.io.InputStream;
			public readBlob(): java.sql.Blob;
			public readBoolean(): boolean;
			public readTimestamp(): java.sql.Timestamp;
			public readClob(): java.sql.Clob;
			public readArray(): java.sql.Array;
		}
	}
}

declare module java {
	export module sql {
		export class SQLIntegrityConstraintViolationException extends java.sql.SQLNonTransientException {
			public static class: java.lang.Class<java.sql.SQLIntegrityConstraintViolationException>;
			public constructor(param0: string, param1: string);
			public constructor(param0: string, param1: string, param2: number, param3: java.lang.Throwable);
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
			public constructor(param0: string, param1: string, param2: number);
			public iterator(): java.util.Iterator<java.lang.Throwable>;
			public constructor(param0: string, param1: string, param2: java.lang.Throwable);
			public iterator(): java.util.Iterator<any>;
		}
	}
}

declare module java {
	export module sql {
		export class SQLInvalidAuthorizationSpecException extends java.sql.SQLNonTransientException {
			public static class: java.lang.Class<java.sql.SQLInvalidAuthorizationSpecException>;
			public constructor(param0: string, param1: string);
			public constructor(param0: string, param1: string, param2: number, param3: java.lang.Throwable);
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
			public constructor(param0: string, param1: string, param2: number);
			public iterator(): java.util.Iterator<java.lang.Throwable>;
			public constructor(param0: string, param1: string, param2: java.lang.Throwable);
			public iterator(): java.util.Iterator<any>;
		}
	}
}

declare module java {
	export module sql {
		export class SQLNonTransientConnectionException extends java.sql.SQLNonTransientException {
			public static class: java.lang.Class<java.sql.SQLNonTransientConnectionException>;
			public constructor(param0: string, param1: string);
			public constructor(param0: string, param1: string, param2: number, param3: java.lang.Throwable);
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
			public constructor(param0: string, param1: string, param2: number);
			public iterator(): java.util.Iterator<java.lang.Throwable>;
			public constructor(param0: string, param1: string, param2: java.lang.Throwable);
			public iterator(): java.util.Iterator<any>;
		}
	}
}

declare module java {
	export module sql {
		export class SQLNonTransientException extends java.sql.SQLException {
			public static class: java.lang.Class<java.sql.SQLNonTransientException>;
			public constructor(param0: string, param1: string);
			public constructor(param0: string, param1: string, param2: number, param3: java.lang.Throwable);
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
			public constructor(param0: string, param1: string, param2: number);
			public iterator(): java.util.Iterator<java.lang.Throwable>;
			public constructor(param0: string, param1: string, param2: java.lang.Throwable);
			public iterator(): java.util.Iterator<any>;
		}
	}
}

declare module java {
	export module sql {
		export class SQLOutput extends java.lang.Object {
			public static class: java.lang.Class<java.sql.SQLOutput>;
			/**
			 * Constructs a new instance of the java.sql.SQLOutput interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				writeString(param0: string): void;
				writeBoolean(param0: boolean): void;
				writeByte(param0: number): void;
				writeShort(param0: number): void;
				writeInt(param0: number): void;
				writeLong(param0: number): void;
				writeFloat(param0: number): void;
				writeDouble(param0: number): void;
				writeBigDecimal(param0: java.math.BigDecimal): void;
				writeBytes(param0: native.Array<number>): void;
				writeDate(param0: java.sql.Date): void;
				writeTime(param0: java.sql.Time): void;
				writeTimestamp(param0: java.sql.Timestamp): void;
				writeCharacterStream(param0: java.io.Reader): void;
				writeAsciiStream(param0: java.io.InputStream): void;
				writeBinaryStream(param0: java.io.InputStream): void;
				writeObject(param0: java.sql.SQLData): void;
				writeRef(param0: java.sql.Ref): void;
				writeBlob(param0: java.sql.Blob): void;
				writeClob(param0: java.sql.Clob): void;
				writeStruct(param0: java.sql.Struct): void;
				writeArray(param0: java.sql.Array): void;
				writeURL(param0: java.net.URL): void;
				writeNString(param0: string): void;
				writeNClob(param0: java.sql.NClob): void;
				writeRowId(param0: java.sql.RowId): void;
				writeSQLXML(param0: java.sql.SQLXML): void;
			});
			public constructor();
			public writeNString(param0: string): void;
			public writeTime(param0: java.sql.Time): void;
			public writeFloat(param0: number): void;
			public writeURL(param0: java.net.URL): void;
			public writeString(param0: string): void;
			public writeCharacterStream(param0: java.io.Reader): void;
			public writeDate(param0: java.sql.Date): void;
			public writeStruct(param0: java.sql.Struct): void;
			public writeRowId(param0: java.sql.RowId): void;
			public writeSQLXML(param0: java.sql.SQLXML): void;
			public writeInt(param0: number): void;
			public writeLong(param0: number): void;
			public writeBigDecimal(param0: java.math.BigDecimal): void;
			public writeObject(param0: java.sql.SQLData): void;
			public writeByte(param0: number): void;
			public writeDouble(param0: number): void;
			public writeBytes(param0: native.Array<number>): void;
			public writeTimestamp(param0: java.sql.Timestamp): void;
			public writeClob(param0: java.sql.Clob): void;
			public writeArray(param0: java.sql.Array): void;
			public writeBoolean(param0: boolean): void;
			public writeAsciiStream(param0: java.io.InputStream): void;
			public writeRef(param0: java.sql.Ref): void;
			public writeShort(param0: number): void;
			public writeBlob(param0: java.sql.Blob): void;
			public writeNClob(param0: java.sql.NClob): void;
			public writeBinaryStream(param0: java.io.InputStream): void;
		}
	}
}

declare module java {
	export module sql {
		export class SQLPermission extends java.security.BasicPermission implements java.security.Guard, java.io.Serializable {
			public static class: java.lang.Class<java.sql.SQLPermission>;
			public constructor(param0: string, param1: string);
			public implies(param0: java.security.Permission): boolean;
			public getActions(): string;
			public checkGuard(param0: any): void;
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module sql {
		export class SQLRecoverableException extends java.sql.SQLException {
			public static class: java.lang.Class<java.sql.SQLRecoverableException>;
			public constructor(param0: string, param1: string);
			public constructor(param0: string, param1: string, param2: number, param3: java.lang.Throwable);
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
			public constructor(param0: string, param1: string, param2: number);
			public iterator(): java.util.Iterator<java.lang.Throwable>;
			public constructor(param0: string, param1: string, param2: java.lang.Throwable);
			public iterator(): java.util.Iterator<any>;
		}
	}
}

declare module java {
	export module sql {
		export class SQLSyntaxErrorException extends java.sql.SQLNonTransientException {
			public static class: java.lang.Class<java.sql.SQLSyntaxErrorException>;
			public constructor(param0: string, param1: string);
			public constructor(param0: string, param1: string, param2: number, param3: java.lang.Throwable);
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
			public constructor(param0: string, param1: string, param2: number);
			public iterator(): java.util.Iterator<java.lang.Throwable>;
			public constructor(param0: string, param1: string, param2: java.lang.Throwable);
			public iterator(): java.util.Iterator<any>;
		}
	}
}

declare module java {
	export module sql {
		export class SQLTimeoutException extends java.sql.SQLTransientException {
			public static class: java.lang.Class<java.sql.SQLTimeoutException>;
			public constructor(param0: string, param1: string);
			public constructor(param0: string, param1: string, param2: number, param3: java.lang.Throwable);
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
			public constructor(param0: string, param1: string, param2: number);
			public iterator(): java.util.Iterator<java.lang.Throwable>;
			public constructor(param0: string, param1: string, param2: java.lang.Throwable);
			public iterator(): java.util.Iterator<any>;
		}
	}
}

declare module java {
	export module sql {
		export class SQLTransactionRollbackException extends java.sql.SQLTransientException {
			public static class: java.lang.Class<java.sql.SQLTransactionRollbackException>;
			public constructor(param0: string, param1: string);
			public constructor(param0: string, param1: string, param2: number, param3: java.lang.Throwable);
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
			public constructor(param0: string, param1: string, param2: number);
			public iterator(): java.util.Iterator<java.lang.Throwable>;
			public constructor(param0: string, param1: string, param2: java.lang.Throwable);
			public iterator(): java.util.Iterator<any>;
		}
	}
}

declare module java {
	export module sql {
		export class SQLTransientConnectionException extends java.sql.SQLTransientException {
			public static class: java.lang.Class<java.sql.SQLTransientConnectionException>;
			public constructor(param0: string, param1: string);
			public constructor(param0: string, param1: string, param2: number, param3: java.lang.Throwable);
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
			public constructor(param0: string, param1: string, param2: number);
			public iterator(): java.util.Iterator<java.lang.Throwable>;
			public constructor(param0: string, param1: string, param2: java.lang.Throwable);
			public iterator(): java.util.Iterator<any>;
		}
	}
}

declare module java {
	export module sql {
		export class SQLTransientException extends java.sql.SQLException {
			public static class: java.lang.Class<java.sql.SQLTransientException>;
			public constructor(param0: string, param1: string);
			public constructor(param0: string, param1: string, param2: number, param3: java.lang.Throwable);
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
			public constructor(param0: string, param1: string, param2: number);
			public iterator(): java.util.Iterator<java.lang.Throwable>;
			public constructor(param0: string, param1: string, param2: java.lang.Throwable);
			public iterator(): java.util.Iterator<any>;
		}
	}
}

declare module java {
	export module sql {
		export class SQLWarning extends java.sql.SQLException implements java.io.Serializable {
			public static class: java.lang.Class<java.sql.SQLWarning>;
			public constructor(param0: string, param1: string);
			public setNextWarning(param0: java.sql.SQLWarning): void;
			public constructor(param0: string, param1: string, param2: number, param3: java.lang.Throwable);
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public getNextWarning(): java.sql.SQLWarning;
			public constructor();
			public constructor(param0: string);
			public constructor(param0: string, param1: string, param2: number);
			public iterator(): java.util.Iterator<java.lang.Throwable>;
			public constructor(param0: string, param1: string, param2: java.lang.Throwable);
			public iterator(): java.util.Iterator<any>;
		}
	}
}

declare module java {
	export module sql {
		export class SQLXML extends java.lang.Object {
			public static class: java.lang.Class<java.sql.SQLXML>;
			/**
			 * Constructs a new instance of the java.sql.SQLXML interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				free(): void;
				getBinaryStream(): java.io.InputStream;
				setBinaryStream(): java.io.OutputStream;
				getCharacterStream(): java.io.Reader;
				setCharacterStream(): java.io.Writer;
				getString(): string;
				setString(param0: string): void;
				getSource(param0: java.lang.Class<any>): javax.xml.transform.Source;
				setResult(param0: java.lang.Class<any>): javax.xml.transform.Result;
			});
			public constructor();
			public setResult(param0: java.lang.Class<any>): javax.xml.transform.Result;
			public getBinaryStream(): java.io.InputStream;
			public free(): void;
			public getCharacterStream(): java.io.Reader;
			public setCharacterStream(): java.io.Writer;
			public getString(): string;
			public setBinaryStream(): java.io.OutputStream;
			public getSource(param0: java.lang.Class<any>): javax.xml.transform.Source;
			public setString(param0: string): void;
		}
	}
}

declare module java {
	export module sql {
		export class Savepoint extends java.lang.Object {
			public static class: java.lang.Class<java.sql.Savepoint>;
			/**
			 * Constructs a new instance of the java.sql.Savepoint interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				getSavepointId(): number;
				getSavepointName(): string;
			});
			public constructor();
			public getSavepointId(): number;
			public getSavepointName(): string;
		}
	}
}

declare module java {
	export module sql {
		export class Statement extends java.lang.Object implements java.sql.Wrapper {
			public static class: java.lang.Class<java.sql.Statement>;
			/**
			 * Constructs a new instance of the java.sql.Statement interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				addBatch(param0: string): void;
				cancel(): void;
				clearBatch(): void;
				clearWarnings(): void;
				close(): void;
				execute(param0: string): boolean;
				execute(param0: string, param1: number): boolean;
				execute(param0: string, param1: native.Array<number>): boolean;
				execute(param0: string, param1: native.Array<string>): boolean;
				executeBatch(): native.Array<number>;
				executeQuery(param0: string): java.sql.ResultSet;
				executeUpdate(param0: string): number;
				executeUpdate(param0: string, param1: number): number;
				executeUpdate(param0: string, param1: native.Array<number>): number;
				executeUpdate(param0: string, param1: native.Array<string>): number;
				getConnection(): java.sql.Connection;
				getFetchDirection(): number;
				getFetchSize(): number;
				getGeneratedKeys(): java.sql.ResultSet;
				getMaxFieldSize(): number;
				getMaxRows(): number;
				getMoreResults(): boolean;
				getMoreResults(param0: number): boolean;
				getQueryTimeout(): number;
				getResultSet(): java.sql.ResultSet;
				getResultSetConcurrency(): number;
				getResultSetHoldability(): number;
				getResultSetType(): number;
				getUpdateCount(): number;
				getWarnings(): java.sql.SQLWarning;
				setCursorName(param0: string): void;
				setEscapeProcessing(param0: boolean): void;
				setFetchDirection(param0: number): void;
				setFetchSize(param0: number): void;
				setMaxFieldSize(param0: number): void;
				setMaxRows(param0: number): void;
				setQueryTimeout(param0: number): void;
				isClosed(): boolean;
				setPoolable(param0: boolean): void;
				isPoolable(): boolean;
				unwrap(param0: java.lang.Class<any>): any;
				isWrapperFor(param0: java.lang.Class<any>): boolean;
			});
			public constructor();
			public static CLOSE_CURRENT_RESULT: number;
			public static EXECUTE_FAILED: number;
			public static KEEP_CURRENT_RESULT: number;
			public static NO_GENERATED_KEYS: number;
			public static RETURN_GENERATED_KEYS: number;
			public static CLOSE_ALL_RESULTS: number;
			public static SUCCESS_NO_INFO: number;
			public isClosed(): boolean;
			public getMaxRows(): number;
			public isWrapperFor(param0: java.lang.Class<any>): boolean;
			public unwrap(param0: java.lang.Class<any>): any;
			public cancel(): void;
			public executeUpdate(param0: string, param1: native.Array<number>): number;
			public setMaxRows(param0: number): void;
			public setPoolable(param0: boolean): void;
			public executeUpdate(param0: string, param1: native.Array<string>): number;
			public getWarnings(): java.sql.SQLWarning;
			public addBatch(param0: string): void;
			public getUpdateCount(): number;
			public executeBatch(): native.Array<number>;
			public isPoolable(): boolean;
			public execute(param0: string, param1: number): boolean;
			public getConnection(): java.sql.Connection;
			public getMaxFieldSize(): number;
			public clearWarnings(): void;
			public close(): void;
			public execute(param0: string): boolean;
			public getFetchSize(): number;
			public getResultSetHoldability(): number;
			public getResultSetType(): number;
			public executeUpdate(param0: string): number;
			public setCursorName(param0: string): void;
			public getGeneratedKeys(): java.sql.ResultSet;
			public getMoreResults(): boolean;
			public setQueryTimeout(param0: number): void;
			public getFetchDirection(): number;
			public getResultSetConcurrency(): number;
			public setMaxFieldSize(param0: number): void;
			public clearBatch(): void;
			public executeQuery(param0: string): java.sql.ResultSet;
			public setFetchDirection(param0: number): void;
			public setFetchSize(param0: number): void;
			public setEscapeProcessing(param0: boolean): void;
			public executeUpdate(param0: string, param1: number): number;
			public getResultSet(): java.sql.ResultSet;
			public getMoreResults(param0: number): boolean;
			public execute(param0: string, param1: native.Array<number>): boolean;
			public getQueryTimeout(): number;
			public execute(param0: string, param1: native.Array<string>): boolean;
		}
	}
}

declare module java {
	export module sql {
		export class Struct extends java.lang.Object {
			public static class: java.lang.Class<java.sql.Struct>;
			/**
			 * Constructs a new instance of the java.sql.Struct interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				getSQLTypeName(): string;
				getAttributes(): native.Array<any>;
				getAttributes(param0: java.util.Map<string,java.lang.Class<any>>): native.Array<any>;
			});
			public constructor();
			public getAttributes(param0: java.util.Map<string,java.lang.Class<any>>): native.Array<any>;
			public getSQLTypeName(): string;
			public getAttributes(): native.Array<any>;
		}
	}
}

declare module java {
	export module sql {
		export class Time extends java.util.Date {
			public static class: java.lang.Class<java.sql.Time>;
			/** @deprecated */
			public constructor(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number);
			/** @deprecated */
			public getDay(): number;
			/** @deprecated */
			public getDate(): number;
			public static valueOf(param0: string): java.sql.Time;
			public constructor(param0: number);
			/** @deprecated */
			public setMonth(param0: number): void;
			/** @deprecated */
			public getMonth(): number;
			public constructor();
			/** @deprecated */
			public constructor(param0: number, param1: number, param2: number);
			public toString(): string;
			public setTime(param0: number): void;
			/** @deprecated */
			public setDate(param0: number): void;
			/** @deprecated */
			public setYear(param0: number): void;
			/** @deprecated */
			public getYear(): number;
			/** @deprecated */
			public constructor(param0: number, param1: number, param2: number, param3: number, param4: number);
			/** @deprecated */
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module sql {
		export class Timestamp extends java.util.Date {
			public static class: java.lang.Class<java.sql.Timestamp>;
			public equals(param0: any): boolean;
			public static valueOf(param0: string): java.sql.Timestamp;
			public after(param0: java.sql.Timestamp): boolean;
			public setNanos(param0: number): void;
			/** @deprecated */
			public constructor(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number);
			public before(param0: java.util.Date): boolean;
			public constructor(param0: number);
			public after(param0: java.util.Date): boolean;
			public constructor();
			/** @deprecated */
			public constructor(param0: number, param1: number, param2: number);
			public compareTo(param0: java.util.Date): number;
			public getNanos(): number;
			public toString(): string;
			public setTime(param0: number): void;
			public getTime(): number;
			public before(param0: java.sql.Timestamp): boolean;
			public compareTo(param0: java.sql.Timestamp): number;
			public equals(param0: java.sql.Timestamp): boolean;
			/** @deprecated */
			public constructor(param0: number, param1: number, param2: number, param3: number, param4: number);
			/** @deprecated */
			public constructor(param0: string);
			/** @deprecated */
			public constructor(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number);
		}
	}
}

declare module java {
	export module sql {
		export class Types extends java.lang.Object {
			public static class: java.lang.Class<java.sql.Types>;
			public static ARRAY: number;
			public static BIGINT: number;
			public static BINARY: number;
			public static BIT: number;
			public static BLOB: number;
			public static BOOLEAN: number;
			public static CHAR: number;
			public static CLOB: number;
			public static DATALINK: number;
			public static DATE: number;
			public static DECIMAL: number;
			public static DISTINCT: number;
			public static DOUBLE: number;
			public static FLOAT: number;
			public static INTEGER: number;
			public static JAVA_OBJECT: number;
			public static LONGVARBINARY: number;
			public static LONGVARCHAR: number;
			public static NULL: number;
			public static NUMERIC: number;
			public static OTHER: number;
			public static REAL: number;
			public static REF: number;
			public static SMALLINT: number;
			public static STRUCT: number;
			public static TIME: number;
			public static TIMESTAMP: number;
			public static TINYINT: number;
			public static VARBINARY: number;
			public static VARCHAR: number;
			public static ROWID: number;
			public static NCHAR: number;
			public static NVARCHAR: number;
			public static LONGNVARCHAR: number;
			public static NCLOB: number;
			public static SQLXML: number;
		}
	}
}

declare module java {
	export module sql {
		export class Wrapper extends java.lang.Object {
			public static class: java.lang.Class<java.sql.Wrapper>;
			/**
			 * Constructs a new instance of the java.sql.Wrapper interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				unwrap(param0: java.lang.Class<any>): any;
				isWrapperFor(param0: java.lang.Class<any>): boolean;
			});
			public constructor();
			public isWrapperFor(param0: java.lang.Class<any>): boolean;
			public unwrap(param0: java.lang.Class<any>): any;
		}
	}
}

declare module java {
	export module text {
		export class Annotation extends java.lang.Object {
			public static class: java.lang.Class<java.text.Annotation>;
			public toString(): string;
			public getValue(): any;
			public constructor(param0: any);
		}
	}
}

declare module java {
	export module text {
		export class AttributedCharacterIterator extends java.lang.Object implements java.text.CharacterIterator {
			public static class: java.lang.Class<java.text.AttributedCharacterIterator>;
			/**
			 * Constructs a new instance of the java.text.AttributedCharacterIterator interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				getAllAttributeKeys(): java.util.Set<java.text.AttributedCharacterIterator.Attribute>;
				getAttribute(param0: java.text.AttributedCharacterIterator.Attribute): any;
				getAttributes(): java.util.Map<java.text.AttributedCharacterIterator.Attribute,any>;
				getRunLimit(): number;
				getRunLimit(param0: java.text.AttributedCharacterIterator.Attribute): number;
				getRunLimit(param0: java.util.Set<any>): number;
				getRunStart(): number;
				getRunStart(param0: java.text.AttributedCharacterIterator.Attribute): number;
				getRunStart(param0: java.util.Set<any>): number;
				clone(): any;
				current(): string;
				first(): string;
				getBeginIndex(): number;
				getEndIndex(): number;
				getIndex(): number;
				last(): string;
				next(): string;
				previous(): string;
				setIndex(param0: number): string;
			});
			public constructor();
			public static DONE: string;
			public getIndex(): number;
			public getRunStart(param0: java.text.AttributedCharacterIterator.Attribute): number;
			public setIndex(param0: number): string;
			public getRunLimit(param0: java.util.Set<any>): number;
			public getRunLimit(param0: java.text.AttributedCharacterIterator.Attribute): number;
			public first(): string;
			public current(): string;
			public getBeginIndex(): number;
			public last(): string;
			public next(): string;
			public getRunLimit(): number;
			public getAllAttributeKeys(): java.util.Set<java.text.AttributedCharacterIterator.Attribute>;
			public getRunStart(): number;
			public clone(): any;
			public getEndIndex(): number;
			public getRunStart(param0: java.util.Set<any>): number;
			public getAttribute(param0: java.text.AttributedCharacterIterator.Attribute): any;
			public getAttributes(): java.util.Map<java.text.AttributedCharacterIterator.Attribute,any>;
			public previous(): string;
		}
		export module AttributedCharacterIterator {
			export class Attribute extends java.lang.Object implements java.io.Serializable {
				public static class: java.lang.Class<java.text.AttributedCharacterIterator.Attribute>;
				public static INPUT_METHOD_SEGMENT: java.text.AttributedCharacterIterator.Attribute;
				public static LANGUAGE: java.text.AttributedCharacterIterator.Attribute;
				public static READING: java.text.AttributedCharacterIterator.Attribute;
				public hashCode(): number;
				public equals(param0: any): boolean;
				public getName(): string;
				public toString(): string;
				public constructor(param0: string);
				public readResolve(): any;
			}
		}
	}
}

declare module java {
	export module text {
		export class AttributedString extends java.lang.Object {
			public static class: java.lang.Class<java.text.AttributedString>;
			public constructor(param0: java.text.AttributedCharacterIterator);
			public addAttributes(param0: java.util.Map<any,any>, param1: number, param2: number): void;
			public getIterator(): java.text.AttributedCharacterIterator;
			public constructor(param0: java.text.AttributedCharacterIterator, param1: number, param2: number, param3: native.Array<java.text.AttributedCharacterIterator.Attribute>);
			public addAttribute(param0: java.text.AttributedCharacterIterator.Attribute, param1: any): void;
			public addAttribute(param0: java.text.AttributedCharacterIterator.Attribute, param1: any, param2: number, param3: number): void;
			public getIterator(param0: native.Array<java.text.AttributedCharacterIterator.Attribute>): java.text.AttributedCharacterIterator;
			public constructor(param0: java.text.AttributedCharacterIterator, param1: number, param2: number);
			public getIterator(param0: native.Array<java.text.AttributedCharacterIterator.Attribute>, param1: number, param2: number): java.text.AttributedCharacterIterator;
			public constructor(param0: string);
			public constructor(param0: string, param1: java.util.Map<any,any>);
		}
	}
}

declare module java {
	export module text {
		export class Bidi extends java.lang.Object {
			public static class: java.lang.Class<java.text.Bidi>;
			public static DIRECTION_DEFAULT_LEFT_TO_RIGHT: number;
			public static DIRECTION_DEFAULT_RIGHT_TO_LEFT: number;
			public static DIRECTION_LEFT_TO_RIGHT: number;
			public static DIRECTION_RIGHT_TO_LEFT: number;
			public getRunStart(param0: number): number;
			public getBaseLevel(): number;
			public getRunCount(): number;
			public getLength(): number;
			public isRightToLeft(): boolean;
			public getRunLevel(param0: number): number;
			public constructor(param0: native.Array<string>, param1: number, param2: native.Array<number>, param3: number, param4: number, param5: number);
			public getRunLimit(param0: number): number;
			public isLeftToRight(): boolean;
			public getLevelAt(param0: number): number;
			public constructor(param0: java.text.AttributedCharacterIterator);
			public baseIsLeftToRight(): boolean;
			public static requiresBidi(param0: native.Array<string>, param1: number, param2: number): boolean;
			public isMixed(): boolean;
			public toString(): string;
			public constructor(param0: string, param1: number);
			public createLineBidi(param0: number, param1: number): java.text.Bidi;
			public static reorderVisually(param0: native.Array<number>, param1: number, param2: native.Array<any>, param3: number, param4: number): void;
		}
	}
}

declare module java {
	export module text {
		export abstract class BreakIterator extends java.lang.Object implements java.lang.Cloneable {
			public static class: java.lang.Class<java.text.BreakIterator>;
			public static DONE: number;
			public current(): number;
			public setText(param0: string): void;
			public static getSentenceInstance(param0: java.util.Locale): java.text.BreakIterator;
			public setText(param0: java.text.CharacterIterator): void;
			public following(param0: number): number;
			public getText(): java.text.CharacterIterator;
			public constructor();
			public static getLineInstance(param0: java.util.Locale): java.text.BreakIterator;
			public static getWordInstance(): java.text.BreakIterator;
			public next(param0: number): number;
			public previous(): number;
			public static getCharacterInstance(): java.text.BreakIterator;
			public static getWordInstance(param0: java.util.Locale): java.text.BreakIterator;
			public static getSentenceInstance(): java.text.BreakIterator;
			public next(): number;
			public clone(): any;
			public static getAvailableLocales(): native.Array<java.util.Locale>;
			public last(): number;
			public static getCharacterInstance(param0: java.util.Locale): java.text.BreakIterator;
			public static getLineInstance(): java.text.BreakIterator;
			public preceding(param0: number): number;
			public isBoundary(param0: number): boolean;
			public first(): number;
		}
	}
}

declare module java {
	export module text {
		export class CharacterIterator extends java.lang.Object implements java.lang.Cloneable {
			public static class: java.lang.Class<java.text.CharacterIterator>;
			/**
			 * Constructs a new instance of the java.text.CharacterIterator interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				clone(): any;
				current(): string;
				first(): string;
				getBeginIndex(): number;
				getEndIndex(): number;
				getIndex(): number;
				last(): string;
				next(): string;
				previous(): string;
				setIndex(param0: number): string;
			});
			public constructor();
			public static DONE: string;
			public getIndex(): number;
			public clone(): any;
			public getEndIndex(): number;
			public setIndex(param0: number): string;
			public first(): string;
			public current(): string;
			public getBeginIndex(): number;
			public last(): string;
			public next(): string;
			public previous(): string;
		}
	}
}

declare module java {
	export module text {
		export class ChoiceFormat extends java.text.NumberFormat {
			public static class: java.lang.Class<java.text.ChoiceFormat>;
			public format(param0: any, param1: java.lang.StringBuffer, param2: java.text.FieldPosition): java.lang.StringBuffer;
			public equals(param0: any): boolean;
			public getFormats(): native.Array<any>;
			public format(param0: any): string;
			public applyPattern(param0: string): void;
			public format(param0: number): string;
			public constructor();
			public toPattern(): string;
			public constructor(param0: native.Array<number>, param1: native.Array<string>);
			public format(param0: number, param1: java.lang.StringBuffer, param2: java.text.FieldPosition): java.lang.StringBuffer;
			public clone(): any;
			public getLimits(): native.Array<number>;
			public static previousDouble(param0: number): number;
			public setChoices(param0: native.Array<number>, param1: native.Array<string>): void;
			public static nextDouble(param0: number, param1: boolean): number;
			public static nextDouble(param0: number): number;
			public parse(param0: string): java.lang.Number;
			public parse(param0: string, param1: java.text.ParsePosition): java.lang.Number;
			public constructor(param0: string);
			public hashCode(): number;
		}
	}
}

declare module java {
	export module text {
		export class CollationElementIterator extends java.lang.Object {
			public static class: java.lang.Class<java.text.CollationElementIterator>;
			public static NULLORDER: number;
			public static primaryOrder(param0: number): number;
			public next(): number;
			public static tertiaryOrder(param0: number): number;
			public static secondaryOrder(param0: number): number;
			public setText(param0: string): void;
			public setText(param0: java.text.CharacterIterator): void;
			public getOffset(): number;
			public reset(): void;
			public previous(): number;
			public setOffset(param0: number): void;
			public getMaxExpansion(param0: number): number;
		}
	}
}

declare module java {
	export module text {
		export abstract class CollationKey extends java.lang.Comparable<java.text.CollationKey> {
			public static class: java.lang.Class<java.text.CollationKey>;
			public toByteArray(): native.Array<number>;
			public compareTo(param0: java.text.CollationKey): number;
			public constructor(param0: string);
			public getSourceString(): string;
		}
	}
}

declare module java {
	export module text {
		export abstract class Collator extends java.lang.Object {
			public static class: java.lang.Class<java.text.Collator>;
			public static NO_DECOMPOSITION: number;
			public static CANONICAL_DECOMPOSITION: number;
			public static FULL_DECOMPOSITION: number;
			public static PRIMARY: number;
			public static SECONDARY: number;
			public static TERTIARY: number;
			public static IDENTICAL: number;
			public getCollationKey(param0: string): java.text.CollationKey;
			public equals(param0: any): boolean;
			public getStrength(): number;
			public equals(param0: string, param1: string): boolean;
			public getDecomposition(): number;
			public compare(param0: any, param1: any): number;
			public constructor();
			public compare(param0: string, param1: string): number;
			public setStrength(param0: number): void;
			public clone(): any;
			public static getInstance(): java.text.Collator;
			public static getAvailableLocales(): native.Array<java.util.Locale>;
			public static getInstance(param0: java.util.Locale): java.text.Collator;
			public setDecomposition(param0: number): void;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module text {
		export abstract class DateFormat extends java.text.Format {
			public static class: java.lang.Class<java.text.DateFormat>;
			public calendar: java.util.Calendar;
			public numberFormat: java.text.NumberFormat;
			public static DEFAULT: number;
			public static FULL: number;
			public static LONG: number;
			public static MEDIUM: number;
			public static SHORT: number;
			public static ERA_FIELD: number;
			public static YEAR_FIELD: number;
			public static MONTH_FIELD: number;
			public static DATE_FIELD: number;
			public static HOUR_OF_DAY1_FIELD: number;
			public static HOUR_OF_DAY0_FIELD: number;
			public static MINUTE_FIELD: number;
			public static SECOND_FIELD: number;
			public static MILLISECOND_FIELD: number;
			public static DAY_OF_WEEK_FIELD: number;
			public static DAY_OF_YEAR_FIELD: number;
			public static DAY_OF_WEEK_IN_MONTH_FIELD: number;
			public static WEEK_OF_YEAR_FIELD: number;
			public static WEEK_OF_MONTH_FIELD: number;
			public static AM_PM_FIELD: number;
			public static HOUR1_FIELD: number;
			public static HOUR0_FIELD: number;
			public static TIMEZONE_FIELD: number;
			public format(param0: any, param1: java.lang.StringBuffer, param2: java.text.FieldPosition): java.lang.StringBuffer;
			public parseObject(param0: string): any;
			public equals(param0: any): boolean;
			public format(param0: any): string;
			public getNumberFormat(): java.text.NumberFormat;
			public getTimeZone(): java.util.TimeZone;
			public static getDateInstance(param0: number, param1: java.util.Locale): java.text.DateFormat;
			public getCalendar(): java.util.Calendar;
			public static getTimeInstance(param0: number): java.text.DateFormat;
			public static getInstance(): java.text.DateFormat;
			public format(param0: java.util.Date): string;
			public setNumberFormat(param0: java.text.NumberFormat): void;
			public parse(param0: string, param1: java.text.ParsePosition): java.util.Date;
			public setLenient(param0: boolean): void;
			public parse(param0: string): java.util.Date;
			public static getAvailableLocales(): native.Array<java.util.Locale>;
			public static getDateInstance(param0: number): java.text.DateFormat;
			public parseObject(param0: string, param1: java.text.ParsePosition): any;
			public format(param0: java.util.Date, param1: java.lang.StringBuffer, param2: java.text.FieldPosition): java.lang.StringBuffer;
			public static getDateInstance(): java.text.DateFormat;
			public constructor();
			public isLenient(): boolean;
			public setCalendar(param0: java.util.Calendar): void;
			public static getTimeInstance(): java.text.DateFormat;
			public static getDateTimeInstance(): java.text.DateFormat;
			public static getDateTimeInstance(param0: number, param1: number, param2: java.util.Locale): java.text.DateFormat;
			public static getTimeInstance(param0: number, param1: java.util.Locale): java.text.DateFormat;
			public clone(): any;
			public setTimeZone(param0: java.util.TimeZone): void;
			public static getDateTimeInstance(param0: number, param1: number): java.text.DateFormat;
			public hashCode(): number;
		}
		export module DateFormat {
			export class Field extends java.text.Format.Field {
				public static class: java.lang.Class<java.text.DateFormat.Field>;
				public static ERA: java.text.DateFormat.Field;
				public static YEAR: java.text.DateFormat.Field;
				public static MONTH: java.text.DateFormat.Field;
				public static HOUR_OF_DAY0: java.text.DateFormat.Field;
				public static HOUR_OF_DAY1: java.text.DateFormat.Field;
				public static MINUTE: java.text.DateFormat.Field;
				public static SECOND: java.text.DateFormat.Field;
				public static MILLISECOND: java.text.DateFormat.Field;
				public static DAY_OF_WEEK: java.text.DateFormat.Field;
				public static DAY_OF_MONTH: java.text.DateFormat.Field;
				public static DAY_OF_YEAR: java.text.DateFormat.Field;
				public static DAY_OF_WEEK_IN_MONTH: java.text.DateFormat.Field;
				public static WEEK_OF_YEAR: java.text.DateFormat.Field;
				public static WEEK_OF_MONTH: java.text.DateFormat.Field;
				public static AM_PM: java.text.DateFormat.Field;
				public static HOUR0: java.text.DateFormat.Field;
				public static HOUR1: java.text.DateFormat.Field;
				public static TIME_ZONE: java.text.DateFormat.Field;
				public static ofCalendarField(param0: number): java.text.DateFormat.Field;
				public getCalendarField(): number;
				public constructor(param0: string, param1: number);
				public constructor(param0: string);
			}
		}
	}
}

declare module java {
	export module text {
		export class DateFormatSymbols extends java.lang.Object implements java.io.Serializable, java.lang.Cloneable {
			public static class: java.lang.Class<java.text.DateFormatSymbols>;
			public equals(param0: any): boolean;
			public setEras(param0: native.Array<string>): void;
			public setShortWeekdays(param0: native.Array<string>): void;
			public getEras(): native.Array<string>;
			public setWeekdays(param0: native.Array<string>): void;
			public static getInstance(): java.text.DateFormatSymbols;
			public static getAvailableLocales(): native.Array<java.util.Locale>;
			public setMonths(param0: native.Array<string>): void;
			public setShortMonths(param0: native.Array<string>): void;
			public getShortWeekdays(): native.Array<string>;
			public setZoneStrings(param0: native.Array<native.Array<string>>): void;
			public getLocalPatternChars(): string;
			public getWeekdays(): native.Array<string>;
			public getAmPmStrings(): native.Array<string>;
			public setAmPmStrings(param0: native.Array<string>): void;
			public getMonths(): native.Array<string>;
			public getZoneStrings(): native.Array<native.Array<string>>;
			public constructor();
			public static getInstance(param0: java.util.Locale): java.text.DateFormatSymbols;
			public constructor(param0: java.util.Locale);
			public clone(): any;
			public toString(): string;
			public getShortMonths(): native.Array<string>;
			public setLocalPatternChars(param0: string): void;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module text {
		export class DecimalFormat extends java.text.NumberFormat {
			public static class: java.lang.Class<java.text.DecimalFormat>;
			public format(param0: any, param1: java.lang.StringBuffer, param2: java.text.FieldPosition): java.lang.StringBuffer;
			public equals(param0: any): boolean;
			public setGroupingUsed(param0: boolean): void;
			public setMaximumFractionDigits(param0: number): void;
			public setNegativeSuffix(param0: string): void;
			public getGroupingSize(): number;
			public setParseBigDecimal(param0: boolean): void;
			public format(param0: any): string;
			public getNegativePrefix(): string;
			public setGroupingSize(param0: number): void;
			public setMinimumFractionDigits(param0: number): void;
			public applyPattern(param0: string): void;
			public setMultiplier(param0: number): void;
			public setPositiveSuffix(param0: string): void;
			public isParseIntegerOnly(): boolean;
			public setNegativePrefix(param0: string): void;
			public applyLocalizedPattern(param0: string): void;
			public getPositivePrefix(): string;
			public isGroupingUsed(): boolean;
			public getNegativeSuffix(): string;
			public setDecimalSeparatorAlwaysShown(param0: boolean): void;
			public setMinimumIntegerDigits(param0: number): void;
			public formatToCharacterIterator(param0: any): java.text.AttributedCharacterIterator;
			public parse(param0: string, param1: java.text.ParsePosition): java.lang.Number;
			public constructor(param0: string);
			public getRoundingMode(): java.math.RoundingMode;
			public constructor(param0: string, param1: java.text.DecimalFormatSymbols);
			public isDecimalSeparatorAlwaysShown(): boolean;
			public getPositiveSuffix(): string;
			public setPositivePrefix(param0: string): void;
			public setDecimalFormatSymbols(param0: java.text.DecimalFormatSymbols): void;
			public getDecimalFormatSymbols(): java.text.DecimalFormatSymbols;
			public setRoundingMode(param0: java.math.RoundingMode): void;
			public format(param0: number): string;
			public constructor();
			public isParseBigDecimal(): boolean;
			public toPattern(): string;
			public setCurrency(param0: java.util.Currency): void;
			public format(param0: number, param1: java.lang.StringBuffer, param2: java.text.FieldPosition): java.lang.StringBuffer;
			public clone(): any;
			public getCurrency(): java.util.Currency;
			public setMaximumIntegerDigits(param0: number): void;
			public setParseIntegerOnly(param0: boolean): void;
			public toLocalizedPattern(): string;
			public getMultiplier(): number;
			public parse(param0: string): java.lang.Number;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module text {
		export class DecimalFormatSymbols extends java.lang.Object implements java.lang.Cloneable, java.io.Serializable {
			public static class: java.lang.Class<java.text.DecimalFormatSymbols>;
			public equals(param0: any): boolean;
			public setMinusSign(param0: string): void;
			public getPerMill(): string;
			public static getInstance(): java.text.DecimalFormatSymbols;
			public static getInstance(param0: java.util.Locale): java.text.DecimalFormatSymbols;
			public getZeroDigit(): string;
			public setGroupingSeparator(param0: string): void;
			public setMonetaryDecimalSeparator(param0: string): void;
			public setDecimalSeparator(param0: string): void;
			public static getAvailableLocales(): native.Array<java.util.Locale>;
			public getCurrencySymbol(): string;
			public getExponentSeparator(): string;
			public setZeroDigit(param0: string): void;
			public setPerMill(param0: string): void;
			public setInternationalCurrencySymbol(param0: string): void;
			public getInternationalCurrencySymbol(): string;
			public setDigit(param0: string): void;
			public setPercent(param0: string): void;
			public setExponentSeparator(param0: string): void;
			public getPatternSeparator(): string;
			public setCurrencySymbol(param0: string): void;
			public getInfinity(): string;
			public constructor();
			public getDecimalSeparator(): string;
			public getMinusSign(): string;
			public constructor(param0: java.util.Locale);
			public getDigit(): string;
			public setInfinity(param0: string): void;
			public getPercent(): string;
			public setCurrency(param0: java.util.Currency): void;
			public clone(): any;
			public toString(): string;
			public getCurrency(): java.util.Currency;
			public setNaN(param0: string): void;
			public getMonetaryDecimalSeparator(): string;
			public getNaN(): string;
			public setPatternSeparator(param0: string): void;
			public getGroupingSeparator(): string;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module text {
		export class FieldPosition extends java.lang.Object {
			public static class: java.lang.Class<java.text.FieldPosition>;
			public setBeginIndex(param0: number): void;
			public equals(param0: any): boolean;
			public constructor(param0: java.text.Format.Field, param1: number);
			public getFieldAttribute(): java.text.Format.Field;
			public toString(): string;
			public getEndIndex(): number;
			public constructor(param0: java.text.Format.Field);
			public constructor(param0: number);
			public getField(): number;
			public getBeginIndex(): number;
			public setEndIndex(param0: number): void;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module text {
		export abstract class Format extends java.lang.Object implements java.io.Serializable, java.lang.Cloneable {
			public static class: java.lang.Class<java.text.Format>;
			public format(param0: any, param1: java.lang.StringBuffer, param2: java.text.FieldPosition): java.lang.StringBuffer;
			public parseObject(param0: string): any;
			public clone(): any;
			public format(param0: any): string;
			public formatToCharacterIterator(param0: any): java.text.AttributedCharacterIterator;
			public constructor();
			public parseObject(param0: string, param1: java.text.ParsePosition): any;
		}
		export module Format {
			export class Field extends java.text.AttributedCharacterIterator.Attribute {
				public static class: java.lang.Class<java.text.Format.Field>;
				public constructor(param0: string);
			}
		}
	}
}

declare module java {
	export module text {
		export class MessageFormat extends java.text.Format {
			public static class: java.lang.Class<java.text.MessageFormat>;
			public format(param0: any, param1: java.lang.StringBuffer, param2: java.text.FieldPosition): java.lang.StringBuffer;
			public parseObject(param0: string): any;
			public setLocale(param0: java.util.Locale): void;
			public equals(param0: any): boolean;
			public setFormatsByArgumentIndex(param0: native.Array<java.text.Format>): void;
			public format(param0: any): string;
			public setFormats(param0: native.Array<java.text.Format>): void;
			public static format(param0: string, param1: native.Array<any>): string;
			public applyPattern(param0: string): void;
			public parse(param0: string, param1: java.text.ParsePosition): native.Array<any>;
			public formatToCharacterIterator(param0: any): java.text.AttributedCharacterIterator;
			public format(param0: native.Array<any>, param1: java.lang.StringBuffer, param2: java.text.FieldPosition): java.lang.StringBuffer;
			public parseObject(param0: string, param1: java.text.ParsePosition): any;
			public setFormat(param0: number, param1: java.text.Format): void;
			public constructor(param0: string);
			public setFormatByArgumentIndex(param0: number, param1: java.text.Format): void;
			public getLocale(): java.util.Locale;
			public constructor(param0: string, param1: java.util.Locale);
			public getFormats(): native.Array<java.text.Format>;
			public constructor();
			public toPattern(): string;
			public getFormatsByArgumentIndex(): native.Array<java.text.Format>;
			public clone(): any;
			public parse(param0: string): native.Array<any>;
			public hashCode(): number;
		}
		export module MessageFormat {
			export class Field extends java.text.Format.Field {
				public static class: java.lang.Class<java.text.MessageFormat.Field>;
				public static ARGUMENT: java.text.MessageFormat.Field;
				public constructor(param0: string);
			}
		}
	}
}

declare module java {
	export module text {
		export class Normalizer extends java.lang.Object {
			public static class: java.lang.Class<java.text.Normalizer>;
			public static isNormalized(param0: string, param1: java.text.Normalizer.Form): boolean;
			public static normalize(param0: string, param1: java.text.Normalizer.Form): string;
		}
		export module Normalizer {
			export class Form {
				public static class: java.lang.Class<java.text.Normalizer.Form>;
				public static NFC: java.text.Normalizer.Form;
				public static NFD: java.text.Normalizer.Form;
				public static NFKC: java.text.Normalizer.Form;
				public static NFKD: java.text.Normalizer.Form;
				public static values(): native.Array<java.text.Normalizer.Form>;
				public static valueOf(param0: string): java.text.Normalizer.Form;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
			}
		}
	}
}

declare module java {
	export module text {
		export abstract class NumberFormat extends java.text.Format {
			public static class: java.lang.Class<java.text.NumberFormat>;
			public static INTEGER_FIELD: number;
			public static FRACTION_FIELD: number;
			public format(param0: any, param1: java.lang.StringBuffer, param2: java.text.FieldPosition): java.lang.StringBuffer;
			public parseObject(param0: string): any;
			public equals(param0: any): boolean;
			public setGroupingUsed(param0: boolean): void;
			public setMaximumFractionDigits(param0: number): void;
			public format(param0: any): string;
			public setMinimumFractionDigits(param0: number): void;
			public getMaximumIntegerDigits(): number;
			public static getCurrencyInstance(): java.text.NumberFormat;
			public static getIntegerInstance(param0: java.util.Locale): java.text.NumberFormat;
			public static getNumberInstance(): java.text.NumberFormat;
			public static getCurrencyInstance(param0: java.util.Locale): java.text.NumberFormat;
			public getMinimumIntegerDigits(): number;
			public isParseIntegerOnly(): boolean;
			public isGroupingUsed(): boolean;
			public getMaximumFractionDigits(): number;
			public static getAvailableLocales(): native.Array<java.util.Locale>;
			public setMinimumIntegerDigits(param0: number): void;
			public static getInstance(param0: java.util.Locale): java.text.NumberFormat;
			public parseObject(param0: string, param1: java.text.ParsePosition): any;
			public parse(param0: string, param1: java.text.ParsePosition): java.lang.Number;
			public getRoundingMode(): java.math.RoundingMode;
			public static getInstance(): java.text.NumberFormat;
			public static getIntegerInstance(): java.text.NumberFormat;
			public setRoundingMode(param0: java.math.RoundingMode): void;
			public format(param0: number): string;
			public constructor();
			public static getPercentInstance(): java.text.NumberFormat;
			public static getPercentInstance(param0: java.util.Locale): java.text.NumberFormat;
			public setCurrency(param0: java.util.Currency): void;
			public format(param0: number, param1: java.lang.StringBuffer, param2: java.text.FieldPosition): java.lang.StringBuffer;
			public static getNumberInstance(param0: java.util.Locale): java.text.NumberFormat;
			public clone(): any;
			public getCurrency(): java.util.Currency;
			public setMaximumIntegerDigits(param0: number): void;
			public setParseIntegerOnly(param0: boolean): void;
			public getMinimumFractionDigits(): number;
			public parse(param0: string): java.lang.Number;
			public hashCode(): number;
		}
		export module NumberFormat {
			export class Field extends java.text.Format.Field {
				public static class: java.lang.Class<java.text.NumberFormat.Field>;
				public static SIGN: java.text.NumberFormat.Field;
				public static INTEGER: java.text.NumberFormat.Field;
				public static FRACTION: java.text.NumberFormat.Field;
				public static EXPONENT: java.text.NumberFormat.Field;
				public static EXPONENT_SIGN: java.text.NumberFormat.Field;
				public static EXPONENT_SYMBOL: java.text.NumberFormat.Field;
				public static DECIMAL_SEPARATOR: java.text.NumberFormat.Field;
				public static GROUPING_SEPARATOR: java.text.NumberFormat.Field;
				public static PERCENT: java.text.NumberFormat.Field;
				public static PERMILLE: java.text.NumberFormat.Field;
				public static CURRENCY: java.text.NumberFormat.Field;
				public constructor(param0: string);
			}
		}
	}
}

declare module java {
	export module text {
		export class ParseException extends java.lang.Exception {
			public static class: java.lang.Class<java.text.ParseException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor(param0: string, param1: number);
			public constructor();
			public constructor(param0: string);
			public getErrorOffset(): number;
		}
	}
}

declare module java {
	export module text {
		export class ParsePosition extends java.lang.Object {
			public static class: java.lang.Class<java.text.ParsePosition>;
			public equals(param0: any): boolean;
			public getIndex(): number;
			public setIndex(param0: number): void;
			public toString(): string;
			public getErrorIndex(): number;
			public constructor(param0: number);
			public hashCode(): number;
			public setErrorIndex(param0: number): void;
		}
	}
}

declare module java {
	export module text {
		export class RuleBasedCollator extends java.text.Collator {
			public static class: java.lang.Class<java.text.RuleBasedCollator>;
			public getCollationKey(param0: string): java.text.CollationKey;
			public equals(param0: any): boolean;
			public clone(): any;
			public getCollationElementIterator(param0: string): java.text.CollationElementIterator;
			public equals(param0: string, param1: string): boolean;
			public getCollationElementIterator(param0: java.text.CharacterIterator): java.text.CollationElementIterator;
			public compare(param0: any, param1: any): number;
			public constructor();
			public constructor(param0: string);
			public compare(param0: string, param1: string): number;
			public getRules(): string;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module text {
		export class SimpleDateFormat extends java.text.DateFormat {
			public static class: java.lang.Class<java.text.SimpleDateFormat>;
			public format(param0: any, param1: java.lang.StringBuffer, param2: java.text.FieldPosition): java.lang.StringBuffer;
			public equals(param0: any): boolean;
			public constructor(param0: string, param1: java.util.Locale);
			public format(param0: any): string;
			public applyPattern(param0: string): void;
			public constructor();
			public toPattern(): string;
			public get2DigitYearStart(): java.util.Date;
			public applyLocalizedPattern(param0: string): void;
			public clone(): any;
			public format(param0: java.util.Date): string;
			public parse(param0: string, param1: java.text.ParsePosition): java.util.Date;
			public setDateFormatSymbols(param0: java.text.DateFormatSymbols): void;
			public parse(param0: string): java.util.Date;
			public toLocalizedPattern(): string;
			public constructor(param0: string, param1: java.text.DateFormatSymbols);
			public formatToCharacterIterator(param0: any): java.text.AttributedCharacterIterator;
			public set2DigitYearStart(param0: java.util.Date): void;
			public getDateFormatSymbols(): java.text.DateFormatSymbols;
			public format(param0: java.util.Date, param1: java.lang.StringBuffer, param2: java.text.FieldPosition): java.lang.StringBuffer;
			public constructor(param0: string);
			public hashCode(): number;
		}
	}
}

declare module java {
	export module text {
		export class StringCharacterIterator extends java.lang.Object implements java.text.CharacterIterator {
			public static class: java.lang.Class<java.text.StringCharacterIterator>;
			public equals(param0: any): boolean;
			public getIndex(): number;
			public setText(param0: string): void;
			public setIndex(param0: number): string;
			public first(): string;
			public current(): string;
			public getBeginIndex(): number;
			public last(): string;
			public next(): string;
			public clone(): any;
			public getEndIndex(): number;
			public constructor(param0: string, param1: number);
			public constructor(param0: string, param1: number, param2: number, param3: number);
			public constructor(param0: string);
			public hashCode(): number;
			public previous(): string;
		}
	}
}

declare module java {
	export module util {
		export abstract class AbstractCollection<E>  extends java.util.Collection<any> {
			public static class: java.lang.Class<java.util.AbstractCollection<any>>;
			public clear(): void;
			public equals(param0: any): boolean;
			public toArray(): native.Array<any>;
			public isEmpty(): boolean;
			public size(): number;
			public toArray(param0: native.Array<any>): native.Array<any>;
			public constructor();
			public addAll(param0: java.util.Collection<any>): boolean;
			public retainAll(param0: java.util.Collection<any>): boolean;
			public remove(param0: any): boolean;
			public containsAll(param0: java.util.Collection<any>): boolean;
			public contains(param0: any): boolean;
			public toString(): string;
			public add(param0: any): boolean;
			public removeAll(param0: java.util.Collection<any>): boolean;
			public iterator(): java.util.Iterator<any>;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module util {
		export abstract class AbstractList<E>  extends java.util.AbstractCollection<any> implements java.util.List<any>  {
			public static class: java.lang.Class<java.util.AbstractList<any>>;
			public modCount: number;
			public addAll(param0: number, param1: java.util.Collection<any>): boolean;
			public equals(param0: any): boolean;
			public toArray(): native.Array<any>;
			public remove(param0: number): any;
			public contains(param0: any): boolean;
			public removeRange(param0: number, param1: number): void;
			public get(param0: number): any;
			public add(param0: number, param1: any): void;
			public iterator(): java.util.Iterator<any>;
			public clear(): void;
			public isEmpty(): boolean;
			public size(): number;
			public listIterator(param0: number): java.util.ListIterator<any>;
			public toArray(param0: native.Array<any>): native.Array<any>;
			public constructor();
			public subList(param0: number, param1: number): java.util.List<any>;
			public addAll(param0: java.util.Collection<any>): boolean;
			public retainAll(param0: java.util.Collection<any>): boolean;
			public set(param0: number, param1: any): any;
			public remove(param0: any): boolean;
			public containsAll(param0: java.util.Collection<any>): boolean;
			public lastIndexOf(param0: any): number;
			public add(param0: any): boolean;
			public listIterator(): java.util.ListIterator<any>;
			public removeAll(param0: java.util.Collection<any>): boolean;
			public indexOf(param0: any): number;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module util {
		export abstract class AbstractMap<K, V>  extends java.util.Map<any,any> {
			public static class: java.lang.Class<java.util.AbstractMap<any,any>>;
			public clear(): void;
			public equals(param0: any): boolean;
			public entrySet(): java.util.Set<java.util.Map.Entry<any,any>>;
			public isEmpty(): boolean;
			public keySet(): java.util.Set<any>;
			public size(): number;
			public containsValue(param0: any): boolean;
			public constructor();
			public get(param0: any): any;
			public put(param0: any, param1: any): any;
			public toString(): string;
			public clone(): any;
			public remove(param0: any): any;
			public putAll(param0: java.util.Map<any,any>): void;
			public containsKey(param0: any): boolean;
			public values(): java.util.Collection<any>;
			public hashCode(): number;
		}
		export module AbstractMap {
			export class SimpleEntry<K, V>  extends java.lang.Object {
				public static class: java.lang.Class<java.util.AbstractMap.SimpleEntry<any,any>>;
				public constructor(param0: K, param1: V);
				public constructor(param0: java.util.Map.Entry<any,any>);
				public getValue(): V;
				public setValue(param0: V): V;
				public hashCode(): number;
				public equals(param0: any): boolean;
				public getKey(): K;
				public toString(): string;
			}
			export class SimpleImmutableEntry<K, V>  extends java.lang.Object {
				public static class: java.lang.Class<java.util.AbstractMap.SimpleImmutableEntry<any,any>>;
				public constructor(param0: K, param1: V);
				public constructor(param0: java.util.Map.Entry<any,any>);
				public getValue(): V;
				public setValue(param0: V): V;
				public hashCode(): number;
				public equals(param0: any): boolean;
				public getKey(): K;
				public toString(): string;
			}
		}
	}
}

declare module java {
	export module util {
		export abstract class AbstractQueue<E>  extends java.util.AbstractCollection<any> implements java.util.Queue<any>  {
			public static class: java.lang.Class<java.util.AbstractQueue<any>>;
			public clear(): void;
			public equals(param0: any): boolean;
			public toArray(): native.Array<any>;
			public isEmpty(): boolean;
			public size(): number;
			public poll(): any;
			public toArray(param0: native.Array<any>): native.Array<any>;
			public constructor();
			public addAll(param0: java.util.Collection<any>): boolean;
			public retainAll(param0: java.util.Collection<any>): boolean;
			public remove(param0: any): boolean;
			public peek(): any;
			public containsAll(param0: java.util.Collection<any>): boolean;
			public contains(param0: any): boolean;
			public remove(): any;
			public offer(param0: any): boolean;
			public add(param0: any): boolean;
			public removeAll(param0: java.util.Collection<any>): boolean;
			public element(): any;
			public hashCode(): number;
			public iterator(): java.util.Iterator<any>;
		}
	}
}

declare module java {
	export module util {
		export abstract class AbstractSequentialList<E>  extends java.util.AbstractList<any> {
			public static class: java.lang.Class<java.util.AbstractSequentialList<any>>;
			public addAll(param0: number, param1: java.util.Collection<any>): boolean;
			public equals(param0: any): boolean;
			public toArray(): native.Array<any>;
			public remove(param0: number): any;
			public contains(param0: any): boolean;
			public get(param0: number): any;
			public add(param0: number, param1: any): void;
			public iterator(): java.util.Iterator<any>;
			public clear(): void;
			public isEmpty(): boolean;
			public size(): number;
			public listIterator(param0: number): java.util.ListIterator<any>;
			public toArray(param0: native.Array<any>): native.Array<any>;
			public constructor();
			public subList(param0: number, param1: number): java.util.List<any>;
			public addAll(param0: java.util.Collection<any>): boolean;
			public retainAll(param0: java.util.Collection<any>): boolean;
			public set(param0: number, param1: any): any;
			public remove(param0: any): boolean;
			public containsAll(param0: java.util.Collection<any>): boolean;
			public lastIndexOf(param0: any): number;
			public add(param0: any): boolean;
			public listIterator(): java.util.ListIterator<any>;
			public removeAll(param0: java.util.Collection<any>): boolean;
			public indexOf(param0: any): number;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module util {
		export abstract class AbstractSet<E>  extends java.util.AbstractCollection<any> implements java.util.Set<any>  {
			public static class: java.lang.Class<java.util.AbstractSet<any>>;
			public equals(param0: any): boolean;
			public clear(): void;
			public toArray(): native.Array<any>;
			public isEmpty(): boolean;
			public size(): number;
			public toArray(param0: native.Array<any>): native.Array<any>;
			public constructor();
			public addAll(param0: java.util.Collection<any>): boolean;
			public retainAll(param0: java.util.Collection<any>): boolean;
			public remove(param0: any): boolean;
			public containsAll(param0: java.util.Collection<any>): boolean;
			public contains(param0: any): boolean;
			public add(param0: any): boolean;
			public removeAll(param0: java.util.Collection<any>): boolean;
			public hashCode(): number;
			public iterator(): java.util.Iterator<any>;
		}
	}
}

declare module java {
	export module util {
		export class ArrayDeque<E>  extends java.util.AbstractCollection<any> {
			public static class: java.lang.Class<java.util.ArrayDeque<any>>;
			public equals(param0: any): boolean;
			public pollLast(): any;
			public toArray(): native.Array<any>;
			public peekLast(): any;
			public removeLast(): any;
			public removeFirstOccurrence(param0: any): boolean;
			public descendingIterator(): java.util.Iterator<any>;
			public push(param0: any): void;
			public constructor(param0: java.util.Collection<any>);
			public clone(): java.util.ArrayDeque<any>;
			public contains(param0: any): boolean;
			public offerLast(param0: any): boolean;
			public peekFirst(): any;
			public addLast(param0: any): void;
			public element(): any;
			public iterator(): java.util.Iterator<any>;
			public clear(): void;
			public size(): number;
			public isEmpty(): boolean;
			public poll(): any;
			public constructor(param0: number);
			public toArray(param0: native.Array<any>): native.Array<any>;
			public constructor();
			public pop(): any;
			public getFirst(): any;
			public addAll(param0: java.util.Collection<any>): boolean;
			public retainAll(param0: java.util.Collection<any>): boolean;
			public pollFirst(): any;
			public remove(param0: any): boolean;
			public peek(): any;
			public offerFirst(param0: any): boolean;
			public getLast(): any;
			public containsAll(param0: java.util.Collection<any>): boolean;
			public addFirst(param0: any): void;
			public clone(): any;
			public offer(param0: any): boolean;
			public remove(): any;
			public add(param0: any): boolean;
			public removeFirst(): any;
			public removeAll(param0: java.util.Collection<any>): boolean;
			public removeLastOccurrence(param0: any): boolean;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module util {
		export class ArrayList<E>  extends java.util.AbstractList<any> {
			public static class: java.lang.Class<java.util.ArrayList<any>>;
			public addAll(param0: number, param1: java.util.Collection<any>): boolean;
			public equals(param0: any): boolean;
			public toArray(): native.Array<any>;
			public remove(param0: number): any;
			public constructor(param0: java.util.Collection<any>);
			public ensureCapacity(param0: number): void;
			public contains(param0: any): boolean;
			public removeRange(param0: number, param1: number): void;
			public get(param0: number): any;
			public add(param0: number, param1: any): void;
			public iterator(): java.util.Iterator<any>;
			public clear(): void;
			public size(): number;
			public isEmpty(): boolean;
			public listIterator(param0: number): java.util.ListIterator<any>;
			public constructor(param0: number);
			public toArray(param0: native.Array<any>): native.Array<any>;
			public constructor();
			public subList(param0: number, param1: number): java.util.List<any>;
			public addAll(param0: java.util.Collection<any>): boolean;
			public retainAll(param0: java.util.Collection<any>): boolean;
			public set(param0: number, param1: any): any;
			public remove(param0: any): boolean;
			public containsAll(param0: java.util.Collection<any>): boolean;
			public lastIndexOf(param0: any): number;
			public clone(): any;
			public add(param0: any): boolean;
			public listIterator(): java.util.ListIterator<any>;
			public trimToSize(): void;
			public removeAll(param0: java.util.Collection<any>): boolean;
			public indexOf(param0: any): number;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module util {
		export class Arrays extends java.lang.Object {
			public static class: java.lang.Class<java.util.Arrays>;
			public static deepToString(param0: native.Array<any>): string;
			public static copyOf(param0: native.Array<boolean>, param1: number): native.Array<boolean>;
			public static copyOf(param0: native.Array<string>, param1: number): native.Array<string>;
			public static hashCode(param0: native.Array<string>): number;
			public static copyOf(param0: native.Array<any>, param1: number): native.Array<any>;
			public static binarySearch(param0: native.Array<number>, param1: number, param2: number, param3: number): number;
			public static sort(param0: native.Array<number>, param1: number, param2: number): void;
			public static fill(param0: native.Array<boolean>, param1: number, param2: number, param3: boolean): void;
			public static copyOf(param0: native.Array<any>, param1: number, param2: java.lang.Class<any>): native.Array<any>;
			public static binarySearch(param0: native.Array<string>, param1: string): number;
			public static sort(param0: native.Array<any>, param1: java.util.Comparator<any>): void;
			public static binarySearch(param0: native.Array<string>, param1: number, param2: number, param3: string): number;
			public static hashCode(param0: native.Array<any>): number;
			public static copyOfRange(param0: native.Array<boolean>, param1: number, param2: number): native.Array<boolean>;
			public static deepEquals(param0: native.Array<any>, param1: native.Array<any>): boolean;
			public static hashCode(param0: native.Array<number>): number;
			public static sort(param0: native.Array<any>, param1: number, param2: number, param3: java.util.Comparator<any>): void;
			public static binarySearch(param0: native.Array<any>, param1: any): number;
			public static sort(param0: native.Array<number>): void;
			public static hashCode(param0: native.Array<boolean>): number;
			public static sort(param0: native.Array<any>, param1: number, param2: number): void;
			public static copyOfRange(param0: native.Array<number>, param1: number, param2: number): native.Array<number>;
			public static binarySearch(param0: native.Array<number>, param1: number): number;
			public static copyOf(param0: native.Array<number>, param1: number): native.Array<number>;
			public static deepHashCode(param0: native.Array<any>): number;
			public equals(param0: any): boolean;
			public static fill(param0: native.Array<boolean>, param1: boolean): void;
			public static equals(param0: native.Array<any>, param1: native.Array<any>): boolean;
			public static fill(param0: native.Array<number>, param1: number, param2: number, param3: number): void;
			public static fill(param0: native.Array<number>, param1: number): void;
			public static toString(param0: native.Array<string>): string;
			public static binarySearch(param0: native.Array<any>, param1: any, param2: java.util.Comparator<any>): number;
			public static sort(param0: native.Array<string>): void;
			public static sort(param0: native.Array<string>, param1: number, param2: number): void;
			public static equals(param0: native.Array<string>, param1: native.Array<string>): boolean;
			public static toString(param0: native.Array<boolean>): string;
			public static fill(param0: native.Array<any>, param1: number, param2: number, param3: any): void;
			public static equals(param0: native.Array<number>, param1: native.Array<number>): boolean;
			public static equals(param0: native.Array<boolean>, param1: native.Array<boolean>): boolean;
			public static copyOfRange(param0: native.Array<string>, param1: number, param2: number): native.Array<string>;
			public static copyOfRange(param0: native.Array<any>, param1: number, param2: number, param3: java.lang.Class<any>): native.Array<any>;
			public static fill(param0: native.Array<string>, param1: string): void;
			public static binarySearch(param0: native.Array<any>, param1: number, param2: number, param3: any, param4: java.util.Comparator<any>): number;
			public static sort(param0: native.Array<any>): void;
			public static toString(param0: native.Array<number>): string;
			public static copyOfRange(param0: native.Array<any>, param1: number, param2: number): native.Array<any>;
			public static binarySearch(param0: native.Array<any>, param1: number, param2: number, param3: any): number;
			public static fill(param0: native.Array<any>, param1: any): void;
			public static toString(param0: native.Array<any>): string;
			public toString(): string;
			public static asList(param0: native.Array<any>): java.util.List<any>;
			public static fill(param0: native.Array<string>, param1: number, param2: number, param3: string): void;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module util {
		export class BitSet extends java.lang.Object implements java.io.Serializable, java.lang.Cloneable {
			public static class: java.lang.Class<java.util.BitSet>;
			public clear(param0: number): void;
			public equals(param0: any): boolean;
			public set(param0: number, param1: number): void;
			public andNot(param0: java.util.BitSet): void;
			public nextClearBit(param0: number): number;
			public clear(param0: number, param1: number): void;
			public intersects(param0: java.util.BitSet): boolean;
			public flip(param0: number, param1: number): void;
			public set(param0: number, param1: number, param2: boolean): void;
			public clear(): void;
			public nextSetBit(param0: number): number;
			public set(param0: number): void;
			public size(): number;
			public isEmpty(): boolean;
			public cardinality(): number;
			public length(): number;
			public constructor(param0: number);
			public or(param0: java.util.BitSet): void;
			public constructor();
			public flip(param0: number): void;
			public set(param0: number, param1: boolean): void;
			public get(param0: number, param1: number): java.util.BitSet;
			public clone(): any;
			public and(param0: java.util.BitSet): void;
			public toString(): string;
			public get(param0: number): boolean;
			public xor(param0: java.util.BitSet): void;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module util {
		export abstract class Calendar extends java.lang.Object {
			public static class: java.lang.Class<java.util.Calendar>;
			public areFieldsSet: boolean;
			public fields: native.Array<number>;
			public isTimeSet: boolean;
			public time: number;
			public static JANUARY: number;
			public static FEBRUARY: number;
			public static MARCH: number;
			public static APRIL: number;
			public static MAY: number;
			public static JUNE: number;
			public static JULY: number;
			public static AUGUST: number;
			public static SEPTEMBER: number;
			public static OCTOBER: number;
			public static NOVEMBER: number;
			public static DECEMBER: number;
			public static UNDECIMBER: number;
			public static SUNDAY: number;
			public static MONDAY: number;
			public static TUESDAY: number;
			public static WEDNESDAY: number;
			public static THURSDAY: number;
			public static FRIDAY: number;
			public static SATURDAY: number;
			public static ERA: number;
			public static YEAR: number;
			public static MONTH: number;
			public static WEEK_OF_YEAR: number;
			public static WEEK_OF_MONTH: number;
			public static DATE: number;
			public static DAY_OF_MONTH: number;
			public static DAY_OF_YEAR: number;
			public static DAY_OF_WEEK: number;
			public static DAY_OF_WEEK_IN_MONTH: number;
			public static AM_PM: number;
			public static HOUR: number;
			public static HOUR_OF_DAY: number;
			public static MINUTE: number;
			public static SECOND: number;
			public static MILLISECOND: number;
			public static ZONE_OFFSET: number;
			public static DST_OFFSET: number;
			public static FIELD_COUNT: number;
			public static AM: number;
			public static PM: number;
			public static ALL_STYLES: number;
			public static SHORT: number;
			public static LONG: number;
			public getTimeInMillis(): number;
			public computeFields(): void;
			public getTimeZone(): java.util.TimeZone;
			public computeTime(): void;
			public isSet(param0: number): boolean;
			public getDisplayName(param0: number, param1: number, param2: java.util.Locale): string;
			public before(param0: any): boolean;
			public getActualMinimum(param0: number): number;
			public getDisplayNames(param0: number, param1: number, param2: java.util.Locale): java.util.Map<string,java.lang.Integer>;
			public getLeastMaximum(param0: number): number;
			public clear(): void;
			public complete(): void;
			public roll(param0: number, param1: number): void;
			public setTimeInMillis(param0: number): void;
			public getActualMaximum(param0: number): number;
			public setMinimalDaysInFirstWeek(param0: number): void;
			public constructor();
			public isLenient(): boolean;
			public getMinimum(param0: number): number;
			public getTime(): java.util.Date;
			public clone(): any;
			public setFirstDayOfWeek(param0: number): void;
			public clear(param0: number): void;
			public set(param0: number, param1: number, param2: number, param3: number, param4: number): void;
			public equals(param0: any): boolean;
			public getGreatestMinimum(param0: number): number;
			public add(param0: number, param1: number): void;
			public set(param0: number, param1: number): void;
			public getFirstDayOfWeek(): number;
			public set(param0: number, param1: number, param2: number): void;
			public compareTo(param0: java.util.Calendar): number;
			public internalGet(param0: number): number;
			public setLenient(param0: boolean): void;
			public static getInstance(param0: java.util.Locale): java.util.Calendar;
			public static getAvailableLocales(): native.Array<java.util.Locale>;
			public get(param0: number): number;
			public getMaximum(param0: number): number;
			public set(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): void;
			public static getInstance(param0: java.util.TimeZone): java.util.Calendar;
			public roll(param0: number, param1: boolean): void;
			public static getInstance(param0: java.util.TimeZone, param1: java.util.Locale): java.util.Calendar;
			public setTime(param0: java.util.Date): void;
			public static getInstance(): java.util.Calendar;
			public getMinimalDaysInFirstWeek(): number;
			public toString(): string;
			public constructor(param0: java.util.TimeZone, param1: java.util.Locale);
			public setTimeZone(param0: java.util.TimeZone): void;
			public after(param0: any): boolean;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module util {
		export class Collection<E>  extends java.lang.Iterable<any> {
			public static class: java.lang.Class<java.util.Collection<any>>;
			/**
			 * Constructs a new instance of the java.util.Collection<any> interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				add(param0: any): boolean;
				addAll(param0: java.util.Collection<any>): boolean;
				clear(): void;
				contains(param0: any): boolean;
				containsAll(param0: java.util.Collection<any>): boolean;
				equals(param0: any): boolean;
				hashCode(): number;
				isEmpty(): boolean;
				iterator(): java.util.Iterator<any>;
				remove(param0: any): boolean;
				removeAll(param0: java.util.Collection<any>): boolean;
				retainAll(param0: java.util.Collection<any>): boolean;
				size(): number;
				toArray(): native.Array<any>;
				toArray(param0: native.Array<any>): native.Array<any>;
				iterator(): java.util.Iterator<any>;
			});
			public constructor();
			public clear(): void;
			public equals(param0: any): boolean;
			public toArray(): native.Array<any>;
			public isEmpty(): boolean;
			public size(): number;
			public toArray(param0: native.Array<any>): native.Array<any>;
			public addAll(param0: java.util.Collection<any>): boolean;
			public retainAll(param0: java.util.Collection<any>): boolean;
			public remove(param0: any): boolean;
			public containsAll(param0: java.util.Collection<any>): boolean;
			public contains(param0: any): boolean;
			public add(param0: any): boolean;
			public removeAll(param0: java.util.Collection<any>): boolean;
			public hashCode(): number;
			public iterator(): java.util.Iterator<any>;
		}
	}
}

declare module java {
	export module util {
		export class Collections extends java.lang.Object {
			public static class: java.lang.Class<java.util.Collections>;
			public static EMPTY_LIST: java.util.List<any>;
			public static EMPTY_SET: java.util.Set<any>;
			public static EMPTY_MAP: java.util.Map<any,any>;
			public static sort(param0: java.util.List<any>, param1: java.util.Comparator<any>): void;
			public static lastIndexOfSubList(param0: java.util.List<any>, param1: java.util.List<any>): number;
			public static enumeration(param0: java.util.Collection<any>): java.util.Enumeration<any>;
			public static swap(param0: java.util.List<any>, param1: number, param2: number): void;
			public static rotate(param0: java.util.List<any>, param1: number): void;
			public static unmodifiableSortedSet(param0: java.util.SortedSet<any>): java.util.SortedSet<any>;
			public static singletonMap(param0: any, param1: any): java.util.Map<any,any>;
			public static max(param0: java.util.Collection<any>): any;
			public static unmodifiableList(param0: java.util.List<any>): java.util.List<any>;
			public static unmodifiableSortedMap(param0: java.util.SortedMap<any,any>): java.util.SortedMap<any,any>;
			public static min(param0: java.util.Collection<any>, param1: java.util.Comparator<any>): any;
			public static singletonList(param0: any): java.util.List<any>;
			public static synchronizedMap(param0: java.util.Map<any,any>): java.util.Map<any,any>;
			public static emptySet(): java.util.Set<any>;
			public static max(param0: java.util.Collection<any>, param1: java.util.Comparator<any>): any;
			public static emptyMap(): java.util.Map<any,any>;
			public static addAll(param0: java.util.Collection<any>, param1: native.Array<any>): boolean;
			public static fill(param0: java.util.List<any>, param1: any): void;
			public static nCopies(param0: number, param1: any): java.util.List<any>;
			public static unmodifiableCollection(param0: java.util.Collection<any>): java.util.Collection<any>;
			public static reverseOrder(param0: java.util.Comparator<any>): java.util.Comparator<any>;
			public static synchronizedSortedSet(param0: java.util.SortedSet<any>): java.util.SortedSet<any>;
			public static synchronizedCollection(param0: java.util.Collection<any>): java.util.Collection<any>;
			public static checkedSortedMap(param0: java.util.SortedMap<any,any>, param1: java.lang.Class<any>, param2: java.lang.Class<any>): java.util.SortedMap<any,any>;
			public static shuffle(param0: java.util.List<any>, param1: java.util.Random): void;
			public static unmodifiableSet(param0: java.util.Set<any>): java.util.Set<any>;
			public static disjoint(param0: java.util.Collection<any>, param1: java.util.Collection<any>): boolean;
			public static synchronizedSortedMap(param0: java.util.SortedMap<any,any>): java.util.SortedMap<any,any>;
			public static checkedCollection(param0: java.util.Collection<any>, param1: java.lang.Class<any>): java.util.Collection<any>;
			public static checkedMap(param0: java.util.Map<any,any>, param1: java.lang.Class<any>, param2: java.lang.Class<any>): java.util.Map<any,any>;
			public static reverse(param0: java.util.List<any>): void;
			public static emptyList(): java.util.List<any>;
			public static binarySearch(param0: java.util.List<any>, param1: any, param2: java.util.Comparator<any>): number;
			public static singleton(param0: any): java.util.Set<any>;
			public static asLifoQueue(param0: java.util.Deque<any>): java.util.Queue<any>;
			public static frequency(param0: java.util.Collection<any>, param1: any): number;
			public static checkedList(param0: java.util.List<any>, param1: java.lang.Class<any>): java.util.List<any>;
			public static synchronizedSet(param0: java.util.Set<any>): java.util.Set<any>;
			public static indexOfSubList(param0: java.util.List<any>, param1: java.util.List<any>): number;
			public static checkedSet(param0: java.util.Set<any>, param1: java.lang.Class<any>): java.util.Set<any>;
			public static checkedSortedSet(param0: java.util.SortedSet<any>, param1: java.lang.Class<any>): java.util.SortedSet<any>;
			public static list(param0: java.util.Enumeration<any>): java.util.ArrayList<any>;
			public static newSetFromMap(param0: java.util.Map<any,any>): java.util.Set<any>;
			public static min(param0: java.util.Collection<any>): any;
			public static unmodifiableMap(param0: java.util.Map<any,any>): java.util.Map<any,any>;
			public static shuffle(param0: java.util.List<any>): void;
			public static reverseOrder(): java.util.Comparator<any>;
			public static replaceAll(param0: java.util.List<any>, param1: any, param2: any): boolean;
			public static sort(param0: java.util.List<any>): void;
			public static binarySearch(param0: java.util.List<any>, param1: any): number;
			public static copy(param0: java.util.List<any>, param1: java.util.List<any>): void;
			public static synchronizedList(param0: java.util.List<any>): java.util.List<any>;
		}
	}
}

declare module java {
	export module util {
		export class Comparator<T>  extends java.lang.Object {
			public static class: java.lang.Class<java.util.Comparator<any>>;
			/**
			 * Constructs a new instance of the java.util.Comparator<any> interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				compare(param0: T, param1: T): number;
				equals(param0: any): boolean;
			});
			public constructor();
			public equals(param0: any): boolean;
			public compare(param0: T, param1: T): number;
		}
	}
}

declare module java {
	export module util {
		export class ConcurrentModificationException extends java.lang.RuntimeException {
			public static class: java.lang.Class<java.util.ConcurrentModificationException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module util {
		export class Currency extends java.lang.Object implements java.io.Serializable {
			public static class: java.lang.Class<java.util.Currency>;
			public getDefaultFractionDigits(): number;
			public static getInstance(param0: string): java.util.Currency;
			public static getInstance(param0: java.util.Locale): java.util.Currency;
			public toString(): string;
			public getCurrencyCode(): string;
			public getSymbol(): string;
			public getSymbol(param0: java.util.Locale): string;
		}
	}
}

declare module java {
	export module util {
		export class Date extends java.lang.Object {
			public static class: java.lang.Class<java.util.Date>;
			public equals(param0: any): boolean;
			/** @deprecated */
			public constructor(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number);
			/** @deprecated */
			public getDay(): number;
			/** @deprecated */
			public getDate(): number;
			public before(param0: java.util.Date): boolean;
			/** @deprecated */
			public getMonth(): number;
			/** @deprecated */
			public constructor(param0: number, param1: number, param2: number);
			public compareTo(param0: java.util.Date): number;
			/** @deprecated */
			public getMinutes(): number;
			/** @deprecated */
			public getHours(): number;
			/** @deprecated */
			public setYear(param0: number): void;
			/** @deprecated */
			public getSeconds(): number;
			/** @deprecated */
			public setMinutes(param0: number): void;
			/** @deprecated */
			public setSeconds(param0: number): void;
			/** @deprecated */
			public constructor(param0: number, param1: number, param2: number, param3: number, param4: number);
			/** @deprecated */
			public constructor(param0: string);
			/** @deprecated */
			public static parse(param0: string): number;
			public constructor(param0: number);
			/** @deprecated */
			public toLocaleString(): string;
			/** @deprecated */
			public setMonth(param0: number): void;
			public after(param0: java.util.Date): boolean;
			public constructor();
			public clone(): any;
			/** @deprecated */
			public toGMTString(): string;
			public toString(): string;
			public setTime(param0: number): void;
			public getTime(): number;
			/** @deprecated */
			public setDate(param0: number): void;
			/** @deprecated */
			public getTimezoneOffset(): number;
			/** @deprecated */
			public setHours(param0: number): void;
			/** @deprecated */
			public static UTC(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): number;
			/** @deprecated */
			public getYear(): number;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module util {
		export class Deque<E>  extends java.util.Queue<any> {
			public static class: java.lang.Class<java.util.Deque<any>>;
			/**
			 * Constructs a new instance of the java.util.Deque<any> interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				addFirst(param0: any): void;
				addLast(param0: any): void;
				offerFirst(param0: any): boolean;
				offerLast(param0: any): boolean;
				removeFirst(): any;
				removeLast(): any;
				pollFirst(): any;
				pollLast(): any;
				getFirst(): any;
				getLast(): any;
				peekFirst(): any;
				peekLast(): any;
				removeFirstOccurrence(param0: any): boolean;
				removeLastOccurrence(param0: any): boolean;
				add(param0: any): boolean;
				offer(param0: any): boolean;
				remove(): any;
				poll(): any;
				element(): any;
				peek(): any;
				push(param0: any): void;
				pop(): any;
				remove(param0: any): boolean;
				contains(param0: any): boolean;
				size(): number;
				iterator(): java.util.Iterator<any>;
				descendingIterator(): java.util.Iterator<any>;
				add(param0: any): boolean;
				offer(param0: any): boolean;
				remove(): any;
				poll(): any;
				element(): any;
				peek(): any;
				add(param0: any): boolean;
				addAll(param0: java.util.Collection<any>): boolean;
				clear(): void;
				contains(param0: any): boolean;
				containsAll(param0: java.util.Collection<any>): boolean;
				equals(param0: any): boolean;
				hashCode(): number;
				isEmpty(): boolean;
				iterator(): java.util.Iterator<any>;
				remove(param0: any): boolean;
				removeAll(param0: java.util.Collection<any>): boolean;
				retainAll(param0: java.util.Collection<any>): boolean;
				size(): number;
				toArray(): native.Array<any>;
				toArray(param0: native.Array<any>): native.Array<any>;
				iterator(): java.util.Iterator<any>;
			});
			public constructor();
			public equals(param0: any): boolean;
			public pollLast(): any;
			public toArray(): native.Array<any>;
			public peekLast(): any;
			public removeLast(): any;
			public removeFirstOccurrence(param0: any): boolean;
			public descendingIterator(): java.util.Iterator<any>;
			public push(param0: any): void;
			public contains(param0: any): boolean;
			public offerLast(param0: any): boolean;
			public peekFirst(): any;
			public addLast(param0: any): void;
			public element(): any;
			public iterator(): java.util.Iterator<any>;
			public clear(): void;
			public size(): number;
			public isEmpty(): boolean;
			public poll(): any;
			public toArray(param0: native.Array<any>): native.Array<any>;
			public pop(): any;
			public getFirst(): any;
			public addAll(param0: java.util.Collection<any>): boolean;
			public retainAll(param0: java.util.Collection<any>): boolean;
			public pollFirst(): any;
			public peek(): any;
			public remove(param0: any): boolean;
			public offerFirst(param0: any): boolean;
			public getLast(): any;
			public containsAll(param0: java.util.Collection<any>): boolean;
			public addFirst(param0: any): void;
			public offer(param0: any): boolean;
			public remove(): any;
			public add(param0: any): boolean;
			public removeFirst(): any;
			public removeAll(param0: java.util.Collection<any>): boolean;
			public removeLastOccurrence(param0: any): boolean;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module util {
		export abstract class Dictionary<K, V>  extends java.lang.Object {
			public static class: java.lang.Class<java.util.Dictionary<any,any>>;
			public elements(): java.util.Enumeration<V>;
			public isEmpty(): boolean;
			public put(param0: K, param1: V): V;
			public size(): number;
			public remove(param0: any): V;
			public constructor();
			public keys(): java.util.Enumeration<K>;
			public get(param0: any): V;
		}
	}
}

declare module java {
	export module util {
		export class DuplicateFormatFlagsException extends java.util.IllegalFormatException {
			public static class: java.lang.Class<java.util.DuplicateFormatFlagsException>;
			public getMessage(): string;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public getFlags(): string;
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module util {
		export class EmptyStackException extends java.lang.RuntimeException {
			public static class: java.lang.Class<java.util.EmptyStackException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module util {
		export class EnumMap<K, V>  extends java.util.AbstractMap<any,any> {
			public static class: java.lang.Class<java.util.EnumMap<any,any>>;
			public clear(): void;
			public equals(param0: any): boolean;
			public entrySet(): java.util.Set<java.util.Map.Entry<any,any>>;
			public keySet(): java.util.Set<any>;
			public size(): number;
			public isEmpty(): boolean;
			public clone(): java.util.EnumMap<any,any>;
			public containsValue(param0: any): boolean;
			public constructor(param0: java.util.Map<any,any>);
			public constructor();
			public get(param0: any): any;
			public put(param0: any, param1: any): any;
			public constructor(param0: java.util.EnumMap<any,any>);
			public clone(): any;
			public remove(param0: any): any;
			public putAll(param0: java.util.Map<any,any>): void;
			public containsKey(param0: any): boolean;
			public constructor(param0: java.lang.Class<any>);
			public values(): java.util.Collection<any>;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module util {
		export abstract class EnumSet<E>  extends java.util.AbstractSet<any> {
			public static class: java.lang.Class<java.util.EnumSet<any>>;
			public equals(param0: any): boolean;
			public toArray(): native.Array<any>;
			public static copyOf(param0: java.util.EnumSet<any>): java.util.EnumSet<any>;
			public static of(param0: java.lang.Enum<any>, param1: java.lang.Enum<any>, param2: java.lang.Enum<any>, param3: java.lang.Enum<any>, param4: java.lang.Enum<any>): java.util.EnumSet<any>;
			public contains(param0: any): boolean;
			public static of(param0: java.lang.Enum<any>, param1: java.lang.Enum<any>): java.util.EnumSet<any>;
			public static noneOf(param0: java.lang.Class<any>): java.util.EnumSet<any>;
			public static range(param0: java.lang.Enum<any>, param1: java.lang.Enum<any>): java.util.EnumSet<any>;
			public iterator(): java.util.Iterator<any>;
			public clear(): void;
			public isEmpty(): boolean;
			public size(): number;
			public static allOf(param0: java.lang.Class<any>): java.util.EnumSet<any>;
			public toArray(param0: native.Array<any>): native.Array<any>;
			public static of(param0: java.lang.Enum<any>): java.util.EnumSet<any>;
			public static of(param0: java.lang.Enum<any>, param1: java.lang.Enum<any>, param2: java.lang.Enum<any>): java.util.EnumSet<any>;
			public addAll(param0: java.util.Collection<any>): boolean;
			public retainAll(param0: java.util.Collection<any>): boolean;
			public static of(param0: java.lang.Enum<any>, param1: java.lang.Enum<any>, param2: java.lang.Enum<any>, param3: java.lang.Enum<any>): java.util.EnumSet<any>;
			public remove(param0: any): boolean;
			public containsAll(param0: java.util.Collection<any>): boolean;
			public clone(): any;
			public static complementOf(param0: java.util.EnumSet<any>): java.util.EnumSet<any>;
			public add(param0: any): boolean;
			public removeAll(param0: java.util.Collection<any>): boolean;
			public clone(): java.util.EnumSet<any>;
			public static copyOf(param0: java.util.Collection<any>): java.util.EnumSet<any>;
			public static of(param0: java.lang.Enum<any>, param1: native.Array<java.lang.Enum<any>>): java.util.EnumSet<any>;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module util {
		export class Enumeration<E>  extends java.lang.Object {
			public static class: java.lang.Class<java.util.Enumeration<any>>;
			/**
			 * Constructs a new instance of the java.util.Enumeration<any> interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				hasMoreElements(): boolean;
				nextElement(): E;
			});
			public constructor();
			public hasMoreElements(): boolean;
			public nextElement(): E;
		}
	}
}

declare module java {
	export module util {
		export class EventListener extends java.lang.Object {
			public static class: java.lang.Class<java.util.EventListener>;
			/**
			 * Constructs a new instance of the java.util.EventListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
			});
			public constructor();
		}
	}
}

declare module java {
	export module util {
		export abstract class EventListenerProxy extends java.lang.Object implements java.util.EventListener {
			public static class: java.lang.Class<java.util.EventListenerProxy>;
			public getListener(): java.util.EventListener;
			public constructor(param0: java.util.EventListener);
		}
	}
}

declare module java {
	export module util {
		export class EventObject extends java.lang.Object implements java.io.Serializable {
			public static class: java.lang.Class<java.util.EventObject>;
			public source: any;
			public toString(): string;
			public getSource(): any;
			public constructor(param0: any);
		}
	}
}

declare module java {
	export module util {
		export class FormatFlagsConversionMismatchException extends java.util.IllegalFormatException implements java.io.Serializable {
			public static class: java.lang.Class<java.util.FormatFlagsConversionMismatchException>;
			public constructor(param0: string, param1: string);
			public getMessage(): string;
			public getConversion(): string;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public getFlags(): string;
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module util {
		export class Formattable extends java.lang.Object {
			public static class: java.lang.Class<java.util.Formattable>;
			/**
			 * Constructs a new instance of the java.util.Formattable interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				formatTo(param0: java.util.Formatter, param1: number, param2: number, param3: number): void;
			});
			public constructor();
			public formatTo(param0: java.util.Formatter, param1: number, param2: number, param3: number): void;
		}
	}
}

declare module java {
	export module util {
		export class FormattableFlags extends java.lang.Object {
			public static class: java.lang.Class<java.util.FormattableFlags>;
			public static LEFT_JUSTIFY: number;
			public static UPPERCASE: number;
			public static ALTERNATE: number;
		}
	}
}

declare module java {
	export module util {
		export class Formatter extends java.lang.Object implements java.io.Closeable, java.io.Flushable {
			public static class: java.lang.Class<java.util.Formatter>;
			public constructor(param0: java.lang.Appendable);
			public flush(): void;
			public ioException(): java.io.IOException;
			public constructor(param0: java.io.PrintStream);
			public constructor(param0: java.io.OutputStream, param1: string);
			public constructor();
			public constructor(param0: java.util.Locale);
			public constructor(param0: java.io.File, param1: string, param2: java.util.Locale);
			public out(): java.lang.Appendable;
			public format(param0: string, param1: native.Array<any>): java.util.Formatter;
			public constructor(param0: java.lang.Appendable, param1: java.util.Locale);
			public constructor(param0: string, param1: string);
			public format(param0: java.util.Locale, param1: string, param2: native.Array<any>): java.util.Formatter;
			public constructor(param0: java.io.File, param1: string);
			public toString(): string;
			public constructor(param0: java.io.File);
			public constructor(param0: java.io.OutputStream);
			public locale(): java.util.Locale;
			public constructor(param0: string, param1: string, param2: java.util.Locale);
			public close(): void;
			public constructor(param0: string);
			public constructor(param0: java.io.OutputStream, param1: string, param2: java.util.Locale);
		}
		export module Formatter {
			export class BigDecimalLayoutForm {
				public static class: java.lang.Class<java.util.Formatter.BigDecimalLayoutForm>;
				public static DECIMAL_FLOAT: java.util.Formatter.BigDecimalLayoutForm;
				public static SCIENTIFIC: java.util.Formatter.BigDecimalLayoutForm;
				public static valueOf(param0: string): java.util.Formatter.BigDecimalLayoutForm;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
				public static values(): native.Array<java.util.Formatter.BigDecimalLayoutForm>;
			}
		}
	}
}

declare module java {
	export module util {
		export class FormatterClosedException extends java.lang.IllegalStateException implements java.io.Serializable {
			public static class: java.lang.Class<java.util.FormatterClosedException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module util {
		export class GregorianCalendar extends java.util.Calendar {
			public static class: java.lang.Class<java.util.GregorianCalendar>;
			public static BC: number;
			public static AD: number;
			public constructor(param0: number, param1: number, param2: number);
			public equals(param0: any): boolean;
			public setGregorianChange(param0: java.util.Date): void;
			public getGregorianChange(): java.util.Date;
			public getGreatestMinimum(param0: number): number;
			public roll(param0: number, param1: number): void;
			public computeFields(): void;
			public getActualMaximum(param0: number): number;
			public isLeapYear(param0: number): boolean;
			public constructor();
			public computeTime(): void;
			public constructor(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number);
			public constructor(param0: java.util.Locale);
			public add(param0: number, param1: number): void;
			public getMinimum(param0: number): number;
			public constructor(param0: java.util.TimeZone, param1: java.util.Locale);
			public constructor(param0: number, param1: number, param2: number, param3: number, param4: number);
			public constructor(param0: java.util.TimeZone);
			public getActualMinimum(param0: number): number;
			public getMaximum(param0: number): number;
			public getLeastMaximum(param0: number): number;
			public roll(param0: number, param1: boolean): void;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module util {
		export class HashMap<K, V>  extends java.util.AbstractMap<any,any> {
			public static class: java.lang.Class<java.util.HashMap<any,any>>;
			public clear(): void;
			public equals(param0: any): boolean;
			public isEmpty(): boolean;
			public size(): number;
			public keySet(): java.util.Set<any>;
			public entrySet(): java.util.Set<java.util.Map.Entry<any,any>>;
			public containsValue(param0: any): boolean;
			public constructor(param0: number);
			public constructor(param0: java.util.Map<any,any>);
			public constructor();
			public get(param0: any): any;
			public put(param0: any, param1: any): any;
			public clone(): any;
			public remove(param0: any): any;
			public putAll(param0: java.util.Map<any,any>): void;
			public containsKey(param0: any): boolean;
			public values(): java.util.Collection<any>;
			public constructor(param0: number, param1: number);
			public hashCode(): number;
		}
	}
}

declare module java {
	export module util {
		export class HashSet<E>  extends java.util.AbstractSet<any> {
			public static class: java.lang.Class<java.util.HashSet<any>>;
			public clear(): void;
			public equals(param0: any): boolean;
			public toArray(): native.Array<any>;
			public isEmpty(): boolean;
			public size(): number;
			public constructor(param0: number);
			public toArray(param0: native.Array<any>): native.Array<any>;
			public constructor();
			public constructor(param0: java.util.Collection<any>);
			public addAll(param0: java.util.Collection<any>): boolean;
			public retainAll(param0: java.util.Collection<any>): boolean;
			public remove(param0: any): boolean;
			public containsAll(param0: java.util.Collection<any>): boolean;
			public contains(param0: any): boolean;
			public clone(): any;
			public add(param0: any): boolean;
			public removeAll(param0: java.util.Collection<any>): boolean;
			public constructor(param0: number, param1: number);
			public iterator(): java.util.Iterator<any>;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module util {
		export class Hashtable<K, V>  extends java.util.Dictionary<any,any> {
			public static class: java.lang.Class<java.util.Hashtable<any,any>>;
			public clear(): void;
			public equals(param0: any): boolean;
			public isEmpty(): boolean;
			public size(): number;
			public keySet(): java.util.Set<any>;
			public entrySet(): java.util.Set<java.util.Map.Entry<any,any>>;
			public containsValue(param0: any): boolean;
			public constructor(param0: number);
			public constructor(param0: java.util.Map<any,any>);
			public constructor();
			public get(param0: any): any;
			public put(param0: any, param1: any): any;
			public contains(param0: any): boolean;
			public clone(): any;
			public toString(): string;
			public keys(): java.util.Enumeration<any>;
			public remove(param0: any): any;
			public putAll(param0: java.util.Map<any,any>): void;
			public containsKey(param0: any): boolean;
			public rehash(): void;
			public values(): java.util.Collection<any>;
			public constructor(param0: number, param1: number);
			public elements(): java.util.Enumeration<any>;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module util {
		export class IdentityHashMap<K, V>  extends java.util.AbstractMap<any,any> {
			public static class: java.lang.Class<java.util.IdentityHashMap<any,any>>;
			public clear(): void;
			public equals(param0: any): boolean;
			public entrySet(): java.util.Set<java.util.Map.Entry<any,any>>;
			public keySet(): java.util.Set<any>;
			public isEmpty(): boolean;
			public size(): number;
			public containsValue(param0: any): boolean;
			public constructor(param0: number);
			public constructor(param0: java.util.Map<any,any>);
			public constructor();
			public get(param0: any): any;
			public put(param0: any, param1: any): any;
			public clone(): any;
			public remove(param0: any): any;
			public putAll(param0: java.util.Map<any,any>): void;
			public containsKey(param0: any): boolean;
			public values(): java.util.Collection<any>;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module util {
		export class IllegalFormatCodePointException extends java.util.IllegalFormatException implements java.io.Serializable {
			public static class: java.lang.Class<java.util.IllegalFormatCodePointException>;
			public getMessage(): string;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public getCodePoint(): number;
			public constructor(param0: number);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module util {
		export class IllegalFormatConversionException extends java.util.IllegalFormatException implements java.io.Serializable {
			public static class: java.lang.Class<java.util.IllegalFormatConversionException>;
			public getMessage(): string;
			public getConversion(): string;
			public getArgumentClass(): java.lang.Class<any>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Class<any>);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module util {
		export class IllegalFormatException extends java.lang.IllegalArgumentException implements java.io.Serializable {
			public static class: java.lang.Class<java.util.IllegalFormatException>;
		}
	}
}

declare module java {
	export module util {
		export class IllegalFormatFlagsException extends java.util.IllegalFormatException implements java.io.Serializable {
			public static class: java.lang.Class<java.util.IllegalFormatFlagsException>;
			public getMessage(): string;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public getFlags(): string;
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module util {
		export class IllegalFormatPrecisionException extends java.util.IllegalFormatException {
			public static class: java.lang.Class<java.util.IllegalFormatPrecisionException>;
			public getMessage(): string;
			public getPrecision(): number;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor(param0: number);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module util {
		export class IllegalFormatWidthException extends java.util.IllegalFormatException {
			public static class: java.lang.Class<java.util.IllegalFormatWidthException>;
			public getMessage(): string;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor(param0: number);
			public getWidth(): number;
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module util {
		export class InputMismatchException extends java.util.NoSuchElementException implements java.io.Serializable {
			public static class: java.lang.Class<java.util.InputMismatchException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module util {
		export class InvalidPropertiesFormatException extends java.io.IOException {
			public static class: java.lang.Class<java.util.InvalidPropertiesFormatException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module util {
		export class Iterator<E>  extends java.lang.Object {
			public static class: java.lang.Class<java.util.Iterator<any>>;
			/**
			 * Constructs a new instance of the java.util.Iterator<any> interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				hasNext(): boolean;
				next(): E;
				remove(): void;
			});
			public constructor();
			public next(): E;
			public hasNext(): boolean;
			public remove(): void;
		}
	}
}

declare module java {
	export module util {
		export class LinkedHashMap<K, V>  extends java.util.HashMap<any,any> {
			public static class: java.lang.Class<java.util.LinkedHashMap<any,any>>;
			public clear(): void;
			public equals(param0: any): boolean;
			public entrySet(): java.util.Set<java.util.Map.Entry<any,any>>;
			public isEmpty(): boolean;
			public keySet(): java.util.Set<any>;
			public size(): number;
			public containsValue(param0: any): boolean;
			public constructor(param0: number);
			public constructor(param0: java.util.Map<any,any>);
			public constructor();
			public get(param0: any): any;
			public put(param0: any, param1: any): any;
			public constructor(param0: number, param1: number, param2: boolean);
			public removeEldestEntry(param0: java.util.Map.Entry<any,any>): boolean;
			public remove(param0: any): any;
			public putAll(param0: java.util.Map<any,any>): void;
			public containsKey(param0: any): boolean;
			public values(): java.util.Collection<any>;
			public constructor(param0: number, param1: number);
			public hashCode(): number;
		}
	}
}

declare module java {
	export module util {
		export class LinkedHashSet<E>  extends java.util.HashSet<any> {
			public static class: java.lang.Class<java.util.LinkedHashSet<any>>;
			public clear(): void;
			public equals(param0: any): boolean;
			public toArray(): native.Array<any>;
			public isEmpty(): boolean;
			public size(): number;
			public constructor(param0: number);
			public toArray(param0: native.Array<any>): native.Array<any>;
			public constructor();
			public constructor(param0: java.util.Collection<any>);
			public addAll(param0: java.util.Collection<any>): boolean;
			public retainAll(param0: java.util.Collection<any>): boolean;
			public remove(param0: any): boolean;
			public containsAll(param0: java.util.Collection<any>): boolean;
			public contains(param0: any): boolean;
			public add(param0: any): boolean;
			public removeAll(param0: java.util.Collection<any>): boolean;
			public constructor(param0: number, param1: number);
			public hashCode(): number;
			public iterator(): java.util.Iterator<any>;
		}
	}
}

declare module java {
	export module util {
		export class LinkedList<E>  extends java.util.AbstractSequentialList<any> {
			public static class: java.lang.Class<java.util.LinkedList<any>>;
			public addAll(param0: number, param1: java.util.Collection<any>): boolean;
			public peekLast(): any;
			public removeLast(): any;
			public push(param0: any): void;
			public constructor(param0: java.util.Collection<any>);
			public offerLast(param0: any): boolean;
			public element(): any;
			public clear(): void;
			public poll(): any;
			public listIterator(param0: number): java.util.ListIterator<any>;
			public toArray(param0: native.Array<any>): native.Array<any>;
			public constructor();
			public addAll(param0: java.util.Collection<any>): boolean;
			public getFirst(): any;
			public set(param0: number, param1: any): any;
			public pollFirst(): any;
			public getLast(): any;
			public containsAll(param0: java.util.Collection<any>): boolean;
			public lastIndexOf(param0: any): number;
			public clone(): any;
			public remove(): any;
			public add(param0: any): boolean;
			public removeFirst(): any;
			public equals(param0: any): boolean;
			public pollLast(): any;
			public toArray(): native.Array<any>;
			public remove(param0: number): any;
			public descendingIterator(): java.util.Iterator<any>;
			public removeFirstOccurrence(param0: any): boolean;
			public contains(param0: any): boolean;
			public get(param0: number): any;
			public peekFirst(): any;
			public addLast(param0: any): void;
			public add(param0: number, param1: any): void;
			public iterator(): java.util.Iterator<any>;
			public size(): number;
			public isEmpty(): boolean;
			public pop(): any;
			public subList(param0: number, param1: number): java.util.List<any>;
			public retainAll(param0: java.util.Collection<any>): boolean;
			public remove(param0: any): boolean;
			public peek(): any;
			public offerFirst(param0: any): boolean;
			public addFirst(param0: any): void;
			public offer(param0: any): boolean;
			public listIterator(): java.util.ListIterator<any>;
			public removeAll(param0: java.util.Collection<any>): boolean;
			public indexOf(param0: any): number;
			public removeLastOccurrence(param0: any): boolean;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module util {
		export class List<E>  extends java.util.Collection<any> {
			public static class: java.lang.Class<java.util.List<any>>;
			/**
			 * Constructs a new instance of the java.util.List<any> interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				add(param0: number, param1: any): void;
				add(param0: any): boolean;
				addAll(param0: number, param1: java.util.Collection<any>): boolean;
				addAll(param0: java.util.Collection<any>): boolean;
				clear(): void;
				contains(param0: any): boolean;
				containsAll(param0: java.util.Collection<any>): boolean;
				equals(param0: any): boolean;
				get(param0: number): any;
				hashCode(): number;
				indexOf(param0: any): number;
				isEmpty(): boolean;
				iterator(): java.util.Iterator<any>;
				lastIndexOf(param0: any): number;
				listIterator(): java.util.ListIterator<any>;
				listIterator(param0: number): java.util.ListIterator<any>;
				remove(param0: number): any;
				remove(param0: any): boolean;
				removeAll(param0: java.util.Collection<any>): boolean;
				retainAll(param0: java.util.Collection<any>): boolean;
				set(param0: number, param1: any): any;
				size(): number;
				subList(param0: number, param1: number): java.util.List<any>;
				toArray(): native.Array<any>;
				toArray(param0: native.Array<any>): native.Array<any>;
				add(param0: any): boolean;
				addAll(param0: java.util.Collection<any>): boolean;
				clear(): void;
				contains(param0: any): boolean;
				containsAll(param0: java.util.Collection<any>): boolean;
				equals(param0: any): boolean;
				hashCode(): number;
				isEmpty(): boolean;
				iterator(): java.util.Iterator<any>;
				remove(param0: any): boolean;
				removeAll(param0: java.util.Collection<any>): boolean;
				retainAll(param0: java.util.Collection<any>): boolean;
				size(): number;
				toArray(): native.Array<any>;
				toArray(param0: native.Array<any>): native.Array<any>;
				iterator(): java.util.Iterator<any>;
			});
			public constructor();
			public addAll(param0: number, param1: java.util.Collection<any>): boolean;
			public equals(param0: any): boolean;
			public toArray(): native.Array<any>;
			public remove(param0: number): any;
			public contains(param0: any): boolean;
			public get(param0: number): any;
			public add(param0: number, param1: any): void;
			public iterator(): java.util.Iterator<any>;
			public clear(): void;
			public isEmpty(): boolean;
			public size(): number;
			public listIterator(param0: number): java.util.ListIterator<any>;
			public toArray(param0: native.Array<any>): native.Array<any>;
			public subList(param0: number, param1: number): java.util.List<any>;
			public addAll(param0: java.util.Collection<any>): boolean;
			public retainAll(param0: java.util.Collection<any>): boolean;
			public set(param0: number, param1: any): any;
			public remove(param0: any): boolean;
			public containsAll(param0: java.util.Collection<any>): boolean;
			public lastIndexOf(param0: any): number;
			public add(param0: any): boolean;
			public listIterator(): java.util.ListIterator<any>;
			public removeAll(param0: java.util.Collection<any>): boolean;
			public indexOf(param0: any): number;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module util {
		export class ListIterator<E>  extends java.util.Iterator<any> {
			public static class: java.lang.Class<java.util.ListIterator<any>>;
			/**
			 * Constructs a new instance of the java.util.ListIterator<any> interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				add(param0: any): void;
				hasNext(): boolean;
				hasPrevious(): boolean;
				next(): any;
				nextIndex(): number;
				previous(): any;
				previousIndex(): number;
				remove(): void;
				set(param0: any): void;
			});
			public constructor();
			public next(): any;
			public previous(): any;
			public hasPrevious(): boolean;
			public previousIndex(): number;
			public hasNext(): boolean;
			public set(param0: any): void;
			public nextIndex(): number;
			public remove(): void;
			public add(param0: any): void;
		}
	}
}

declare module java {
	export module util {
		export abstract class ListResourceBundle extends java.util.ResourceBundle {
			public static class: java.lang.Class<java.util.ListResourceBundle>;
			public handleGetObject(param0: string): any;
			public handleKeySet(): java.util.Set<string>;
			public getContents(): native.Array<native.Array<any>>;
			public constructor();
			public getKeys(): java.util.Enumeration<string>;
		}
	}
}

declare module java {
	export module util {
		export class Locale extends java.lang.Object implements java.lang.Cloneable, java.io.Serializable {
			public static class: java.lang.Class<java.util.Locale>;
			public static CANADA: java.util.Locale;
			public static CANADA_FRENCH: java.util.Locale;
			public static CHINA: java.util.Locale;
			public static CHINESE: java.util.Locale;
			public static ENGLISH: java.util.Locale;
			public static FRANCE: java.util.Locale;
			public static FRENCH: java.util.Locale;
			public static GERMAN: java.util.Locale;
			public static GERMANY: java.util.Locale;
			public static ITALIAN: java.util.Locale;
			public static ITALY: java.util.Locale;
			public static JAPAN: java.util.Locale;
			public static JAPANESE: java.util.Locale;
			public static KOREA: java.util.Locale;
			public static KOREAN: java.util.Locale;
			public static PRC: java.util.Locale;
			public static ROOT: java.util.Locale;
			public static SIMPLIFIED_CHINESE: java.util.Locale;
			public static TAIWAN: java.util.Locale;
			public static TRADITIONAL_CHINESE: java.util.Locale;
			public static UK: java.util.Locale;
			public static US: java.util.Locale;
			public equals(param0: any): boolean;
			public static setDefault(param0: java.util.Locale): void;
			public getCountry(): string;
			public constructor(param0: string, param1: string, param2: string);
			public getDisplayCountry(param0: java.util.Locale): string;
			public constructor(param0: string, param1: string);
			public getDisplayVariant(param0: java.util.Locale): string;
			public getISO3Country(): string;
			public static getAvailableLocales(): native.Array<java.util.Locale>;
			public getDisplayLanguage(param0: java.util.Locale): string;
			public getDisplayLanguage(): string;
			public constructor(param0: string);
			public getDisplayName(): string;
			public getLanguage(): string;
			public static getISOLanguages(): native.Array<string>;
			public getVariant(): string;
			public clone(): any;
			public getDisplayName(param0: java.util.Locale): string;
			public toString(): string;
			public getDisplayCountry(): string;
			public getISO3Language(): string;
			public static getISOCountries(): native.Array<string>;
			public getDisplayVariant(): string;
			public static getDefault(): java.util.Locale;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module util {
		export class Map<K, V>  extends java.lang.Object {
			public static class: java.lang.Class<java.util.Map<any,any>>;
			/**
			 * Constructs a new instance of the java.util.Map<any,any> interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				clear(): void;
				containsKey(param0: any): boolean;
				containsValue(param0: any): boolean;
				entrySet(): java.util.Set<java.util.Map.Entry<K,V>>;
				equals(param0: any): boolean;
				get(param0: any): V;
				hashCode(): number;
				isEmpty(): boolean;
				keySet(): java.util.Set<K>;
				put(param0: K, param1: V): V;
				putAll(param0: java.util.Map<any,any>): void;
				remove(param0: any): V;
				size(): number;
				values(): java.util.Collection<V>;
			});
			public constructor();
			public clear(): void;
			public equals(param0: any): boolean;
			public isEmpty(): boolean;
			public put(param0: K, param1: V): V;
			public size(): number;
			public containsValue(param0: any): boolean;
			public get(param0: any): V;
			public keySet(): java.util.Set<K>;
			public putAll(param0: java.util.Map<any,any>): void;
			public remove(param0: any): V;
			public containsKey(param0: any): boolean;
			public values(): java.util.Collection<V>;
			public entrySet(): java.util.Set<java.util.Map.Entry<K,V>>;
			public hashCode(): number;
		}
		export module Map {
			export class Entry<K, V>  extends java.lang.Object {
				public static class: java.lang.Class<java.util.Map.Entry<any,any>>;
				/**
				 * Constructs a new instance of the java.util.Map$Entry interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					equals(param0: any): boolean;
					getKey(): K;
					getValue(): V;
					hashCode(): number;
					setValue(param0: V): V;
				});
				public constructor();
				public getValue(): V;
				public setValue(param0: V): V;
				public hashCode(): number;
				public equals(param0: any): boolean;
				public getKey(): K;
			}
		}
	}
}

declare module java {
	export module util {
		export class MissingFormatArgumentException extends java.util.IllegalFormatException {
			public static class: java.lang.Class<java.util.MissingFormatArgumentException>;
			public getMessage(): string;
			public getFormatSpecifier(): string;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module util {
		export class MissingFormatWidthException extends java.util.IllegalFormatException {
			public static class: java.lang.Class<java.util.MissingFormatWidthException>;
			public getMessage(): string;
			public getFormatSpecifier(): string;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module util {
		export class MissingResourceException extends java.lang.RuntimeException {
			public static class: java.lang.Class<java.util.MissingResourceException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public getClassName(): string;
			public constructor(param0: string, param1: string, param2: string);
			public getKey(): string;
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module util {
		export class NavigableMap<K, V>  extends java.util.SortedMap<any,any> {
			public static class: java.lang.Class<java.util.NavigableMap<any,any>>;
			/**
			 * Constructs a new instance of the java.util.NavigableMap<any,any> interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				lowerEntry(param0: any): java.util.Map.Entry<any,any>;
				lowerKey(param0: any): any;
				floorEntry(param0: any): java.util.Map.Entry<any,any>;
				floorKey(param0: any): any;
				ceilingEntry(param0: any): java.util.Map.Entry<any,any>;
				ceilingKey(param0: any): any;
				higherEntry(param0: any): java.util.Map.Entry<any,any>;
				higherKey(param0: any): any;
				firstEntry(): java.util.Map.Entry<any,any>;
				lastEntry(): java.util.Map.Entry<any,any>;
				pollFirstEntry(): java.util.Map.Entry<any,any>;
				pollLastEntry(): java.util.Map.Entry<any,any>;
				descendingMap(): java.util.NavigableMap<any,any>;
				navigableKeySet(): java.util.NavigableSet<any>;
				descendingKeySet(): java.util.NavigableSet<any>;
				subMap(param0: any, param1: boolean, param2: any, param3: boolean): java.util.NavigableMap<any,any>;
				headMap(param0: any, param1: boolean): java.util.NavigableMap<any,any>;
				tailMap(param0: any, param1: boolean): java.util.NavigableMap<any,any>;
				subMap(param0: any, param1: any): java.util.SortedMap<any,any>;
				headMap(param0: any): java.util.SortedMap<any,any>;
				tailMap(param0: any): java.util.SortedMap<any,any>;
				comparator(): java.util.Comparator<any>;
				firstKey(): any;
				headMap(param0: any): java.util.SortedMap<any,any>;
				lastKey(): any;
				subMap(param0: any, param1: any): java.util.SortedMap<any,any>;
				tailMap(param0: any): java.util.SortedMap<any,any>;
				clear(): void;
				containsKey(param0: any): boolean;
				containsValue(param0: any): boolean;
				entrySet(): java.util.Set<java.util.Map.Entry<any,any>>;
				equals(param0: any): boolean;
				get(param0: any): any;
				hashCode(): number;
				isEmpty(): boolean;
				keySet(): java.util.Set<any>;
				put(param0: any, param1: any): any;
				putAll(param0: java.util.Map<any,any>): void;
				remove(param0: any): any;
				size(): number;
				values(): java.util.Collection<any>;
			});
			public constructor();
			public equals(param0: any): boolean;
			public ceilingKey(param0: any): any;
			public floorKey(param0: any): any;
			public containsValue(param0: any): boolean;
			public firstKey(): any;
			public get(param0: any): any;
			public headMap(param0: any): java.util.SortedMap<any,any>;
			public lastKey(): any;
			public remove(param0: any): any;
			public firstEntry(): java.util.Map.Entry<any,any>;
			public tailMap(param0: any, param1: boolean): java.util.NavigableMap<any,any>;
			public putAll(param0: java.util.Map<any,any>): void;
			public descendingKeySet(): java.util.NavigableSet<any>;
			public lowerKey(param0: any): any;
			public tailMap(param0: any): java.util.SortedMap<any,any>;
			public values(): java.util.Collection<any>;
			public ceilingEntry(param0: any): java.util.Map.Entry<any,any>;
			public pollFirstEntry(): java.util.Map.Entry<any,any>;
			public descendingMap(): java.util.NavigableMap<any,any>;
			public higherEntry(param0: any): java.util.Map.Entry<any,any>;
			public clear(): void;
			public entrySet(): java.util.Set<java.util.Map.Entry<any,any>>;
			public isEmpty(): boolean;
			public keySet(): java.util.Set<any>;
			public size(): number;
			public floorEntry(param0: any): java.util.Map.Entry<any,any>;
			public comparator(): java.util.Comparator<any>;
			public navigableKeySet(): java.util.NavigableSet<any>;
			public lastEntry(): java.util.Map.Entry<any,any>;
			public subMap(param0: any, param1: any): java.util.SortedMap<any,any>;
			public put(param0: any, param1: any): any;
			public headMap(param0: any, param1: boolean): java.util.NavigableMap<any,any>;
			public higherKey(param0: any): any;
			public lowerEntry(param0: any): java.util.Map.Entry<any,any>;
			public containsKey(param0: any): boolean;
			public pollLastEntry(): java.util.Map.Entry<any,any>;
			public subMap(param0: any, param1: boolean, param2: any, param3: boolean): java.util.NavigableMap<any,any>;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module util {
		export class NavigableSet<E>  extends java.util.SortedSet<any> {
			public static class: java.lang.Class<java.util.NavigableSet<any>>;
			/**
			 * Constructs a new instance of the java.util.NavigableSet<any> interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				lower(param0: any): any;
				floor(param0: any): any;
				ceiling(param0: any): any;
				higher(param0: any): any;
				pollFirst(): any;
				pollLast(): any;
				iterator(): java.util.Iterator<any>;
				descendingSet(): java.util.NavigableSet<any>;
				descendingIterator(): java.util.Iterator<any>;
				subSet(param0: any, param1: boolean, param2: any, param3: boolean): java.util.NavigableSet<any>;
				headSet(param0: any, param1: boolean): java.util.NavigableSet<any>;
				tailSet(param0: any, param1: boolean): java.util.NavigableSet<any>;
				subSet(param0: any, param1: any): java.util.SortedSet<any>;
				headSet(param0: any): java.util.SortedSet<any>;
				tailSet(param0: any): java.util.SortedSet<any>;
				comparator(): java.util.Comparator<any>;
				first(): any;
				headSet(param0: any): java.util.SortedSet<any>;
				last(): any;
				subSet(param0: any, param1: any): java.util.SortedSet<any>;
				tailSet(param0: any): java.util.SortedSet<any>;
				add(param0: any): boolean;
				addAll(param0: java.util.Collection<any>): boolean;
				clear(): void;
				contains(param0: any): boolean;
				containsAll(param0: java.util.Collection<any>): boolean;
				equals(param0: any): boolean;
				hashCode(): number;
				isEmpty(): boolean;
				iterator(): java.util.Iterator<any>;
				remove(param0: any): boolean;
				removeAll(param0: java.util.Collection<any>): boolean;
				retainAll(param0: java.util.Collection<any>): boolean;
				size(): number;
				toArray(): native.Array<any>;
				toArray(param0: native.Array<any>): native.Array<any>;
				add(param0: any): boolean;
				addAll(param0: java.util.Collection<any>): boolean;
				clear(): void;
				contains(param0: any): boolean;
				containsAll(param0: java.util.Collection<any>): boolean;
				equals(param0: any): boolean;
				hashCode(): number;
				isEmpty(): boolean;
				iterator(): java.util.Iterator<any>;
				remove(param0: any): boolean;
				removeAll(param0: java.util.Collection<any>): boolean;
				retainAll(param0: java.util.Collection<any>): boolean;
				size(): number;
				toArray(): native.Array<any>;
				toArray(param0: native.Array<any>): native.Array<any>;
				iterator(): java.util.Iterator<any>;
			});
			public constructor();
			public equals(param0: any): boolean;
			public pollLast(): any;
			public toArray(): native.Array<any>;
			public higher(param0: any): any;
			public descendingIterator(): java.util.Iterator<any>;
			public subSet(param0: any, param1: any): java.util.SortedSet<any>;
			public tailSet(param0: any, param1: boolean): java.util.NavigableSet<any>;
			public first(): any;
			public contains(param0: any): boolean;
			public ceiling(param0: any): any;
			public last(): any;
			public floor(param0: any): any;
			public lower(param0: any): any;
			public iterator(): java.util.Iterator<any>;
			public headSet(param0: any): java.util.SortedSet<any>;
			public clear(): void;
			public isEmpty(): boolean;
			public size(): number;
			public comparator(): java.util.Comparator<any>;
			public toArray(param0: native.Array<any>): native.Array<any>;
			public subSet(param0: any, param1: boolean, param2: any, param3: boolean): java.util.NavigableSet<any>;
			public addAll(param0: java.util.Collection<any>): boolean;
			public retainAll(param0: java.util.Collection<any>): boolean;
			public pollFirst(): any;
			public tailSet(param0: any): java.util.SortedSet<any>;
			public remove(param0: any): boolean;
			public containsAll(param0: java.util.Collection<any>): boolean;
			public headSet(param0: any, param1: boolean): java.util.NavigableSet<any>;
			public add(param0: any): boolean;
			public removeAll(param0: java.util.Collection<any>): boolean;
			public descendingSet(): java.util.NavigableSet<any>;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module util {
		export class NoSuchElementException extends java.lang.RuntimeException {
			public static class: java.lang.Class<java.util.NoSuchElementException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module util {
		export class Observable extends java.lang.Object {
			public static class: java.lang.Class<java.util.Observable>;
			public addObserver(param0: java.util.Observer): void;
			public hasChanged(): boolean;
			public countObservers(): number;
			public constructor();
			public clearChanged(): void;
			public notifyObservers(param0: any): void;
			public deleteObservers(): void;
			public notifyObservers(): void;
			public setChanged(): void;
			public deleteObserver(param0: java.util.Observer): void;
		}
	}
}

declare module java {
	export module util {
		export class Observer extends java.lang.Object {
			public static class: java.lang.Class<java.util.Observer>;
			/**
			 * Constructs a new instance of the java.util.Observer interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				update(param0: java.util.Observable, param1: any): void;
			});
			public constructor();
			public update(param0: java.util.Observable, param1: any): void;
		}
	}
}

declare module java {
	export module util {
		export class PriorityQueue<E>  extends java.util.AbstractQueue<any> implements java.io.Serializable  {
			public static class: java.lang.Class<java.util.PriorityQueue<any>>;
			public equals(param0: any): boolean;
			public toArray(): native.Array<any>;
			public constructor(param0: java.util.PriorityQueue<any>);
			public constructor(param0: java.util.Collection<any>);
			public contains(param0: any): boolean;
			public constructor(param0: java.util.SortedSet<any>);
			public constructor(param0: number, param1: java.util.Comparator<any>);
			public iterator(): java.util.Iterator<any>;
			public element(): any;
			public clear(): void;
			public size(): number;
			public isEmpty(): boolean;
			public poll(): any;
			public constructor(param0: number);
			public comparator(): java.util.Comparator<any>;
			public toArray(param0: native.Array<any>): native.Array<any>;
			public constructor();
			public addAll(param0: java.util.Collection<any>): boolean;
			public retainAll(param0: java.util.Collection<any>): boolean;
			public peek(): any;
			public remove(param0: any): boolean;
			public containsAll(param0: java.util.Collection<any>): boolean;
			public offer(param0: any): boolean;
			public remove(): any;
			public add(param0: any): boolean;
			public removeAll(param0: java.util.Collection<any>): boolean;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module util {
		export class Properties extends java.util.Hashtable<any,any> {
			public static class: java.lang.Class<java.util.Properties>;
			public defaults: java.util.Properties;
			public propertyNames(): java.util.Enumeration<any>;
			public stringPropertyNames(): java.util.Set<string>;
			public equals(param0: any): boolean;
			/** @deprecated */
			public save(param0: java.io.OutputStream, param1: string): void;
			public constructor(param0: java.util.Properties);
			public containsValue(param0: any): boolean;
			public get(param0: any): any;
			public remove(param0: any): any;
			public putAll(param0: java.util.Map<any,any>): void;
			public load(param0: java.io.Reader): void;
			public values(): java.util.Collection<any>;
			public constructor(param0: number, param1: number);
			public clear(): void;
			public getProperty(param0: string, param1: string): string;
			public entrySet(): java.util.Set<java.util.Map.Entry<any,any>>;
			public isEmpty(): boolean;
			public keySet(): java.util.Set<any>;
			public size(): number;
			public store(param0: java.io.OutputStream, param1: string): void;
			public store(param0: java.io.Writer, param1: string): void;
			public storeToXML(param0: java.io.OutputStream, param1: string, param2: string): void;
			public constructor(param0: number);
			public list(param0: java.io.PrintStream): void;
			public constructor(param0: java.util.Map<any,any>);
			public constructor();
			public put(param0: any, param1: any): any;
			public getProperty(param0: string): string;
			public loadFromXML(param0: java.io.InputStream): void;
			public list(param0: java.io.PrintWriter): void;
			public storeToXML(param0: java.io.OutputStream, param1: string): void;
			public containsKey(param0: any): boolean;
			public setProperty(param0: string, param1: string): any;
			public load(param0: java.io.InputStream): void;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module util {
		export class PropertyPermission extends java.security.BasicPermission {
			public static class: java.lang.Class<java.util.PropertyPermission>;
			public constructor(param0: string, param1: string);
			public implies(param0: java.security.Permission): boolean;
			public getActions(): string;
			public checkGuard(param0: any): void;
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module util {
		export class PropertyResourceBundle extends java.util.ResourceBundle {
			public static class: java.lang.Class<java.util.PropertyResourceBundle>;
			public constructor(param0: java.io.Reader);
			public handleKeySet(): java.util.Set<string>;
			public handleGetObject(param0: string): any;
			public constructor(param0: java.io.InputStream);
			public constructor();
			public getKeys(): java.util.Enumeration<string>;
		}
	}
}

declare module java {
	export module util {
		export class Queue<E>  extends java.util.Collection<any> {
			public static class: java.lang.Class<java.util.Queue<any>>;
			/**
			 * Constructs a new instance of the java.util.Queue<any> interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				add(param0: any): boolean;
				offer(param0: any): boolean;
				remove(): any;
				poll(): any;
				element(): any;
				peek(): any;
				add(param0: any): boolean;
				addAll(param0: java.util.Collection<any>): boolean;
				clear(): void;
				contains(param0: any): boolean;
				containsAll(param0: java.util.Collection<any>): boolean;
				equals(param0: any): boolean;
				hashCode(): number;
				isEmpty(): boolean;
				iterator(): java.util.Iterator<any>;
				remove(param0: any): boolean;
				removeAll(param0: java.util.Collection<any>): boolean;
				retainAll(param0: java.util.Collection<any>): boolean;
				size(): number;
				toArray(): native.Array<any>;
				toArray(param0: native.Array<any>): native.Array<any>;
				iterator(): java.util.Iterator<any>;
			});
			public constructor();
			public clear(): void;
			public equals(param0: any): boolean;
			public toArray(): native.Array<any>;
			public isEmpty(): boolean;
			public size(): number;
			public poll(): any;
			public toArray(param0: native.Array<any>): native.Array<any>;
			public addAll(param0: java.util.Collection<any>): boolean;
			public retainAll(param0: java.util.Collection<any>): boolean;
			public peek(): any;
			public remove(param0: any): boolean;
			public containsAll(param0: java.util.Collection<any>): boolean;
			public contains(param0: any): boolean;
			public offer(param0: any): boolean;
			public remove(): any;
			public add(param0: any): boolean;
			public removeAll(param0: java.util.Collection<any>): boolean;
			public element(): any;
			public hashCode(): number;
			public iterator(): java.util.Iterator<any>;
		}
	}
}

declare module java {
	export module util {
		export class Random extends java.lang.Object implements java.io.Serializable {
			public static class: java.lang.Class<java.util.Random>;
			public nextDouble(): number;
			public nextFloat(): number;
			public nextInt(param0: number): number;
			public nextBoolean(): boolean;
			public nextBytes(param0: native.Array<number>): void;
			public setSeed(param0: number): void;
			public constructor(param0: number);
			public nextGaussian(): number;
			public nextInt(): number;
			public constructor();
			public next(param0: number): number;
			public nextLong(): number;
		}
	}
}

declare module java {
	export module util {
		export class RandomAccess extends java.lang.Object {
			public static class: java.lang.Class<java.util.RandomAccess>;
			/**
			 * Constructs a new instance of the java.util.RandomAccess interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
			});
			public constructor();
		}
	}
}

declare module java {
	export module util {
		export abstract class ResourceBundle extends java.lang.Object {
			public static class: java.lang.Class<java.util.ResourceBundle>;
			public parent: java.util.ResourceBundle;
			public keySet(): java.util.Set<string>;
			public static getBundle(param0: string, param1: java.util.ResourceBundle.Control): java.util.ResourceBundle;
			public static getBundle(param0: string, param1: java.util.Locale, param2: java.util.ResourceBundle.Control): java.util.ResourceBundle;
			public static getBundle(param0: string, param1: java.util.Locale, param2: java.lang.ClassLoader, param3: java.util.ResourceBundle.Control): java.util.ResourceBundle;
			public static getBundle(param0: string, param1: java.util.Locale, param2: java.lang.ClassLoader): java.util.ResourceBundle;
			public getString(param0: string): string;
			public constructor();
			public setParent(param0: java.util.ResourceBundle): void;
			public static clearCache(param0: java.lang.ClassLoader): void;
			public static clearCache(): void;
			public getObject(param0: string): any;
			public handleGetObject(param0: string): any;
			public handleKeySet(): java.util.Set<string>;
			public static getBundle(param0: string): java.util.ResourceBundle;
			public getStringArray(param0: string): native.Array<string>;
			public getKeys(): java.util.Enumeration<string>;
			public containsKey(param0: string): boolean;
			public static getBundle(param0: string, param1: java.util.Locale): java.util.ResourceBundle;
			public getLocale(): java.util.Locale;
		}
		export module ResourceBundle {
			export class Control extends java.lang.Object {
				public static class: java.lang.Class<java.util.ResourceBundle.Control>;
				public static FORMAT_DEFAULT: java.util.List<string>;
				public static FORMAT_CLASS: java.util.List<string>;
				public static FORMAT_PROPERTIES: java.util.List<string>;
				public static TTL_DONT_CACHE: number;
				public static TTL_NO_EXPIRATION_CONTROL: number;
				public getTimeToLive(param0: string, param1: java.util.Locale): number;
				public newBundle(param0: string, param1: java.util.Locale, param2: string, param3: java.lang.ClassLoader, param4: boolean): java.util.ResourceBundle;
				public toResourceName(param0: string, param1: string): string;
				public getFallbackLocale(param0: string, param1: java.util.Locale): java.util.Locale;
				public static getNoFallbackControl(param0: java.util.List<string>): java.util.ResourceBundle.Control;
				public needsReload(param0: string, param1: java.util.Locale, param2: string, param3: java.lang.ClassLoader, param4: java.util.ResourceBundle, param5: number): boolean;
				public toBundleName(param0: string, param1: java.util.Locale): string;
				public getFormats(param0: string): java.util.List<string>;
				public getCandidateLocales(param0: string, param1: java.util.Locale): java.util.List<java.util.Locale>;
				public static getControl(param0: java.util.List<string>): java.util.ResourceBundle.Control;
				public constructor();
			}
		}
	}
}

declare module java {
	export module util {
		export class Scanner extends java.util.Iterator<string> {
			public static class: java.lang.Class<java.util.Scanner>;
			public ioException(): java.io.IOException;
			public match(): java.util.regex.MatchResult;
			public hasNextBigInteger(): boolean;
			public next(): string;
			public useDelimiter(param0: java.util.regex.Pattern): java.util.Scanner;
			public constructor(param0: java.lang.Readable);
			public findWithinHorizon(param0: java.util.regex.Pattern, param1: number): string;
			public useLocale(param0: java.util.Locale): java.util.Scanner;
			public nextDouble(): number;
			public nextBigDecimal(): java.math.BigDecimal;
			public constructor(param0: java.io.File, param1: string);
			public findInLine(param0: java.util.regex.Pattern): string;
			public hasNextBigDecimal(): boolean;
			public hasNextByte(): boolean;
			public constructor(param0: java.io.File);
			public hasNextInt(): boolean;
			public constructor(param0: java.io.InputStream);
			public nextBigInteger(param0: number): java.math.BigInteger;
			public hasNext(param0: string): boolean;
			public constructor(param0: string);
			public hasNextByte(param0: number): boolean;
			public hasNextInt(param0: number): boolean;
			public nextInt(param0: number): number;
			public delimiter(): java.util.regex.Pattern;
			public hasNext(): boolean;
			public hasNextFloat(): boolean;
			public radix(): number;
			public nextLong(): number;
			public remove(): void;
			public hasNextDouble(): boolean;
			public hasNextLine(): boolean;
			public hasNextBoolean(): boolean;
			public nextInt(): number;
			public skip(param0: java.util.regex.Pattern): java.util.Scanner;
			public next(param0: java.util.regex.Pattern): string;
			public nextByte(param0: number): number;
			public next(param0: string): string;
			public constructor(param0: java.nio.channels.ReadableByteChannel);
			public findWithinHorizon(param0: string, param1: number): string;
			public hasNextBigInteger(param0: number): boolean;
			public findInLine(param0: string): string;
			public skip(param0: string): java.util.Scanner;
			public hasNextShort(param0: number): boolean;
			public close(): void;
			public reset(): java.util.Scanner;
			public nextBoolean(): boolean;
			public nextBigInteger(): java.math.BigInteger;
			public nextByte(): number;
			public useRadix(param0: number): java.util.Scanner;
			public hasNextLong(param0: number): boolean;
			public nextLine(): string;
			public nextFloat(): number;
			public hasNext(param0: java.util.regex.Pattern): boolean;
			public hasNextLong(): boolean;
			public toString(): string;
			public constructor(param0: java.io.InputStream, param1: string);
			public nextLong(param0: number): number;
			public useDelimiter(param0: string): java.util.Scanner;
			public nextShort(param0: number): number;
			public constructor(param0: java.nio.channels.ReadableByteChannel, param1: string);
			public hasNextShort(): boolean;
			public locale(): java.util.Locale;
			public nextShort(): number;
		}
	}
}

declare module java {
	export module util {
		export class ServiceConfigurationError extends java.lang.Error {
			public static class: java.lang.Class<java.util.ServiceConfigurationError>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module util {
		export class ServiceLoader<S>  extends java.lang.Iterable<any> {
			public static class: java.lang.Class<java.util.ServiceLoader<any>>;
			public static load(param0: java.lang.Class<any>, param1: java.lang.ClassLoader): java.util.ServiceLoader<any>;
			public static load(param0: java.lang.Class<any>): java.util.ServiceLoader<any>;
			public toString(): string;
			public reload(): void;
			public iterator(): java.util.Iterator<any>;
			public static loadInstalled(param0: java.lang.Class<any>): java.util.ServiceLoader<any>;
		}
	}
}

declare module java {
	export module util {
		export class Set<E>  extends java.util.Collection<any> {
			public static class: java.lang.Class<java.util.Set<any>>;
			/**
			 * Constructs a new instance of the java.util.Set<any> interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				add(param0: any): boolean;
				addAll(param0: java.util.Collection<any>): boolean;
				clear(): void;
				contains(param0: any): boolean;
				containsAll(param0: java.util.Collection<any>): boolean;
				equals(param0: any): boolean;
				hashCode(): number;
				isEmpty(): boolean;
				iterator(): java.util.Iterator<any>;
				remove(param0: any): boolean;
				removeAll(param0: java.util.Collection<any>): boolean;
				retainAll(param0: java.util.Collection<any>): boolean;
				size(): number;
				toArray(): native.Array<any>;
				toArray(param0: native.Array<any>): native.Array<any>;
				add(param0: any): boolean;
				addAll(param0: java.util.Collection<any>): boolean;
				clear(): void;
				contains(param0: any): boolean;
				containsAll(param0: java.util.Collection<any>): boolean;
				equals(param0: any): boolean;
				hashCode(): number;
				isEmpty(): boolean;
				iterator(): java.util.Iterator<any>;
				remove(param0: any): boolean;
				removeAll(param0: java.util.Collection<any>): boolean;
				retainAll(param0: java.util.Collection<any>): boolean;
				size(): number;
				toArray(): native.Array<any>;
				toArray(param0: native.Array<any>): native.Array<any>;
				iterator(): java.util.Iterator<any>;
			});
			public constructor();
			public clear(): void;
			public equals(param0: any): boolean;
			public toArray(): native.Array<any>;
			public isEmpty(): boolean;
			public size(): number;
			public toArray(param0: native.Array<any>): native.Array<any>;
			public addAll(param0: java.util.Collection<any>): boolean;
			public retainAll(param0: java.util.Collection<any>): boolean;
			public remove(param0: any): boolean;
			public containsAll(param0: java.util.Collection<any>): boolean;
			public contains(param0: any): boolean;
			public add(param0: any): boolean;
			public removeAll(param0: java.util.Collection<any>): boolean;
			public hashCode(): number;
			public iterator(): java.util.Iterator<any>;
		}
	}
}

declare module java {
	export module util {
		export class SimpleTimeZone extends java.util.TimeZone {
			public static class: java.lang.Class<java.util.SimpleTimeZone>;
			public static UTC_TIME: number;
			public static STANDARD_TIME: number;
			public static WALL_TIME: number;
			public constructor(param0: number, param1: string, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number, param8: number, param9: number, param10: number, param11: number, param12: number);
			public equals(param0: any): boolean;
			public constructor(param0: number, param1: string, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number, param8: number, param9: number);
			public getDSTSavings(): number;
			public getOffset(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): number;
			public setEndRule(param0: number, param1: number, param2: number, param3: number): void;
			public useDaylightTime(): boolean;
			public constructor(param0: number, param1: string);
			public setStartRule(param0: number, param1: number, param2: number, param3: number, param4: boolean): void;
			public getOffset(param0: number): number;
			public setEndRule(param0: number, param1: number, param2: number): void;
			public getRawOffset(): number;
			public setDSTSavings(param0: number): void;
			public hasSameRules(param0: java.util.TimeZone): boolean;
			public setEndRule(param0: number, param1: number, param2: number, param3: number, param4: boolean): void;
			public setRawOffset(param0: number): void;
			public constructor();
			public setStartRule(param0: number, param1: number, param2: number): void;
			public clone(): any;
			public toString(): string;
			public constructor(param0: number, param1: string, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number, param8: number, param9: number, param10: number);
			public inDaylightTime(param0: java.util.Date): boolean;
			public setStartRule(param0: number, param1: number, param2: number, param3: number): void;
			public hashCode(): number;
			public setStartYear(param0: number): void;
		}
	}
}

declare module java {
	export module util {
		export class SortedMap<K, V>  extends java.util.Map<any,any> {
			public static class: java.lang.Class<java.util.SortedMap<any,any>>;
			/**
			 * Constructs a new instance of the java.util.SortedMap<any,any> interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				comparator(): java.util.Comparator<any>;
				firstKey(): any;
				headMap(param0: any): java.util.SortedMap<any,any>;
				lastKey(): any;
				subMap(param0: any, param1: any): java.util.SortedMap<any,any>;
				tailMap(param0: any): java.util.SortedMap<any,any>;
				clear(): void;
				containsKey(param0: any): boolean;
				containsValue(param0: any): boolean;
				entrySet(): java.util.Set<java.util.Map.Entry<any,any>>;
				equals(param0: any): boolean;
				get(param0: any): any;
				hashCode(): number;
				isEmpty(): boolean;
				keySet(): java.util.Set<any>;
				put(param0: any, param1: any): any;
				putAll(param0: java.util.Map<any,any>): void;
				remove(param0: any): any;
				size(): number;
				values(): java.util.Collection<any>;
			});
			public constructor();
			public clear(): void;
			public equals(param0: any): boolean;
			public entrySet(): java.util.Set<java.util.Map.Entry<any,any>>;
			public isEmpty(): boolean;
			public keySet(): java.util.Set<any>;
			public size(): number;
			public containsValue(param0: any): boolean;
			public comparator(): java.util.Comparator<any>;
			public firstKey(): any;
			public get(param0: any): any;
			public subMap(param0: any, param1: any): java.util.SortedMap<any,any>;
			public put(param0: any, param1: any): any;
			public headMap(param0: any): java.util.SortedMap<any,any>;
			public lastKey(): any;
			public remove(param0: any): any;
			public putAll(param0: java.util.Map<any,any>): void;
			public containsKey(param0: any): boolean;
			public tailMap(param0: any): java.util.SortedMap<any,any>;
			public values(): java.util.Collection<any>;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module util {
		export class SortedSet<E>  extends java.util.Set<any> {
			public static class: java.lang.Class<java.util.SortedSet<any>>;
			/**
			 * Constructs a new instance of the java.util.SortedSet<any> interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				comparator(): java.util.Comparator<any>;
				first(): any;
				headSet(param0: any): java.util.SortedSet<any>;
				last(): any;
				subSet(param0: any, param1: any): java.util.SortedSet<any>;
				tailSet(param0: any): java.util.SortedSet<any>;
				add(param0: any): boolean;
				addAll(param0: java.util.Collection<any>): boolean;
				clear(): void;
				contains(param0: any): boolean;
				containsAll(param0: java.util.Collection<any>): boolean;
				equals(param0: any): boolean;
				hashCode(): number;
				isEmpty(): boolean;
				iterator(): java.util.Iterator<any>;
				remove(param0: any): boolean;
				removeAll(param0: java.util.Collection<any>): boolean;
				retainAll(param0: java.util.Collection<any>): boolean;
				size(): number;
				toArray(): native.Array<any>;
				toArray(param0: native.Array<any>): native.Array<any>;
				add(param0: any): boolean;
				addAll(param0: java.util.Collection<any>): boolean;
				clear(): void;
				contains(param0: any): boolean;
				containsAll(param0: java.util.Collection<any>): boolean;
				equals(param0: any): boolean;
				hashCode(): number;
				isEmpty(): boolean;
				iterator(): java.util.Iterator<any>;
				remove(param0: any): boolean;
				removeAll(param0: java.util.Collection<any>): boolean;
				retainAll(param0: java.util.Collection<any>): boolean;
				size(): number;
				toArray(): native.Array<any>;
				toArray(param0: native.Array<any>): native.Array<any>;
				iterator(): java.util.Iterator<any>;
			});
			public constructor();
			public clear(): void;
			public equals(param0: any): boolean;
			public toArray(): native.Array<any>;
			public isEmpty(): boolean;
			public size(): number;
			public comparator(): java.util.Comparator<any>;
			public subSet(param0: any, param1: any): java.util.SortedSet<any>;
			public toArray(param0: native.Array<any>): native.Array<any>;
			public addAll(param0: java.util.Collection<any>): boolean;
			public retainAll(param0: java.util.Collection<any>): boolean;
			public tailSet(param0: any): java.util.SortedSet<any>;
			public remove(param0: any): boolean;
			public first(): any;
			public containsAll(param0: java.util.Collection<any>): boolean;
			public contains(param0: any): boolean;
			public add(param0: any): boolean;
			public last(): any;
			public removeAll(param0: java.util.Collection<any>): boolean;
			public headSet(param0: any): java.util.SortedSet<any>;
			public hashCode(): number;
			public iterator(): java.util.Iterator<any>;
		}
	}
}

declare module java {
	export module util {
		export class Stack<E>  extends java.util.Vector<any> {
			public static class: java.lang.Class<java.util.Stack<any>>;
			public addAll(param0: number, param1: java.util.Collection<any>): boolean;
			public equals(param0: any): boolean;
			public toArray(): native.Array<any>;
			public remove(param0: number): any;
			public empty(): boolean;
			public constructor(param0: java.util.Collection<any>);
			public contains(param0: any): boolean;
			public get(param0: number): any;
			public constructor(param0: number, param1: number);
			public add(param0: number, param1: any): void;
			public iterator(): java.util.Iterator<any>;
			public lastIndexOf(param0: any, param1: number): number;
			public clear(): void;
			public indexOf(param0: any, param1: number): number;
			public isEmpty(): boolean;
			public size(): number;
			public listIterator(param0: number): java.util.ListIterator<any>;
			public constructor(param0: number);
			public toArray(param0: native.Array<any>): native.Array<any>;
			public constructor();
			public pop(): any;
			public push(param0: any): any;
			public subList(param0: number, param1: number): java.util.List<any>;
			public addAll(param0: java.util.Collection<any>): boolean;
			public retainAll(param0: java.util.Collection<any>): boolean;
			public set(param0: number, param1: any): any;
			public peek(): any;
			public remove(param0: any): boolean;
			public containsAll(param0: java.util.Collection<any>): boolean;
			public lastIndexOf(param0: any): number;
			public add(param0: any): boolean;
			public listIterator(): java.util.ListIterator<any>;
			public removeAll(param0: java.util.Collection<any>): boolean;
			public search(param0: any): number;
			public indexOf(param0: any): number;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module util {
		export class StringTokenizer extends java.util.Enumeration<any> {
			public static class: java.lang.Class<java.util.StringTokenizer>;
			public constructor(param0: string, param1: string);
			public nextToken(): string;
			public hasMoreElements(): boolean;
			public hasMoreTokens(): boolean;
			public nextElement(): any;
			public nextToken(param0: string): string;
			public constructor(param0: string, param1: string, param2: boolean);
			public countTokens(): number;
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module util {
		export abstract class TimeZone extends java.lang.Object implements java.io.Serializable, java.lang.Cloneable {
			public static class: java.lang.Class<java.util.TimeZone>;
			public static SHORT: number;
			public static LONG: number;
			public static setDefault(param0: java.util.TimeZone): void;
			public getDisplayName(param0: boolean, param1: number): string;
			public setID(param0: string): void;
			public getDSTSavings(): number;
			public getOffset(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): number;
			public useDaylightTime(): boolean;
			public static getAvailableIDs(param0: number): native.Array<string>;
			public setRawOffset(param0: number): void;
			public constructor();
			public getOffset(param0: number): number;
			public static getTimeZone(param0: string): java.util.TimeZone;
			public clone(): any;
			public static getAvailableIDs(): native.Array<string>;
			public getDisplayName(param0: java.util.Locale): string;
			public getRawOffset(): number;
			public static getDefault(): java.util.TimeZone;
			public getDisplayName(param0: boolean, param1: number, param2: java.util.Locale): string;
			public inDaylightTime(param0: java.util.Date): boolean;
			public getID(): string;
			public getDisplayName(): string;
			public hasSameRules(param0: java.util.TimeZone): boolean;
		}
	}
}

declare module java {
	export module util {
		export class Timer extends java.lang.Object {
			public static class: java.lang.Class<java.util.Timer>;
			public schedule(param0: java.util.TimerTask, param1: number, param2: number): void;
			public constructor(param0: boolean);
			public schedule(param0: java.util.TimerTask, param1: java.util.Date): void;
			public schedule(param0: java.util.TimerTask, param1: java.util.Date, param2: number): void;
			public scheduleAtFixedRate(param0: java.util.TimerTask, param1: java.util.Date, param2: number): void;
			public constructor(param0: string, param1: boolean);
			public scheduleAtFixedRate(param0: java.util.TimerTask, param1: number, param2: number): void;
			public cancel(): void;
			public constructor();
			public purge(): number;
			public schedule(param0: java.util.TimerTask, param1: number): void;
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module util {
		export abstract class TimerTask extends java.lang.Object implements java.lang.Runnable {
			public static class: java.lang.Class<java.util.TimerTask>;
			public cancel(): boolean;
			public scheduledExecutionTime(): number;
			public run(): void;
			public constructor();
		}
	}
}

declare module java {
	export module util {
		export class TooManyListenersException extends java.lang.Exception {
			public static class: java.lang.Class<java.util.TooManyListenersException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module util {
		export class TreeMap<K, V>  extends java.util.AbstractMap<any,any> {
			public static class: java.lang.Class<java.util.TreeMap<any,any>>;
			public equals(param0: any): boolean;
			public ceilingKey(param0: any): any;
			public floorKey(param0: any): any;
			public containsValue(param0: any): boolean;
			public firstKey(): any;
			public get(param0: any): any;
			public headMap(param0: any): java.util.SortedMap<any,any>;
			public lastKey(): any;
			public remove(param0: any): any;
			public constructor(param0: java.util.Comparator<any>);
			public firstEntry(): java.util.Map.Entry<any,any>;
			public tailMap(param0: any, param1: boolean): java.util.NavigableMap<any,any>;
			public putAll(param0: java.util.Map<any,any>): void;
			public descendingKeySet(): java.util.NavigableSet<any>;
			public lowerKey(param0: any): any;
			public tailMap(param0: any): java.util.SortedMap<any,any>;
			public values(): java.util.Collection<any>;
			public ceilingEntry(param0: any): java.util.Map.Entry<any,any>;
			public pollFirstEntry(): java.util.Map.Entry<any,any>;
			public descendingMap(): java.util.NavigableMap<any,any>;
			public clear(): void;
			public higherEntry(param0: any): java.util.Map.Entry<any,any>;
			public size(): number;
			public isEmpty(): boolean;
			public entrySet(): java.util.Set<java.util.Map.Entry<any,any>>;
			public keySet(): java.util.Set<any>;
			public floorEntry(param0: any): java.util.Map.Entry<any,any>;
			public comparator(): java.util.Comparator<any>;
			public constructor(param0: java.util.Map<any,any>);
			public navigableKeySet(): java.util.NavigableSet<any>;
			public constructor();
			public put(param0: any, param1: any): any;
			public lastEntry(): java.util.Map.Entry<any,any>;
			public subMap(param0: any, param1: any): java.util.SortedMap<any,any>;
			public headMap(param0: any, param1: boolean): java.util.NavigableMap<any,any>;
			public higherKey(param0: any): any;
			public clone(): any;
			public lowerEntry(param0: any): java.util.Map.Entry<any,any>;
			public containsKey(param0: any): boolean;
			public pollLastEntry(): java.util.Map.Entry<any,any>;
			public constructor(param0: java.util.SortedMap<any,any>);
			public subMap(param0: any, param1: boolean, param2: any, param3: boolean): java.util.NavigableMap<any,any>;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module util {
		export class TreeSet<E>  extends java.util.AbstractSet<any> {
			public static class: java.lang.Class<java.util.TreeSet<any>>;
			public equals(param0: any): boolean;
			public pollLast(): any;
			public toArray(): native.Array<any>;
			public higher(param0: any): any;
			public descendingIterator(): java.util.Iterator<any>;
			public subSet(param0: any, param1: any): java.util.SortedSet<any>;
			public constructor(param0: java.util.Collection<any>);
			public tailSet(param0: any, param1: boolean): java.util.NavigableSet<any>;
			public first(): any;
			public contains(param0: any): boolean;
			public ceiling(param0: any): any;
			public constructor(param0: java.util.Comparator<any>);
			public constructor(param0: java.util.SortedSet<any>);
			public last(): any;
			public floor(param0: any): any;
			public iterator(): java.util.Iterator<any>;
			public lower(param0: any): any;
			public headSet(param0: any): java.util.SortedSet<any>;
			public clear(): void;
			public isEmpty(): boolean;
			public size(): number;
			public comparator(): java.util.Comparator<any>;
			public toArray(param0: native.Array<any>): native.Array<any>;
			public constructor();
			public subSet(param0: any, param1: boolean, param2: any, param3: boolean): java.util.NavigableSet<any>;
			public addAll(param0: java.util.Collection<any>): boolean;
			public retainAll(param0: java.util.Collection<any>): boolean;
			public pollFirst(): any;
			public remove(param0: any): boolean;
			public tailSet(param0: any): java.util.SortedSet<any>;
			public containsAll(param0: java.util.Collection<any>): boolean;
			public clone(): any;
			public headSet(param0: any, param1: boolean): java.util.NavigableSet<any>;
			public add(param0: any): boolean;
			public removeAll(param0: java.util.Collection<any>): boolean;
			public descendingSet(): java.util.NavigableSet<any>;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module util {
		export class UUID extends java.lang.Object {
			public static class: java.lang.Class<java.util.UUID>;
			public equals(param0: any): boolean;
			public clockSequence(): number;
			public version(): number;
			public node(): number;
			public static nameUUIDFromBytes(param0: native.Array<number>): java.util.UUID;
			public getMostSignificantBits(): number;
			public static randomUUID(): java.util.UUID;
			public toString(): string;
			public timestamp(): number;
			public variant(): number;
			public getLeastSignificantBits(): number;
			public compareTo(param0: java.util.UUID): number;
			public constructor(param0: number, param1: number);
			public static fromString(param0: string): java.util.UUID;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module util {
		export class UnknownFormatConversionException extends java.util.IllegalFormatException {
			public static class: java.lang.Class<java.util.UnknownFormatConversionException>;
			public getMessage(): string;
			public getConversion(): string;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module util {
		export class UnknownFormatFlagsException extends java.util.IllegalFormatException {
			public static class: java.lang.Class<java.util.UnknownFormatFlagsException>;
			public getMessage(): string;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public getFlags(): string;
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module java {
	export module util {
		export class Vector<E>  extends java.util.AbstractList<any> {
			public static class: java.lang.Class<java.util.Vector<any>>;
			public elementCount: number;
			public elementData: native.Array<any>;
			public capacityIncrement: number;
			public addAll(param0: number, param1: java.util.Collection<any>): boolean;
			public constructor(param0: java.util.Collection<any>);
			public removeElementAt(param0: number): void;
			public removeAllElements(): void;
			public addElement(param0: any): void;
			public removeRange(param0: number, param1: number): void;
			public elements(): java.util.Enumeration<any>;
			public clear(): void;
			public listIterator(param0: number): java.util.ListIterator<any>;
			public constructor(param0: number);
			public toArray(param0: native.Array<any>): native.Array<any>;
			public constructor();
			public addAll(param0: java.util.Collection<any>): boolean;
			public set(param0: number, param1: any): any;
			public containsAll(param0: java.util.Collection<any>): boolean;
			public elementAt(param0: number): any;
			public copyInto(param0: native.Array<any>): void;
			public lastIndexOf(param0: any): number;
			public clone(): any;
			public setElementAt(param0: any, param1: number): void;
			public removeElement(param0: any): boolean;
			public add(param0: any): boolean;
			public equals(param0: any): boolean;
			public toArray(): native.Array<any>;
			public remove(param0: number): any;
			public ensureCapacity(param0: number): void;
			public firstElement(): any;
			public contains(param0: any): boolean;
			public setSize(param0: number): void;
			public get(param0: number): any;
			public constructor(param0: number, param1: number);
			public add(param0: number, param1: any): void;
			public insertElementAt(param0: any, param1: number): void;
			public iterator(): java.util.Iterator<any>;
			public lastIndexOf(param0: any, param1: number): number;
			public indexOf(param0: any, param1: number): number;
			public isEmpty(): boolean;
			public size(): number;
			public lastElement(): any;
			public subList(param0: number, param1: number): java.util.List<any>;
			public retainAll(param0: java.util.Collection<any>): boolean;
			public remove(param0: any): boolean;
			public toString(): string;
			public listIterator(): java.util.ListIterator<any>;
			public capacity(): number;
			public trimToSize(): void;
			public removeAll(param0: java.util.Collection<any>): boolean;
			public indexOf(param0: any): number;
			public hashCode(): number;
		}
	}
}

declare module java {
	export module util {
		export class WeakHashMap<K, V>  extends java.util.AbstractMap<any,any> implements java.util.Map<any,any>  {
			public static class: java.lang.Class<java.util.WeakHashMap<any,any>>;
			public clear(): void;
			public equals(param0: any): boolean;
			public entrySet(): java.util.Set<java.util.Map.Entry<any,any>>;
			public keySet(): java.util.Set<any>;
			public isEmpty(): boolean;
			public size(): number;
			public containsValue(param0: any): boolean;
			public constructor(param0: number);
			public constructor(param0: java.util.Map<any,any>);
			public constructor();
			public get(param0: any): any;
			public put(param0: any, param1: any): any;
			public remove(param0: any): any;
			public putAll(param0: java.util.Map<any,any>): void;
			public containsKey(param0: any): boolean;
			public values(): java.util.Collection<any>;
			public constructor(param0: number, param1: number);
			public hashCode(): number;
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export abstract class AbstractExecutorService extends java.lang.Object implements java.util.concurrent.ExecutorService {
				public static class: java.lang.Class<java.util.concurrent.AbstractExecutorService>;
				public invokeAll(param0: java.util.Collection<any>, param1: number, param2: java.util.concurrent.TimeUnit): java.util.List<any>;
				public submit(param0: java.lang.Runnable): java.util.concurrent.Future<any>;
				public isTerminated(): boolean;
				public newTaskFor(param0: java.util.concurrent.Callable<any>): java.util.concurrent.RunnableFuture<any>;
				public submit(param0: java.lang.Runnable, param1: any): java.util.concurrent.Future<any>;
				public newTaskFor(param0: java.lang.Runnable, param1: any): java.util.concurrent.RunnableFuture<any>;
				public invokeAny(param0: java.util.Collection<any>): any;
				public constructor();
				public submit(param0: java.util.concurrent.Callable<any>): java.util.concurrent.Future<any>;
				public awaitTermination(param0: number, param1: java.util.concurrent.TimeUnit): boolean;
				public shutdown(): void;
				public shutdownNow(): java.util.List<java.lang.Runnable>;
				public execute(param0: java.lang.Runnable): void;
				public isShutdown(): boolean;
				public invokeAll(param0: java.util.Collection<any>): java.util.List<any>;
				public invokeAny(param0: java.util.Collection<any>, param1: number, param2: java.util.concurrent.TimeUnit): any;
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export class ArrayBlockingQueue<E>  extends java.util.AbstractQueue<any> {
				public static class: java.lang.Class<java.util.concurrent.ArrayBlockingQueue<any>>;
				public peek(): any;
				public addAll(param0: java.util.Collection<any>): boolean;
				public offer(param0: any, param1: number, param2: java.util.concurrent.TimeUnit): boolean;
				public constructor(param0: number, param1: boolean, param2: java.util.Collection<any>);
				public constructor();
				public toArray(): native.Array<any>;
				public containsAll(param0: java.util.Collection<any>): boolean;
				public take(): any;
				public add(param0: any): boolean;
				public hashCode(): number;
				public offer(param0: any): boolean;
				public clear(): void;
				public equals(param0: any): boolean;
				public isEmpty(): boolean;
				public remove(param0: any): boolean;
				public remove(): any;
				public element(): any;
				public contains(param0: any): boolean;
				public toArray(param0: native.Array<any>): native.Array<any>;
				public constructor(param0: number, param1: boolean);
				public drainTo(param0: java.util.Collection<any>, param1: number): number;
				public iterator(): java.util.Iterator<any>;
				public toString(): string;
				public retainAll(param0: java.util.Collection<any>): boolean;
				public poll(param0: number, param1: java.util.concurrent.TimeUnit): any;
				public drainTo(param0: java.util.Collection<any>): number;
				public poll(): any;
				public size(): number;
				public put(param0: any): void;
				public remainingCapacity(): number;
				public removeAll(param0: java.util.Collection<any>): boolean;
				public constructor(param0: number);
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export class BlockingDeque<E>  extends java.lang.Object {
				public static class: java.lang.Class<java.util.concurrent.BlockingDeque<any>>;
				/**
				 * Constructs a new instance of the java.util.concurrent.BlockingDeque<any> interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					addFirst(param0: E): void;
					addLast(param0: E): void;
					offerFirst(param0: E): boolean;
					offerLast(param0: E): boolean;
					putFirst(param0: E): void;
					putLast(param0: E): void;
					offerFirst(param0: E, param1: number, param2: java.util.concurrent.TimeUnit): boolean;
					offerLast(param0: E, param1: number, param2: java.util.concurrent.TimeUnit): boolean;
					takeFirst(): E;
					takeLast(): E;
					pollFirst(param0: number, param1: java.util.concurrent.TimeUnit): E;
					pollLast(param0: number, param1: java.util.concurrent.TimeUnit): E;
					removeFirstOccurrence(param0: any): boolean;
					removeLastOccurrence(param0: any): boolean;
					add(param0: E): boolean;
					offer(param0: E): boolean;
					put(param0: E): void;
					offer(param0: E, param1: number, param2: java.util.concurrent.TimeUnit): boolean;
					remove(): E;
					poll(): E;
					take(): E;
					poll(param0: number, param1: java.util.concurrent.TimeUnit): E;
					element(): E;
					peek(): E;
					remove(param0: any): boolean;
					contains(param0: any): boolean;
					size(): number;
					iterator(): java.util.Iterator<E>;
					push(param0: E): void;
					add(param0: E): boolean;
					offer(param0: E): boolean;
					put(param0: E): void;
					offer(param0: E, param1: number, param2: java.util.concurrent.TimeUnit): boolean;
					take(): E;
					poll(param0: number, param1: java.util.concurrent.TimeUnit): E;
					remainingCapacity(): number;
					remove(param0: any): boolean;
					contains(param0: any): boolean;
					drainTo(param0: java.util.Collection<any>): number;
					drainTo(param0: java.util.Collection<any>, param1: number): number;
					addFirst(param0: E): void;
					addLast(param0: E): void;
					offerFirst(param0: E): boolean;
					offerLast(param0: E): boolean;
					removeFirst(): E;
					removeLast(): E;
					pollFirst(): E;
					pollLast(): E;
					getFirst(): E;
					getLast(): E;
					peekFirst(): E;
					peekLast(): E;
					removeFirstOccurrence(param0: any): boolean;
					removeLastOccurrence(param0: any): boolean;
					add(param0: E): boolean;
					offer(param0: E): boolean;
					remove(): E;
					poll(): E;
					element(): E;
					peek(): E;
					push(param0: E): void;
					pop(): E;
					remove(param0: any): boolean;
					contains(param0: any): boolean;
					size(): number;
					iterator(): java.util.Iterator<E>;
					descendingIterator(): java.util.Iterator<E>;
					add(param0: E): boolean;
					offer(param0: E): boolean;
					remove(): E;
					poll(): E;
					element(): E;
					peek(): E;
					add(param0: E): boolean;
					offer(param0: E): boolean;
					remove(): E;
					poll(): E;
					element(): E;
					peek(): E;
					add(param0: E): boolean;
					addAll(param0: java.util.Collection<any>): boolean;
					clear(): void;
					contains(param0: any): boolean;
					containsAll(param0: java.util.Collection<any>): boolean;
					equals(param0: any): boolean;
					hashCode(): number;
					isEmpty(): boolean;
					iterator(): java.util.Iterator<E>;
					remove(param0: any): boolean;
					removeAll(param0: java.util.Collection<any>): boolean;
					retainAll(param0: java.util.Collection<any>): boolean;
					size(): number;
					toArray(): native.Array<any>;
					toArray(param0: native.Array<any>): native.Array<any>;
					add(param0: E): boolean;
					addAll(param0: java.util.Collection<any>): boolean;
					clear(): void;
					contains(param0: any): boolean;
					containsAll(param0: java.util.Collection<any>): boolean;
					equals(param0: any): boolean;
					hashCode(): number;
					isEmpty(): boolean;
					iterator(): java.util.Iterator<E>;
					remove(param0: any): boolean;
					removeAll(param0: java.util.Collection<any>): boolean;
					retainAll(param0: java.util.Collection<any>): boolean;
					size(): number;
					toArray(): native.Array<any>;
					toArray(param0: native.Array<any>): native.Array<any>;
					iterator(): java.util.Iterator<any>;
					iterator(): java.util.Iterator<any>;
				});
				public constructor();
				public offerFirst(param0: E, param1: number, param2: java.util.concurrent.TimeUnit): boolean;
				public put(param0: E): void;
				public addAll(param0: java.util.Collection<any>): boolean;
				public removeFirst(): E;
				public offerLast(param0: E, param1: number, param2: java.util.concurrent.TimeUnit): boolean;
				public getFirst(): E;
				public offerFirst(param0: E): boolean;
				public removeLastOccurrence(param0: any): boolean;
				public toArray(): native.Array<any>;
				public hashCode(): number;
				public equals(param0: any): boolean;
				public isEmpty(): boolean;
				public push(param0: E): void;
				public contains(param0: any): boolean;
				public iterator(): java.util.Iterator<any>;
				public getLast(): E;
				public remove(): E;
				public retainAll(param0: java.util.Collection<any>): boolean;
				public size(): number;
				public removeLast(): E;
				public offer(param0: E, param1: number, param2: java.util.concurrent.TimeUnit): boolean;
				public remainingCapacity(): number;
				public removeAll(param0: java.util.Collection<any>): boolean;
				public peek(): E;
				public pollLast(): E;
				public takeFirst(): E;
				public descendingIterator(): java.util.Iterator<E>;
				public offerLast(param0: E): boolean;
				public addLast(param0: E): void;
				public element(): E;
				public take(): E;
				public containsAll(param0: java.util.Collection<any>): boolean;
				public peekFirst(): E;
				public poll(param0: number, param1: java.util.concurrent.TimeUnit): E;
				public clear(): void;
				public iterator(): java.util.Iterator<E>;
				public addFirst(param0: E): void;
				public takeLast(): E;
				public poll(): E;
				public remove(param0: any): boolean;
				public pop(): E;
				public pollLast(param0: number, param1: java.util.concurrent.TimeUnit): E;
				public toArray(param0: native.Array<any>): native.Array<any>;
				public drainTo(param0: java.util.Collection<any>, param1: number): number;
				public drainTo(param0: java.util.Collection<any>): number;
				public putLast(param0: E): void;
				public peekLast(): E;
				public add(param0: E): boolean;
				public removeFirstOccurrence(param0: any): boolean;
				public pollFirst(): E;
				public offer(param0: E): boolean;
				public pollFirst(param0: number, param1: java.util.concurrent.TimeUnit): E;
				public putFirst(param0: E): void;
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export class BlockingQueue<E>  extends java.util.Queue<any> {
				public static class: java.lang.Class<java.util.concurrent.BlockingQueue<any>>;
				/**
				 * Constructs a new instance of the java.util.concurrent.BlockingQueue<any> interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					add(param0: any): boolean;
					offer(param0: any): boolean;
					put(param0: any): void;
					offer(param0: any, param1: number, param2: java.util.concurrent.TimeUnit): boolean;
					take(): any;
					poll(param0: number, param1: java.util.concurrent.TimeUnit): any;
					remainingCapacity(): number;
					remove(param0: any): boolean;
					contains(param0: any): boolean;
					drainTo(param0: java.util.Collection<any>): number;
					drainTo(param0: java.util.Collection<any>, param1: number): number;
					add(param0: any): boolean;
					offer(param0: any): boolean;
					remove(): any;
					poll(): any;
					element(): any;
					peek(): any;
					add(param0: any): boolean;
					addAll(param0: java.util.Collection<any>): boolean;
					clear(): void;
					contains(param0: any): boolean;
					containsAll(param0: java.util.Collection<any>): boolean;
					equals(param0: any): boolean;
					hashCode(): number;
					isEmpty(): boolean;
					iterator(): java.util.Iterator<any>;
					remove(param0: any): boolean;
					removeAll(param0: java.util.Collection<any>): boolean;
					retainAll(param0: java.util.Collection<any>): boolean;
					size(): number;
					toArray(): native.Array<any>;
					toArray(param0: native.Array<any>): native.Array<any>;
					iterator(): java.util.Iterator<any>;
				});
				public constructor();
				public peek(): any;
				public addAll(param0: java.util.Collection<any>): boolean;
				public offer(param0: any, param1: number, param2: java.util.concurrent.TimeUnit): boolean;
				public toArray(): native.Array<any>;
				public containsAll(param0: java.util.Collection<any>): boolean;
				public take(): any;
				public add(param0: any): boolean;
				public hashCode(): number;
				public offer(param0: any): boolean;
				public clear(): void;
				public equals(param0: any): boolean;
				public isEmpty(): boolean;
				public remove(param0: any): boolean;
				public remove(): any;
				public element(): any;
				public contains(param0: any): boolean;
				public toArray(param0: native.Array<any>): native.Array<any>;
				public drainTo(param0: java.util.Collection<any>, param1: number): number;
				public iterator(): java.util.Iterator<any>;
				public retainAll(param0: java.util.Collection<any>): boolean;
				public poll(param0: number, param1: java.util.concurrent.TimeUnit): any;
				public drainTo(param0: java.util.Collection<any>): number;
				public poll(): any;
				public size(): number;
				public put(param0: any): void;
				public remainingCapacity(): number;
				public removeAll(param0: java.util.Collection<any>): boolean;
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export class BrokenBarrierException extends java.lang.Exception {
				public static class: java.lang.Class<java.util.concurrent.BrokenBarrierException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export class Callable<V>  extends java.lang.Object {
				public static class: java.lang.Class<java.util.concurrent.Callable<any>>;
				/**
				 * Constructs a new instance of the java.util.concurrent.Callable<any> interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					call(): V;
				});
				public constructor();
				public call(): V;
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export class CancellationException extends java.lang.IllegalStateException {
				public static class: java.lang.Class<java.util.concurrent.CancellationException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export class CompletionService<V>  extends java.lang.Object {
				public static class: java.lang.Class<java.util.concurrent.CompletionService<any>>;
				/**
				 * Constructs a new instance of the java.util.concurrent.CompletionService<any> interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					submit(param0: java.util.concurrent.Callable<V>): java.util.concurrent.Future<V>;
					submit(param0: java.lang.Runnable, param1: V): java.util.concurrent.Future<V>;
					take(): java.util.concurrent.Future<V>;
					poll(): java.util.concurrent.Future<V>;
					poll(param0: number, param1: java.util.concurrent.TimeUnit): java.util.concurrent.Future<V>;
				});
				public constructor();
				public take(): java.util.concurrent.Future<V>;
				public submit(param0: java.lang.Runnable, param1: V): java.util.concurrent.Future<V>;
				public submit(param0: java.util.concurrent.Callable<V>): java.util.concurrent.Future<V>;
				public poll(): java.util.concurrent.Future<V>;
				public poll(param0: number, param1: java.util.concurrent.TimeUnit): java.util.concurrent.Future<V>;
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export class ConcurrentHashMap<K, V>  extends java.util.AbstractMap<any,any> {
				public static class: java.lang.Class<java.util.concurrent.ConcurrentHashMap<any,any>>;
				public constructor(param0: number, param1: number);
				public constructor(param0: number, param1: number, param2: number);
				public get(param0: any): any;
				public putAll(param0: java.util.Map<any,any>): void;
				public constructor(param0: java.util.Map<any,any>);
				public containsKey(param0: any): boolean;
				public constructor();
				public remove(param0: any, param1: any): boolean;
				public putIfAbsent(param0: any, param1: any): any;
				public keys(): java.util.Enumeration<any>;
				public elements(): java.util.Enumeration<any>;
				public remove(param0: any): any;
				public hashCode(): number;
				public clear(): void;
				public equals(param0: any): boolean;
				public isEmpty(): boolean;
				public containsValue(param0: any): boolean;
				public replace(param0: any, param1: any, param2: any): boolean;
				public values(): java.util.Collection<any>;
				public replace(param0: any, param1: any): any;
				public contains(param0: any): boolean;
				public entrySet(): java.util.Set<java.util.Map.Entry<any,any>>;
				public keySet(): java.util.Set<any>;
				public size(): number;
				public put(param0: any, param1: any): any;
				public constructor(param0: number);
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export class ConcurrentLinkedQueue<E>  extends java.util.AbstractQueue<any> {
				public static class: java.lang.Class<java.util.concurrent.ConcurrentLinkedQueue<any>>;
				public remove(): any;
				public element(): any;
				public peek(): any;
				public contains(param0: any): boolean;
				public addAll(param0: java.util.Collection<any>): boolean;
				public toArray(param0: native.Array<any>): native.Array<any>;
				public iterator(): java.util.Iterator<any>;
				public retainAll(param0: java.util.Collection<any>): boolean;
				public constructor();
				public poll(): any;
				public size(): number;
				public toArray(): native.Array<any>;
				public constructor(param0: java.util.Collection<any>);
				public containsAll(param0: java.util.Collection<any>): boolean;
				public add(param0: any): boolean;
				public hashCode(): number;
				public offer(param0: any): boolean;
				public removeAll(param0: java.util.Collection<any>): boolean;
				public clear(): void;
				public equals(param0: any): boolean;
				public isEmpty(): boolean;
				public remove(param0: any): boolean;
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export class ConcurrentMap<K, V>  extends java.util.Map<any,any> {
				public static class: java.lang.Class<java.util.concurrent.ConcurrentMap<any,any>>;
				/**
				 * Constructs a new instance of the java.util.concurrent.ConcurrentMap<any,any> interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					putIfAbsent(param0: any, param1: any): any;
					remove(param0: any, param1: any): boolean;
					replace(param0: any, param1: any, param2: any): boolean;
					replace(param0: any, param1: any): any;
					clear(): void;
					containsKey(param0: any): boolean;
					containsValue(param0: any): boolean;
					entrySet(): java.util.Set<java.util.Map.Entry<any,any>>;
					equals(param0: any): boolean;
					get(param0: any): any;
					hashCode(): number;
					isEmpty(): boolean;
					keySet(): java.util.Set<any>;
					put(param0: any, param1: any): any;
					putAll(param0: java.util.Map<any,any>): void;
					remove(param0: any): any;
					size(): number;
					values(): java.util.Collection<any>;
				});
				public constructor();
				public values(): java.util.Collection<any>;
				public get(param0: any): any;
				public replace(param0: any, param1: any): any;
				public putAll(param0: java.util.Map<any,any>): void;
				public entrySet(): java.util.Set<java.util.Map.Entry<any,any>>;
				public containsKey(param0: any): boolean;
				public keySet(): java.util.Set<any>;
				public remove(param0: any, param1: any): boolean;
				public size(): number;
				public putIfAbsent(param0: any, param1: any): any;
				public put(param0: any, param1: any): any;
				public remove(param0: any): any;
				public hashCode(): number;
				public clear(): void;
				public equals(param0: any): boolean;
				public isEmpty(): boolean;
				public containsValue(param0: any): boolean;
				public replace(param0: any, param1: any, param2: any): boolean;
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export class ConcurrentNavigableMap<K, V>  extends java.lang.Object {
				public static class: java.lang.Class<java.util.concurrent.ConcurrentNavigableMap<any,any>>;
				/**
				 * Constructs a new instance of the java.util.concurrent.ConcurrentNavigableMap<any,any> interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					subMap(param0: K, param1: boolean, param2: K, param3: boolean): java.util.concurrent.ConcurrentNavigableMap<K,V>;
					headMap(param0: K, param1: boolean): java.util.concurrent.ConcurrentNavigableMap<K,V>;
					tailMap(param0: K, param1: boolean): java.util.concurrent.ConcurrentNavigableMap<K,V>;
					subMap(param0: K, param1: K): java.util.concurrent.ConcurrentNavigableMap<K,V>;
					headMap(param0: K): java.util.concurrent.ConcurrentNavigableMap<K,V>;
					tailMap(param0: K): java.util.concurrent.ConcurrentNavigableMap<K,V>;
					descendingMap(): java.util.concurrent.ConcurrentNavigableMap<K,V>;
					navigableKeySet(): java.util.NavigableSet<K>;
					keySet(): java.util.NavigableSet<K>;
					descendingKeySet(): java.util.NavigableSet<K>;
					putIfAbsent(param0: K, param1: V): V;
					remove(param0: any, param1: any): boolean;
					replace(param0: K, param1: V, param2: V): boolean;
					replace(param0: K, param1: V): V;
					lowerEntry(param0: K): java.util.Map.Entry<K,V>;
					lowerKey(param0: K): K;
					floorEntry(param0: K): java.util.Map.Entry<K,V>;
					floorKey(param0: K): K;
					ceilingEntry(param0: K): java.util.Map.Entry<K,V>;
					ceilingKey(param0: K): K;
					higherEntry(param0: K): java.util.Map.Entry<K,V>;
					higherKey(param0: K): K;
					firstEntry(): java.util.Map.Entry<K,V>;
					lastEntry(): java.util.Map.Entry<K,V>;
					pollFirstEntry(): java.util.Map.Entry<K,V>;
					pollLastEntry(): java.util.Map.Entry<K,V>;
					descendingMap(): java.util.NavigableMap<K,V>;
					navigableKeySet(): java.util.NavigableSet<K>;
					descendingKeySet(): java.util.NavigableSet<K>;
					subMap(param0: K, param1: boolean, param2: K, param3: boolean): java.util.NavigableMap<K,V>;
					headMap(param0: K, param1: boolean): java.util.NavigableMap<K,V>;
					tailMap(param0: K, param1: boolean): java.util.NavigableMap<K,V>;
					subMap(param0: K, param1: K): java.util.SortedMap<K,V>;
					headMap(param0: K): java.util.SortedMap<K,V>;
					tailMap(param0: K): java.util.SortedMap<K,V>;
					clear(): void;
					containsKey(param0: any): boolean;
					containsValue(param0: any): boolean;
					entrySet(): java.util.Set<java.util.Map.Entry<K,V>>;
					equals(param0: any): boolean;
					get(param0: any): V;
					hashCode(): number;
					isEmpty(): boolean;
					keySet(): java.util.Set<K>;
					put(param0: K, param1: V): V;
					putAll(param0: java.util.Map<any,any>): void;
					remove(param0: any): V;
					size(): number;
					values(): java.util.Collection<V>;
					comparator(): java.util.Comparator<any>;
					firstKey(): K;
					headMap(param0: K): java.util.SortedMap<K,V>;
					lastKey(): K;
					subMap(param0: K, param1: K): java.util.SortedMap<K,V>;
					tailMap(param0: K): java.util.SortedMap<K,V>;
					clear(): void;
					containsKey(param0: any): boolean;
					containsValue(param0: any): boolean;
					entrySet(): java.util.Set<java.util.Map.Entry<K,V>>;
					equals(param0: any): boolean;
					get(param0: any): V;
					hashCode(): number;
					isEmpty(): boolean;
					keySet(): java.util.Set<K>;
					put(param0: K, param1: V): V;
					putAll(param0: java.util.Map<any,any>): void;
					remove(param0: any): V;
					size(): number;
					values(): java.util.Collection<V>;
				});
				public constructor();
				public floorEntry(param0: K): java.util.Map.Entry<K,V>;
				public entrySet(): java.util.Set<java.util.Map.Entry<K,V>>;
				public putAll(param0: java.util.Map<any,any>): void;
				public subMap(param0: K, param1: boolean, param2: K, param3: boolean): java.util.concurrent.ConcurrentNavigableMap<K,V>;
				public keySet(): java.util.Set<K>;
				public lastKey(): K;
				public remove(param0: any, param1: any): boolean;
				public replace(param0: K, param1: V, param2: V): boolean;
				public remove(param0: any): V;
				public pollFirstEntry(): java.util.Map.Entry<K,V>;
				public hashCode(): number;
				public equals(param0: any): boolean;
				public keySet(): java.util.NavigableSet<K>;
				public isEmpty(): boolean;
				public subMap(param0: K, param1: K): java.util.concurrent.ConcurrentNavigableMap<K,V>;
				public comparator(): java.util.Comparator<any>;
				public containsValue(param0: any): boolean;
				public subMap(param0: K, param1: K): java.util.SortedMap<K,V>;
				public values(): java.util.Collection<V>;
				public floorKey(param0: K): K;
				public size(): number;
				public tailMap(param0: K): java.util.concurrent.ConcurrentNavigableMap<K,V>;
				public subMap(param0: K, param1: boolean, param2: K, param3: boolean): java.util.NavigableMap<K,V>;
				public lowerKey(param0: K): K;
				public ceilingEntry(param0: K): java.util.Map.Entry<K,V>;
				public headMap(param0: K): java.util.SortedMap<K,V>;
				public tailMap(param0: K): java.util.SortedMap<K,V>;
				public replace(param0: K, param1: V): V;
				public lowerEntry(param0: K): java.util.Map.Entry<K,V>;
				public ceilingKey(param0: K): K;
				public pollLastEntry(): java.util.Map.Entry<K,V>;
				public descendingKeySet(): java.util.NavigableSet<K>;
				public containsKey(param0: any): boolean;
				public put(param0: K, param1: V): V;
				public descendingMap(): java.util.concurrent.ConcurrentNavigableMap<K,V>;
				public clear(): void;
				public higherEntry(param0: K): java.util.Map.Entry<K,V>;
				public lastEntry(): java.util.Map.Entry<K,V>;
				public firstEntry(): java.util.Map.Entry<K,V>;
				public navigableKeySet(): java.util.NavigableSet<K>;
				public headMap(param0: K, param1: boolean): java.util.concurrent.ConcurrentNavigableMap<K,V>;
				public higherKey(param0: K): K;
				public headMap(param0: K): java.util.concurrent.ConcurrentNavigableMap<K,V>;
				public putIfAbsent(param0: K, param1: V): V;
				public tailMap(param0: K, param1: boolean): java.util.concurrent.ConcurrentNavigableMap<K,V>;
				public headMap(param0: K, param1: boolean): java.util.NavigableMap<K,V>;
				public get(param0: any): V;
				public firstKey(): K;
				public descendingMap(): java.util.NavigableMap<K,V>;
				public tailMap(param0: K, param1: boolean): java.util.NavigableMap<K,V>;
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export class ConcurrentSkipListMap<K, V>  extends java.util.AbstractMap<any,any> {
				public static class: java.lang.Class<java.util.concurrent.ConcurrentSkipListMap<any,any>>;
				public pollLastEntry(): java.util.Map.Entry<any,any>;
				public putAll(param0: java.util.Map<any,any>): void;
				public subMap(param0: any, param1: any): java.util.concurrent.ConcurrentNavigableMap<any,any>;
				public lowerEntry(param0: any): java.util.Map.Entry<any,any>;
				public constructor();
				public remove(param0: any, param1: any): boolean;
				public putIfAbsent(param0: any, param1: any): any;
				public tailMap(param0: any): java.util.SortedMap<any,any>;
				public remove(param0: any): any;
				public navigableKeySet(): java.util.NavigableSet<any>;
				public firstEntry(): java.util.Map.Entry<any,any>;
				public hashCode(): number;
				public clone(): any;
				public equals(param0: any): boolean;
				public headMap(param0: any, param1: boolean): java.util.concurrent.ConcurrentNavigableMap<any,any>;
				public isEmpty(): boolean;
				public comparator(): java.util.Comparator<any>;
				public headMap(param0: any, param1: boolean): java.util.NavigableMap<any,any>;
				public containsValue(param0: any): boolean;
				public keySet(): java.util.NavigableSet<any>;
				public replace(param0: any, param1: any): any;
				public entrySet(): java.util.Set<java.util.Map.Entry<any,any>>;
				public keySet(): java.util.Set<any>;
				public firstKey(): any;
				public size(): number;
				public higherKey(param0: any): any;
				public constructor(param0: java.util.Comparator<any>);
				public ceilingKey(param0: any): any;
				public tailMap(param0: any, param1: boolean): java.util.NavigableMap<any,any>;
				public clone(): java.util.concurrent.ConcurrentSkipListMap<any,any>;
				public put(param0: any, param1: any): any;
				public floorEntry(param0: any): java.util.Map.Entry<any,any>;
				public get(param0: any): any;
				public constructor(param0: java.util.Map<any,any>);
				public lastKey(): any;
				public containsKey(param0: any): boolean;
				public headMap(param0: any): java.util.concurrent.ConcurrentNavigableMap<any,any>;
				public constructor(param0: java.util.SortedMap<any,any>);
				public clear(): void;
				public lowerKey(param0: any): any;
				public replace(param0: any, param1: any, param2: any): boolean;
				public values(): java.util.Collection<any>;
				public subMap(param0: any, param1: boolean, param2: any, param3: boolean): java.util.NavigableMap<any,any>;
				public descendingMap(): java.util.concurrent.ConcurrentNavigableMap<any,any>;
				public headMap(param0: any): java.util.SortedMap<any,any>;
				public subMap(param0: any, param1: boolean, param2: any, param3: boolean): java.util.concurrent.ConcurrentNavigableMap<any,any>;
				public lastEntry(): java.util.Map.Entry<any,any>;
				public tailMap(param0: any): java.util.concurrent.ConcurrentNavigableMap<any,any>;
				public ceilingEntry(param0: any): java.util.Map.Entry<any,any>;
				public descendingMap(): java.util.NavigableMap<any,any>;
				public tailMap(param0: any, param1: boolean): java.util.concurrent.ConcurrentNavigableMap<any,any>;
				public pollFirstEntry(): java.util.Map.Entry<any,any>;
				public floorKey(param0: any): any;
				public descendingKeySet(): java.util.NavigableSet<any>;
				public subMap(param0: any, param1: any): java.util.SortedMap<any,any>;
				public higherEntry(param0: any): java.util.Map.Entry<any,any>;
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export class ConcurrentSkipListSet<E>  extends java.util.AbstractSet<any> {
				public static class: java.lang.Class<java.util.concurrent.ConcurrentSkipListSet<any>>;
				public constructor(param0: java.util.SortedSet<any>);
				public addAll(param0: java.util.Collection<any>): boolean;
				public headSet(param0: any): java.util.SortedSet<any>;
				public constructor();
				public tailSet(param0: any, param1: boolean): java.util.NavigableSet<any>;
				public toArray(): native.Array<any>;
				public tailSet(param0: any): java.util.NavigableSet<any>;
				public constructor(param0: java.util.Collection<any>);
				public containsAll(param0: java.util.Collection<any>): boolean;
				public add(param0: any): boolean;
				public headSet(param0: any, param1: boolean): java.util.NavigableSet<any>;
				public hashCode(): number;
				public pollLast(): any;
				public clone(): any;
				public clear(): void;
				public equals(param0: any): boolean;
				public descendingIterator(): java.util.Iterator<any>;
				public isEmpty(): boolean;
				public comparator(): java.util.Comparator<any>;
				public remove(param0: any): boolean;
				public tailSet(param0: any): java.util.SortedSet<any>;
				public last(): any;
				public higher(param0: any): any;
				public contains(param0: any): boolean;
				public toArray(param0: native.Array<any>): native.Array<any>;
				public iterator(): java.util.Iterator<any>;
				public retainAll(param0: java.util.Collection<any>): boolean;
				public subSet(param0: any, param1: any): java.util.SortedSet<any>;
				public size(): number;
				public constructor(param0: java.util.Comparator<any>);
				public lower(param0: any): any;
				public floor(param0: any): any;
				public subSet(param0: any, param1: boolean, param2: any, param3: boolean): java.util.NavigableSet<any>;
				public removeAll(param0: java.util.Collection<any>): boolean;
				public subSet(param0: any, param1: any): java.util.NavigableSet<any>;
				public headSet(param0: any): java.util.NavigableSet<any>;
				public first(): any;
				public clone(): java.util.concurrent.ConcurrentSkipListSet<any>;
				public ceiling(param0: any): any;
				public pollFirst(): any;
				public descendingSet(): java.util.NavigableSet<any>;
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export class CopyOnWriteArrayList<E>  extends java.lang.Object {
				public static class: java.lang.Class<java.util.concurrent.CopyOnWriteArrayList<any>>;
				public constructor(param0: native.Array<E>);
				public indexOf(param0: any): number;
				public addAllAbsent(param0: java.util.Collection<any>): number;
				public addAll(param0: java.util.Collection<any>): boolean;
				public listIterator(): java.util.ListIterator<E>;
				public addIfAbsent(param0: E): boolean;
				public constructor();
				public toArray(): native.Array<any>;
				public constructor(param0: java.util.Collection<any>);
				public containsAll(param0: java.util.Collection<any>): boolean;
				public hashCode(): number;
				public clone(): any;
				public equals(param0: any): boolean;
				public clear(): void;
				public iterator(): java.util.Iterator<E>;
				public addAll(param0: number, param1: java.util.Collection<any>): boolean;
				public lastIndexOf(param0: any): number;
				public isEmpty(): boolean;
				public set(param0: number, param1: E): E;
				public remove(param0: any): boolean;
				public get(param0: number): E;
				public contains(param0: any): boolean;
				public toArray(param0: native.Array<any>): native.Array<any>;
				public listIterator(param0: number): java.util.ListIterator<E>;
				public remove(param0: number): E;
				public iterator(): java.util.Iterator<any>;
				public subList(param0: number, param1: number): java.util.List<E>;
				public toString(): string;
				public retainAll(param0: java.util.Collection<any>): boolean;
				public size(): number;
				public add(param0: number, param1: E): void;
				public indexOf(param0: E, param1: number): number;
				public add(param0: E): boolean;
				public removeAll(param0: java.util.Collection<any>): boolean;
				public lastIndexOf(param0: E, param1: number): number;
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export class CopyOnWriteArraySet<E>  extends java.util.AbstractSet<any> implements java.io.Serializable  {
				public static class: java.lang.Class<java.util.concurrent.CopyOnWriteArraySet<any>>;
				public contains(param0: any): boolean;
				public addAll(param0: java.util.Collection<any>): boolean;
				public toArray(param0: native.Array<any>): native.Array<any>;
				public iterator(): java.util.Iterator<any>;
				public retainAll(param0: java.util.Collection<any>): boolean;
				public constructor();
				public size(): number;
				public toArray(): native.Array<any>;
				public constructor(param0: java.util.Collection<any>);
				public containsAll(param0: java.util.Collection<any>): boolean;
				public add(param0: any): boolean;
				public hashCode(): number;
				public removeAll(param0: java.util.Collection<any>): boolean;
				public clear(): void;
				public equals(param0: any): boolean;
				public isEmpty(): boolean;
				public remove(param0: any): boolean;
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export class CountDownLatch extends java.lang.Object {
				public static class: java.lang.Class<java.util.concurrent.CountDownLatch>;
				public countDown(): void;
				public constructor(param0: number);
				public getCount(): number;
				public await(): void;
				public toString(): string;
				public await(param0: number, param1: java.util.concurrent.TimeUnit): boolean;
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export class CyclicBarrier extends java.lang.Object {
				public static class: java.lang.Class<java.util.concurrent.CyclicBarrier>;
				public reset(): void;
				public await(): number;
				public constructor(param0: number);
				public await(param0: number, param1: java.util.concurrent.TimeUnit): number;
				public getNumberWaiting(): number;
				public isBroken(): boolean;
				public getParties(): number;
				public constructor(param0: number, param1: java.lang.Runnable);
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export class DelayQueue<E>  extends java.util.AbstractQueue<any> implements java.util.concurrent.BlockingQueue<any>  {
				public static class: java.lang.Class<java.util.concurrent.DelayQueue<any>>;
				public peek(): any;
				public addAll(param0: java.util.Collection<any>): boolean;
				public offer(param0: any, param1: number, param2: java.util.concurrent.TimeUnit): boolean;
				public constructor();
				public toArray(): native.Array<any>;
				public constructor(param0: java.util.Collection<any>);
				public containsAll(param0: java.util.Collection<any>): boolean;
				public take(): any;
				public add(param0: any): boolean;
				public hashCode(): number;
				public offer(param0: any): boolean;
				public clear(): void;
				public equals(param0: any): boolean;
				public isEmpty(): boolean;
				public remove(param0: any): boolean;
				public remove(): any;
				public element(): any;
				public contains(param0: any): boolean;
				public toArray(param0: native.Array<any>): native.Array<any>;
				public drainTo(param0: java.util.Collection<any>, param1: number): number;
				public iterator(): java.util.Iterator<any>;
				public retainAll(param0: java.util.Collection<any>): boolean;
				public poll(param0: number, param1: java.util.concurrent.TimeUnit): any;
				public drainTo(param0: java.util.Collection<any>): number;
				public poll(): any;
				public size(): number;
				public put(param0: any): void;
				public remainingCapacity(): number;
				public removeAll(param0: java.util.Collection<any>): boolean;
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export class Delayed extends java.lang.Comparable<java.util.concurrent.Delayed> {
				public static class: java.lang.Class<java.util.concurrent.Delayed>;
				/**
				 * Constructs a new instance of the java.util.concurrent.Delayed interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getDelay(param0: java.util.concurrent.TimeUnit): number;
				});
				public constructor();
				public getDelay(param0: java.util.concurrent.TimeUnit): number;
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export class Exchanger<V>  extends java.lang.Object {
				public static class: java.lang.Class<java.util.concurrent.Exchanger<any>>;
				public exchange(param0: V): V;
				public exchange(param0: V, param1: number, param2: java.util.concurrent.TimeUnit): V;
				public constructor();
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export class ExecutionException extends java.lang.Exception {
				public static class: java.lang.Class<java.util.concurrent.ExecutionException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export class Executor extends java.lang.Object {
				public static class: java.lang.Class<java.util.concurrent.Executor>;
				/**
				 * Constructs a new instance of the java.util.concurrent.Executor interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					execute(param0: java.lang.Runnable): void;
				});
				public constructor();
				public execute(param0: java.lang.Runnable): void;
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export class ExecutorCompletionService<V>  extends java.util.concurrent.CompletionService<any> {
				public static class: java.lang.Class<java.util.concurrent.ExecutorCompletionService<any>>;
				public submit(param0: java.lang.Runnable, param1: any): java.util.concurrent.Future<any>;
				public poll(): java.util.concurrent.Future<any>;
				public take(): java.util.concurrent.Future<any>;
				public constructor(param0: java.util.concurrent.Executor);
				public poll(param0: number, param1: java.util.concurrent.TimeUnit): java.util.concurrent.Future<any>;
				public constructor(param0: java.util.concurrent.Executor, param1: java.util.concurrent.BlockingQueue<java.util.concurrent.Future<any>>);
				public submit(param0: java.util.concurrent.Callable<any>): java.util.concurrent.Future<any>;
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export class ExecutorService extends java.lang.Object implements java.util.concurrent.Executor {
				public static class: java.lang.Class<java.util.concurrent.ExecutorService>;
				/**
				 * Constructs a new instance of the java.util.concurrent.ExecutorService interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					shutdown(): void;
					shutdownNow(): java.util.List<java.lang.Runnable>;
					isShutdown(): boolean;
					isTerminated(): boolean;
					awaitTermination(param0: number, param1: java.util.concurrent.TimeUnit): boolean;
					submit(param0: java.util.concurrent.Callable<any>): java.util.concurrent.Future<any>;
					submit(param0: java.lang.Runnable, param1: any): java.util.concurrent.Future<any>;
					submit(param0: java.lang.Runnable): java.util.concurrent.Future<any>;
					invokeAll(param0: java.util.Collection<any>): java.util.List<any>;
					invokeAll(param0: java.util.Collection<any>, param1: number, param2: java.util.concurrent.TimeUnit): java.util.List<any>;
					invokeAny(param0: java.util.Collection<any>): any;
					invokeAny(param0: java.util.Collection<any>, param1: number, param2: java.util.concurrent.TimeUnit): any;
					execute(param0: java.lang.Runnable): void;
				});
				public constructor();
				public invokeAll(param0: java.util.Collection<any>, param1: number, param2: java.util.concurrent.TimeUnit): java.util.List<any>;
				public isTerminated(): boolean;
				public submit(param0: java.lang.Runnable): java.util.concurrent.Future<any>;
				public submit(param0: java.lang.Runnable, param1: any): java.util.concurrent.Future<any>;
				public invokeAny(param0: java.util.Collection<any>): any;
				public awaitTermination(param0: number, param1: java.util.concurrent.TimeUnit): boolean;
				public submit(param0: java.util.concurrent.Callable<any>): java.util.concurrent.Future<any>;
				public shutdown(): void;
				public shutdownNow(): java.util.List<java.lang.Runnable>;
				public execute(param0: java.lang.Runnable): void;
				public isShutdown(): boolean;
				public invokeAll(param0: java.util.Collection<any>): java.util.List<any>;
				public invokeAny(param0: java.util.Collection<any>, param1: number, param2: java.util.concurrent.TimeUnit): any;
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export class Executors extends java.lang.Object {
				public static class: java.lang.Class<java.util.concurrent.Executors>;
				public static newScheduledThreadPool(param0: number): java.util.concurrent.ScheduledExecutorService;
				public static privilegedCallableUsingCurrentClassLoader(param0: java.util.concurrent.Callable<any>): java.util.concurrent.Callable<any>;
				public static unconfigurableScheduledExecutorService(param0: java.util.concurrent.ScheduledExecutorService): java.util.concurrent.ScheduledExecutorService;
				public static newCachedThreadPool(param0: java.util.concurrent.ThreadFactory): java.util.concurrent.ExecutorService;
				public static privilegedThreadFactory(): java.util.concurrent.ThreadFactory;
				public static newFixedThreadPool(param0: number): java.util.concurrent.ExecutorService;
				public static privilegedCallable(param0: java.util.concurrent.Callable<any>): java.util.concurrent.Callable<any>;
				public static newCachedThreadPool(): java.util.concurrent.ExecutorService;
				public static callable(param0: java.lang.Runnable): java.util.concurrent.Callable<any>;
				public static callable(param0: java.lang.Runnable, param1: any): java.util.concurrent.Callable<any>;
				public static newSingleThreadScheduledExecutor(): java.util.concurrent.ScheduledExecutorService;
				public static newSingleThreadScheduledExecutor(param0: java.util.concurrent.ThreadFactory): java.util.concurrent.ScheduledExecutorService;
				public static defaultThreadFactory(): java.util.concurrent.ThreadFactory;
				public static newFixedThreadPool(param0: number, param1: java.util.concurrent.ThreadFactory): java.util.concurrent.ExecutorService;
				public static newSingleThreadExecutor(): java.util.concurrent.ExecutorService;
				public static callable(param0: java.security.PrivilegedAction<any>): java.util.concurrent.Callable<any>;
				public static newSingleThreadExecutor(param0: java.util.concurrent.ThreadFactory): java.util.concurrent.ExecutorService;
				public static newScheduledThreadPool(param0: number, param1: java.util.concurrent.ThreadFactory): java.util.concurrent.ScheduledExecutorService;
				public static unconfigurableExecutorService(param0: java.util.concurrent.ExecutorService): java.util.concurrent.ExecutorService;
				public static callable(param0: java.security.PrivilegedExceptionAction<any>): java.util.concurrent.Callable<any>;
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export class Future<V>  extends java.lang.Object {
				public static class: java.lang.Class<java.util.concurrent.Future<any>>;
				/**
				 * Constructs a new instance of the java.util.concurrent.Future<any> interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					cancel(param0: boolean): boolean;
					isCancelled(): boolean;
					isDone(): boolean;
					get(): V;
					get(param0: number, param1: java.util.concurrent.TimeUnit): V;
				});
				public constructor();
				public get(): V;
				public isDone(): boolean;
				public get(param0: number, param1: java.util.concurrent.TimeUnit): V;
				public cancel(param0: boolean): boolean;
				public isCancelled(): boolean;
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export class FutureTask<V>  extends java.util.concurrent.RunnableFuture<any> {
				public static class: java.lang.Class<java.util.concurrent.FutureTask<any>>;
				public isDone(): boolean;
				public done(): void;
				public setException(param0: java.lang.Throwable): void;
				public run(): void;
				public constructor(param0: java.lang.Runnable, param1: any);
				public set(param0: any): void;
				public runAndReset(): boolean;
				public get(): any;
				public cancel(param0: boolean): boolean;
				public constructor(param0: java.util.concurrent.Callable<any>);
				public isCancelled(): boolean;
				public get(param0: number, param1: java.util.concurrent.TimeUnit): any;
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export class LinkedBlockingDeque<E>  extends java.util.AbstractQueue<any> {
				public static class: java.lang.Class<java.util.concurrent.LinkedBlockingDeque<any>>;
				public pollFirst(param0: number, param1: java.util.concurrent.TimeUnit): any;
				public addAll(param0: java.util.Collection<any>): boolean;
				public putFirst(param0: any): void;
				public constructor();
				public removeLastOccurrence(param0: any): boolean;
				public toArray(): native.Array<any>;
				public take(): any;
				public add(param0: any): boolean;
				public hashCode(): number;
				public equals(param0: any): boolean;
				public descendingIterator(): java.util.Iterator<any>;
				public addLast(param0: any): void;
				public isEmpty(): boolean;
				public offerFirst(param0: any): boolean;
				public contains(param0: any): boolean;
				public offerLast(param0: any): boolean;
				public iterator(): java.util.Iterator<any>;
				public peekFirst(): any;
				public toString(): string;
				public retainAll(param0: java.util.Collection<any>): boolean;
				public poll(param0: number, param1: java.util.concurrent.TimeUnit): any;
				public poll(): any;
				public size(): number;
				public peekLast(): any;
				public addFirst(param0: any): void;
				public remainingCapacity(): number;
				public removeAll(param0: java.util.Collection<any>): boolean;
				public putLast(param0: any): void;
				public removeLast(): any;
				public pollLast(param0: number, param1: java.util.concurrent.TimeUnit): any;
				public peek(): any;
				public offer(param0: any, param1: number, param2: java.util.concurrent.TimeUnit): boolean;
				public offerFirst(param0: any, param1: number, param2: java.util.concurrent.TimeUnit): boolean;
				public constructor(param0: java.util.Collection<any>);
				public containsAll(param0: java.util.Collection<any>): boolean;
				public push(param0: any): void;
				public pop(): any;
				public pollLast(): any;
				public offer(param0: any): boolean;
				public clear(): void;
				public remove(param0: any): boolean;
				public takeLast(): any;
				public remove(): any;
				public getLast(): any;
				public element(): any;
				public toArray(param0: native.Array<any>): native.Array<any>;
				public drainTo(param0: java.util.Collection<any>, param1: number): number;
				public getFirst(): any;
				public removeFirst(): any;
				public drainTo(param0: java.util.Collection<any>): number;
				public offerLast(param0: any, param1: number, param2: java.util.concurrent.TimeUnit): boolean;
				public put(param0: any): void;
				public removeFirstOccurrence(param0: any): boolean;
				public constructor(param0: number);
				public takeFirst(): any;
				public pollFirst(): any;
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export class LinkedBlockingQueue<E>  extends java.util.AbstractQueue<any> {
				public static class: java.lang.Class<java.util.concurrent.LinkedBlockingQueue<any>>;
				public peek(): any;
				public addAll(param0: java.util.Collection<any>): boolean;
				public offer(param0: any, param1: number, param2: java.util.concurrent.TimeUnit): boolean;
				public constructor();
				public toArray(): native.Array<any>;
				public constructor(param0: java.util.Collection<any>);
				public containsAll(param0: java.util.Collection<any>): boolean;
				public take(): any;
				public add(param0: any): boolean;
				public hashCode(): number;
				public offer(param0: any): boolean;
				public clear(): void;
				public equals(param0: any): boolean;
				public isEmpty(): boolean;
				public remove(param0: any): boolean;
				public remove(): any;
				public element(): any;
				public contains(param0: any): boolean;
				public toArray(param0: native.Array<any>): native.Array<any>;
				public drainTo(param0: java.util.Collection<any>, param1: number): number;
				public iterator(): java.util.Iterator<any>;
				public toString(): string;
				public retainAll(param0: java.util.Collection<any>): boolean;
				public poll(param0: number, param1: java.util.concurrent.TimeUnit): any;
				public drainTo(param0: java.util.Collection<any>): number;
				public size(): number;
				public poll(): any;
				public put(param0: any): void;
				public remainingCapacity(): number;
				public removeAll(param0: java.util.Collection<any>): boolean;
				public constructor(param0: number);
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export class PriorityBlockingQueue<E>  extends java.util.AbstractQueue<any> {
				public static class: java.lang.Class<java.util.concurrent.PriorityBlockingQueue<any>>;
				public peek(): any;
				public addAll(param0: java.util.Collection<any>): boolean;
				public offer(param0: any, param1: number, param2: java.util.concurrent.TimeUnit): boolean;
				public constructor();
				public constructor(param0: number, param1: java.util.Comparator<any>);
				public toArray(): native.Array<any>;
				public constructor(param0: java.util.Collection<any>);
				public containsAll(param0: java.util.Collection<any>): boolean;
				public take(): any;
				public add(param0: any): boolean;
				public hashCode(): number;
				public offer(param0: any): boolean;
				public clear(): void;
				public equals(param0: any): boolean;
				public isEmpty(): boolean;
				public comparator(): java.util.Comparator<any>;
				public remove(param0: any): boolean;
				public remove(): any;
				public element(): any;
				public contains(param0: any): boolean;
				public toArray(param0: native.Array<any>): native.Array<any>;
				public drainTo(param0: java.util.Collection<any>, param1: number): number;
				public iterator(): java.util.Iterator<any>;
				public toString(): string;
				public retainAll(param0: java.util.Collection<any>): boolean;
				public poll(param0: number, param1: java.util.concurrent.TimeUnit): any;
				public drainTo(param0: java.util.Collection<any>): number;
				public poll(): any;
				public size(): number;
				public put(param0: any): void;
				public remainingCapacity(): number;
				public removeAll(param0: java.util.Collection<any>): boolean;
				public constructor(param0: number);
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export class RejectedExecutionException extends java.lang.RuntimeException {
				public static class: java.lang.Class<java.util.concurrent.RejectedExecutionException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export class RejectedExecutionHandler extends java.lang.Object {
				public static class: java.lang.Class<java.util.concurrent.RejectedExecutionHandler>;
				/**
				 * Constructs a new instance of the java.util.concurrent.RejectedExecutionHandler interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					rejectedExecution(param0: java.lang.Runnable, param1: java.util.concurrent.ThreadPoolExecutor): void;
				});
				public constructor();
				public rejectedExecution(param0: java.lang.Runnable, param1: java.util.concurrent.ThreadPoolExecutor): void;
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export class RunnableFuture<V>  extends java.lang.Object {
				public static class: java.lang.Class<java.util.concurrent.RunnableFuture<any>>;
				/**
				 * Constructs a new instance of the java.util.concurrent.RunnableFuture<any> interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					run(): void;
					run(): void;
					cancel(param0: boolean): boolean;
					isCancelled(): boolean;
					isDone(): boolean;
					get(): V;
					get(param0: number, param1: java.util.concurrent.TimeUnit): V;
				});
				public constructor();
				public get(): V;
				public isDone(): boolean;
				public get(param0: number, param1: java.util.concurrent.TimeUnit): V;
				public run(): void;
				public cancel(param0: boolean): boolean;
				public isCancelled(): boolean;
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export class RunnableScheduledFuture<V>  extends java.lang.Object {
				public static class: java.lang.Class<java.util.concurrent.RunnableScheduledFuture<any>>;
				/**
				 * Constructs a new instance of the java.util.concurrent.RunnableScheduledFuture<any> interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					isPeriodic(): boolean;
					run(): void;
					run(): void;
					cancel(param0: boolean): boolean;
					isCancelled(): boolean;
					isDone(): boolean;
					get(): V;
					get(param0: number, param1: java.util.concurrent.TimeUnit): V;
					getDelay(param0: java.util.concurrent.TimeUnit): number;
					cancel(param0: boolean): boolean;
					isCancelled(): boolean;
					isDone(): boolean;
					get(): V;
					get(param0: number, param1: java.util.concurrent.TimeUnit): V;
				});
				public constructor();
				public get(): V;
				public getDelay(param0: java.util.concurrent.TimeUnit): number;
				public isPeriodic(): boolean;
				public isDone(): boolean;
				public get(param0: number, param1: java.util.concurrent.TimeUnit): V;
				public run(): void;
				public cancel(param0: boolean): boolean;
				public isCancelled(): boolean;
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export class ScheduledExecutorService extends java.lang.Object implements java.util.concurrent.ExecutorService {
				public static class: java.lang.Class<java.util.concurrent.ScheduledExecutorService>;
				/**
				 * Constructs a new instance of the java.util.concurrent.ScheduledExecutorService interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					schedule(param0: java.lang.Runnable, param1: number, param2: java.util.concurrent.TimeUnit): java.util.concurrent.ScheduledFuture<any>;
					schedule(param0: java.util.concurrent.Callable<any>, param1: number, param2: java.util.concurrent.TimeUnit): java.util.concurrent.ScheduledFuture<any>;
					scheduleAtFixedRate(param0: java.lang.Runnable, param1: number, param2: number, param3: java.util.concurrent.TimeUnit): java.util.concurrent.ScheduledFuture<any>;
					scheduleWithFixedDelay(param0: java.lang.Runnable, param1: number, param2: number, param3: java.util.concurrent.TimeUnit): java.util.concurrent.ScheduledFuture<any>;
					shutdown(): void;
					shutdownNow(): java.util.List<java.lang.Runnable>;
					isShutdown(): boolean;
					isTerminated(): boolean;
					awaitTermination(param0: number, param1: java.util.concurrent.TimeUnit): boolean;
					submit(param0: java.util.concurrent.Callable<any>): java.util.concurrent.Future<any>;
					submit(param0: java.lang.Runnable, param1: any): java.util.concurrent.Future<any>;
					submit(param0: java.lang.Runnable): java.util.concurrent.Future<any>;
					invokeAll(param0: java.util.Collection<any>): java.util.List<any>;
					invokeAll(param0: java.util.Collection<any>, param1: number, param2: java.util.concurrent.TimeUnit): java.util.List<any>;
					invokeAny(param0: java.util.Collection<any>): any;
					invokeAny(param0: java.util.Collection<any>, param1: number, param2: java.util.concurrent.TimeUnit): any;
					execute(param0: java.lang.Runnable): void;
				});
				public constructor();
				public invokeAll(param0: java.util.Collection<any>, param1: number, param2: java.util.concurrent.TimeUnit): java.util.List<any>;
				public schedule(param0: java.util.concurrent.Callable<any>, param1: number, param2: java.util.concurrent.TimeUnit): java.util.concurrent.ScheduledFuture<any>;
				public schedule(param0: java.lang.Runnable, param1: number, param2: java.util.concurrent.TimeUnit): java.util.concurrent.ScheduledFuture<any>;
				public isTerminated(): boolean;
				public submit(param0: java.lang.Runnable): java.util.concurrent.Future<any>;
				public submit(param0: java.lang.Runnable, param1: any): java.util.concurrent.Future<any>;
				public invokeAny(param0: java.util.Collection<any>): any;
				public scheduleAtFixedRate(param0: java.lang.Runnable, param1: number, param2: number, param3: java.util.concurrent.TimeUnit): java.util.concurrent.ScheduledFuture<any>;
				public awaitTermination(param0: number, param1: java.util.concurrent.TimeUnit): boolean;
				public submit(param0: java.util.concurrent.Callable<any>): java.util.concurrent.Future<any>;
				public shutdown(): void;
				public scheduleWithFixedDelay(param0: java.lang.Runnable, param1: number, param2: number, param3: java.util.concurrent.TimeUnit): java.util.concurrent.ScheduledFuture<any>;
				public shutdownNow(): java.util.List<java.lang.Runnable>;
				public execute(param0: java.lang.Runnable): void;
				public isShutdown(): boolean;
				public invokeAll(param0: java.util.Collection<any>): java.util.List<any>;
				public invokeAny(param0: java.util.Collection<any>, param1: number, param2: java.util.concurrent.TimeUnit): any;
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export class ScheduledFuture<V>  extends java.lang.Object {
				public static class: java.lang.Class<java.util.concurrent.ScheduledFuture<any>>;
				/**
				 * Constructs a new instance of the java.util.concurrent.ScheduledFuture<any> interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getDelay(param0: java.util.concurrent.TimeUnit): number;
					cancel(param0: boolean): boolean;
					isCancelled(): boolean;
					isDone(): boolean;
					get(): V;
					get(param0: number, param1: java.util.concurrent.TimeUnit): V;
				});
				public constructor();
				public get(): V;
				public getDelay(param0: java.util.concurrent.TimeUnit): number;
				public isDone(): boolean;
				public get(param0: number, param1: java.util.concurrent.TimeUnit): V;
				public cancel(param0: boolean): boolean;
				public isCancelled(): boolean;
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export class ScheduledThreadPoolExecutor extends java.util.concurrent.ThreadPoolExecutor implements java.util.concurrent.ScheduledExecutorService {
				public static class: java.lang.Class<java.util.concurrent.ScheduledThreadPoolExecutor>;
				public decorateTask(param0: java.lang.Runnable, param1: java.util.concurrent.RunnableScheduledFuture<any>): java.util.concurrent.RunnableScheduledFuture<any>;
				public isTerminated(): boolean;
				public submit(param0: java.lang.Runnable, param1: any): java.util.concurrent.Future<any>;
				public constructor(param0: number, param1: number, param2: number, param3: java.util.concurrent.TimeUnit, param4: java.util.concurrent.BlockingQueue<java.lang.Runnable>, param5: java.util.concurrent.ThreadFactory, param6: java.util.concurrent.RejectedExecutionHandler);
				public constructor();
				public submit(param0: java.util.concurrent.Callable<any>): java.util.concurrent.Future<any>;
				public getExecuteExistingDelayedTasksAfterShutdownPolicy(): boolean;
				public awaitTermination(param0: number, param1: java.util.concurrent.TimeUnit): boolean;
				public decorateTask(param0: java.util.concurrent.Callable<any>, param1: java.util.concurrent.RunnableScheduledFuture<any>): java.util.concurrent.RunnableScheduledFuture<any>;
				public shutdown(): void;
				public isShutdown(): boolean;
				public constructor(param0: number, param1: number, param2: number, param3: java.util.concurrent.TimeUnit, param4: java.util.concurrent.BlockingQueue<java.lang.Runnable>, param5: java.util.concurrent.ThreadFactory);
				public constructor(param0: number, param1: java.util.concurrent.RejectedExecutionHandler);
				public invokeAny(param0: java.util.Collection<any>, param1: number, param2: java.util.concurrent.TimeUnit): any;
				public constructor(param0: number, param1: java.util.concurrent.ThreadFactory);
				public invokeAll(param0: java.util.Collection<any>, param1: number, param2: java.util.concurrent.TimeUnit): java.util.List<any>;
				public schedule(param0: java.util.concurrent.Callable<any>, param1: number, param2: java.util.concurrent.TimeUnit): java.util.concurrent.ScheduledFuture<any>;
				public setContinueExistingPeriodicTasksAfterShutdownPolicy(param0: boolean): void;
				public schedule(param0: java.lang.Runnable, param1: number, param2: java.util.concurrent.TimeUnit): java.util.concurrent.ScheduledFuture<any>;
				public submit(param0: java.lang.Runnable): java.util.concurrent.Future<any>;
				public constructor(param0: number, param1: number, param2: number, param3: java.util.concurrent.TimeUnit, param4: java.util.concurrent.BlockingQueue<java.lang.Runnable>);
				public getContinueExistingPeriodicTasksAfterShutdownPolicy(): boolean;
				public invokeAny(param0: java.util.Collection<any>): any;
				public scheduleAtFixedRate(param0: java.lang.Runnable, param1: number, param2: number, param3: java.util.concurrent.TimeUnit): java.util.concurrent.ScheduledFuture<any>;
				public setExecuteExistingDelayedTasksAfterShutdownPolicy(param0: boolean): void;
				public scheduleWithFixedDelay(param0: java.lang.Runnable, param1: number, param2: number, param3: java.util.concurrent.TimeUnit): java.util.concurrent.ScheduledFuture<any>;
				public execute(param0: java.lang.Runnable): void;
				public shutdownNow(): java.util.List<java.lang.Runnable>;
				public constructor(param0: number, param1: java.util.concurrent.ThreadFactory, param2: java.util.concurrent.RejectedExecutionHandler);
				public constructor(param0: number);
				public invokeAll(param0: java.util.Collection<any>): java.util.List<any>;
				public constructor(param0: number, param1: number, param2: number, param3: java.util.concurrent.TimeUnit, param4: java.util.concurrent.BlockingQueue<java.lang.Runnable>, param5: java.util.concurrent.RejectedExecutionHandler);
				public getQueue(): java.util.concurrent.BlockingQueue<java.lang.Runnable>;
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export class Semaphore extends java.lang.Object implements java.io.Serializable {
				public static class: java.lang.Class<java.util.concurrent.Semaphore>;
				public reducePermits(param0: number): void;
				public release(): void;
				public acquire(param0: number): void;
				public constructor(param0: number, param1: boolean);
				public release(param0: number): void;
				public availablePermits(): number;
				public tryAcquire(param0: number, param1: number, param2: java.util.concurrent.TimeUnit): boolean;
				public drainPermits(): number;
				public toString(): string;
				public hasQueuedThreads(): boolean;
				public getQueuedThreads(): java.util.Collection<java.lang.Thread>;
				public acquireUninterruptibly(): void;
				public acquireUninterruptibly(param0: number): void;
				public tryAcquire(): boolean;
				public tryAcquire(param0: number, param1: java.util.concurrent.TimeUnit): boolean;
				public constructor(param0: number);
				public isFair(): boolean;
				public acquire(): void;
				public tryAcquire(param0: number): boolean;
				public getQueueLength(): number;
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export class SynchronousQueue<E>  extends java.util.AbstractQueue<any> {
				public static class: java.lang.Class<java.util.concurrent.SynchronousQueue<any>>;
				public peek(): any;
				public addAll(param0: java.util.Collection<any>): boolean;
				public offer(param0: any, param1: number, param2: java.util.concurrent.TimeUnit): boolean;
				public constructor(param0: boolean);
				public constructor();
				public toArray(): native.Array<any>;
				public containsAll(param0: java.util.Collection<any>): boolean;
				public take(): any;
				public add(param0: any): boolean;
				public hashCode(): number;
				public offer(param0: any): boolean;
				public clear(): void;
				public equals(param0: any): boolean;
				public isEmpty(): boolean;
				public remove(param0: any): boolean;
				public remove(): any;
				public element(): any;
				public contains(param0: any): boolean;
				public toArray(param0: native.Array<any>): native.Array<any>;
				public drainTo(param0: java.util.Collection<any>, param1: number): number;
				public iterator(): java.util.Iterator<any>;
				public retainAll(param0: java.util.Collection<any>): boolean;
				public poll(param0: number, param1: java.util.concurrent.TimeUnit): any;
				public drainTo(param0: java.util.Collection<any>): number;
				public poll(): any;
				public size(): number;
				public put(param0: any): void;
				public remainingCapacity(): number;
				public removeAll(param0: java.util.Collection<any>): boolean;
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export class ThreadFactory extends java.lang.Object {
				public static class: java.lang.Class<java.util.concurrent.ThreadFactory>;
				/**
				 * Constructs a new instance of the java.util.concurrent.ThreadFactory interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					newThread(param0: java.lang.Runnable): java.lang.Thread;
				});
				public constructor();
				public newThread(param0: java.lang.Runnable): java.lang.Thread;
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export class ThreadPoolExecutor extends java.util.concurrent.AbstractExecutorService {
				public static class: java.lang.Class<java.util.concurrent.ThreadPoolExecutor>;
				public setMaximumPoolSize(param0: number): void;
				public setRejectedExecutionHandler(param0: java.util.concurrent.RejectedExecutionHandler): void;
				public afterExecute(param0: java.lang.Runnable, param1: java.lang.Throwable): void;
				public isTerminated(): boolean;
				public setCorePoolSize(param0: number): void;
				public allowsCoreThreadTimeOut(): boolean;
				public allowCoreThreadTimeOut(param0: boolean): void;
				public finalize(): void;
				public submit(param0: java.lang.Runnable, param1: any): java.util.concurrent.Future<any>;
				public constructor(param0: number, param1: number, param2: number, param3: java.util.concurrent.TimeUnit, param4: java.util.concurrent.BlockingQueue<java.lang.Runnable>, param5: java.util.concurrent.ThreadFactory, param6: java.util.concurrent.RejectedExecutionHandler);
				public isTerminating(): boolean;
				public constructor();
				public awaitTermination(param0: number, param1: java.util.concurrent.TimeUnit): boolean;
				public submit(param0: java.util.concurrent.Callable<any>): java.util.concurrent.Future<any>;
				public shutdown(): void;
				public getActiveCount(): number;
				public isShutdown(): boolean;
				public constructor(param0: number, param1: number, param2: number, param3: java.util.concurrent.TimeUnit, param4: java.util.concurrent.BlockingQueue<java.lang.Runnable>, param5: java.util.concurrent.ThreadFactory);
				public remove(param0: java.lang.Runnable): boolean;
				public beforeExecute(param0: java.lang.Thread, param1: java.lang.Runnable): void;
				public getPoolSize(): number;
				public invokeAny(param0: java.util.Collection<any>, param1: number, param2: java.util.concurrent.TimeUnit): any;
				public setKeepAliveTime(param0: number, param1: java.util.concurrent.TimeUnit): void;
				public invokeAll(param0: java.util.Collection<any>, param1: number, param2: java.util.concurrent.TimeUnit): java.util.List<any>;
				public submit(param0: java.lang.Runnable): java.util.concurrent.Future<any>;
				public constructor(param0: number, param1: number, param2: number, param3: java.util.concurrent.TimeUnit, param4: java.util.concurrent.BlockingQueue<java.lang.Runnable>);
				public getCorePoolSize(): number;
				public prestartAllCoreThreads(): number;
				public toString(): string;
				public getMaximumPoolSize(): number;
				public getKeepAliveTime(param0: java.util.concurrent.TimeUnit): number;
				public invokeAny(param0: java.util.Collection<any>): any;
				public purge(): void;
				public getCompletedTaskCount(): number;
				public terminated(): void;
				public execute(param0: java.lang.Runnable): void;
				public shutdownNow(): java.util.List<java.lang.Runnable>;
				public getLargestPoolSize(): number;
				public setThreadFactory(param0: java.util.concurrent.ThreadFactory): void;
				public getTaskCount(): number;
				public invokeAll(param0: java.util.Collection<any>): java.util.List<any>;
				public prestartCoreThread(): boolean;
				public constructor(param0: number, param1: number, param2: number, param3: java.util.concurrent.TimeUnit, param4: java.util.concurrent.BlockingQueue<java.lang.Runnable>, param5: java.util.concurrent.RejectedExecutionHandler);
				public getRejectedExecutionHandler(): java.util.concurrent.RejectedExecutionHandler;
				public getThreadFactory(): java.util.concurrent.ThreadFactory;
				public getQueue(): java.util.concurrent.BlockingQueue<java.lang.Runnable>;
			}
			export module ThreadPoolExecutor {
				export class AbortPolicy extends java.lang.Object implements java.util.concurrent.RejectedExecutionHandler {
					public static class: java.lang.Class<java.util.concurrent.ThreadPoolExecutor.AbortPolicy>;
					public constructor();
					public rejectedExecution(param0: java.lang.Runnable, param1: java.util.concurrent.ThreadPoolExecutor): void;
				}
				export class CallerRunsPolicy extends java.lang.Object implements java.util.concurrent.RejectedExecutionHandler {
					public static class: java.lang.Class<java.util.concurrent.ThreadPoolExecutor.CallerRunsPolicy>;
					public constructor();
					public rejectedExecution(param0: java.lang.Runnable, param1: java.util.concurrent.ThreadPoolExecutor): void;
				}
				export class DiscardOldestPolicy extends java.lang.Object implements java.util.concurrent.RejectedExecutionHandler {
					public static class: java.lang.Class<java.util.concurrent.ThreadPoolExecutor.DiscardOldestPolicy>;
					public constructor();
					public rejectedExecution(param0: java.lang.Runnable, param1: java.util.concurrent.ThreadPoolExecutor): void;
				}
				export class DiscardPolicy extends java.lang.Object implements java.util.concurrent.RejectedExecutionHandler {
					public static class: java.lang.Class<java.util.concurrent.ThreadPoolExecutor.DiscardPolicy>;
					public constructor();
					public rejectedExecution(param0: java.lang.Runnable, param1: java.util.concurrent.ThreadPoolExecutor): void;
				}
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export class TimeUnit {
				public static class: java.lang.Class<java.util.concurrent.TimeUnit>;
				public static DAYS: java.util.concurrent.TimeUnit;
				public static HOURS: java.util.concurrent.TimeUnit;
				public static MICROSECONDS: java.util.concurrent.TimeUnit;
				public static MILLISECONDS: java.util.concurrent.TimeUnit;
				public static MINUTES: java.util.concurrent.TimeUnit;
				public static NANOSECONDS: java.util.concurrent.TimeUnit;
				public static SECONDS: java.util.concurrent.TimeUnit;
				public toSeconds(param0: number): number;
				public toMinutes(param0: number): number;
				public timedWait(param0: any, param1: number): void;
				public static values(): native.Array<java.util.concurrent.TimeUnit>;
				public toMicros(param0: number): number;
				public toNanos(param0: number): number;
				public toMillis(param0: number): number;
				public static valueOf(param0: string): java.util.concurrent.TimeUnit;
				public sleep(param0: number): void;
				public timedJoin(param0: java.lang.Thread, param1: number): void;
				public toDays(param0: number): number;
				public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
				public convert(param0: number, param1: java.util.concurrent.TimeUnit): number;
				public toHours(param0: number): number;
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export class TimeoutException extends java.lang.Exception {
				public static class: java.lang.Class<java.util.concurrent.TimeoutException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export module atomic {
				export class AtomicBoolean extends java.lang.Object implements java.io.Serializable {
					public static class: java.lang.Class<java.util.concurrent.atomic.AtomicBoolean>;
					public getAndSet(param0: boolean): boolean;
					public toString(): string;
					public constructor(param0: boolean);
					public set(param0: boolean): void;
					public constructor();
					public lazySet(param0: boolean): void;
					public get(): boolean;
					public compareAndSet(param0: boolean, param1: boolean): boolean;
					public weakCompareAndSet(param0: boolean, param1: boolean): boolean;
				}
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export module atomic {
				export class AtomicInteger extends java.lang.Number implements java.io.Serializable {
					public static class: java.lang.Class<java.util.concurrent.atomic.AtomicInteger>;
					public addAndGet(param0: number): number;
					public doubleValue(): number;
					public floatValue(): number;
					public incrementAndGet(): number;
					public compareAndSet(param0: number, param1: number): boolean;
					public lazySet(param0: number): void;
					public intValue(): number;
					public getAndAdd(param0: number): number;
					public decrementAndGet(): number;
					public toString(): string;
					public getAndIncrement(): number;
					public constructor();
					public set(param0: number): void;
					public get(): number;
					public weakCompareAndSet(param0: number, param1: number): boolean;
					public longValue(): number;
					public getAndSet(param0: number): number;
					public constructor(param0: number);
					public getAndDecrement(): number;
				}
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export module atomic {
				export class AtomicIntegerArray extends java.lang.Object implements java.io.Serializable {
					public static class: java.lang.Class<java.util.concurrent.atomic.AtomicIntegerArray>;
					public incrementAndGet(param0: number): number;
					public addAndGet(param0: number, param1: number): number;
					public weakCompareAndSet(param0: number, param1: number, param2: number): boolean;
					public getAndSet(param0: number, param1: number): number;
					public getAndDecrement(param0: number): number;
					public length(): number;
					public compareAndSet(param0: number, param1: number, param2: number): boolean;
					public get(param0: number): number;
					public toString(): string;
					public constructor(param0: native.Array<number>);
					public set(param0: number, param1: number): void;
					public getAndAdd(param0: number, param1: number): number;
					public lazySet(param0: number, param1: number): void;
					public decrementAndGet(param0: number): number;
					public getAndIncrement(param0: number): number;
					public constructor(param0: number);
				}
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export module atomic {
				export abstract class AtomicIntegerFieldUpdater<T>  extends java.lang.Object {
					public static class: java.lang.Class<java.util.concurrent.atomic.AtomicIntegerFieldUpdater<any>>;
					public getAndSet(param0: T, param1: number): number;
					public getAndAdd(param0: T, param1: number): number;
					public getAndIncrement(param0: T): number;
					public lazySet(param0: T, param1: number): void;
					public get(param0: T): number;
					public set(param0: T, param1: number): void;
					public getAndDecrement(param0: T): number;
					public decrementAndGet(param0: T): number;
					public weakCompareAndSet(param0: T, param1: number, param2: number): boolean;
					public addAndGet(param0: T, param1: number): number;
					public constructor();
					public incrementAndGet(param0: T): number;
					public static newUpdater(param0: java.lang.Class<any>, param1: string): java.util.concurrent.atomic.AtomicIntegerFieldUpdater<any>;
					public compareAndSet(param0: T, param1: number, param2: number): boolean;
				}
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export module atomic {
				export class AtomicLong extends java.lang.Number implements java.io.Serializable {
					public static class: java.lang.Class<java.util.concurrent.atomic.AtomicLong>;
					public addAndGet(param0: number): number;
					public doubleValue(): number;
					public floatValue(): number;
					public incrementAndGet(): number;
					public compareAndSet(param0: number, param1: number): boolean;
					public lazySet(param0: number): void;
					public intValue(): number;
					public getAndAdd(param0: number): number;
					public decrementAndGet(): number;
					public toString(): string;
					public getAndIncrement(): number;
					public constructor();
					public set(param0: number): void;
					public get(): number;
					public weakCompareAndSet(param0: number, param1: number): boolean;
					public longValue(): number;
					public getAndSet(param0: number): number;
					public constructor(param0: number);
					public getAndDecrement(): number;
				}
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export module atomic {
				export class AtomicLongArray extends java.lang.Object implements java.io.Serializable {
					public static class: java.lang.Class<java.util.concurrent.atomic.AtomicLongArray>;
					public incrementAndGet(param0: number): number;
					public addAndGet(param0: number, param1: number): number;
					public weakCompareAndSet(param0: number, param1: number, param2: number): boolean;
					public getAndSet(param0: number, param1: number): number;
					public getAndDecrement(param0: number): number;
					public length(): number;
					public compareAndSet(param0: number, param1: number, param2: number): boolean;
					public get(param0: number): number;
					public toString(): string;
					public constructor(param0: native.Array<number>);
					public set(param0: number, param1: number): void;
					public getAndAdd(param0: number, param1: number): number;
					public lazySet(param0: number, param1: number): void;
					public decrementAndGet(param0: number): number;
					public getAndIncrement(param0: number): number;
					public constructor(param0: number);
				}
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export module atomic {
				export abstract class AtomicLongFieldUpdater<T>  extends java.lang.Object {
					public static class: java.lang.Class<java.util.concurrent.atomic.AtomicLongFieldUpdater<any>>;
					public getAndSet(param0: T, param1: number): number;
					public getAndAdd(param0: T, param1: number): number;
					public getAndIncrement(param0: T): number;
					public lazySet(param0: T, param1: number): void;
					public get(param0: T): number;
					public set(param0: T, param1: number): void;
					public getAndDecrement(param0: T): number;
					public static newUpdater(param0: java.lang.Class<any>, param1: string): java.util.concurrent.atomic.AtomicLongFieldUpdater<any>;
					public decrementAndGet(param0: T): number;
					public weakCompareAndSet(param0: T, param1: number, param2: number): boolean;
					public addAndGet(param0: T, param1: number): number;
					public constructor();
					public incrementAndGet(param0: T): number;
					public compareAndSet(param0: T, param1: number, param2: number): boolean;
				}
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export module atomic {
				export class AtomicMarkableReference<V>  extends java.lang.Object {
					public static class: java.lang.Class<java.util.concurrent.atomic.AtomicMarkableReference<any>>;
					public compareAndSet(param0: V, param1: V, param2: boolean, param3: boolean): boolean;
					public getReference(): V;
					public set(param0: V, param1: boolean): void;
					public get(param0: native.Array<boolean>): V;
					public weakCompareAndSet(param0: V, param1: V, param2: boolean, param3: boolean): boolean;
					public constructor(param0: V, param1: boolean);
					public attemptMark(param0: V, param1: boolean): boolean;
					public isMarked(): boolean;
				}
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export module atomic {
				export class AtomicReference<V>  extends java.io.Serializable {
					public static class: java.lang.Class<java.util.concurrent.atomic.AtomicReference<any>>;
					public set(param0: any): void;
					public toString(): string;
					public get(): any;
					public lazySet(param0: any): void;
					public constructor();
					public weakCompareAndSet(param0: any, param1: any): boolean;
					public constructor(param0: any);
					public compareAndSet(param0: any, param1: any): boolean;
					public getAndSet(param0: any): any;
				}
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export module atomic {
				export class AtomicReferenceArray<E>  extends java.io.Serializable {
					public static class: java.lang.Class<java.util.concurrent.atomic.AtomicReferenceArray<any>>;
					public getAndSet(param0: number, param1: any): any;
					public toString(): string;
					public get(param0: number): any;
					public lazySet(param0: number, param1: any): void;
					public compareAndSet(param0: number, param1: any, param2: any): boolean;
					public constructor(param0: native.Array<any>);
					public set(param0: number, param1: any): void;
					public constructor(param0: number);
					public length(): number;
					public weakCompareAndSet(param0: number, param1: any, param2: any): boolean;
				}
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export module atomic {
				export abstract class AtomicReferenceFieldUpdater<T, V>  extends java.lang.Object {
					public static class: java.lang.Class<java.util.concurrent.atomic.AtomicReferenceFieldUpdater<any,any>>;
					public set(param0: T, param1: V): void;
					public getAndSet(param0: T, param1: V): V;
					public get(param0: T): V;
					public static newUpdater(param0: java.lang.Class<any>, param1: java.lang.Class<any>, param2: string): java.util.concurrent.atomic.AtomicReferenceFieldUpdater<any,any>;
					public constructor();
					public compareAndSet(param0: T, param1: V, param2: V): boolean;
					public lazySet(param0: T, param1: V): void;
					public weakCompareAndSet(param0: T, param1: V, param2: V): boolean;
				}
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export module atomic {
				export class AtomicStampedReference<V>  extends java.lang.Object {
					public static class: java.lang.Class<java.util.concurrent.atomic.AtomicStampedReference<any>>;
					public constructor(param0: V, param1: number);
					public set(param0: V, param1: number): void;
					public getReference(): V;
					public attemptStamp(param0: V, param1: number): boolean;
					public getStamp(): number;
					public weakCompareAndSet(param0: V, param1: V, param2: number, param3: number): boolean;
					public get(param0: native.Array<number>): V;
					public compareAndSet(param0: V, param1: V, param2: number, param3: number): boolean;
				}
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export module locks {
				export abstract class AbstractOwnableSynchronizer extends java.lang.Object implements java.io.Serializable {
					public static class: java.lang.Class<java.util.concurrent.locks.AbstractOwnableSynchronizer>;
					public constructor();
					public getExclusiveOwnerThread(): java.lang.Thread;
					public setExclusiveOwnerThread(param0: java.lang.Thread): void;
				}
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export module locks {
				export abstract class AbstractQueuedLongSynchronizer extends java.util.concurrent.locks.AbstractOwnableSynchronizer implements java.io.Serializable {
					public static class: java.lang.Class<java.util.concurrent.locks.AbstractQueuedLongSynchronizer>;
					public release(param0: number): boolean;
					public tryReleaseShared(param0: number): boolean;
					public acquireShared(param0: number): void;
					public getExclusiveQueuedThreads(): java.util.Collection<java.lang.Thread>;
					public owns(param0: java.util.concurrent.locks.AbstractQueuedLongSynchronizer.ConditionObject): boolean;
					public acquire(param0: number): void;
					public getQueuedThreads(): java.util.Collection<java.lang.Thread>;
					public compareAndSetState(param0: number, param1: number): boolean;
					public toString(): string;
					public getSharedQueuedThreads(): java.util.Collection<java.lang.Thread>;
					public tryAcquire(param0: number): boolean;
					public getWaitingThreads(param0: java.util.concurrent.locks.AbstractQueuedLongSynchronizer.ConditionObject): java.util.Collection<java.lang.Thread>;
					public constructor();
					public getFirstQueuedThread(): java.lang.Thread;
					public tryAcquireSharedNanos(param0: number, param1: number): boolean;
					public setState(param0: number): void;
					public releaseShared(param0: number): boolean;
					public tryAcquireNanos(param0: number, param1: number): boolean;
					public acquireSharedInterruptibly(param0: number): void;
					public getQueueLength(): number;
					public hasQueuedThreads(): boolean;
					public hasContended(): boolean;
					public hasWaiters(param0: java.util.concurrent.locks.AbstractQueuedLongSynchronizer.ConditionObject): boolean;
					public tryAcquireShared(param0: number): number;
					public isQueued(param0: java.lang.Thread): boolean;
					public acquireInterruptibly(param0: number): void;
					public tryRelease(param0: number): boolean;
					public getWaitQueueLength(param0: java.util.concurrent.locks.AbstractQueuedLongSynchronizer.ConditionObject): number;
					public isHeldExclusively(): boolean;
					public getState(): number;
				}
				export module AbstractQueuedLongSynchronizer {
					export class ConditionObject extends java.lang.Object implements java.util.concurrent.locks.Condition, java.io.Serializable {
						public static class: java.lang.Class<java.util.concurrent.locks.AbstractQueuedLongSynchronizer.ConditionObject>;
						public await(param0: number, param1: java.util.concurrent.TimeUnit): boolean;
						public constructor(param0: java.util.concurrent.locks.AbstractQueuedLongSynchronizer);
						public awaitUninterruptibly(): void;
						public signalAll(): void;
						public awaitNanos(param0: number): number;
						public hasWaiters(): boolean;
						public getWaitQueueLength(): number;
						public signal(): void;
						public await(): void;
						public awaitUntil(param0: java.util.Date): boolean;
						public getWaitingThreads(): java.util.Collection<java.lang.Thread>;
					}
				}
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export module locks {
				export abstract class AbstractQueuedSynchronizer extends java.util.concurrent.locks.AbstractOwnableSynchronizer implements java.io.Serializable {
					public static class: java.lang.Class<java.util.concurrent.locks.AbstractQueuedSynchronizer>;
					public release(param0: number): boolean;
					public tryReleaseShared(param0: number): boolean;
					public acquireShared(param0: number): void;
					public getExclusiveQueuedThreads(): java.util.Collection<java.lang.Thread>;
					public acquire(param0: number): void;
					public getQueuedThreads(): java.util.Collection<java.lang.Thread>;
					public getWaitingThreads(param0: java.util.concurrent.locks.AbstractQueuedSynchronizer.ConditionObject): java.util.Collection<java.lang.Thread>;
					public compareAndSetState(param0: number, param1: number): boolean;
					public toString(): string;
					public getSharedQueuedThreads(): java.util.Collection<java.lang.Thread>;
					public tryAcquire(param0: number): boolean;
					public constructor();
					public getFirstQueuedThread(): java.lang.Thread;
					public tryAcquireSharedNanos(param0: number, param1: number): boolean;
					public setState(param0: number): void;
					public releaseShared(param0: number): boolean;
					public tryAcquireNanos(param0: number, param1: number): boolean;
					public hasWaiters(param0: java.util.concurrent.locks.AbstractQueuedSynchronizer.ConditionObject): boolean;
					public acquireSharedInterruptibly(param0: number): void;
					public getQueueLength(): number;
					public hasQueuedThreads(): boolean;
					public hasContended(): boolean;
					public tryAcquireShared(param0: number): number;
					public isQueued(param0: java.lang.Thread): boolean;
					public owns(param0: java.util.concurrent.locks.AbstractQueuedSynchronizer.ConditionObject): boolean;
					public acquireInterruptibly(param0: number): void;
					public tryRelease(param0: number): boolean;
					public getWaitQueueLength(param0: java.util.concurrent.locks.AbstractQueuedSynchronizer.ConditionObject): number;
					public isHeldExclusively(): boolean;
					public getState(): number;
				}
				export module AbstractQueuedSynchronizer {
					export class ConditionObject extends java.lang.Object implements java.util.concurrent.locks.Condition, java.io.Serializable {
						public static class: java.lang.Class<java.util.concurrent.locks.AbstractQueuedSynchronizer.ConditionObject>;
						public await(param0: number, param1: java.util.concurrent.TimeUnit): boolean;
						public awaitUninterruptibly(): void;
						public signalAll(): void;
						public awaitNanos(param0: number): number;
						public hasWaiters(): boolean;
						public getWaitQueueLength(): number;
						public signal(): void;
						public await(): void;
						public awaitUntil(param0: java.util.Date): boolean;
						public constructor(param0: java.util.concurrent.locks.AbstractQueuedSynchronizer);
						public getWaitingThreads(): java.util.Collection<java.lang.Thread>;
					}
				}
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export module locks {
				export class Condition extends java.lang.Object {
					public static class: java.lang.Class<java.util.concurrent.locks.Condition>;
					/**
					 * Constructs a new instance of the java.util.concurrent.locks.Condition interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						await(): void;
						awaitUninterruptibly(): void;
						awaitNanos(param0: number): number;
						await(param0: number, param1: java.util.concurrent.TimeUnit): boolean;
						awaitUntil(param0: java.util.Date): boolean;
						signal(): void;
						signalAll(): void;
					});
					public constructor();
					public await(param0: number, param1: java.util.concurrent.TimeUnit): boolean;
					public signal(): void;
					public await(): void;
					public awaitUninterruptibly(): void;
					public signalAll(): void;
					public awaitNanos(param0: number): number;
					public awaitUntil(param0: java.util.Date): boolean;
				}
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export module locks {
				export class Lock extends java.lang.Object {
					public static class: java.lang.Class<java.util.concurrent.locks.Lock>;
					/**
					 * Constructs a new instance of the java.util.concurrent.locks.Lock interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						lock(): void;
						lockInterruptibly(): void;
						tryLock(): boolean;
						tryLock(param0: number, param1: java.util.concurrent.TimeUnit): boolean;
						unlock(): void;
						newCondition(): java.util.concurrent.locks.Condition;
					});
					public constructor();
					public lockInterruptibly(): void;
					public unlock(): void;
					public newCondition(): java.util.concurrent.locks.Condition;
					public lock(): void;
					public tryLock(param0: number, param1: java.util.concurrent.TimeUnit): boolean;
					public tryLock(): boolean;
				}
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export module locks {
				export class LockSupport extends java.lang.Object {
					public static class: java.lang.Class<java.util.concurrent.locks.LockSupport>;
					public static getBlocker(param0: java.lang.Thread): any;
					public static parkNanos(param0: any, param1: number): void;
					public static park(param0: any): void;
					public static parkUntil(param0: any, param1: number): void;
					public static parkNanos(param0: number): void;
					public static parkUntil(param0: number): void;
					public static park(): void;
					public static unpark(param0: java.lang.Thread): void;
				}
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export module locks {
				export class ReadWriteLock extends java.lang.Object {
					public static class: java.lang.Class<java.util.concurrent.locks.ReadWriteLock>;
					/**
					 * Constructs a new instance of the java.util.concurrent.locks.ReadWriteLock interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						readLock(): java.util.concurrent.locks.Lock;
						writeLock(): java.util.concurrent.locks.Lock;
					});
					public constructor();
					public readLock(): java.util.concurrent.locks.Lock;
					public writeLock(): java.util.concurrent.locks.Lock;
				}
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export module locks {
				export class ReentrantLock extends java.lang.Object implements java.util.concurrent.locks.Lock, java.io.Serializable {
					public static class: java.lang.Class<java.util.concurrent.locks.ReentrantLock>;
					public lockInterruptibly(): void;
					public isHeldByCurrentThread(): boolean;
					public isFair(): boolean;
					public getQueueLength(): number;
					public tryLock(param0: number, param1: java.util.concurrent.TimeUnit): boolean;
					public getWaitQueueLength(param0: java.util.concurrent.locks.Condition): number;
					public getHoldCount(): number;
					public tryLock(): boolean;
					public hasQueuedThreads(): boolean;
					public isLocked(): boolean;
					public getQueuedThreads(): java.util.Collection<java.lang.Thread>;
					public unlock(): void;
					public toString(): string;
					public constructor(param0: boolean);
					public newCondition(): java.util.concurrent.locks.Condition;
					public lock(): void;
					public constructor();
					public hasWaiters(param0: java.util.concurrent.locks.Condition): boolean;
					public getWaitingThreads(param0: java.util.concurrent.locks.Condition): java.util.Collection<java.lang.Thread>;
					public getOwner(): java.lang.Thread;
					public hasQueuedThread(param0: java.lang.Thread): boolean;
				}
			}
		}
	}
}

declare module java {
	export module util {
		export module concurrent {
			export module locks {
				export class ReentrantReadWriteLock extends java.lang.Object implements java.util.concurrent.locks.ReadWriteLock, java.io.Serializable {
					public static class: java.lang.Class<java.util.concurrent.locks.ReentrantReadWriteLock>;
					public getReadLockCount(): number;
					public isFair(): boolean;
					public getReadHoldCount(): number;
					public readLock(): java.util.concurrent.locks.Lock;
					public getQueuedReaderThreads(): java.util.Collection<java.lang.Thread>;
					public getQueuedWriterThreads(): java.util.Collection<java.lang.Thread>;
					public getQueueLength(): number;
					public getWaitQueueLength(param0: java.util.concurrent.locks.Condition): number;
					public hasQueuedThreads(): boolean;
					public getQueuedThreads(): java.util.Collection<java.lang.Thread>;
					public readLock(): java.util.concurrent.locks.ReentrantReadWriteLock.ReadLock;
					public toString(): string;
					public constructor(param0: boolean);
					public constructor();
					public isWriteLocked(): boolean;
					public getWriteHoldCount(): number;
					public writeLock(): java.util.concurrent.locks.ReentrantReadWriteLock.WriteLock;
					public hasWaiters(param0: java.util.concurrent.locks.Condition): boolean;
					public getWaitingThreads(param0: java.util.concurrent.locks.Condition): java.util.Collection<java.lang.Thread>;
					public getOwner(): java.lang.Thread;
					public isWriteLockedByCurrentThread(): boolean;
					public writeLock(): java.util.concurrent.locks.Lock;
					public hasQueuedThread(param0: java.lang.Thread): boolean;
				}
				export module ReentrantReadWriteLock {
					export class ReadLock extends java.lang.Object implements java.util.concurrent.locks.Lock, java.io.Serializable {
						public static class: java.lang.Class<java.util.concurrent.locks.ReentrantReadWriteLock.ReadLock>;
						public tryLock(param0: number, param1: java.util.concurrent.TimeUnit): boolean;
						public unlock(): void;
						public lockInterruptibly(): void;
						public lock(): void;
						public tryLock(): boolean;
						public constructor(param0: java.util.concurrent.locks.ReentrantReadWriteLock);
						public newCondition(): java.util.concurrent.locks.Condition;
						public toString(): string;
					}
					export class WriteLock extends java.lang.Object implements java.util.concurrent.locks.Lock, java.io.Serializable {
						public static class: java.lang.Class<java.util.concurrent.locks.ReentrantReadWriteLock.WriteLock>;
						public tryLock(param0: number, param1: java.util.concurrent.TimeUnit): boolean;
						public unlock(): void;
						public getHoldCount(): number;
						public lockInterruptibly(): void;
						public lock(): void;
						public tryLock(): boolean;
						public constructor(param0: java.util.concurrent.locks.ReentrantReadWriteLock);
						public isHeldByCurrentThread(): boolean;
						public newCondition(): java.util.concurrent.locks.Condition;
						public toString(): string;
					}
				}
			}
		}
	}
}

declare module java {
	export module util {
		export module jar {
			export class Attributes extends java.lang.Object {
				public static class: java.lang.Class<java.util.jar.Attributes>;
				public map: java.util.Map<any,any>;
				public values(): java.util.Collection<any>;
				public get(param0: any): any;
				public putAll(param0: java.util.Map<any,any>): void;
				public getValue(param0: java.util.jar.Attributes.Name): string;
				public entrySet(): java.util.Set<java.util.Map.Entry<any,any>>;
				public constructor(param0: java.util.jar.Attributes);
				public getValue(param0: string): string;
				public containsKey(param0: any): boolean;
				public keySet(): java.util.Set<any>;
				public constructor();
				public size(): number;
				public putValue(param0: string, param1: string): string;
				public put(param0: any, param1: any): any;
				public remove(param0: any): any;
				public hashCode(): number;
				public clear(): void;
				public clone(): any;
				public equals(param0: any): boolean;
				public constructor(param0: number);
				public isEmpty(): boolean;
				public containsValue(param0: any): boolean;
			}
			export module Attributes {
				export class Name extends java.lang.Object {
					public static class: java.lang.Class<java.util.jar.Attributes.Name>;
					public static CLASS_PATH: java.util.jar.Attributes.Name;
					public static MANIFEST_VERSION: java.util.jar.Attributes.Name;
					public static MAIN_CLASS: java.util.jar.Attributes.Name;
					public static SIGNATURE_VERSION: java.util.jar.Attributes.Name;
					public static CONTENT_TYPE: java.util.jar.Attributes.Name;
					public static SEALED: java.util.jar.Attributes.Name;
					public static IMPLEMENTATION_TITLE: java.util.jar.Attributes.Name;
					public static IMPLEMENTATION_VERSION: java.util.jar.Attributes.Name;
					public static IMPLEMENTATION_VENDOR: java.util.jar.Attributes.Name;
					public static SPECIFICATION_TITLE: java.util.jar.Attributes.Name;
					public static SPECIFICATION_VERSION: java.util.jar.Attributes.Name;
					public static SPECIFICATION_VENDOR: java.util.jar.Attributes.Name;
					public static EXTENSION_LIST: java.util.jar.Attributes.Name;
					public static EXTENSION_NAME: java.util.jar.Attributes.Name;
					public static EXTENSION_INSTALLATION: java.util.jar.Attributes.Name;
					public static IMPLEMENTATION_VENDOR_ID: java.util.jar.Attributes.Name;
					public static IMPLEMENTATION_URL: java.util.jar.Attributes.Name;
					public equals(param0: any): boolean;
					public toString(): string;
					public constructor(param0: string);
					public hashCode(): number;
				}
			}
		}
	}
}

declare module java {
	export module util {
		export module jar {
			export class JarEntry extends java.util.zip.ZipEntry {
				public static class: java.lang.Class<java.util.jar.JarEntry>;
				public constructor(param0: java.util.jar.JarEntry);
				public getAttributes(): java.util.jar.Attributes;
				public constructor(param0: java.util.zip.ZipEntry);
				public getCertificates(): native.Array<java.security.cert.Certificate>;
				public getCodeSigners(): native.Array<java.security.CodeSigner>;
				public constructor(param0: string);
			}
		}
	}
}

declare module java {
	export module util {
		export module jar {
			export class JarException extends java.util.zip.ZipException {
				public static class: java.lang.Class<java.util.jar.JarException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module util {
		export module jar {
			export class JarFile extends java.util.zip.ZipFile {
				public static class: java.lang.Class<java.util.jar.JarFile>;
				public static MANIFEST_NAME: string;
				public constructor(param0: java.io.File, param1: boolean, param2: number);
				public close(): void;
				public constructor(param0: java.io.File);
				public getEntry(param0: string): java.util.zip.ZipEntry;
				public entries(): java.util.Enumeration<any>;
				public constructor(param0: string);
				public getJarEntry(param0: string): java.util.jar.JarEntry;
				public getManifest(): java.util.jar.Manifest;
				public constructor(param0: java.io.File, param1: boolean);
				public getInputStream(param0: java.util.zip.ZipEntry): java.io.InputStream;
				public constructor(param0: string, param1: boolean);
				public entries(): java.util.Enumeration<java.util.jar.JarEntry>;
				public constructor(param0: java.io.File, param1: number);
			}
		}
	}
}

declare module java {
	export module util {
		export module jar {
			export class JarInputStream extends java.util.zip.ZipInputStream {
				public static class: java.lang.Class<java.util.jar.JarInputStream>;
				public constructor(param0: java.io.InputStream, param1: java.util.zip.Inflater, param2: number);
				public close(): void;
				public read(param0: native.Array<number>, param1: number, param2: number): number;
				public createZipEntry(param0: string): java.util.zip.ZipEntry;
				public constructor(param0: java.io.InputStream);
				public constructor(param0: java.io.InputStream, param1: java.util.zip.Inflater);
				public constructor();
				public getNextJarEntry(): java.util.jar.JarEntry;
				public getManifest(): java.util.jar.Manifest;
				public read(): number;
				public read(param0: native.Array<number>): number;
				public getNextEntry(): java.util.zip.ZipEntry;
				public constructor(param0: java.io.InputStream, param1: boolean);
			}
		}
	}
}

declare module java {
	export module util {
		export module jar {
			export class JarOutputStream extends java.util.zip.ZipOutputStream {
				public static class: java.lang.Class<java.util.jar.JarOutputStream>;
				public close(): void;
				public constructor(param0: java.io.OutputStream);
				public constructor(param0: java.io.OutputStream, param1: java.util.zip.Deflater, param2: number);
				public constructor(param0: java.io.OutputStream, param1: java.util.jar.Manifest);
				public constructor(param0: java.io.OutputStream, param1: java.util.zip.Deflater);
				public constructor();
				public putNextEntry(param0: java.util.zip.ZipEntry): void;
				public flush(): void;
			}
		}
	}
}

declare module java {
	export module util {
		export module jar {
			export class Manifest extends java.lang.Object implements java.lang.Cloneable {
				public static class: java.lang.Class<java.util.jar.Manifest>;
				public getMainAttributes(): java.util.jar.Attributes;
				public getAttributes(param0: string): java.util.jar.Attributes;
				public write(param0: java.io.OutputStream): void;
				public hashCode(): number;
				public read(param0: java.io.InputStream): void;
				public clear(): void;
				public getEntries(): java.util.Map<string,java.util.jar.Attributes>;
				public clone(): any;
				public equals(param0: any): boolean;
				public constructor(param0: java.io.InputStream);
				public constructor(param0: java.util.jar.Manifest);
				public constructor();
			}
		}
	}
}

declare module java {
	export module util {
		export module jar {
			export abstract class Pack200 extends java.lang.Object {
				public static class: java.lang.Class<java.util.jar.Pack200>;
				public static newUnpacker(): java.util.jar.Pack200.Unpacker;
				public static newPacker(): java.util.jar.Pack200.Packer;
			}
			export module Pack200 {
				export class Packer extends java.lang.Object {
					public static class: java.lang.Class<java.util.jar.Pack200.Packer>;
					/**
					 * Constructs a new instance of the java.util.jar.Pack200$Packer interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						properties(): java.util.SortedMap<string,string>;
						pack(param0: java.util.jar.JarFile, param1: java.io.OutputStream): void;
						pack(param0: java.util.jar.JarInputStream, param1: java.io.OutputStream): void;
						addPropertyChangeListener(param0: java.beans.PropertyChangeListener): void;
						removePropertyChangeListener(param0: java.beans.PropertyChangeListener): void;
					});
					public constructor();
					public static CODE_ATTRIBUTE_PFX: string;
					public static EFFORT: string;
					public static FIELD_ATTRIBUTE_PFX: string;
					public static PASS: string;
					public static DEFLATE_HINT: string;
					public static PROGRESS: string;
					public static UNKNOWN_ATTRIBUTE: string;
					public static KEEP_FILE_ORDER: string;
					public static ERROR: string;
					public static FALSE: string;
					public static STRIP: string;
					public static MODIFICATION_TIME: string;
					public static PASS_FILE_PFX: string;
					public static SEGMENT_LIMIT: string;
					public static KEEP: string;
					public static TRUE: string;
					public static METHOD_ATTRIBUTE_PFX: string;
					public static LATEST: string;
					public static CLASS_ATTRIBUTE_PFX: string;
					public removePropertyChangeListener(param0: java.beans.PropertyChangeListener): void;
					public addPropertyChangeListener(param0: java.beans.PropertyChangeListener): void;
					public pack(param0: java.util.jar.JarInputStream, param1: java.io.OutputStream): void;
					public properties(): java.util.SortedMap<string,string>;
					public pack(param0: java.util.jar.JarFile, param1: java.io.OutputStream): void;
				}
				export class Unpacker extends java.lang.Object {
					public static class: java.lang.Class<java.util.jar.Pack200.Unpacker>;
					/**
					 * Constructs a new instance of the java.util.jar.Pack200$Unpacker interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						properties(): java.util.SortedMap<string,string>;
						unpack(param0: java.io.InputStream, param1: java.util.jar.JarOutputStream): void;
						unpack(param0: java.io.File, param1: java.util.jar.JarOutputStream): void;
						addPropertyChangeListener(param0: java.beans.PropertyChangeListener): void;
						removePropertyChangeListener(param0: java.beans.PropertyChangeListener): void;
					});
					public constructor();
					public static DEFLATE_HINT: string;
					public static PROGRESS: string;
					public static KEEP: string;
					public static TRUE: string;
					public static FALSE: string;
					public removePropertyChangeListener(param0: java.beans.PropertyChangeListener): void;
					public unpack(param0: java.io.File, param1: java.util.jar.JarOutputStream): void;
					public unpack(param0: java.io.InputStream, param1: java.util.jar.JarOutputStream): void;
					public addPropertyChangeListener(param0: java.beans.PropertyChangeListener): void;
					public properties(): java.util.SortedMap<string,string>;
				}
			}
		}
	}
}

declare module java {
	export module util {
		export module logging {
			export class ConsoleHandler extends java.util.logging.StreamHandler {
				public static class: java.lang.Class<java.util.logging.ConsoleHandler>;
				public close(): void;
				public publish(param0: java.util.logging.LogRecord): void;
				public constructor(param0: java.io.OutputStream, param1: java.util.logging.Formatter);
				public constructor();
			}
		}
	}
}

declare module java {
	export module util {
		export module logging {
			export class ErrorManager extends java.lang.Object {
				public static class: java.lang.Class<java.util.logging.ErrorManager>;
				public static GENERIC_FAILURE: number;
				public static WRITE_FAILURE: number;
				public static FLUSH_FAILURE: number;
				public static CLOSE_FAILURE: number;
				public static OPEN_FAILURE: number;
				public static FORMAT_FAILURE: number;
				public error(param0: string, param1: java.lang.Exception, param2: number): void;
				public constructor();
			}
		}
	}
}

declare module java {
	export module util {
		export module logging {
			export class FileHandler extends java.util.logging.StreamHandler {
				public static class: java.lang.Class<java.util.logging.FileHandler>;
				public close(): void;
				public constructor(param0: string, param1: boolean);
				public constructor(param0: string, param1: number, param2: number);
				public constructor(param0: string, param1: number, param2: number, param3: boolean);
				public publish(param0: java.util.logging.LogRecord): void;
				public constructor(param0: java.io.OutputStream, param1: java.util.logging.Formatter);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module util {
		export module logging {
			export class Filter extends java.lang.Object {
				public static class: java.lang.Class<java.util.logging.Filter>;
				/**
				 * Constructs a new instance of the java.util.logging.Filter interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					isLoggable(param0: java.util.logging.LogRecord): boolean;
				});
				public constructor();
				public isLoggable(param0: java.util.logging.LogRecord): boolean;
			}
		}
	}
}

declare module java {
	export module util {
		export module logging {
			export abstract class Formatter extends java.lang.Object {
				public static class: java.lang.Class<java.util.logging.Formatter>;
				public formatMessage(param0: java.util.logging.LogRecord): string;
				public format(param0: java.util.logging.LogRecord): string;
				public getHead(param0: java.util.logging.Handler): string;
				public getTail(param0: java.util.logging.Handler): string;
				public constructor();
			}
		}
	}
}

declare module java {
	export module util {
		export module logging {
			export abstract class Handler extends java.lang.Object {
				public static class: java.lang.Class<java.util.logging.Handler>;
				public getEncoding(): string;
				public close(): void;
				public setFilter(param0: java.util.logging.Filter): void;
				public getErrorManager(): java.util.logging.ErrorManager;
				public publish(param0: java.util.logging.LogRecord): void;
				public getFormatter(): java.util.logging.Formatter;
				public setLevel(param0: java.util.logging.Level): void;
				public constructor();
				public flush(): void;
				public getLevel(): java.util.logging.Level;
				public getFilter(): java.util.logging.Filter;
				public isLoggable(param0: java.util.logging.LogRecord): boolean;
				public setErrorManager(param0: java.util.logging.ErrorManager): void;
				public setFormatter(param0: java.util.logging.Formatter): void;
				public reportError(param0: string, param1: java.lang.Exception, param2: number): void;
				public setEncoding(param0: string): void;
			}
		}
	}
}

declare module java {
	export module util {
		export module logging {
			export class Level extends java.lang.Object implements java.io.Serializable {
				public static class: java.lang.Class<java.util.logging.Level>;
				public static OFF: java.util.logging.Level;
				public static SEVERE: java.util.logging.Level;
				public static WARNING: java.util.logging.Level;
				public static INFO: java.util.logging.Level;
				public static CONFIG: java.util.logging.Level;
				public static FINE: java.util.logging.Level;
				public static FINER: java.util.logging.Level;
				public static FINEST: java.util.logging.Level;
				public static ALL: java.util.logging.Level;
				public constructor(param0: string, param1: number, param2: string);
				public getLocalizedName(): string;
				public hashCode(): number;
				public constructor(param0: string, param1: number);
				public equals(param0: any): boolean;
				public intValue(): number;
				public getName(): string;
				public getResourceBundleName(): string;
				public static parse(param0: string): java.util.logging.Level;
				public toString(): string;
			}
		}
	}
}

declare module java {
	export module util {
		export module logging {
			export class LogManager extends java.lang.Object {
				public static class: java.lang.Class<java.util.logging.LogManager>;
				public static LOGGING_MXBEAN_NAME: string;
				public getLoggerNames(): java.util.Enumeration<string>;
				public static getLogManager(): java.util.logging.LogManager;
				public getLogger(param0: string): java.util.logging.Logger;
				public addPropertyChangeListener(param0: java.beans.PropertyChangeListener): void;
				public constructor();
				public checkAccess(): void;
				public removePropertyChangeListener(param0: java.beans.PropertyChangeListener): void;
				public reset(): void;
				public getProperty(param0: string): string;
				public readConfiguration(param0: java.io.InputStream): void;
				public static getLoggingMXBean(): java.util.logging.LoggingMXBean;
				public readConfiguration(): void;
				public addLogger(param0: java.util.logging.Logger): boolean;
			}
		}
	}
}

declare module java {
	export module util {
		export module logging {
			export class LogRecord extends java.lang.Object implements java.io.Serializable {
				public static class: java.lang.Class<java.util.logging.LogRecord>;
				public constructor(param0: java.util.logging.Level, param1: string);
				public setParameters(param0: native.Array<any>): void;
				public getThrown(): java.lang.Throwable;
				public getParameters(): native.Array<any>;
				public getThreadID(): number;
				public setSourceMethodName(param0: string): void;
				public setThreadID(param0: number): void;
				public setThrown(param0: java.lang.Throwable): void;
				public getSourceMethodName(): string;
				public getLevel(): java.util.logging.Level;
				public setSequenceNumber(param0: number): void;
				public setResourceBundleName(param0: string): void;
				public getSourceClassName(): string;
				public setMessage(param0: string): void;
				public getMessage(): string;
				public getMillis(): number;
				public setResourceBundle(param0: java.util.ResourceBundle): void;
				public getResourceBundleName(): string;
				public setLevel(param0: java.util.logging.Level): void;
				public setSourceClassName(param0: string): void;
				public getResourceBundle(): java.util.ResourceBundle;
				public getLoggerName(): string;
				public setMillis(param0: number): void;
				public getSequenceNumber(): number;
				public setLoggerName(param0: string): void;
			}
		}
	}
}

declare module java {
	export module util {
		export module logging {
			export class Logger extends java.lang.Object {
				public static class: java.lang.Class<java.util.logging.Logger>;
				public static GLOBAL_LOGGER_NAME: string;
				public static global: java.util.logging.Logger;
				public config(param0: string): void;
				public warning(param0: string): void;
				public setUseParentHandlers(param0: boolean): void;
				public entering(param0: string, param1: string, param2: any): void;
				public log(param0: java.util.logging.Level, param1: string): void;
				public log(param0: java.util.logging.Level, param1: string, param2: native.Array<any>): void;
				public entering(param0: string, param1: string, param2: native.Array<any>): void;
				public addHandler(param0: java.util.logging.Handler): void;
				public getLevel(): java.util.logging.Level;
				public setParent(param0: java.util.logging.Logger): void;
				public logrb(param0: java.util.logging.Level, param1: string, param2: string, param3: string, param4: string): void;
				public static getLogger(param0: string): java.util.logging.Logger;
				public logrb(param0: java.util.logging.Level, param1: string, param2: string, param3: string, param4: string, param5: native.Array<any>): void;
				public getFilter(): java.util.logging.Filter;
				public logp(param0: java.util.logging.Level, param1: string, param2: string, param3: string, param4: any): void;
				public logp(param0: java.util.logging.Level, param1: string, param2: string, param3: string, param4: java.lang.Throwable): void;
				public log(param0: java.util.logging.Level, param1: string, param2: any): void;
				public getUseParentHandlers(): boolean;
				public getParent(): java.util.logging.Logger;
				public static getLogger(param0: string, param1: string): java.util.logging.Logger;
				public constructor(param0: string, param1: string);
				public logp(param0: java.util.logging.Level, param1: string, param2: string, param3: string): void;
				public static getAnonymousLogger(): java.util.logging.Logger;
				public removeHandler(param0: java.util.logging.Handler): void;
				public fine(param0: string): void;
				public finest(param0: string): void;
				public logrb(param0: java.util.logging.Level, param1: string, param2: string, param3: string, param4: string, param5: any): void;
				public exiting(param0: string, param1: string, param2: any): void;
				public setFilter(param0: java.util.logging.Filter): void;
				public getHandlers(): native.Array<java.util.logging.Handler>;
				public finer(param0: string): void;
				public getName(): string;
				public getResourceBundleName(): string;
				public setLevel(param0: java.util.logging.Level): void;
				public getResourceBundle(): java.util.ResourceBundle;
				public entering(param0: string, param1: string): void;
				public info(param0: string): void;
				public logp(param0: java.util.logging.Level, param1: string, param2: string, param3: string, param4: native.Array<any>): void;
				public static getAnonymousLogger(param0: string): java.util.logging.Logger;
				public isLoggable(param0: java.util.logging.Level): boolean;
				public exiting(param0: string, param1: string): void;
				public logrb(param0: java.util.logging.Level, param1: string, param2: string, param3: string, param4: string, param5: java.lang.Throwable): void;
				public throwing(param0: string, param1: string, param2: java.lang.Throwable): void;
				public severe(param0: string): void;
				public log(param0: java.util.logging.Level, param1: string, param2: java.lang.Throwable): void;
				public log(param0: java.util.logging.LogRecord): void;
			}
		}
	}
}

declare module java {
	export module util {
		export module logging {
			export class LoggingMXBean extends java.lang.Object {
				public static class: java.lang.Class<java.util.logging.LoggingMXBean>;
				/**
				 * Constructs a new instance of the java.util.logging.LoggingMXBean interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getLoggerLevel(param0: string): string;
					getLoggerNames(): java.util.List<string>;
					getParentLoggerName(param0: string): string;
					setLoggerLevel(param0: string, param1: string): void;
				});
				public constructor();
				public getParentLoggerName(param0: string): string;
				public setLoggerLevel(param0: string, param1: string): void;
				public getLoggerLevel(param0: string): string;
				public getLoggerNames(): java.util.List<string>;
			}
		}
	}
}

declare module java {
	export module util {
		export module logging {
			export class LoggingPermission extends java.security.BasicPermission implements java.security.Guard, java.io.Serializable {
				public static class: java.lang.Class<java.util.logging.LoggingPermission>;
				public checkGuard(param0: any): void;
				public implies(param0: java.security.Permission): boolean;
				public getActions(): string;
				public constructor(param0: string);
				public constructor(param0: string, param1: string);
			}
		}
	}
}

declare module java {
	export module util {
		export module logging {
			export class MemoryHandler extends java.util.logging.Handler {
				public static class: java.lang.Class<java.util.logging.MemoryHandler>;
				public setPushLevel(param0: java.util.logging.Level): void;
				public close(): void;
				public isLoggable(param0: java.util.logging.LogRecord): boolean;
				public constructor(param0: java.util.logging.Handler, param1: number, param2: java.util.logging.Level);
				public push(): void;
				public publish(param0: java.util.logging.LogRecord): void;
				public getPushLevel(): java.util.logging.Level;
				public constructor();
				public flush(): void;
			}
		}
	}
}

declare module java {
	export module util {
		export module logging {
			export class SimpleFormatter extends java.util.logging.Formatter {
				public static class: java.lang.Class<java.util.logging.SimpleFormatter>;
				public format(param0: java.util.logging.LogRecord): string;
				public constructor();
			}
		}
	}
}

declare module java {
	export module util {
		export module logging {
			export class SocketHandler extends java.util.logging.StreamHandler {
				public static class: java.lang.Class<java.util.logging.SocketHandler>;
				public close(): void;
				public constructor(param0: string, param1: number);
				public publish(param0: java.util.logging.LogRecord): void;
				public constructor(param0: java.io.OutputStream, param1: java.util.logging.Formatter);
				public constructor();
			}
		}
	}
}

declare module java {
	export module util {
		export module logging {
			export class StreamHandler extends java.util.logging.Handler {
				public static class: java.lang.Class<java.util.logging.StreamHandler>;
				public close(): void;
				public isLoggable(param0: java.util.logging.LogRecord): boolean;
				public publish(param0: java.util.logging.LogRecord): void;
				public constructor(param0: java.io.OutputStream, param1: java.util.logging.Formatter);
				public constructor();
				public setOutputStream(param0: java.io.OutputStream): void;
				public setEncoding(param0: string): void;
				public flush(): void;
			}
		}
	}
}

declare module java {
	export module util {
		export module logging {
			export class XMLFormatter extends java.util.logging.Formatter {
				public static class: java.lang.Class<java.util.logging.XMLFormatter>;
				public format(param0: java.util.logging.LogRecord): string;
				public getHead(param0: java.util.logging.Handler): string;
				public getTail(param0: java.util.logging.Handler): string;
				public constructor();
			}
		}
	}
}

declare module java {
	export module util {
		export module prefs {
			export abstract class AbstractPreferences extends java.util.prefs.Preferences {
				public static class: java.lang.Class<java.util.prefs.AbstractPreferences>;
				public lock: any;
				public newNode: boolean;
				public sync(): void;
				public putInt(param0: string, param1: number): void;
				public constructor(param0: java.util.prefs.AbstractPreferences, param1: string);
				public getSpi(param0: string): string;
				public putLong(param0: string, param1: number): void;
				public childSpi(param0: string): java.util.prefs.AbstractPreferences;
				public childrenNames(): native.Array<string>;
				public constructor();
				public removeSpi(param0: string): void;
				public flush(): void;
				public getFloat(param0: string, param1: number): number;
				public keysSpi(): native.Array<string>;
				public getByteArray(param0: string, param1: native.Array<number>): native.Array<number>;
				public flushSpi(): void;
				public putSpi(param0: string, param1: string): void;
				public clear(): void;
				public putDouble(param0: string, param1: number): void;
				public removeNode(): void;
				public syncSpi(): void;
				public getDouble(param0: string, param1: number): number;
				public put(param0: string, param1: string): void;
				public get(param0: string, param1: string): string;
				public addPreferenceChangeListener(param0: java.util.prefs.PreferenceChangeListener): void;
				public cachedChildren(): native.Array<java.util.prefs.AbstractPreferences>;
				public absolutePath(): string;
				public parent(): java.util.prefs.Preferences;
				public removeNodeSpi(): void;
				public isRemoved(): boolean;
				public removeNodeChangeListener(param0: java.util.prefs.NodeChangeListener): void;
				public getBoolean(param0: string, param1: boolean): boolean;
				public childrenNamesSpi(): native.Array<string>;
				public exportSubtree(param0: java.io.OutputStream): void;
				public getInt(param0: string, param1: number): number;
				public toString(): string;
				public nodeExists(param0: string): boolean;
				public putByteArray(param0: string, param1: native.Array<number>): void;
				public exportNode(param0: java.io.OutputStream): void;
				public removePreferenceChangeListener(param0: java.util.prefs.PreferenceChangeListener): void;
				public name(): string;
				public getLong(param0: string, param1: number): number;
				public node(param0: string): java.util.prefs.Preferences;
				public remove(param0: string): void;
				public addNodeChangeListener(param0: java.util.prefs.NodeChangeListener): void;
				public keys(): native.Array<string>;
				public isUserNode(): boolean;
				public putFloat(param0: string, param1: number): void;
				public putBoolean(param0: string, param1: boolean): void;
				public getChild(param0: string): java.util.prefs.AbstractPreferences;
			}
		}
	}
}

declare module java {
	export module util {
		export module prefs {
			export class BackingStoreException extends java.lang.Exception {
				public static class: java.lang.Class<java.util.prefs.BackingStoreException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module util {
		export module prefs {
			export class InvalidPreferencesFormatException extends java.lang.Exception {
				public static class: java.lang.Class<java.util.prefs.InvalidPreferencesFormatException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module util {
		export module prefs {
			export class NodeChangeEvent extends java.util.EventObject implements java.io.Serializable {
				public static class: java.lang.Class<java.util.prefs.NodeChangeEvent>;
				public constructor(param0: java.util.prefs.Preferences, param1: java.util.prefs.Preferences);
				public getChild(): java.util.prefs.Preferences;
				public getParent(): java.util.prefs.Preferences;
				public constructor(param0: any);
			}
		}
	}
}

declare module java {
	export module util {
		export module prefs {
			export class NodeChangeListener extends java.lang.Object implements java.util.EventListener {
				public static class: java.lang.Class<java.util.prefs.NodeChangeListener>;
				/**
				 * Constructs a new instance of the java.util.prefs.NodeChangeListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					childAdded(param0: java.util.prefs.NodeChangeEvent): void;
					childRemoved(param0: java.util.prefs.NodeChangeEvent): void;
				});
				public constructor();
				public childAdded(param0: java.util.prefs.NodeChangeEvent): void;
				public childRemoved(param0: java.util.prefs.NodeChangeEvent): void;
			}
		}
	}
}

declare module java {
	export module util {
		export module prefs {
			export class PreferenceChangeEvent extends java.util.EventObject implements java.io.Serializable {
				public static class: java.lang.Class<java.util.prefs.PreferenceChangeEvent>;
				public getNode(): java.util.prefs.Preferences;
				public constructor(param0: java.util.prefs.Preferences, param1: string, param2: string);
				public constructor(param0: any);
				public getKey(): string;
				public getNewValue(): string;
			}
		}
	}
}

declare module java {
	export module util {
		export module prefs {
			export class PreferenceChangeListener extends java.lang.Object implements java.util.EventListener {
				public static class: java.lang.Class<java.util.prefs.PreferenceChangeListener>;
				/**
				 * Constructs a new instance of the java.util.prefs.PreferenceChangeListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					preferenceChange(param0: java.util.prefs.PreferenceChangeEvent): void;
				});
				public constructor();
				public preferenceChange(param0: java.util.prefs.PreferenceChangeEvent): void;
			}
		}
	}
}

declare module java {
	export module util {
		export module prefs {
			export abstract class Preferences extends java.lang.Object {
				public static class: java.lang.Class<java.util.prefs.Preferences>;
				public static MAX_KEY_LENGTH: number;
				public static MAX_NAME_LENGTH: number;
				public static MAX_VALUE_LENGTH: number;
				public sync(): void;
				public putInt(param0: string, param1: number): void;
				public static systemNodeForPackage(param0: java.lang.Class<any>): java.util.prefs.Preferences;
				public putLong(param0: string, param1: number): void;
				public childrenNames(): native.Array<string>;
				public constructor();
				public flush(): void;
				public getFloat(param0: string, param1: number): number;
				public getByteArray(param0: string, param1: native.Array<number>): native.Array<number>;
				public static systemRoot(): java.util.prefs.Preferences;
				public clear(): void;
				public putDouble(param0: string, param1: number): void;
				public removeNode(): void;
				public getDouble(param0: string, param1: number): number;
				public put(param0: string, param1: string): void;
				public get(param0: string, param1: string): string;
				public addPreferenceChangeListener(param0: java.util.prefs.PreferenceChangeListener): void;
				public absolutePath(): string;
				public parent(): java.util.prefs.Preferences;
				public removeNodeChangeListener(param0: java.util.prefs.NodeChangeListener): void;
				public static userNodeForPackage(param0: java.lang.Class<any>): java.util.prefs.Preferences;
				public getBoolean(param0: string, param1: boolean): boolean;
				public exportSubtree(param0: java.io.OutputStream): void;
				public getInt(param0: string, param1: number): number;
				public toString(): string;
				public nodeExists(param0: string): boolean;
				public putByteArray(param0: string, param1: native.Array<number>): void;
				public exportNode(param0: java.io.OutputStream): void;
				public removePreferenceChangeListener(param0: java.util.prefs.PreferenceChangeListener): void;
				public name(): string;
				public getLong(param0: string, param1: number): number;
				public node(param0: string): java.util.prefs.Preferences;
				public remove(param0: string): void;
				public addNodeChangeListener(param0: java.util.prefs.NodeChangeListener): void;
				public keys(): native.Array<string>;
				public isUserNode(): boolean;
				public static userRoot(): java.util.prefs.Preferences;
				public static importPreferences(param0: java.io.InputStream): void;
				public putFloat(param0: string, param1: number): void;
				public putBoolean(param0: string, param1: boolean): void;
			}
		}
	}
}

declare module java {
	export module util {
		export module prefs {
			export class PreferencesFactory extends java.lang.Object {
				public static class: java.lang.Class<java.util.prefs.PreferencesFactory>;
				/**
				 * Constructs a new instance of the java.util.prefs.PreferencesFactory interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					userRoot(): java.util.prefs.Preferences;
					systemRoot(): java.util.prefs.Preferences;
				});
				public constructor();
				public systemRoot(): java.util.prefs.Preferences;
				public userRoot(): java.util.prefs.Preferences;
			}
		}
	}
}

declare module java {
	export module util {
		export module regex {
			export class MatchResult extends java.lang.Object {
				public static class: java.lang.Class<java.util.regex.MatchResult>;
				/**
				 * Constructs a new instance of the java.util.regex.MatchResult interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					end(): number;
					end(param0: number): number;
					group(): string;
					group(param0: number): string;
					groupCount(): number;
					start(): number;
					start(param0: number): number;
				});
				public constructor();
				public end(param0: number): number;
				public end(): number;
				public group(): string;
				public start(): number;
				public group(param0: number): string;
				public start(param0: number): number;
				public groupCount(): number;
			}
		}
	}
}

declare module java {
	export module util {
		export module regex {
			export class Matcher extends java.lang.Object implements java.util.regex.MatchResult {
				public static class: java.lang.Class<java.util.regex.Matcher>;
				public pattern(): java.util.regex.Pattern;
				public end(param0: number): number;
				public hasTransparentBounds(): boolean;
				public hitEnd(): boolean;
				public finalize(): void;
				public useTransparentBounds(param0: boolean): java.util.regex.Matcher;
				public appendTail(param0: java.lang.StringBuffer): java.lang.StringBuffer;
				public replaceFirst(param0: string): string;
				public end(): number;
				public lookingAt(): boolean;
				public start(param0: number): number;
				public appendReplacement(param0: java.lang.StringBuffer, param1: string): java.util.regex.Matcher;
				public hasAnchoringBounds(): boolean;
				public requireEnd(): boolean;
				public reset(): java.util.regex.Matcher;
				public find(param0: number): boolean;
				public usePattern(param0: java.util.regex.Pattern): java.util.regex.Matcher;
				public replaceAll(param0: string): string;
				public find(): boolean;
				public matches(): boolean;
				public region(param0: number, param1: number): java.util.regex.Matcher;
				public group(): string;
				public start(): number;
				public group(param0: number): string;
				public static quoteReplacement(param0: string): string;
				public regionStart(): number;
				public regionEnd(): number;
				public reset(param0: string): java.util.regex.Matcher;
				public groupCount(): number;
				public useAnchoringBounds(param0: boolean): java.util.regex.Matcher;
				public toMatchResult(): java.util.regex.MatchResult;
			}
		}
	}
}

declare module java {
	export module util {
		export module regex {
			export class Pattern extends java.lang.Object implements java.io.Serializable {
				public static class: java.lang.Class<java.util.regex.Pattern>;
				public static UNIX_LINES: number;
				public static CASE_INSENSITIVE: number;
				public static COMMENTS: number;
				public static MULTILINE: number;
				public static LITERAL: number;
				public static DOTALL: number;
				public static UNICODE_CASE: number;
				public static CANON_EQ: number;
				public static matches(param0: string, param1: string): boolean;
				public static compile(param0: string): java.util.regex.Pattern;
				public finalize(): void;
				public pattern(): string;
				public flags(): number;
				public static compile(param0: string, param1: number): java.util.regex.Pattern;
				public matcher(param0: string): java.util.regex.Matcher;
				public split(param0: string, param1: number): native.Array<string>;
				public split(param0: string): native.Array<string>;
				public toString(): string;
				public static quote(param0: string): string;
			}
		}
	}
}

declare module java {
	export module util {
		export module regex {
			export class PatternSyntaxException extends java.lang.IllegalArgumentException {
				public static class: java.lang.Class<java.util.regex.PatternSyntaxException>;
				public constructor(param0: string, param1: string, param2: number);
				public constructor(param0: string, param1: java.lang.Throwable);
				public getDescription(): string;
				public getIndex(): number;
				public getPattern(): string;
				public getMessage(): string;
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module util {
		export module zip {
			export class Adler32 extends java.lang.Object implements java.util.zip.Checksum {
				public static class: java.lang.Class<java.util.zip.Adler32>;
				public reset(): void;
				public update(param0: native.Array<number>): void;
				public update(param0: native.Array<number>, param1: number, param2: number): void;
				public update(param0: number): void;
				public getValue(): number;
				public constructor();
			}
		}
	}
}

declare module java {
	export module util {
		export module zip {
			export class CRC32 extends java.lang.Object implements java.util.zip.Checksum {
				public static class: java.lang.Class<java.util.zip.CRC32>;
				public reset(): void;
				public update(param0: native.Array<number>): void;
				public update(param0: native.Array<number>, param1: number, param2: number): void;
				public update(param0: number): void;
				public getValue(): number;
				public constructor();
			}
		}
	}
}

declare module java {
	export module util {
		export module zip {
			export class CheckedInputStream extends java.io.FilterInputStream {
				public static class: java.lang.Class<java.util.zip.CheckedInputStream>;
				public getChecksum(): java.util.zip.Checksum;
				public read(): number;
				public skip(param0: number): number;
				public close(): void;
				public constructor(param0: java.io.InputStream, param1: java.util.zip.Checksum);
				public read(param0: native.Array<number>): number;
				public read(param0: native.Array<number>, param1: number, param2: number): number;
				public constructor(param0: java.io.InputStream);
				public constructor();
			}
		}
	}
}

declare module java {
	export module util {
		export module zip {
			export class CheckedOutputStream extends java.io.FilterOutputStream {
				public static class: java.lang.Class<java.util.zip.CheckedOutputStream>;
				public getChecksum(): java.util.zip.Checksum;
				public close(): void;
				public constructor(param0: java.io.OutputStream);
				public write(param0: native.Array<number>, param1: number, param2: number): void;
				public write(param0: number): void;
				public write(param0: native.Array<number>): void;
				public constructor(param0: java.io.OutputStream, param1: java.util.zip.Checksum);
				public constructor();
				public flush(): void;
			}
		}
	}
}

declare module java {
	export module util {
		export module zip {
			export class Checksum extends java.lang.Object {
				public static class: java.lang.Class<java.util.zip.Checksum>;
				/**
				 * Constructs a new instance of the java.util.zip.Checksum interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getValue(): number;
					reset(): void;
					update(param0: native.Array<number>, param1: number, param2: number): void;
					update(param0: number): void;
				});
				public constructor();
				public reset(): void;
				public update(param0: native.Array<number>, param1: number, param2: number): void;
				public update(param0: number): void;
				public getValue(): number;
			}
		}
	}
}

declare module java {
	export module util {
		export module zip {
			export class DataFormatException extends java.lang.Exception {
				public static class: java.lang.Class<java.util.zip.DataFormatException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module util {
		export module zip {
			export class Deflater extends java.lang.Object {
				public static class: java.lang.Class<java.util.zip.Deflater>;
				public static BEST_COMPRESSION: number;
				public static BEST_SPEED: number;
				public static NO_COMPRESSION: number;
				public static DEFAULT_COMPRESSION: number;
				public static DEFAULT_STRATEGY: number;
				public static DEFLATED: number;
				public static FILTERED: number;
				public static HUFFMAN_ONLY: number;
				public getAdler(): number;
				public setDictionary(param0: native.Array<number>, param1: number, param2: number): void;
				public getTotalIn(): number;
				public setStrategy(param0: number): void;
				public getTotalOut(): number;
				public finalize(): void;
				public constructor(param0: number, param1: boolean);
				public needsInput(): boolean;
				public getBytesWritten(): number;
				public finish(): void;
				public setLevel(param0: number): void;
				public constructor();
				public end(): void;
				public setInput(param0: native.Array<number>): void;
				public getBytesRead(): number;
				public deflate(param0: native.Array<number>, param1: number, param2: number): number;
				public reset(): void;
				public deflate(param0: native.Array<number>): number;
				public constructor(param0: number);
				public setInput(param0: native.Array<number>, param1: number, param2: number): void;
				public finished(): boolean;
				public setDictionary(param0: native.Array<number>): void;
			}
		}
	}
}

declare module java {
	export module util {
		export module zip {
			export class DeflaterInputStream extends java.io.FilterInputStream {
				public static class: java.lang.Class<java.util.zip.DeflaterInputStream>;
				public def: java.util.zip.Deflater;
				public buf: native.Array<number>;
				public markSupported(): boolean;
				public close(): void;
				public read(param0: native.Array<number>, param1: number, param2: number): number;
				public constructor(param0: java.io.InputStream);
				public constructor();
				public reset(): void;
				public read(): number;
				public skip(param0: number): number;
				public constructor(param0: java.io.InputStream, param1: java.util.zip.Deflater, param2: number);
				public constructor(param0: java.io.InputStream, param1: java.util.zip.Deflater);
				public read(param0: native.Array<number>): number;
				public available(): number;
				public mark(param0: number): void;
			}
		}
	}
}

declare module java {
	export module util {
		export module zip {
			export class DeflaterOutputStream extends java.io.FilterOutputStream {
				public static class: java.lang.Class<java.util.zip.DeflaterOutputStream>;
				public buf: native.Array<number>;
				public def: java.util.zip.Deflater;
				public close(): void;
				public constructor(param0: java.io.OutputStream);
				public write(param0: native.Array<number>, param1: number, param2: number): void;
				public write(param0: number): void;
				public constructor(param0: java.io.OutputStream, param1: java.util.zip.Deflater, param2: number);
				public write(param0: native.Array<number>): void;
				public finish(): void;
				public deflate(): void;
				public constructor();
				public constructor(param0: java.io.OutputStream, param1: java.util.zip.Deflater);
				public flush(): void;
			}
		}
	}
}

declare module java {
	export module util {
		export module zip {
			export class GZIPInputStream extends java.util.zip.InflaterInputStream {
				public static class: java.lang.Class<java.util.zip.GZIPInputStream>;
				public static GZIP_MAGIC: number;
				public crc: java.util.zip.CRC32;
				public eos: boolean;
				public constructor(param0: java.io.InputStream, param1: java.util.zip.Inflater, param2: number);
				public close(): void;
				public read(): number;
				public read(param0: native.Array<number>): number;
				public constructor(param0: java.io.InputStream, param1: number);
				public read(param0: native.Array<number>, param1: number, param2: number): number;
				public constructor(param0: java.io.InputStream);
				public constructor(param0: java.io.InputStream, param1: java.util.zip.Inflater);
				public constructor();
			}
		}
	}
}

declare module java {
	export module util {
		export module zip {
			export class GZIPOutputStream extends java.util.zip.DeflaterOutputStream {
				public static class: java.lang.Class<java.util.zip.GZIPOutputStream>;
				public crc: java.util.zip.CRC32;
				public close(): void;
				public constructor(param0: java.io.OutputStream);
				public write(param0: native.Array<number>, param1: number, param2: number): void;
				public write(param0: number): void;
				public constructor(param0: java.io.OutputStream, param1: java.util.zip.Deflater, param2: number);
				public write(param0: native.Array<number>): void;
				public finish(): void;
				public constructor(param0: java.io.OutputStream, param1: number);
				public constructor(param0: java.io.OutputStream, param1: java.util.zip.Deflater);
				public constructor();
				public flush(): void;
			}
		}
	}
}

declare module java {
	export module util {
		export module zip {
			export class Inflater extends java.lang.Object {
				public static class: java.lang.Class<java.util.zip.Inflater>;
				public getAdler(): number;
				public setDictionary(param0: native.Array<number>, param1: number, param2: number): void;
				public getTotalIn(): number;
				public getRemaining(): number;
				public getTotalOut(): number;
				public finalize(): void;
				public constructor(param0: boolean);
				public getBytesWritten(): number;
				public needsInput(): boolean;
				public inflate(param0: native.Array<number>, param1: number, param2: number): number;
				public constructor();
				public end(): void;
				public getBytesRead(): number;
				public setInput(param0: native.Array<number>): void;
				public reset(): void;
				public needsDictionary(): boolean;
				public inflate(param0: native.Array<number>): number;
				public setInput(param0: native.Array<number>, param1: number, param2: number): void;
				public finished(): boolean;
				public setDictionary(param0: native.Array<number>): void;
			}
		}
	}
}

declare module java {
	export module util {
		export module zip {
			export class InflaterInputStream extends java.io.FilterInputStream {
				public static class: java.lang.Class<java.util.zip.InflaterInputStream>;
				public inf: java.util.zip.Inflater;
				public buf: native.Array<number>;
				public len: number;
				public constructor(param0: java.io.InputStream, param1: java.util.zip.Inflater, param2: number);
				public markSupported(): boolean;
				public close(): void;
				public read(param0: native.Array<number>, param1: number, param2: number): number;
				public constructor(param0: java.io.InputStream);
				public constructor();
				public constructor(param0: java.io.InputStream, param1: java.util.zip.Inflater);
				public reset(): void;
				public read(): number;
				public skip(param0: number): number;
				public read(param0: native.Array<number>): number;
				public available(): number;
				public fill(): void;
				public mark(param0: number): void;
			}
		}
	}
}

declare module java {
	export module util {
		export module zip {
			export class InflaterOutputStream extends java.io.FilterOutputStream {
				public static class: java.lang.Class<java.util.zip.InflaterOutputStream>;
				public inf: java.util.zip.Inflater;
				public buf: native.Array<number>;
				public close(): void;
				public constructor(param0: java.io.OutputStream);
				public write(param0: native.Array<number>, param1: number, param2: number): void;
				public write(param0: number): void;
				public write(param0: native.Array<number>): void;
				public constructor(param0: java.io.OutputStream, param1: java.util.zip.Inflater);
				public finish(): void;
				public constructor();
				public constructor(param0: java.io.OutputStream, param1: java.util.zip.Inflater, param2: number);
				public flush(): void;
			}
		}
	}
}

declare module java {
	export module util {
		export module zip {
			export class ZipEntry extends java.lang.Object implements java.lang.Cloneable {
				public static class: java.lang.Class<java.util.zip.ZipEntry>;
				public static DEFLATED: number;
				public static STORED: number;
				public setComment(param0: string): void;
				public getCompressedSize(): number;
				public getExtra(): native.Array<number>;
				public setCompressedSize(param0: number): void;
				public getName(): string;
				public setCrc(param0: number): void;
				public setSize(param0: number): void;
				public toString(): string;
				public getTime(): number;
				public constructor(param0: string);
				public getMethod(): number;
				public setExtra(param0: native.Array<number>): void;
				public getSize(): number;
				public hashCode(): number;
				public getCrc(): number;
				public setMethod(param0: number): void;
				public clone(): any;
				public constructor(param0: java.util.zip.ZipEntry);
				public isDirectory(): boolean;
				public setTime(param0: number): void;
				public getComment(): string;
			}
		}
	}
}

declare module java {
	export module util {
		export module zip {
			export class ZipError extends java.lang.InternalError {
				public static class: java.lang.Class<java.util.zip.ZipError>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module util {
		export module zip {
			export class ZipException extends java.io.IOException {
				public static class: java.lang.Class<java.util.zip.ZipException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module java {
	export module util {
		export module zip {
			export class ZipFile extends java.lang.Object {
				public static class: java.lang.Class<java.util.zip.ZipFile>;
				public static OPEN_READ: number;
				public static OPEN_DELETE: number;
				public close(): void;
				public getInputStream(param0: java.util.zip.ZipEntry): java.io.InputStream;
				public constructor(param0: java.io.File);
				public getEntry(param0: string): java.util.zip.ZipEntry;
				public finalize(): void;
				public getName(): string;
				public entries(): java.util.Enumeration<any>;
				public constructor(param0: string);
				public constructor(param0: java.io.File, param1: number);
				public size(): number;
			}
		}
	}
}

declare module java {
	export module util {
		export module zip {
			export class ZipInputStream extends java.util.zip.InflaterInputStream {
				public static class: java.lang.Class<java.util.zip.ZipInputStream>;
				public constructor(param0: java.io.InputStream, param1: java.util.zip.Inflater, param2: number);
				public close(): void;
				public read(): number;
				public read(param0: native.Array<number>): number;
				public getNextEntry(): java.util.zip.ZipEntry;
				public available(): number;
				public read(param0: native.Array<number>, param1: number, param2: number): number;
				public closeEntry(): void;
				public createZipEntry(param0: string): java.util.zip.ZipEntry;
				public constructor(param0: java.io.InputStream);
				public constructor(param0: java.io.InputStream, param1: java.util.zip.Inflater);
				public constructor();
			}
		}
	}
}

declare module java {
	export module util {
		export module zip {
			export class ZipOutputStream extends java.util.zip.DeflaterOutputStream {
				public static class: java.lang.Class<java.util.zip.ZipOutputStream>;
				public static DEFLATED: number;
				public static STORED: number;
				public setComment(param0: string): void;
				public close(): void;
				public constructor(param0: java.io.OutputStream);
				public write(param0: native.Array<number>, param1: number, param2: number): void;
				public write(param0: native.Array<number>): void;
				public closeEntry(): void;
				public finish(): void;
				public setLevel(param0: number): void;
				public constructor();
				public flush(): void;
				public write(param0: number): void;
				public constructor(param0: java.io.OutputStream, param1: java.util.zip.Deflater, param2: number);
				public setMethod(param0: number): void;
				public constructor(param0: java.io.OutputStream, param1: java.util.zip.Deflater);
				public putNextEntry(param0: java.util.zip.ZipEntry): void;
			}
		}
	}
}

declare module javax {
	export module crypto {
		export class BadPaddingException extends java.security.GeneralSecurityException {
			public static class: java.lang.Class<javax.crypto.BadPaddingException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module javax {
	export module crypto {
		export class Cipher extends java.lang.Object {
			public static class: java.lang.Class<javax.crypto.Cipher>;
			public static DECRYPT_MODE: number;
			public static ENCRYPT_MODE: number;
			public static PRIVATE_KEY: number;
			public static PUBLIC_KEY: number;
			public static SECRET_KEY: number;
			public static UNWRAP_MODE: number;
			public static WRAP_MODE: number;
			public getParameters(): java.security.AlgorithmParameters;
			public init(param0: number, param1: java.security.Key, param2: java.security.SecureRandom): void;
			public getOutputSize(param0: number): number;
			public constructor(param0: javax.crypto.CipherSpi, param1: java.security.Provider, param2: string);
			public init(param0: number, param1: java.security.Key, param2: java.security.spec.AlgorithmParameterSpec): void;
			public update(param0: native.Array<number>, param1: number, param2: number): native.Array<number>;
			public static getMaxAllowedKeyLength(param0: string): number;
			public doFinal(): native.Array<number>;
			public init(param0: number, param1: java.security.Key): void;
			public doFinal(param0: native.Array<number>, param1: number, param2: number, param3: native.Array<number>): number;
			public getBlockSize(): number;
			public init(param0: number, param1: java.security.Key, param2: java.security.spec.AlgorithmParameterSpec, param3: java.security.SecureRandom): void;
			public static getInstance(param0: string, param1: java.security.Provider): javax.crypto.Cipher;
			public init(param0: number, param1: java.security.Key, param2: java.security.AlgorithmParameters, param3: java.security.SecureRandom): void;
			public update(param0: native.Array<number>): native.Array<number>;
			public getIV(): native.Array<number>;
			public update(param0: java.nio.ByteBuffer, param1: java.nio.ByteBuffer): number;
			public doFinal(param0: native.Array<number>, param1: number, param2: number, param3: native.Array<number>, param4: number): number;
			public static getInstance(param0: string, param1: string): javax.crypto.Cipher;
			public static getInstance(param0: string): javax.crypto.Cipher;
			public doFinal(param0: native.Array<number>): native.Array<number>;
			public static getMaxAllowedParameterSpec(param0: string): java.security.spec.AlgorithmParameterSpec;
			public doFinal(param0: java.nio.ByteBuffer, param1: java.nio.ByteBuffer): number;
			public getProvider(): java.security.Provider;
			public update(param0: native.Array<number>, param1: number, param2: number, param3: native.Array<number>, param4: number): number;
			public wrap(param0: java.security.Key): native.Array<number>;
			public doFinal(param0: native.Array<number>, param1: number): number;
			public getExemptionMechanism(): javax.crypto.ExemptionMechanism;
			public getAlgorithm(): string;
			public update(param0: native.Array<number>, param1: number, param2: number, param3: native.Array<number>): number;
			public doFinal(param0: native.Array<number>, param1: number, param2: number): native.Array<number>;
			public init(param0: number, param1: java.security.cert.Certificate, param2: java.security.SecureRandom): void;
			public init(param0: number, param1: java.security.cert.Certificate): void;
			public init(param0: number, param1: java.security.Key, param2: java.security.AlgorithmParameters): void;
			public unwrap(param0: native.Array<number>, param1: string, param2: number): java.security.Key;
		}
	}
}

declare module javax {
	export module crypto {
		export class CipherInputStream extends java.io.FilterInputStream {
			public static class: java.lang.Class<javax.crypto.CipherInputStream>;
			public markSupported(): boolean;
			public read(param0: native.Array<number>): number;
			public skip(param0: number): number;
			public constructor(param0: java.io.InputStream, param1: javax.crypto.Cipher);
			public constructor(param0: java.io.InputStream);
			public read(param0: native.Array<number>, param1: number, param2: number): number;
			public constructor();
			public close(): void;
			public read(): number;
			public available(): number;
		}
	}
}

declare module javax {
	export module crypto {
		export class CipherOutputStream extends java.io.FilterOutputStream {
			public static class: java.lang.Class<javax.crypto.CipherOutputStream>;
			public flush(): void;
			public constructor(param0: java.io.OutputStream, param1: javax.crypto.Cipher);
			public write(param0: number): void;
			public constructor(param0: java.io.OutputStream);
			public write(param0: native.Array<number>, param1: number, param2: number): void;
			public constructor();
			public write(param0: native.Array<number>): void;
			public close(): void;
		}
	}
}

declare module javax {
	export module crypto {
		export abstract class CipherSpi extends java.lang.Object {
			public static class: java.lang.Class<javax.crypto.CipherSpi>;
			public engineUnwrap(param0: native.Array<number>, param1: string, param2: number): java.security.Key;
			public engineGetKeySize(param0: java.security.Key): number;
			public engineInit(param0: number, param1: java.security.Key, param2: java.security.spec.AlgorithmParameterSpec, param3: java.security.SecureRandom): void;
			public engineInit(param0: number, param1: java.security.Key, param2: java.security.SecureRandom): void;
			public engineDoFinal(param0: native.Array<number>, param1: number, param2: number, param3: native.Array<number>, param4: number): number;
			public engineUpdate(param0: native.Array<number>, param1: number, param2: number, param3: native.Array<number>, param4: number): number;
			public constructor();
			public engineUpdate(param0: native.Array<number>, param1: number, param2: number): native.Array<number>;
			public engineDoFinal(param0: java.nio.ByteBuffer, param1: java.nio.ByteBuffer): number;
			public engineSetPadding(param0: string): void;
			public engineGetIV(): native.Array<number>;
			public engineWrap(param0: java.security.Key): native.Array<number>;
			public engineUpdate(param0: java.nio.ByteBuffer, param1: java.nio.ByteBuffer): number;
			public engineDoFinal(param0: native.Array<number>, param1: number, param2: number): native.Array<number>;
			public engineGetBlockSize(): number;
			public engineGetOutputSize(param0: number): number;
			public engineInit(param0: number, param1: java.security.Key, param2: java.security.AlgorithmParameters, param3: java.security.SecureRandom): void;
			public engineGetParameters(): java.security.AlgorithmParameters;
			public engineSetMode(param0: string): void;
		}
	}
}

declare module javax {
	export module crypto {
		export class EncryptedPrivateKeyInfo extends java.lang.Object {
			public static class: java.lang.Class<javax.crypto.EncryptedPrivateKeyInfo>;
			public constructor(param0: java.security.AlgorithmParameters, param1: native.Array<number>);
			public getKeySpec(param0: java.security.Key): java.security.spec.PKCS8EncodedKeySpec;
			public constructor(param0: string, param1: native.Array<number>);
			public getKeySpec(param0: java.security.Key, param1: java.security.Provider): java.security.spec.PKCS8EncodedKeySpec;
			public getAlgParameters(): java.security.AlgorithmParameters;
			public getKeySpec(param0: javax.crypto.Cipher): java.security.spec.PKCS8EncodedKeySpec;
			public constructor(param0: native.Array<number>);
			public getAlgName(): string;
			public getKeySpec(param0: java.security.Key, param1: string): java.security.spec.PKCS8EncodedKeySpec;
			public getEncryptedData(): native.Array<number>;
			public getEncoded(): native.Array<number>;
		}
	}
}

declare module javax {
	export module crypto {
		export class ExemptionMechanism extends java.lang.Object {
			public static class: java.lang.Class<javax.crypto.ExemptionMechanism>;
			public init(param0: java.security.Key, param1: java.security.spec.AlgorithmParameterSpec): void;
			public static getInstance(param0: string, param1: string): javax.crypto.ExemptionMechanism;
			public getOutputSize(param0: number): number;
			public static getInstance(param0: string): javax.crypto.ExemptionMechanism;
			public getProvider(): java.security.Provider;
			public isCryptoAllowed(param0: java.security.Key): boolean;
			public genExemptionBlob(param0: native.Array<number>, param1: number): number;
			public constructor(param0: javax.crypto.ExemptionMechanismSpi, param1: java.security.Provider, param2: string);
			public static getInstance(param0: string, param1: java.security.Provider): javax.crypto.ExemptionMechanism;
			public getName(): string;
			public init(param0: java.security.Key): void;
			public genExemptionBlob(param0: native.Array<number>): number;
			public genExemptionBlob(): native.Array<number>;
			public init(param0: java.security.Key, param1: java.security.AlgorithmParameters): void;
			public finalize(): void;
		}
	}
}

declare module javax {
	export module crypto {
		export class ExemptionMechanismException extends java.security.GeneralSecurityException {
			public static class: java.lang.Class<javax.crypto.ExemptionMechanismException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module javax {
	export module crypto {
		export abstract class ExemptionMechanismSpi extends java.lang.Object {
			public static class: java.lang.Class<javax.crypto.ExemptionMechanismSpi>;
			public engineInit(param0: java.security.Key, param1: java.security.spec.AlgorithmParameterSpec): void;
			public engineGenExemptionBlob(): native.Array<number>;
			public engineInit(param0: java.security.Key, param1: java.security.AlgorithmParameters): void;
			public engineGenExemptionBlob(param0: native.Array<number>, param1: number): number;
			public engineInit(param0: java.security.Key): void;
			public constructor();
			public engineGetOutputSize(param0: number): number;
		}
	}
}

declare module javax {
	export module crypto {
		export class IllegalBlockSizeException extends java.security.GeneralSecurityException {
			public static class: java.lang.Class<javax.crypto.IllegalBlockSizeException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module javax {
	export module crypto {
		export class KeyAgreement extends java.lang.Object {
			public static class: java.lang.Class<javax.crypto.KeyAgreement>;
			public static getInstance(param0: string, param1: string): javax.crypto.KeyAgreement;
			public init(param0: java.security.Key, param1: java.security.SecureRandom): void;
			public generateSecret(param0: string): javax.crypto.SecretKey;
			public constructor(param0: javax.crypto.KeyAgreementSpi, param1: java.security.Provider, param2: string);
			public init(param0: java.security.Key, param1: java.security.spec.AlgorithmParameterSpec): void;
			public static getInstance(param0: string, param1: java.security.Provider): javax.crypto.KeyAgreement;
			public doPhase(param0: java.security.Key, param1: boolean): java.security.Key;
			public getProvider(): java.security.Provider;
			public generateSecret(): native.Array<number>;
			public init(param0: java.security.Key): void;
			public init(param0: java.security.Key, param1: java.security.spec.AlgorithmParameterSpec, param2: java.security.SecureRandom): void;
			public getAlgorithm(): string;
			public generateSecret(param0: native.Array<number>, param1: number): number;
			public static getInstance(param0: string): javax.crypto.KeyAgreement;
		}
	}
}

declare module javax {
	export module crypto {
		export abstract class KeyAgreementSpi extends java.lang.Object {
			public static class: java.lang.Class<javax.crypto.KeyAgreementSpi>;
			public engineGenerateSecret(param0: string): javax.crypto.SecretKey;
			public constructor();
			public engineGenerateSecret(): native.Array<number>;
			public engineDoPhase(param0: java.security.Key, param1: boolean): java.security.Key;
			public engineGenerateSecret(param0: native.Array<number>, param1: number): number;
			public engineInit(param0: java.security.Key, param1: java.security.SecureRandom): void;
			public engineInit(param0: java.security.Key, param1: java.security.spec.AlgorithmParameterSpec, param2: java.security.SecureRandom): void;
		}
	}
}

declare module javax {
	export module crypto {
		export class KeyGenerator extends java.lang.Object {
			public static class: java.lang.Class<javax.crypto.KeyGenerator>;
			public constructor(param0: javax.crypto.KeyGeneratorSpi, param1: java.security.Provider, param2: string);
			public static getInstance(param0: string, param1: java.security.Provider): javax.crypto.KeyGenerator;
			public init(param0: number, param1: java.security.SecureRandom): void;
			public generateKey(): javax.crypto.SecretKey;
			public init(param0: java.security.spec.AlgorithmParameterSpec): void;
			public getAlgorithm(): string;
			public init(param0: java.security.SecureRandom): void;
			public init(param0: java.security.spec.AlgorithmParameterSpec, param1: java.security.SecureRandom): void;
			public init(param0: number): void;
			public getProvider(): java.security.Provider;
			public static getInstance(param0: string): javax.crypto.KeyGenerator;
			public static getInstance(param0: string, param1: string): javax.crypto.KeyGenerator;
		}
	}
}

declare module javax {
	export module crypto {
		export abstract class KeyGeneratorSpi extends java.lang.Object {
			public static class: java.lang.Class<javax.crypto.KeyGeneratorSpi>;
			public engineInit(param0: java.security.spec.AlgorithmParameterSpec, param1: java.security.SecureRandom): void;
			public engineInit(param0: java.security.SecureRandom): void;
			public engineInit(param0: number, param1: java.security.SecureRandom): void;
			public constructor();
			public engineGenerateKey(): javax.crypto.SecretKey;
		}
	}
}

declare module javax {
	export module crypto {
		export class Mac extends java.lang.Object implements java.lang.Cloneable {
			public static class: java.lang.Class<javax.crypto.Mac>;
			public getMacLength(): number;
			public update(param0: number): void;
			public init(param0: java.security.Key, param1: java.security.spec.AlgorithmParameterSpec): void;
			public static getInstance(param0: string, param1: java.security.Provider): javax.crypto.Mac;
			public update(param0: java.nio.ByteBuffer): void;
			public doFinal(param0: native.Array<number>): native.Array<number>;
			public doFinal(): native.Array<number>;
			public static getInstance(param0: string): javax.crypto.Mac;
			public getProvider(): java.security.Provider;
			public doFinal(param0: native.Array<number>, param1: number): void;
			public constructor(param0: javax.crypto.MacSpi, param1: java.security.Provider, param2: string);
			public update(param0: native.Array<number>): void;
			public clone(): any;
			public static getInstance(param0: string, param1: string): javax.crypto.Mac;
			public init(param0: java.security.Key): void;
			public getAlgorithm(): string;
			public reset(): void;
			public update(param0: native.Array<number>, param1: number, param2: number): void;
		}
	}
}

declare module javax {
	export module crypto {
		export abstract class MacSpi extends java.lang.Object {
			public static class: java.lang.Class<javax.crypto.MacSpi>;
			public engineUpdate(param0: java.nio.ByteBuffer): void;
			public engineInit(param0: java.security.Key, param1: java.security.spec.AlgorithmParameterSpec): void;
			public engineDoFinal(): native.Array<number>;
			public clone(): any;
			public engineUpdate(param0: native.Array<number>, param1: number, param2: number): void;
			public engineUpdate(param0: number): void;
			public engineReset(): void;
			public constructor();
			public engineGetMacLength(): number;
		}
	}
}

declare module javax {
	export module crypto {
		export class NoSuchPaddingException extends java.security.GeneralSecurityException {
			public static class: java.lang.Class<javax.crypto.NoSuchPaddingException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module javax {
	export module crypto {
		export class NullCipher extends javax.crypto.Cipher {
			public static class: java.lang.Class<javax.crypto.NullCipher>;
			public constructor(param0: javax.crypto.CipherSpi, param1: java.security.Provider, param2: string);
			public constructor();
		}
	}
}

declare module javax {
	export module crypto {
		export class SealedObject extends java.lang.Object implements java.io.Serializable {
			public static class: java.lang.Class<javax.crypto.SealedObject>;
			public encodedParams: native.Array<number>;
			public constructor(param0: javax.crypto.SealedObject);
			public constructor(param0: java.io.Serializable, param1: javax.crypto.Cipher);
			public getObject(param0: javax.crypto.Cipher): any;
			public getAlgorithm(): string;
			public getObject(param0: java.security.Key): any;
			public getObject(param0: java.security.Key, param1: string): any;
		}
	}
}

declare module javax {
	export module crypto {
		export class SecretKey extends java.lang.Object implements java.security.Key {
			public static class: java.lang.Class<javax.crypto.SecretKey>;
			/**
			 * Constructs a new instance of the javax.crypto.SecretKey interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				getAlgorithm(): string;
				getFormat(): string;
				getEncoded(): native.Array<number>;
			});
			public constructor();
			public static serialVersionUID: number;
			public getAlgorithm(): string;
			public getFormat(): string;
			public getEncoded(): native.Array<number>;
		}
	}
}

declare module javax {
	export module crypto {
		export class SecretKeyFactory extends java.lang.Object {
			public static class: java.lang.Class<javax.crypto.SecretKeyFactory>;
			public translateKey(param0: javax.crypto.SecretKey): javax.crypto.SecretKey;
			public static getInstance(param0: string, param1: java.security.Provider): javax.crypto.SecretKeyFactory;
			public generateSecret(param0: java.security.spec.KeySpec): javax.crypto.SecretKey;
			public getAlgorithm(): string;
			public static getInstance(param0: string, param1: string): javax.crypto.SecretKeyFactory;
			public constructor(param0: javax.crypto.SecretKeyFactorySpi, param1: java.security.Provider, param2: string);
			public static getInstance(param0: string): javax.crypto.SecretKeyFactory;
			public getKeySpec(param0: javax.crypto.SecretKey, param1: java.lang.Class<any>): java.security.spec.KeySpec;
			public getProvider(): java.security.Provider;
		}
	}
}

declare module javax {
	export module crypto {
		export abstract class SecretKeyFactorySpi extends java.lang.Object {
			public static class: java.lang.Class<javax.crypto.SecretKeyFactorySpi>;
			public engineGetKeySpec(param0: javax.crypto.SecretKey, param1: java.lang.Class<any>): java.security.spec.KeySpec;
			public constructor();
			public engineGenerateSecret(param0: java.security.spec.KeySpec): javax.crypto.SecretKey;
			public engineTranslateKey(param0: javax.crypto.SecretKey): javax.crypto.SecretKey;
		}
	}
}

declare module javax {
	export module crypto {
		export class ShortBufferException extends java.security.GeneralSecurityException {
			public static class: java.lang.Class<javax.crypto.ShortBufferException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module javax {
	export module crypto {
		export module interfaces {
			export class DHKey extends java.lang.Object {
				public static class: java.lang.Class<javax.crypto.interfaces.DHKey>;
				/**
				 * Constructs a new instance of the javax.crypto.interfaces.DHKey interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getParams(): javax.crypto.spec.DHParameterSpec;
				});
				public constructor();
				public getParams(): javax.crypto.spec.DHParameterSpec;
			}
		}
	}
}

declare module javax {
	export module crypto {
		export module interfaces {
			export class DHPrivateKey extends java.lang.Object implements javax.crypto.interfaces.DHKey, java.security.PrivateKey {
				public static class: java.lang.Class<javax.crypto.interfaces.DHPrivateKey>;
				/**
				 * Constructs a new instance of the javax.crypto.interfaces.DHPrivateKey interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getX(): java.math.BigInteger;
					getParams(): javax.crypto.spec.DHParameterSpec;
					getAlgorithm(): string;
					getFormat(): string;
					getEncoded(): native.Array<number>;
				});
				public constructor();
				public static serialVersionUID: number;
				public getAlgorithm(): string;
				public getFormat(): string;
				public getParams(): javax.crypto.spec.DHParameterSpec;
				public getEncoded(): native.Array<number>;
				public getX(): java.math.BigInteger;
			}
		}
	}
}

declare module javax {
	export module crypto {
		export module interfaces {
			export class DHPublicKey extends java.lang.Object implements javax.crypto.interfaces.DHKey, java.security.PublicKey {
				public static class: java.lang.Class<javax.crypto.interfaces.DHPublicKey>;
				/**
				 * Constructs a new instance of the javax.crypto.interfaces.DHPublicKey interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getY(): java.math.BigInteger;
					getParams(): javax.crypto.spec.DHParameterSpec;
					getAlgorithm(): string;
					getFormat(): string;
					getEncoded(): native.Array<number>;
				});
				public constructor();
				public static serialVersionUID: number;
				public getAlgorithm(): string;
				public getFormat(): string;
				public getParams(): javax.crypto.spec.DHParameterSpec;
				public getEncoded(): native.Array<number>;
				public getY(): java.math.BigInteger;
			}
		}
	}
}

declare module javax {
	export module crypto {
		export module interfaces {
			export class PBEKey extends java.lang.Object implements javax.crypto.SecretKey {
				public static class: java.lang.Class<javax.crypto.interfaces.PBEKey>;
				/**
				 * Constructs a new instance of the javax.crypto.interfaces.PBEKey interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getIterationCount(): number;
					getSalt(): native.Array<number>;
					getPassword(): native.Array<string>;
					getAlgorithm(): string;
					getFormat(): string;
					getEncoded(): native.Array<number>;
				});
				public constructor();
				public static serialVersionUID: number;
				public getIterationCount(): number;
				public getAlgorithm(): string;
				public getFormat(): string;
				public getPassword(): native.Array<string>;
				public getEncoded(): native.Array<number>;
				public getSalt(): native.Array<number>;
			}
		}
	}
}

declare module javax {
	export module crypto {
		export module spec {
			export class DESKeySpec extends java.lang.Object implements java.security.spec.KeySpec {
				public static class: java.lang.Class<javax.crypto.spec.DESKeySpec>;
				public static DES_KEY_LEN: number;
				public static isWeak(param0: native.Array<number>, param1: number): boolean;
				public constructor(param0: native.Array<number>);
				public constructor(param0: native.Array<number>, param1: number);
				public getKey(): native.Array<number>;
				public static isParityAdjusted(param0: native.Array<number>, param1: number): boolean;
			}
		}
	}
}

declare module javax {
	export module crypto {
		export module spec {
			export class DESedeKeySpec extends java.lang.Object implements java.security.spec.KeySpec {
				public static class: java.lang.Class<javax.crypto.spec.DESedeKeySpec>;
				public static DES_EDE_KEY_LEN: number;
				public constructor(param0: native.Array<number>);
				public constructor(param0: native.Array<number>, param1: number);
				public getKey(): native.Array<number>;
				public static isParityAdjusted(param0: native.Array<number>, param1: number): boolean;
			}
		}
	}
}

declare module javax {
	export module crypto {
		export module spec {
			export class DHGenParameterSpec extends java.lang.Object implements java.security.spec.AlgorithmParameterSpec {
				public static class: java.lang.Class<javax.crypto.spec.DHGenParameterSpec>;
				public constructor(param0: number, param1: number);
				public getExponentSize(): number;
				public getPrimeSize(): number;
			}
		}
	}
}

declare module javax {
	export module crypto {
		export module spec {
			export class DHParameterSpec extends java.lang.Object implements java.security.spec.AlgorithmParameterSpec {
				public static class: java.lang.Class<javax.crypto.spec.DHParameterSpec>;
				public constructor(param0: java.math.BigInteger, param1: java.math.BigInteger);
				public getG(): java.math.BigInteger;
				public getP(): java.math.BigInteger;
				public constructor(param0: java.math.BigInteger, param1: java.math.BigInteger, param2: number);
				public getL(): number;
			}
		}
	}
}

declare module javax {
	export module crypto {
		export module spec {
			export class DHPrivateKeySpec extends java.lang.Object implements java.security.spec.KeySpec {
				public static class: java.lang.Class<javax.crypto.spec.DHPrivateKeySpec>;
				public constructor(param0: java.math.BigInteger, param1: java.math.BigInteger, param2: java.math.BigInteger);
				public getG(): java.math.BigInteger;
				public getX(): java.math.BigInteger;
				public getP(): java.math.BigInteger;
			}
		}
	}
}

declare module javax {
	export module crypto {
		export module spec {
			export class DHPublicKeySpec extends java.lang.Object implements java.security.spec.KeySpec {
				public static class: java.lang.Class<javax.crypto.spec.DHPublicKeySpec>;
				public constructor(param0: java.math.BigInteger, param1: java.math.BigInteger, param2: java.math.BigInteger);
				public getG(): java.math.BigInteger;
				public getY(): java.math.BigInteger;
				public getP(): java.math.BigInteger;
			}
		}
	}
}

declare module javax {
	export module crypto {
		export module spec {
			export class IvParameterSpec extends java.lang.Object implements java.security.spec.AlgorithmParameterSpec {
				public static class: java.lang.Class<javax.crypto.spec.IvParameterSpec>;
				public constructor(param0: native.Array<number>);
				public constructor(param0: native.Array<number>, param1: number, param2: number);
				public getIV(): native.Array<number>;
			}
		}
	}
}

declare module javax {
	export module crypto {
		export module spec {
			export class OAEPParameterSpec extends java.lang.Object implements java.security.spec.AlgorithmParameterSpec {
				public static class: java.lang.Class<javax.crypto.spec.OAEPParameterSpec>;
				public static DEFAULT: javax.crypto.spec.OAEPParameterSpec;
				public getDigestAlgorithm(): string;
				public getMGFAlgorithm(): string;
				public constructor(param0: string, param1: string, param2: java.security.spec.AlgorithmParameterSpec, param3: javax.crypto.spec.PSource);
				public getPSource(): javax.crypto.spec.PSource;
				public getMGFParameters(): java.security.spec.AlgorithmParameterSpec;
			}
		}
	}
}

declare module javax {
	export module crypto {
		export module spec {
			export class PBEKeySpec extends java.lang.Object implements java.security.spec.KeySpec {
				public static class: java.lang.Class<javax.crypto.spec.PBEKeySpec>;
				public getIterationCount(): number;
				public getPassword(): native.Array<string>;
				public constructor(param0: native.Array<string>, param1: native.Array<number>, param2: number, param3: number);
				public constructor(param0: native.Array<string>);
				public clearPassword(): void;
				public getSalt(): native.Array<number>;
				public constructor(param0: native.Array<string>, param1: native.Array<number>, param2: number);
				public getKeyLength(): number;
			}
		}
	}
}

declare module javax {
	export module crypto {
		export module spec {
			export class PBEParameterSpec extends java.lang.Object implements java.security.spec.AlgorithmParameterSpec {
				public static class: java.lang.Class<javax.crypto.spec.PBEParameterSpec>;
				public getIterationCount(): number;
				public constructor(param0: native.Array<number>, param1: number);
				public getSalt(): native.Array<number>;
			}
		}
	}
}

declare module javax {
	export module crypto {
		export module spec {
			export class PSource extends java.lang.Object {
				public static class: java.lang.Class<javax.crypto.spec.PSource>;
				public getAlgorithm(): string;
				public constructor(param0: string);
			}
			export module PSource {
				export class PSpecified extends javax.crypto.spec.PSource {
					public static class: java.lang.Class<javax.crypto.spec.PSource.PSpecified>;
					public static DEFAULT: javax.crypto.spec.PSource.PSpecified;
					public constructor(param0: native.Array<number>);
					public constructor(param0: string);
					public getValue(): native.Array<number>;
				}
			}
		}
	}
}

declare module javax {
	export module crypto {
		export module spec {
			export class RC2ParameterSpec extends java.lang.Object implements java.security.spec.AlgorithmParameterSpec {
				public static class: java.lang.Class<javax.crypto.spec.RC2ParameterSpec>;
				public constructor(param0: number, param1: native.Array<number>, param2: number);
				public getIV(): native.Array<number>;
				public hashCode(): number;
				public getEffectiveKeyBits(): number;
				public equals(param0: any): boolean;
				public constructor(param0: number);
				public constructor(param0: number, param1: native.Array<number>);
			}
		}
	}
}

declare module javax {
	export module crypto {
		export module spec {
			export class RC5ParameterSpec extends java.lang.Object implements java.security.spec.AlgorithmParameterSpec {
				public static class: java.lang.Class<javax.crypto.spec.RC5ParameterSpec>;
				public constructor(param0: number, param1: number, param2: number);
				public constructor(param0: number, param1: number, param2: number, param3: native.Array<number>);
				public getVersion(): number;
				public getIV(): native.Array<number>;
				public hashCode(): number;
				public equals(param0: any): boolean;
				public getWordSize(): number;
				public constructor(param0: number, param1: number, param2: number, param3: native.Array<number>, param4: number);
				public getRounds(): number;
			}
		}
	}
}

declare module javax {
	export module crypto {
		export module spec {
			export class SecretKeySpec extends java.lang.Object implements javax.crypto.SecretKey, java.security.spec.KeySpec, java.io.Serializable {
				public static class: java.lang.Class<javax.crypto.spec.SecretKeySpec>;
				public getAlgorithm(): string;
				public getFormat(): string;
				public hashCode(): number;
				public constructor(param0: native.Array<number>, param1: string);
				public constructor(param0: native.Array<number>, param1: number, param2: number, param3: string);
				public equals(param0: any): boolean;
				public getEncoded(): native.Array<number>;
			}
		}
	}
}

declare module javax {
	export module microedition {
		export module khronos {
			export module egl {
				export class EGL extends java.lang.Object {
					public static class: java.lang.Class<javax.microedition.khronos.egl.EGL>;
					/**
					 * Constructs a new instance of the javax.microedition.khronos.egl.EGL interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
					});
					public constructor();
				}
			}
		}
	}
}

declare module javax {
	export module microedition {
		export module khronos {
			export module egl {
				export class EGL10 extends java.lang.Object implements javax.microedition.khronos.egl.EGL {
					public static class: java.lang.Class<javax.microedition.khronos.egl.EGL10>;
					/**
					 * Constructs a new instance of the javax.microedition.khronos.egl.EGL10 interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						eglChooseConfig(param0: javax.microedition.khronos.egl.EGLDisplay, param1: native.Array<number>, param2: native.Array<javax.microedition.khronos.egl.EGLConfig>, param3: number, param4: native.Array<number>): boolean;
						eglCopyBuffers(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLSurface, param2: any): boolean;
						eglCreateContext(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLConfig, param2: javax.microedition.khronos.egl.EGLContext, param3: native.Array<number>): javax.microedition.khronos.egl.EGLContext;
						eglCreatePbufferSurface(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLConfig, param2: native.Array<number>): javax.microedition.khronos.egl.EGLSurface;
						eglCreatePixmapSurface(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLConfig, param2: any, param3: native.Array<number>): javax.microedition.khronos.egl.EGLSurface;
						eglCreateWindowSurface(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLConfig, param2: any, param3: native.Array<number>): javax.microedition.khronos.egl.EGLSurface;
						eglDestroyContext(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLContext): boolean;
						eglDestroySurface(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLSurface): boolean;
						eglGetConfigAttrib(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLConfig, param2: number, param3: native.Array<number>): boolean;
						eglGetConfigs(param0: javax.microedition.khronos.egl.EGLDisplay, param1: native.Array<javax.microedition.khronos.egl.EGLConfig>, param2: number, param3: native.Array<number>): boolean;
						eglGetCurrentContext(): javax.microedition.khronos.egl.EGLContext;
						eglGetCurrentDisplay(): javax.microedition.khronos.egl.EGLDisplay;
						eglGetCurrentSurface(param0: number): javax.microedition.khronos.egl.EGLSurface;
						eglGetDisplay(param0: any): javax.microedition.khronos.egl.EGLDisplay;
						eglGetError(): number;
						eglInitialize(param0: javax.microedition.khronos.egl.EGLDisplay, param1: native.Array<number>): boolean;
						eglMakeCurrent(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLSurface, param2: javax.microedition.khronos.egl.EGLSurface, param3: javax.microedition.khronos.egl.EGLContext): boolean;
						eglQueryContext(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLContext, param2: number, param3: native.Array<number>): boolean;
						eglQueryString(param0: javax.microedition.khronos.egl.EGLDisplay, param1: number): string;
						eglQuerySurface(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLSurface, param2: number, param3: native.Array<number>): boolean;
						eglSwapBuffers(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLSurface): boolean;
						eglTerminate(param0: javax.microedition.khronos.egl.EGLDisplay): boolean;
						eglWaitGL(): boolean;
						eglWaitNative(param0: number, param1: any): boolean;
						<clinit>(): void;
					});
					public constructor();
					public static EGL_MAX_PBUFFER_HEIGHT: number;
					public static EGL_BAD_CONFIG: number;
					public static EGL_TRANSPARENT_RED_VALUE: number;
					public static EGL_ALPHA_SIZE: number;
					public static EGL_SAMPLES: number;
					public static EGL_LUMINANCE_BUFFER: number;
					public static EGL_VERSION: number;
					public static EGL_EXTENSIONS: number;
					public static EGL_NO_DISPLAY: javax.microedition.khronos.egl.EGLDisplay;
					public static EGL_TRANSPARENT_GREEN_VALUE: number;
					public static EGL_CONFIG_ID: number;
					public static EGL_LARGEST_PBUFFER: number;
					public static EGL_DEPTH_SIZE: number;
					public static EGL_HEIGHT: number;
					public static EGL_MAX_PBUFFER_WIDTH: number;
					public static EGL_NOT_INITIALIZED: number;
					public static EGL_RENDER_BUFFER: number;
					public static EGL_RED_SIZE: number;
					public static EGL_READ: number;
					public static EGL_DONT_CARE: number;
					public static EGL_BAD_NATIVE_WINDOW: number;
					public static EGL_WIDTH: number;
					public static EGL_PIXMAP_BIT: number;
					public static EGL_STENCIL_SIZE: number;
					public static EGL_SUCCESS: number;
					public static EGL_GREEN_SIZE: number;
					public static EGL_DRAW: number;
					public static EGL_COLORSPACE: number;
					public static EGL_LEVEL: number;
					public static EGL_PBUFFER_BIT: number;
					public static EGL_BAD_SURFACE: number;
					public static EGL_BLUE_SIZE: number;
					public static EGL_RENDERABLE_TYPE: number;
					public static EGL_BAD_ATTRIBUTE: number;
					public static EGL_VENDOR: number;
					public static EGL_BAD_ACCESS: number;
					public static EGL_CORE_NATIVE_ENGINE: number;
					public static EGL_NONE: number;
					public static EGL_VERTICAL_RESOLUTION: number;
					public static EGL_BAD_CURRENT_SURFACE: number;
					public static EGL_COLOR_BUFFER_TYPE: number;
					public static EGL_CONFIG_CAVEAT: number;
					public static EGL_BAD_NATIVE_PIXMAP: number;
					public static EGL_NATIVE_VISUAL_TYPE: number;
					public static EGL_LUMINANCE_SIZE: number;
					public static EGL_NON_CONFORMANT_CONFIG: number;
					public static EGL_BAD_MATCH: number;
					public static EGL_SAMPLE_BUFFERS: number;
					public static EGL_TRANSPARENT_BLUE_VALUE: number;
					public static EGL_PIXEL_ASPECT_RATIO: number;
					public static EGL_SURFACE_TYPE: number;
					public static EGL_TRANSPARENT_TYPE: number;
					public static EGL_ALPHA_FORMAT: number;
					public static EGL_WINDOW_BIT: number;
					public static EGL_NO_SURFACE: javax.microedition.khronos.egl.EGLSurface;
					public static EGL_BAD_ALLOC: number;
					public static EGL_RGB_BUFFER: number;
					public static EGL_ALPHA_MASK_SIZE: number;
					public static EGL_DEFAULT_DISPLAY: any;
					public static EGL_HORIZONTAL_RESOLUTION: number;
					public static EGL_TRANSPARENT_RGB: number;
					public static EGL_MAX_PBUFFER_PIXELS: number;
					public static EGL_SLOW_CONFIG: number;
					public static EGL_SINGLE_BUFFER: number;
					public static EGL_BUFFER_SIZE: number;
					public static EGL_NO_CONTEXT: javax.microedition.khronos.egl.EGLContext;
					public static EGL_NATIVE_RENDERABLE: number;
					public static EGL_BAD_DISPLAY: number;
					public static EGL_BAD_PARAMETER: number;
					public static EGL_BAD_CONTEXT: number;
					public static EGL_NATIVE_VISUAL_ID: number;
					public eglMakeCurrent(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLSurface, param2: javax.microedition.khronos.egl.EGLSurface, param3: javax.microedition.khronos.egl.EGLContext): boolean;
					public eglSwapBuffers(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLSurface): boolean;
					public eglWaitNative(param0: number, param1: any): boolean;
					public eglCreateContext(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLConfig, param2: javax.microedition.khronos.egl.EGLContext, param3: native.Array<number>): javax.microedition.khronos.egl.EGLContext;
					public eglChooseConfig(param0: javax.microedition.khronos.egl.EGLDisplay, param1: native.Array<number>, param2: native.Array<javax.microedition.khronos.egl.EGLConfig>, param3: number, param4: native.Array<number>): boolean;
					public eglTerminate(param0: javax.microedition.khronos.egl.EGLDisplay): boolean;
					public eglQuerySurface(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLSurface, param2: number, param3: native.Array<number>): boolean;
					public eglGetCurrentDisplay(): javax.microedition.khronos.egl.EGLDisplay;
					public eglQueryContext(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLContext, param2: number, param3: native.Array<number>): boolean;
					public eglGetConfigs(param0: javax.microedition.khronos.egl.EGLDisplay, param1: native.Array<javax.microedition.khronos.egl.EGLConfig>, param2: number, param3: native.Array<number>): boolean;
					public eglGetError(): number;
					public eglGetCurrentContext(): javax.microedition.khronos.egl.EGLContext;
					public eglGetDisplay(param0: any): javax.microedition.khronos.egl.EGLDisplay;
					public eglGetCurrentSurface(param0: number): javax.microedition.khronos.egl.EGLSurface;
					public eglCreatePbufferSurface(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLConfig, param2: native.Array<number>): javax.microedition.khronos.egl.EGLSurface;
					public eglCreateWindowSurface(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLConfig, param2: any, param3: native.Array<number>): javax.microedition.khronos.egl.EGLSurface;
					public eglDestroyContext(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLContext): boolean;
					public eglDestroySurface(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLSurface): boolean;
					public eglGetConfigAttrib(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLConfig, param2: number, param3: native.Array<number>): boolean;
					public eglInitialize(param0: javax.microedition.khronos.egl.EGLDisplay, param1: native.Array<number>): boolean;
					public eglWaitGL(): boolean;
					public eglCopyBuffers(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLSurface, param2: any): boolean;
					public eglCreatePixmapSurface(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLConfig, param2: any, param3: native.Array<number>): javax.microedition.khronos.egl.EGLSurface;
					public eglQueryString(param0: javax.microedition.khronos.egl.EGLDisplay, param1: number): string;
				}
			}
		}
	}
}

declare module javax {
	export module microedition {
		export module khronos {
			export module egl {
				export class EGL11 extends java.lang.Object implements javax.microedition.khronos.egl.EGL10 {
					public static class: java.lang.Class<javax.microedition.khronos.egl.EGL11>;
					/**
					 * Constructs a new instance of the javax.microedition.khronos.egl.EGL11 interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						eglChooseConfig(param0: javax.microedition.khronos.egl.EGLDisplay, param1: native.Array<number>, param2: native.Array<javax.microedition.khronos.egl.EGLConfig>, param3: number, param4: native.Array<number>): boolean;
						eglCopyBuffers(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLSurface, param2: any): boolean;
						eglCreateContext(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLConfig, param2: javax.microedition.khronos.egl.EGLContext, param3: native.Array<number>): javax.microedition.khronos.egl.EGLContext;
						eglCreatePbufferSurface(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLConfig, param2: native.Array<number>): javax.microedition.khronos.egl.EGLSurface;
						eglCreatePixmapSurface(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLConfig, param2: any, param3: native.Array<number>): javax.microedition.khronos.egl.EGLSurface;
						eglCreateWindowSurface(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLConfig, param2: any, param3: native.Array<number>): javax.microedition.khronos.egl.EGLSurface;
						eglDestroyContext(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLContext): boolean;
						eglDestroySurface(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLSurface): boolean;
						eglGetConfigAttrib(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLConfig, param2: number, param3: native.Array<number>): boolean;
						eglGetConfigs(param0: javax.microedition.khronos.egl.EGLDisplay, param1: native.Array<javax.microedition.khronos.egl.EGLConfig>, param2: number, param3: native.Array<number>): boolean;
						eglGetCurrentContext(): javax.microedition.khronos.egl.EGLContext;
						eglGetCurrentDisplay(): javax.microedition.khronos.egl.EGLDisplay;
						eglGetCurrentSurface(param0: number): javax.microedition.khronos.egl.EGLSurface;
						eglGetDisplay(param0: any): javax.microedition.khronos.egl.EGLDisplay;
						eglGetError(): number;
						eglInitialize(param0: javax.microedition.khronos.egl.EGLDisplay, param1: native.Array<number>): boolean;
						eglMakeCurrent(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLSurface, param2: javax.microedition.khronos.egl.EGLSurface, param3: javax.microedition.khronos.egl.EGLContext): boolean;
						eglQueryContext(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLContext, param2: number, param3: native.Array<number>): boolean;
						eglQueryString(param0: javax.microedition.khronos.egl.EGLDisplay, param1: number): string;
						eglQuerySurface(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLSurface, param2: number, param3: native.Array<number>): boolean;
						eglSwapBuffers(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLSurface): boolean;
						eglTerminate(param0: javax.microedition.khronos.egl.EGLDisplay): boolean;
						eglWaitGL(): boolean;
						eglWaitNative(param0: number, param1: any): boolean;
						<clinit>(): void;
					});
					public constructor();
					public static EGL_MAX_PBUFFER_HEIGHT: number;
					public static EGL_BAD_CONFIG: number;
					public static EGL_TRANSPARENT_RED_VALUE: number;
					public static EGL_ALPHA_SIZE: number;
					public static EGL_SAMPLES: number;
					public static EGL_LUMINANCE_BUFFER: number;
					public static EGL_VERSION: number;
					public static EGL_EXTENSIONS: number;
					public static EGL_NO_DISPLAY: javax.microedition.khronos.egl.EGLDisplay;
					public static EGL_TRANSPARENT_GREEN_VALUE: number;
					public static EGL_CONFIG_ID: number;
					public static EGL_LARGEST_PBUFFER: number;
					public static EGL_DEPTH_SIZE: number;
					public static EGL_HEIGHT: number;
					public static EGL_MAX_PBUFFER_WIDTH: number;
					public static EGL_NOT_INITIALIZED: number;
					public static EGL_RENDER_BUFFER: number;
					public static EGL_RED_SIZE: number;
					public static EGL_READ: number;
					public static EGL_DONT_CARE: number;
					public static EGL_BAD_NATIVE_WINDOW: number;
					public static EGL_WIDTH: number;
					public static EGL_PIXMAP_BIT: number;
					public static EGL_STENCIL_SIZE: number;
					public static EGL_SUCCESS: number;
					public static EGL_GREEN_SIZE: number;
					public static EGL_DRAW: number;
					public static EGL_COLORSPACE: number;
					public static EGL_LEVEL: number;
					public static EGL_PBUFFER_BIT: number;
					public static EGL_BAD_SURFACE: number;
					public static EGL_BLUE_SIZE: number;
					public static EGL_RENDERABLE_TYPE: number;
					public static EGL_BAD_ATTRIBUTE: number;
					public static EGL_VENDOR: number;
					public static EGL_BAD_ACCESS: number;
					public static EGL_CORE_NATIVE_ENGINE: number;
					public static EGL_NONE: number;
					public static EGL_VERTICAL_RESOLUTION: number;
					public static EGL_BAD_CURRENT_SURFACE: number;
					public static EGL_COLOR_BUFFER_TYPE: number;
					public static EGL_CONFIG_CAVEAT: number;
					public static EGL_BAD_NATIVE_PIXMAP: number;
					public static EGL_NATIVE_VISUAL_TYPE: number;
					public static EGL_LUMINANCE_SIZE: number;
					public static EGL_NON_CONFORMANT_CONFIG: number;
					public static EGL_CONTEXT_LOST: number;
					public static EGL_BAD_MATCH: number;
					public static EGL_SAMPLE_BUFFERS: number;
					public static EGL_TRANSPARENT_BLUE_VALUE: number;
					public static EGL_PIXEL_ASPECT_RATIO: number;
					public static EGL_SURFACE_TYPE: number;
					public static EGL_TRANSPARENT_TYPE: number;
					public static EGL_ALPHA_FORMAT: number;
					public static EGL_WINDOW_BIT: number;
					public static EGL_NO_SURFACE: javax.microedition.khronos.egl.EGLSurface;
					public static EGL_BAD_ALLOC: number;
					public static EGL_RGB_BUFFER: number;
					public static EGL_ALPHA_MASK_SIZE: number;
					public static EGL_DEFAULT_DISPLAY: any;
					public static EGL_HORIZONTAL_RESOLUTION: number;
					public static EGL_TRANSPARENT_RGB: number;
					public static EGL_MAX_PBUFFER_PIXELS: number;
					public static EGL_SLOW_CONFIG: number;
					public static EGL_SINGLE_BUFFER: number;
					public static EGL_BUFFER_SIZE: number;
					public static EGL_NO_CONTEXT: javax.microedition.khronos.egl.EGLContext;
					public static EGL_NATIVE_RENDERABLE: number;
					public static EGL_BAD_DISPLAY: number;
					public static EGL_BAD_PARAMETER: number;
					public static EGL_BAD_CONTEXT: number;
					public static EGL_NATIVE_VISUAL_ID: number;
					public eglMakeCurrent(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLSurface, param2: javax.microedition.khronos.egl.EGLSurface, param3: javax.microedition.khronos.egl.EGLContext): boolean;
					public eglSwapBuffers(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLSurface): boolean;
					public eglWaitNative(param0: number, param1: any): boolean;
					public eglCreateContext(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLConfig, param2: javax.microedition.khronos.egl.EGLContext, param3: native.Array<number>): javax.microedition.khronos.egl.EGLContext;
					public eglChooseConfig(param0: javax.microedition.khronos.egl.EGLDisplay, param1: native.Array<number>, param2: native.Array<javax.microedition.khronos.egl.EGLConfig>, param3: number, param4: native.Array<number>): boolean;
					public eglTerminate(param0: javax.microedition.khronos.egl.EGLDisplay): boolean;
					public eglQuerySurface(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLSurface, param2: number, param3: native.Array<number>): boolean;
					public eglGetCurrentDisplay(): javax.microedition.khronos.egl.EGLDisplay;
					public eglQueryContext(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLContext, param2: number, param3: native.Array<number>): boolean;
					public eglGetConfigs(param0: javax.microedition.khronos.egl.EGLDisplay, param1: native.Array<javax.microedition.khronos.egl.EGLConfig>, param2: number, param3: native.Array<number>): boolean;
					public eglGetError(): number;
					public eglGetCurrentContext(): javax.microedition.khronos.egl.EGLContext;
					public eglGetDisplay(param0: any): javax.microedition.khronos.egl.EGLDisplay;
					public eglGetCurrentSurface(param0: number): javax.microedition.khronos.egl.EGLSurface;
					public eglCreatePbufferSurface(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLConfig, param2: native.Array<number>): javax.microedition.khronos.egl.EGLSurface;
					public eglCreateWindowSurface(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLConfig, param2: any, param3: native.Array<number>): javax.microedition.khronos.egl.EGLSurface;
					public eglDestroyContext(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLContext): boolean;
					public eglDestroySurface(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLSurface): boolean;
					public eglGetConfigAttrib(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLConfig, param2: number, param3: native.Array<number>): boolean;
					public eglInitialize(param0: javax.microedition.khronos.egl.EGLDisplay, param1: native.Array<number>): boolean;
					public eglWaitGL(): boolean;
					public eglCopyBuffers(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLSurface, param2: any): boolean;
					public eglCreatePixmapSurface(param0: javax.microedition.khronos.egl.EGLDisplay, param1: javax.microedition.khronos.egl.EGLConfig, param2: any, param3: native.Array<number>): javax.microedition.khronos.egl.EGLSurface;
					public eglQueryString(param0: javax.microedition.khronos.egl.EGLDisplay, param1: number): string;
				}
			}
		}
	}
}

declare module javax {
	export module microedition {
		export module khronos {
			export module egl {
				export abstract class EGLConfig extends java.lang.Object {
					public static class: java.lang.Class<javax.microedition.khronos.egl.EGLConfig>;
					public constructor();
				}
			}
		}
	}
}

declare module javax {
	export module microedition {
		export module khronos {
			export module egl {
				export abstract class EGLContext extends java.lang.Object {
					public static class: java.lang.Class<javax.microedition.khronos.egl.EGLContext>;
					public constructor();
					public static getEGL(): javax.microedition.khronos.egl.EGL;
					public getGL(): javax.microedition.khronos.opengles.GL;
				}
			}
		}
	}
}

declare module javax {
	export module microedition {
		export module khronos {
			export module egl {
				export abstract class EGLDisplay extends java.lang.Object {
					public static class: java.lang.Class<javax.microedition.khronos.egl.EGLDisplay>;
					public constructor();
				}
			}
		}
	}
}

declare module javax {
	export module microedition {
		export module khronos {
			export module egl {
				export abstract class EGLSurface extends java.lang.Object {
					public static class: java.lang.Class<javax.microedition.khronos.egl.EGLSurface>;
					public constructor();
				}
			}
		}
	}
}

declare module javax {
	export module microedition {
		export module khronos {
			export module opengles {
				export class GL extends java.lang.Object {
					public static class: java.lang.Class<javax.microedition.khronos.opengles.GL>;
					/**
					 * Constructs a new instance of the javax.microedition.khronos.opengles.GL interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
					});
					public constructor();
				}
			}
		}
	}
}

declare module javax {
	export module microedition {
		export module khronos {
			export module opengles {
				export class GL10 extends java.lang.Object implements javax.microedition.khronos.opengles.GL {
					public static class: java.lang.Class<javax.microedition.khronos.opengles.GL10>;
					/**
					 * Constructs a new instance of the javax.microedition.khronos.opengles.GL10 interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						glActiveTexture(param0: number): void;
						glAlphaFunc(param0: number, param1: number): void;
						glAlphaFuncx(param0: number, param1: number): void;
						glBindTexture(param0: number, param1: number): void;
						glBlendFunc(param0: number, param1: number): void;
						glClear(param0: number): void;
						glClearColor(param0: number, param1: number, param2: number, param3: number): void;
						glClearColorx(param0: number, param1: number, param2: number, param3: number): void;
						glClearDepthf(param0: number): void;
						glClearDepthx(param0: number): void;
						glClearStencil(param0: number): void;
						glClientActiveTexture(param0: number): void;
						glColor4f(param0: number, param1: number, param2: number, param3: number): void;
						glColor4x(param0: number, param1: number, param2: number, param3: number): void;
						glColorMask(param0: boolean, param1: boolean, param2: boolean, param3: boolean): void;
						glColorPointer(param0: number, param1: number, param2: number, param3: java.nio.Buffer): void;
						glCompressedTexImage2D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: java.nio.Buffer): void;
						glCompressedTexSubImage2D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number, param8: java.nio.Buffer): void;
						glCopyTexImage2D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number): void;
						glCopyTexSubImage2D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number): void;
						glCullFace(param0: number): void;
						glDeleteTextures(param0: number, param1: native.Array<number>, param2: number): void;
						glDeleteTextures(param0: number, param1: java.nio.IntBuffer): void;
						glDepthFunc(param0: number): void;
						glDepthMask(param0: boolean): void;
						glDepthRangef(param0: number, param1: number): void;
						glDepthRangex(param0: number, param1: number): void;
						glDisable(param0: number): void;
						glDisableClientState(param0: number): void;
						glDrawArrays(param0: number, param1: number, param2: number): void;
						glDrawElements(param0: number, param1: number, param2: number, param3: java.nio.Buffer): void;
						glEnable(param0: number): void;
						glEnableClientState(param0: number): void;
						glFinish(): void;
						glFlush(): void;
						glFogf(param0: number, param1: number): void;
						glFogfv(param0: number, param1: native.Array<number>, param2: number): void;
						glFogfv(param0: number, param1: java.nio.FloatBuffer): void;
						glFogx(param0: number, param1: number): void;
						glFogxv(param0: number, param1: native.Array<number>, param2: number): void;
						glFogxv(param0: number, param1: java.nio.IntBuffer): void;
						glFrontFace(param0: number): void;
						glFrustumf(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): void;
						glFrustumx(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): void;
						glGenTextures(param0: number, param1: native.Array<number>, param2: number): void;
						glGenTextures(param0: number, param1: java.nio.IntBuffer): void;
						glGetError(): number;
						glGetIntegerv(param0: number, param1: native.Array<number>, param2: number): void;
						glGetIntegerv(param0: number, param1: java.nio.IntBuffer): void;
						glGetString(param0: number): string;
						glHint(param0: number, param1: number): void;
						glLightModelf(param0: number, param1: number): void;
						glLightModelfv(param0: number, param1: native.Array<number>, param2: number): void;
						glLightModelfv(param0: number, param1: java.nio.FloatBuffer): void;
						glLightModelx(param0: number, param1: number): void;
						glLightModelxv(param0: number, param1: native.Array<number>, param2: number): void;
						glLightModelxv(param0: number, param1: java.nio.IntBuffer): void;
						glLightf(param0: number, param1: number, param2: number): void;
						glLightfv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
						glLightfv(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
						glLightx(param0: number, param1: number, param2: number): void;
						glLightxv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
						glLightxv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
						glLineWidth(param0: number): void;
						glLineWidthx(param0: number): void;
						glLoadIdentity(): void;
						glLoadMatrixf(param0: native.Array<number>, param1: number): void;
						glLoadMatrixf(param0: java.nio.FloatBuffer): void;
						glLoadMatrixx(param0: native.Array<number>, param1: number): void;
						glLoadMatrixx(param0: java.nio.IntBuffer): void;
						glLogicOp(param0: number): void;
						glMaterialf(param0: number, param1: number, param2: number): void;
						glMaterialfv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
						glMaterialfv(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
						glMaterialx(param0: number, param1: number, param2: number): void;
						glMaterialxv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
						glMaterialxv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
						glMatrixMode(param0: number): void;
						glMultMatrixf(param0: native.Array<number>, param1: number): void;
						glMultMatrixf(param0: java.nio.FloatBuffer): void;
						glMultMatrixx(param0: native.Array<number>, param1: number): void;
						glMultMatrixx(param0: java.nio.IntBuffer): void;
						glMultiTexCoord4f(param0: number, param1: number, param2: number, param3: number, param4: number): void;
						glMultiTexCoord4x(param0: number, param1: number, param2: number, param3: number, param4: number): void;
						glNormal3f(param0: number, param1: number, param2: number): void;
						glNormal3x(param0: number, param1: number, param2: number): void;
						glNormalPointer(param0: number, param1: number, param2: java.nio.Buffer): void;
						glOrthof(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): void;
						glOrthox(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): void;
						glPixelStorei(param0: number, param1: number): void;
						glPointSize(param0: number): void;
						glPointSizex(param0: number): void;
						glPolygonOffset(param0: number, param1: number): void;
						glPolygonOffsetx(param0: number, param1: number): void;
						glPopMatrix(): void;
						glPushMatrix(): void;
						glReadPixels(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: java.nio.Buffer): void;
						glRotatef(param0: number, param1: number, param2: number, param3: number): void;
						glRotatex(param0: number, param1: number, param2: number, param3: number): void;
						glSampleCoverage(param0: number, param1: boolean): void;
						glSampleCoveragex(param0: number, param1: boolean): void;
						glScalef(param0: number, param1: number, param2: number): void;
						glScalex(param0: number, param1: number, param2: number): void;
						glScissor(param0: number, param1: number, param2: number, param3: number): void;
						glShadeModel(param0: number): void;
						glStencilFunc(param0: number, param1: number, param2: number): void;
						glStencilMask(param0: number): void;
						glStencilOp(param0: number, param1: number, param2: number): void;
						glTexCoordPointer(param0: number, param1: number, param2: number, param3: java.nio.Buffer): void;
						glTexEnvf(param0: number, param1: number, param2: number): void;
						glTexEnvfv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
						glTexEnvfv(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
						glTexEnvx(param0: number, param1: number, param2: number): void;
						glTexEnvxv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
						glTexEnvxv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
						glTexImage2D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number, param8: java.nio.Buffer): void;
						glTexParameterf(param0: number, param1: number, param2: number): void;
						glTexParameterx(param0: number, param1: number, param2: number): void;
						glTexSubImage2D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number, param8: java.nio.Buffer): void;
						glTranslatef(param0: number, param1: number, param2: number): void;
						glTranslatex(param0: number, param1: number, param2: number): void;
						glVertexPointer(param0: number, param1: number, param2: number, param3: java.nio.Buffer): void;
						glViewport(param0: number, param1: number, param2: number, param3: number): void;
					});
					public constructor();
					public static GL_CULL_FACE: number;
					public static GL_TEXTURE_ENV_COLOR: number;
					public static GL_MAX_PROJECTION_STACK_DEPTH: number;
					public static GL_LINE_STRIP: number;
					public static GL_LUMINANCE: number;
					public static GL_TRUE: number;
					public static GL_DEPTH_TEST: number;
					public static GL_INVALID_OPERATION: number;
					public static GL_DST_COLOR: number;
					public static GL_LESS: number;
					public static GL_TEXTURE_COORD_ARRAY: number;
					public static GL_NO_ERROR: number;
					public static GL_FRONT_AND_BACK: number;
					public static GL_SET: number;
					public static GL_COPY: number;
					public static GL_TEXTURE_WRAP_T: number;
					public static GL_TEXTURE_WRAP_S: number;
					public static GL_ONE: number;
					public static GL_FOG_HINT: number;
					public static GL_LUMINANCE_ALPHA: number;
					public static GL_PALETTE8_RGBA4_OES: number;
					public static GL_XOR: number;
					public static GL_SPOT_CUTOFF: number;
					public static GL_QUADRATIC_ATTENUATION: number;
					public static GL_DECAL: number;
					public static GL_REPLACE: number;
					public static GL_GREATER: number;
					public static GL_FLAT: number;
					public static GL_KEEP: number;
					public static GL_LINEAR_MIPMAP_NEAREST: number;
					public static GL_EXP2: number;
					public static GL_ONE_MINUS_SRC_COLOR: number;
					public static GL_PALETTE4_RGBA8_OES: number;
					public static GL_SCISSOR_TEST: number;
					public static GL_ALIASED_POINT_SIZE_RANGE: number;
					public static GL_CW: number;
					public static GL_LEQUAL: number;
					public static GL_ALIASED_LINE_WIDTH_RANGE: number;
					public static GL_INVALID_ENUM: number;
					public static GL_RED_BITS: number;
					public static GL_CCW: number;
					public static GL_SHORT: number;
					public static GL_ONE_MINUS_DST_COLOR: number;
					public static GL_GREEN_BITS: number;
					public static GL_VENDOR: number;
					public static GL_TEXTURE: number;
					public static GL_ALWAYS: number;
					public static GL_LIGHT_MODEL_AMBIENT: number;
					public static GL_COLOR_BUFFER_BIT: number;
					public static GL_LINE_SMOOTH_HINT: number;
					public static GL_EXP: number;
					public static GL_INVERT: number;
					public static GL_NEAREST: number;
					public static GL_ONE_MINUS_DST_ALPHA: number;
					public static GL_COLOR_MATERIAL: number;
					public static GL_AND_REVERSE: number;
					public static GL_DONT_CARE: number;
					public static GL_FALSE: number;
					public static GL_ALPHA: number;
					public static GL_NEVER: number;
					public static GL_BYTE: number;
					public static GL_ALPHA_TEST: number;
					public static GL_AND: number;
					public static GL_COLOR_ARRAY: number;
					public static GL_COPY_INVERTED: number;
					public static GL_LINE_SMOOTH: number;
					public static GL_EQUAL: number;
					public static GL_BACK: number;
					public static GL_PALETTE8_RGB5_A1_OES: number;
					public static GL_NUM_COMPRESSED_TEXTURE_FORMATS: number;
					public static GL_TRIANGLE_STRIP: number;
					public static GL_SAMPLE_ALPHA_TO_COVERAGE: number;
					public static GL_ONE_MINUS_SRC_ALPHA: number;
					public static GL_LINEAR_ATTENUATION: number;
					public static GL_PALETTE4_RGB5_A1_OES: number;
					public static GL_TEXTURE_ENV_MODE: number;
					public static GL_TRIANGLES: number;
					public static GL_AND_INVERTED: number;
					public static GL_NORMAL_ARRAY: number;
					public static GL_PROJECTION: number;
					public static GL_POSITION: number;
					public static GL_FIXED: number;
					public static GL_DEPTH_BUFFER_BIT: number;
					public static GL_TEXTURE_2D: number;
					public static GL_SHININESS: number;
					public static GL_MAX_TEXTURE_UNITS: number;
					public static GL_OR_INVERTED: number;
					public static GL_NOOP: number;
					public static GL_MAX_TEXTURE_SIZE: number;
					public static GL_PALETTE8_RGBA8_OES: number;
					public static GL_SAMPLE_COVERAGE: number;
					public static GL_EXTENSIONS: number;
					public static GL_OUT_OF_MEMORY: number;
					public static GL_LINEAR: number;
					public static GL_RGBA: number;
					public static GL_NEAREST_MIPMAP_LINEAR: number;
					public static GL_UNSIGNED_SHORT_5_6_5: number;
					public static GL_DEPTH_BITS: number;
					public static GL_UNPACK_ALIGNMENT: number;
					public static GL_SRC_ALPHA_SATURATE: number;
					public static GL_SPOT_EXPONENT: number;
					public static GL_RESCALE_NORMAL: number;
					public static GL_VERTEX_ARRAY: number;
					public static GL_MAX_ELEMENTS_VERTICES: number;
					public static GL_ALPHA_BITS: number;
					public static GL_PERSPECTIVE_CORRECTION_HINT: number;
					public static GL_LIGHTING: number;
					public static GL_TEXTURE20: number;
					public static GL_MAX_VIEWPORT_DIMS: number;
					public static GL_STACK_OVERFLOW: number;
					public static GL_TEXTURE16: number;
					public static GL_LIGHT_MODEL_TWO_SIDE: number;
					public static GL_TEXTURE17: number;
					public static GL_TEXTURE14: number;
					public static GL_TEXTURE15: number;
					public static GL_TEXTURE12: number;
					public static GL_TEXTURE13: number;
					public static GL_TEXTURE10: number;
					public static GL_TEXTURE11: number;
					public static GL_IMPLEMENTATION_COLOR_READ_TYPE_OES: number;
					public static GL_TEXTURE18: number;
					public static GL_FOG_END: number;
					public static GL_TEXTURE19: number;
					public static GL_UNSIGNED_SHORT_4_4_4_4: number;
					public static GL_NEAREST_MIPMAP_NEAREST: number;
					public static GL_TEXTURE30: number;
					public static GL_LINEAR_MIPMAP_LINEAR: number;
					public static GL_TEXTURE31: number;
					public static GL_TEXTURE27: number;
					public static GL_TEXTURE28: number;
					public static GL_FOG_MODE: number;
					public static GL_SPOT_DIRECTION: number;
					public static GL_TEXTURE25: number;
					public static GL_EMISSION: number;
					public static GL_TEXTURE26: number;
					public static GL_TEXTURE23: number;
					public static GL_TEXTURE24: number;
					public static GL_TEXTURE21: number;
					public static GL_TEXTURE22: number;
					public static GL_OR: number;
					public static GL_OR_REVERSE: number;
					public static GL_SPECULAR: number;
					public static GL_TEXTURE29: number;
					public static GL_STENCIL_BUFFER_BIT: number;
					public static GL_LINE_LOOP: number;
					public static GL_SMOOTH: number;
					public static GL_MAX_LIGHTS: number;
					public static GL_SAMPLE_ALPHA_TO_ONE: number;
					public static GL_TRIANGLE_FAN: number;
					public static GL_RENDERER: number;
					public static GL_DIFFUSE: number;
					public static GL_MULTISAMPLE: number;
					public static GL_POINT_SMOOTH_HINT: number;
					public static GL_POINT_SIZE: number;
					public static GL_SMOOTH_LINE_WIDTH_RANGE: number;
					public static GL_PACK_ALIGNMENT: number;
					public static GL_REPEAT: number;
					public static GL_PALETTE4_RGB8_OES: number;
					public static GL_NAND: number;
					public static GL_STENCIL_TEST: number;
					public static GL_ZERO: number;
					public static GL_TEXTURE0: number;
					public static GL_DECR: number;
					public static GL_SMOOTH_POINT_SIZE_RANGE: number;
					public static GL_COLOR_LOGIC_OP: number;
					public static GL_TEXTURE9: number;
					public static GL_UNSIGNED_SHORT: number;
					public static GL_LINES: number;
					public static GL_CLAMP_TO_EDGE: number;
					public static GL_POINTS: number;
					public static GL_POINT_FADE_THRESHOLD_SIZE: number;
					public static GL_TEXTURE3: number;
					public static GL_TEXTURE4: number;
					public static GL_TEXTURE1: number;
					public static GL_TEXTURE2: number;
					public static GL_TEXTURE7: number;
					public static GL_TEXTURE8: number;
					public static GL_TEXTURE5: number;
					public static GL_TEXTURE6: number;
					public static GL_FOG_START: number;
					public static GL_NOTEQUAL: number;
					public static GL_SUBPIXEL_BITS: number;
					public static GL_POLYGON_SMOOTH_HINT: number;
					public static GL_SRC_COLOR: number;
					public static GL_AMBIENT: number;
					public static GL_FRONT: number;
					public static GL_TEXTURE_ENV: number;
					public static GL_FOG: number;
					public static GL_STENCIL_BITS: number;
					public static GL_UNSIGNED_SHORT_5_5_5_1: number;
					public static GL_RGB: number;
					public static GL_NOR: number;
					public static GL_CLEAR: number;
					public static GL_MODELVIEW: number;
					public static GL_PALETTE4_R5_G6_B5_OES: number;
					public static GL_MAX_MODELVIEW_STACK_DEPTH: number;
					public static GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES: number;
					public static GL_FOG_COLOR: number;
					public static GL_EQUIV: number;
					public static GL_FASTEST: number;
					public static GL_SRC_ALPHA: number;
					public static GL_BLEND: number;
					public static GL_PALETTE8_R5_G6_B5_OES: number;
					public static GL_POINT_SMOOTH: number;
					public static GL_PALETTE8_RGB8_OES: number;
					public static GL_CONSTANT_ATTENUATION: number;
					public static GL_MAX_ELEMENTS_INDICES: number;
					public static GL_PALETTE4_RGBA4_OES: number;
					public static GL_INCR: number;
					public static GL_POLYGON_OFFSET_FILL: number;
					public static GL_INVALID_VALUE: number;
					public static GL_LIGHT3: number;
					public static GL_LIGHT2: number;
					public static GL_LIGHT1: number;
					public static GL_LIGHT0: number;
					public static GL_NORMALIZE: number;
					public static GL_LIGHT7: number;
					public static GL_LIGHT6: number;
					public static GL_BLUE_BITS: number;
					public static GL_LIGHT5: number;
					public static GL_AMBIENT_AND_DIFFUSE: number;
					public static GL_LIGHT4: number;
					public static GL_FLOAT: number;
					public static GL_GEQUAL: number;
					public static GL_TEXTURE_MIN_FILTER: number;
					public static GL_NICEST: number;
					public static GL_UNSIGNED_BYTE: number;
					public static GL_TEXTURE_MAG_FILTER: number;
					public static GL_VERSION: number;
					public static GL_ADD: number;
					public static GL_STACK_UNDERFLOW: number;
					public static GL_FOG_DENSITY: number;
					public static GL_DITHER: number;
					public static GL_MAX_TEXTURE_STACK_DEPTH: number;
					public static GL_MODULATE: number;
					public static GL_DST_ALPHA: number;
					public static GL_COMPRESSED_TEXTURE_FORMATS: number;
					public glDrawElements(param0: number, param1: number, param2: number, param3: java.nio.Buffer): void;
					public glEnableClientState(param0: number): void;
					public glLoadMatrixx(param0: native.Array<number>, param1: number): void;
					public glPushMatrix(): void;
					public glScalex(param0: number, param1: number, param2: number): void;
					public glTexEnvx(param0: number, param1: number, param2: number): void;
					public glCopyTexSubImage2D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number): void;
					public glMultiTexCoord4x(param0: number, param1: number, param2: number, param3: number, param4: number): void;
					public glPolygonOffsetx(param0: number, param1: number): void;
					public glViewport(param0: number, param1: number, param2: number, param3: number): void;
					public glMultMatrixx(param0: java.nio.IntBuffer): void;
					public glLineWidthx(param0: number): void;
					public glPopMatrix(): void;
					public glFogfv(param0: number, param1: native.Array<number>, param2: number): void;
					public glHint(param0: number, param1: number): void;
					public glOrthof(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): void;
					public glShadeModel(param0: number): void;
					public glFinish(): void;
					public glTexParameterf(param0: number, param1: number, param2: number): void;
					public glScalef(param0: number, param1: number, param2: number): void;
					public glTexEnvf(param0: number, param1: number, param2: number): void;
					public glClearDepthx(param0: number): void;
					public glTexCoordPointer(param0: number, param1: number, param2: number, param3: java.nio.Buffer): void;
					public glLightfv(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
					public glActiveTexture(param0: number): void;
					public glTexParameterx(param0: number, param1: number, param2: number): void;
					public glBindTexture(param0: number, param1: number): void;
					public glFrontFace(param0: number): void;
					public glLoadMatrixf(param0: native.Array<number>, param1: number): void;
					public glClearDepthf(param0: number): void;
					public glCullFace(param0: number): void;
					public glLightxv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
					public glClear(param0: number): void;
					public glMultiTexCoord4f(param0: number, param1: number, param2: number, param3: number, param4: number): void;
					public glOrthox(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): void;
					public glLightModelf(param0: number, param1: number): void;
					public glGetError(): number;
					public glGenTextures(param0: number, param1: native.Array<number>, param2: number): void;
					public glClearStencil(param0: number): void;
					public glClientActiveTexture(param0: number): void;
					public glSampleCoverage(param0: number, param1: boolean): void;
					public glColorPointer(param0: number, param1: number, param2: number, param3: java.nio.Buffer): void;
					public glDisableClientState(param0: number): void;
					public glLightfv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
					public glMatrixMode(param0: number): void;
					public glLightModelxv(param0: number, param1: native.Array<number>, param2: number): void;
					public glColorMask(param0: boolean, param1: boolean, param2: boolean, param3: boolean): void;
					public glPointSizex(param0: number): void;
					public glRotatef(param0: number, param1: number, param2: number, param3: number): void;
					public glLightModelx(param0: number, param1: number): void;
					public glGetIntegerv(param0: number, param1: java.nio.IntBuffer): void;
					public glMaterialf(param0: number, param1: number, param2: number): void;
					public glNormal3x(param0: number, param1: number, param2: number): void;
					public glTranslatef(param0: number, param1: number, param2: number): void;
					public glCompressedTexSubImage2D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number, param8: java.nio.Buffer): void;
					public glTexSubImage2D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number, param8: java.nio.Buffer): void;
					public glRotatex(param0: number, param1: number, param2: number, param3: number): void;
					public glAlphaFunc(param0: number, param1: number): void;
					public glLogicOp(param0: number): void;
					public glDeleteTextures(param0: number, param1: java.nio.IntBuffer): void;
					public glTexEnvfv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
					public glMultMatrixx(param0: native.Array<number>, param1: number): void;
					public glReadPixels(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: java.nio.Buffer): void;
					public glClearColor(param0: number, param1: number, param2: number, param3: number): void;
					public glFogxv(param0: number, param1: java.nio.IntBuffer): void;
					public glLightxv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
					public glMaterialfv(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
					public glNormalPointer(param0: number, param1: number, param2: java.nio.Buffer): void;
					public glDeleteTextures(param0: number, param1: native.Array<number>, param2: number): void;
					public glStencilMask(param0: number): void;
					public glTexImage2D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number, param8: java.nio.Buffer): void;
					public glColor4x(param0: number, param1: number, param2: number, param3: number): void;
					public glFlush(): void;
					public glTexEnvfv(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
					public glDepthMask(param0: boolean): void;
					public glDepthRangef(param0: number, param1: number): void;
					public glStencilOp(param0: number, param1: number, param2: number): void;
					public glTexEnvxv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
					public glLightx(param0: number, param1: number, param2: number): void;
					public glMaterialxv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
					public glPixelStorei(param0: number, param1: number): void;
					public glEnable(param0: number): void;
					public glTexEnvxv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
					public glVertexPointer(param0: number, param1: number, param2: number, param3: java.nio.Buffer): void;
					public glLightModelfv(param0: number, param1: native.Array<number>, param2: number): void;
					public glGetIntegerv(param0: number, param1: native.Array<number>, param2: number): void;
					public glFogf(param0: number, param1: number): void;
					public glLoadMatrixf(param0: java.nio.FloatBuffer): void;
					public glDepthFunc(param0: number): void;
					public glStencilFunc(param0: number, param1: number, param2: number): void;
					public glClearColorx(param0: number, param1: number, param2: number, param3: number): void;
					public glSampleCoveragex(param0: number, param1: boolean): void;
					public glMultMatrixf(param0: native.Array<number>, param1: number): void;
					public glPointSize(param0: number): void;
					public glLightf(param0: number, param1: number, param2: number): void;
					public glMaterialxv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
					public glCompressedTexImage2D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: java.nio.Buffer): void;
					public glScissor(param0: number, param1: number, param2: number, param3: number): void;
					public glDisable(param0: number): void;
					public glFogfv(param0: number, param1: java.nio.FloatBuffer): void;
					public glGetString(param0: number): string;
					public glDrawArrays(param0: number, param1: number, param2: number): void;
					public glLineWidth(param0: number): void;
					public glLoadMatrixx(param0: java.nio.IntBuffer): void;
					public glLoadIdentity(): void;
					public glLightModelfv(param0: number, param1: java.nio.FloatBuffer): void;
					public glBlendFunc(param0: number, param1: number): void;
					public glColor4f(param0: number, param1: number, param2: number, param3: number): void;
					public glMaterialfv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
					public glCopyTexImage2D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number): void;
					public glGenTextures(param0: number, param1: java.nio.IntBuffer): void;
					public glDepthRangex(param0: number, param1: number): void;
					public glPolygonOffset(param0: number, param1: number): void;
					public glMultMatrixf(param0: java.nio.FloatBuffer): void;
					public glTranslatex(param0: number, param1: number, param2: number): void;
					public glFogxv(param0: number, param1: native.Array<number>, param2: number): void;
					public glNormal3f(param0: number, param1: number, param2: number): void;
					public glFrustumf(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): void;
					public glMaterialx(param0: number, param1: number, param2: number): void;
					public glAlphaFuncx(param0: number, param1: number): void;
					public glFrustumx(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): void;
					public glFogx(param0: number, param1: number): void;
					public glLightModelxv(param0: number, param1: java.nio.IntBuffer): void;
				}
			}
		}
	}
}

declare module javax {
	export module microedition {
		export module khronos {
			export module opengles {
				export class GL10Ext extends java.lang.Object implements javax.microedition.khronos.opengles.GL {
					public static class: java.lang.Class<javax.microedition.khronos.opengles.GL10Ext>;
					/**
					 * Constructs a new instance of the javax.microedition.khronos.opengles.GL10Ext interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						glQueryMatrixxOES(param0: native.Array<number>, param1: number, param2: native.Array<number>, param3: number): number;
						glQueryMatrixxOES(param0: java.nio.IntBuffer, param1: java.nio.IntBuffer): number;
					});
					public constructor();
					public glQueryMatrixxOES(param0: native.Array<number>, param1: number, param2: native.Array<number>, param3: number): number;
					public glQueryMatrixxOES(param0: java.nio.IntBuffer, param1: java.nio.IntBuffer): number;
				}
			}
		}
	}
}

declare module javax {
	export module microedition {
		export module khronos {
			export module opengles {
				export class GL11 extends java.lang.Object implements javax.microedition.khronos.opengles.GL10 {
					public static class: java.lang.Class<javax.microedition.khronos.opengles.GL11>;
					/**
					 * Constructs a new instance of the javax.microedition.khronos.opengles.GL11 interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						glGetPointerv(param0: number, param1: native.Array<java.nio.Buffer>): void;
						glBindBuffer(param0: number, param1: number): void;
						glBufferData(param0: number, param1: number, param2: java.nio.Buffer, param3: number): void;
						glBufferSubData(param0: number, param1: number, param2: number, param3: java.nio.Buffer): void;
						glClipPlanef(param0: number, param1: native.Array<number>, param2: number): void;
						glClipPlanef(param0: number, param1: java.nio.FloatBuffer): void;
						glClipPlanex(param0: number, param1: native.Array<number>, param2: number): void;
						glClipPlanex(param0: number, param1: java.nio.IntBuffer): void;
						glColor4ub(param0: number, param1: number, param2: number, param3: number): void;
						glColorPointer(param0: number, param1: number, param2: number, param3: number): void;
						glDeleteBuffers(param0: number, param1: native.Array<number>, param2: number): void;
						glDeleteBuffers(param0: number, param1: java.nio.IntBuffer): void;
						glDrawElements(param0: number, param1: number, param2: number, param3: number): void;
						glGenBuffers(param0: number, param1: native.Array<number>, param2: number): void;
						glGenBuffers(param0: number, param1: java.nio.IntBuffer): void;
						glGetBooleanv(param0: number, param1: native.Array<boolean>, param2: number): void;
						glGetBooleanv(param0: number, param1: java.nio.IntBuffer): void;
						glGetBufferParameteriv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
						glGetBufferParameteriv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
						glGetClipPlanef(param0: number, param1: native.Array<number>, param2: number): void;
						glGetClipPlanef(param0: number, param1: java.nio.FloatBuffer): void;
						glGetClipPlanex(param0: number, param1: native.Array<number>, param2: number): void;
						glGetClipPlanex(param0: number, param1: java.nio.IntBuffer): void;
						glGetFixedv(param0: number, param1: native.Array<number>, param2: number): void;
						glGetFixedv(param0: number, param1: java.nio.IntBuffer): void;
						glGetFloatv(param0: number, param1: native.Array<number>, param2: number): void;
						glGetFloatv(param0: number, param1: java.nio.FloatBuffer): void;
						glGetLightfv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
						glGetLightfv(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
						glGetLightxv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
						glGetLightxv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
						glGetMaterialfv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
						glGetMaterialfv(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
						glGetMaterialxv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
						glGetMaterialxv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
						glGetTexEnviv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
						glGetTexEnviv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
						glGetTexEnvxv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
						glGetTexEnvxv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
						glGetTexParameterfv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
						glGetTexParameterfv(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
						glGetTexParameteriv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
						glGetTexParameteriv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
						glGetTexParameterxv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
						glGetTexParameterxv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
						glIsBuffer(param0: number): boolean;
						glIsEnabled(param0: number): boolean;
						glIsTexture(param0: number): boolean;
						glNormalPointer(param0: number, param1: number, param2: number): void;
						glPointParameterf(param0: number, param1: number): void;
						glPointParameterfv(param0: number, param1: native.Array<number>, param2: number): void;
						glPointParameterfv(param0: number, param1: java.nio.FloatBuffer): void;
						glPointParameterx(param0: number, param1: number): void;
						glPointParameterxv(param0: number, param1: native.Array<number>, param2: number): void;
						glPointParameterxv(param0: number, param1: java.nio.IntBuffer): void;
						glPointSizePointerOES(param0: number, param1: number, param2: java.nio.Buffer): void;
						glTexCoordPointer(param0: number, param1: number, param2: number, param3: number): void;
						glTexEnvi(param0: number, param1: number, param2: number): void;
						glTexEnviv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
						glTexEnviv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
						glTexParameterfv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
						glTexParameterfv(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
						glTexParameteri(param0: number, param1: number, param2: number): void;
						glTexParameteriv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
						glTexParameteriv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
						glTexParameterxv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
						glTexParameterxv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
						glVertexPointer(param0: number, param1: number, param2: number, param3: number): void;
						glActiveTexture(param0: number): void;
						glAlphaFunc(param0: number, param1: number): void;
						glAlphaFuncx(param0: number, param1: number): void;
						glBindTexture(param0: number, param1: number): void;
						glBlendFunc(param0: number, param1: number): void;
						glClear(param0: number): void;
						glClearColor(param0: number, param1: number, param2: number, param3: number): void;
						glClearColorx(param0: number, param1: number, param2: number, param3: number): void;
						glClearDepthf(param0: number): void;
						glClearDepthx(param0: number): void;
						glClearStencil(param0: number): void;
						glClientActiveTexture(param0: number): void;
						glColor4f(param0: number, param1: number, param2: number, param3: number): void;
						glColor4x(param0: number, param1: number, param2: number, param3: number): void;
						glColorMask(param0: boolean, param1: boolean, param2: boolean, param3: boolean): void;
						glColorPointer(param0: number, param1: number, param2: number, param3: java.nio.Buffer): void;
						glCompressedTexImage2D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: java.nio.Buffer): void;
						glCompressedTexSubImage2D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number, param8: java.nio.Buffer): void;
						glCopyTexImage2D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number): void;
						glCopyTexSubImage2D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number): void;
						glCullFace(param0: number): void;
						glDeleteTextures(param0: number, param1: native.Array<number>, param2: number): void;
						glDeleteTextures(param0: number, param1: java.nio.IntBuffer): void;
						glDepthFunc(param0: number): void;
						glDepthMask(param0: boolean): void;
						glDepthRangef(param0: number, param1: number): void;
						glDepthRangex(param0: number, param1: number): void;
						glDisable(param0: number): void;
						glDisableClientState(param0: number): void;
						glDrawArrays(param0: number, param1: number, param2: number): void;
						glDrawElements(param0: number, param1: number, param2: number, param3: java.nio.Buffer): void;
						glEnable(param0: number): void;
						glEnableClientState(param0: number): void;
						glFinish(): void;
						glFlush(): void;
						glFogf(param0: number, param1: number): void;
						glFogfv(param0: number, param1: native.Array<number>, param2: number): void;
						glFogfv(param0: number, param1: java.nio.FloatBuffer): void;
						glFogx(param0: number, param1: number): void;
						glFogxv(param0: number, param1: native.Array<number>, param2: number): void;
						glFogxv(param0: number, param1: java.nio.IntBuffer): void;
						glFrontFace(param0: number): void;
						glFrustumf(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): void;
						glFrustumx(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): void;
						glGenTextures(param0: number, param1: native.Array<number>, param2: number): void;
						glGenTextures(param0: number, param1: java.nio.IntBuffer): void;
						glGetError(): number;
						glGetIntegerv(param0: number, param1: native.Array<number>, param2: number): void;
						glGetIntegerv(param0: number, param1: java.nio.IntBuffer): void;
						glGetString(param0: number): string;
						glHint(param0: number, param1: number): void;
						glLightModelf(param0: number, param1: number): void;
						glLightModelfv(param0: number, param1: native.Array<number>, param2: number): void;
						glLightModelfv(param0: number, param1: java.nio.FloatBuffer): void;
						glLightModelx(param0: number, param1: number): void;
						glLightModelxv(param0: number, param1: native.Array<number>, param2: number): void;
						glLightModelxv(param0: number, param1: java.nio.IntBuffer): void;
						glLightf(param0: number, param1: number, param2: number): void;
						glLightfv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
						glLightfv(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
						glLightx(param0: number, param1: number, param2: number): void;
						glLightxv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
						glLightxv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
						glLineWidth(param0: number): void;
						glLineWidthx(param0: number): void;
						glLoadIdentity(): void;
						glLoadMatrixf(param0: native.Array<number>, param1: number): void;
						glLoadMatrixf(param0: java.nio.FloatBuffer): void;
						glLoadMatrixx(param0: native.Array<number>, param1: number): void;
						glLoadMatrixx(param0: java.nio.IntBuffer): void;
						glLogicOp(param0: number): void;
						glMaterialf(param0: number, param1: number, param2: number): void;
						glMaterialfv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
						glMaterialfv(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
						glMaterialx(param0: number, param1: number, param2: number): void;
						glMaterialxv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
						glMaterialxv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
						glMatrixMode(param0: number): void;
						glMultMatrixf(param0: native.Array<number>, param1: number): void;
						glMultMatrixf(param0: java.nio.FloatBuffer): void;
						glMultMatrixx(param0: native.Array<number>, param1: number): void;
						glMultMatrixx(param0: java.nio.IntBuffer): void;
						glMultiTexCoord4f(param0: number, param1: number, param2: number, param3: number, param4: number): void;
						glMultiTexCoord4x(param0: number, param1: number, param2: number, param3: number, param4: number): void;
						glNormal3f(param0: number, param1: number, param2: number): void;
						glNormal3x(param0: number, param1: number, param2: number): void;
						glNormalPointer(param0: number, param1: number, param2: java.nio.Buffer): void;
						glOrthof(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): void;
						glOrthox(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): void;
						glPixelStorei(param0: number, param1: number): void;
						glPointSize(param0: number): void;
						glPointSizex(param0: number): void;
						glPolygonOffset(param0: number, param1: number): void;
						glPolygonOffsetx(param0: number, param1: number): void;
						glPopMatrix(): void;
						glPushMatrix(): void;
						glReadPixels(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: java.nio.Buffer): void;
						glRotatef(param0: number, param1: number, param2: number, param3: number): void;
						glRotatex(param0: number, param1: number, param2: number, param3: number): void;
						glSampleCoverage(param0: number, param1: boolean): void;
						glSampleCoveragex(param0: number, param1: boolean): void;
						glScalef(param0: number, param1: number, param2: number): void;
						glScalex(param0: number, param1: number, param2: number): void;
						glScissor(param0: number, param1: number, param2: number, param3: number): void;
						glShadeModel(param0: number): void;
						glStencilFunc(param0: number, param1: number, param2: number): void;
						glStencilMask(param0: number): void;
						glStencilOp(param0: number, param1: number, param2: number): void;
						glTexCoordPointer(param0: number, param1: number, param2: number, param3: java.nio.Buffer): void;
						glTexEnvf(param0: number, param1: number, param2: number): void;
						glTexEnvfv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
						glTexEnvfv(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
						glTexEnvx(param0: number, param1: number, param2: number): void;
						glTexEnvxv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
						glTexEnvxv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
						glTexImage2D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number, param8: java.nio.Buffer): void;
						glTexParameterf(param0: number, param1: number, param2: number): void;
						glTexParameterx(param0: number, param1: number, param2: number): void;
						glTexSubImage2D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number, param8: java.nio.Buffer): void;
						glTranslatef(param0: number, param1: number, param2: number): void;
						glTranslatex(param0: number, param1: number, param2: number): void;
						glVertexPointer(param0: number, param1: number, param2: number, param3: java.nio.Buffer): void;
						glViewport(param0: number, param1: number, param2: number, param3: number): void;
					});
					public constructor();
					public static GL_COLOR_ARRAY_POINTER: number;
					public static GL_PREVIOUS: number;
					public static GL_CULL_FACE: number;
					public static GL_TEXTURE_ENV_COLOR: number;
					public static GL_STENCIL_PASS_DEPTH_PASS: number;
					public static GL_MAX_PROJECTION_STACK_DEPTH: number;
					public static GL_PRIMARY_COLOR: number;
					public static GL_LINE_STRIP: number;
					public static GL_LUMINANCE: number;
					public static GL_TRUE: number;
					public static GL_DEPTH_TEST: number;
					public static GL_INVALID_OPERATION: number;
					public static GL_VERTEX_ARRAY_SIZE: number;
					public static GL_DST_COLOR: number;
					public static GL_VIEWPORT: number;
					public static GL_LESS: number;
					public static GL_POLYGON_OFFSET_FACTOR: number;
					public static GL_TEXTURE_COORD_ARRAY: number;
					public static GL_POINT_SIZE_ARRAY_POINTER_OES: number;
					public static GL_OPERAND0_RGB: number;
					public static GL_NO_ERROR: number;
					public static GL_SRC2_RGB: number;
					public static GL_FRONT_AND_BACK: number;
					public static GL_INTERPOLATE: number;
					public static GL_STENCIL_VALUE_MASK: number;
					public static GL_POINT_SIZE_ARRAY_BUFFER_BINDING_OES: number;
					public static GL_SET: number;
					public static GL_CURRENT_TEXTURE_COORDS: number;
					public static GL_COPY: number;
					public static GL_DEPTH_CLEAR_VALUE: number;
					public static GL_TEXTURE_WRAP_T: number;
					public static GL_TEXTURE_WRAP_S: number;
					public static GL_ONE: number;
					public static GL_FOG_HINT: number;
					public static GL_LUMINANCE_ALPHA: number;
					public static GL_PALETTE8_RGBA4_OES: number;
					public static GL_XOR: number;
					public static GL_SPOT_CUTOFF: number;
					public static GL_QUADRATIC_ATTENUATION: number;
					public static GL_DECAL: number;
					public static GL_CURRENT_COLOR: number;
					public static GL_REPLACE: number;
					public static GL_GREATER: number;
					public static GL_ELEMENT_ARRAY_BUFFER: number;
					public static GL_DEPTH_FUNC: number;
					public static GL_FLAT: number;
					public static GL_KEEP: number;
					public static GL_LINEAR_MIPMAP_NEAREST: number;
					public static GL_EXP2: number;
					public static GL_ONE_MINUS_SRC_COLOR: number;
					public static GL_PALETTE4_RGBA8_OES: number;
					public static GL_ARRAY_BUFFER_BINDING: number;
					public static GL_SCISSOR_TEST: number;
					public static GL_ALIASED_POINT_SIZE_RANGE: number;
					public static GL_CW: number;
					public static GL_LEQUAL: number;
					public static GL_ALIASED_LINE_WIDTH_RANGE: number;
					public static GL_INVALID_ENUM: number;
					public static GL_RED_BITS: number;
					public static GL_CCW: number;
					public static GL_SHORT: number;
					public static GL_POINT_SIZE_MAX: number;
					public static GL_ONE_MINUS_DST_COLOR: number;
					public static GL_GREEN_BITS: number;
					public static GL_VENDOR: number;
					public static GL_NORMAL_ARRAY_BUFFER_BINDING: number;
					public static GL_TEXTURE: number;
					public static GL_COLOR_ARRAY_SIZE: number;
					public static GL_ALWAYS: number;
					public static GL_LIGHT_MODEL_AMBIENT: number;
					public static GL_COLOR_BUFFER_BIT: number;
					public static GL_LINE_SMOOTH_HINT: number;
					public static GL_SRC2_ALPHA: number;
					public static GL_EXP: number;
					public static GL_MODELVIEW_STACK_DEPTH: number;
					public static GL_STENCIL_REF: number;
					public static GL_INVERT: number;
					public static GL_NEAREST: number;
					public static GL_ONE_MINUS_DST_ALPHA: number;
					public static GL_COLOR_MATERIAL: number;
					public static GL_CURRENT_NORMAL: number;
					public static GL_AND_REVERSE: number;
					public static GL_TEXTURE_COORD_ARRAY_POINTER: number;
					public static GL_SAMPLE_COVERAGE_VALUE: number;
					public static GL_CLIP_PLANE0: number;
					public static GL_DONT_CARE: number;
					public static GL_CLIP_PLANE2: number;
					public static GL_FALSE: number;
					public static GL_CLIP_PLANE1: number;
					public static GL_CLIP_PLANE4: number;
					public static GL_CLIP_PLANE3: number;
					public static GL_GENERATE_MIPMAP_HINT: number;
					public static GL_RGB_SCALE: number;
					public static GL_CLIP_PLANE5: number;
					public static GL_ALPHA: number;
					public static GL_COLOR_ARRAY_BUFFER_BINDING: number;
					public static GL_NEVER: number;
					public static GL_VERTEX_ARRAY_STRIDE: number;
					public static GL_BYTE: number;
					public static GL_ALPHA_TEST: number;
					public static GL_AND: number;
					public static GL_COLOR_ARRAY: number;
					public static GL_CONSTANT: number;
					public static GL_COPY_INVERTED: number;
					public static GL_LINE_SMOOTH: number;
					public static GL_COLOR_ARRAY_STRIDE: number;
					public static GL_EQUAL: number;
					public static GL_BUFFER_USAGE: number;
					public static GL_BACK: number;
					public static GL_PALETTE8_RGB5_A1_OES: number;
					public static GL_COLOR_ARRAY_TYPE: number;
					public static GL_NUM_COMPRESSED_TEXTURE_FORMATS: number;
					public static GL_TRIANGLE_STRIP: number;
					public static GL_DOT3_RGB: number;
					public static GL_SAMPLE_ALPHA_TO_COVERAGE: number;
					public static GL_ONE_MINUS_SRC_ALPHA: number;
					public static GL_ELEMENT_ARRAY_BUFFER_BINDING: number;
					public static GL_LINEAR_ATTENUATION: number;
					public static GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES: number;
					public static GL_PALETTE4_RGB5_A1_OES: number;
					public static GL_TEXTURE_ENV_MODE: number;
					public static GL_ALPHA_TEST_REF: number;
					public static GL_TRIANGLES: number;
					public static GL_MATRIX_MODE: number;
					public static GL_PROJECTION_MATRIX: number;
					public static GL_SRC1_ALPHA: number;
					public static GL_AND_INVERTED: number;
					public static GL_NORMAL_ARRAY: number;
					public static GL_POINT_SIZE_ARRAY_TYPE_OES: number;
					public static GL_PROJECTION: number;
					public static GL_ARRAY_BUFFER: number;
					public static GL_POSITION: number;
					public static GL_FIXED: number;
					public static GL_POINT_DISTANCE_ATTENUATION: number;
					public static GL_DEPTH_BUFFER_BIT: number;
					public static GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING: number;
					public static GL_TEXTURE_2D: number;
					public static GL_VERTEX_ARRAY_TYPE: number;
					public static GL_SHININESS: number;
					public static GL_MAX_TEXTURE_UNITS: number;
					public static GL_OR_INVERTED: number;
					public static GL_NOOP: number;
					public static GL_VERTEX_ARRAY_BUFFER_BINDING: number;
					public static GL_DYNAMIC_DRAW: number;
					public static GL_MAX_TEXTURE_SIZE: number;
					public static GL_PALETTE8_RGBA8_OES: number;
					public static GL_SAMPLE_COVERAGE: number;
					public static GL_EXTENSIONS: number;
					public static GL_OUT_OF_MEMORY: number;
					public static GL_ALPHA_SCALE: number;
					public static GL_LINEAR: number;
					public static GL_RGBA: number;
					public static GL_NEAREST_MIPMAP_LINEAR: number;
					public static GL_UNSIGNED_SHORT_5_6_5: number;
					public static GL_COLOR_WRITEMASK: number;
					public static GL_DEPTH_BITS: number;
					public static GL_UNPACK_ALIGNMENT: number;
					public static GL_SRC_ALPHA_SATURATE: number;
					public static GL_SPOT_EXPONENT: number;
					public static GL_RESCALE_NORMAL: number;
					public static GL_VERTEX_ARRAY: number;
					public static GL_ACTIVE_TEXTURE: number;
					public static GL_MAX_ELEMENTS_VERTICES: number;
					public static GL_TEXTURE_STACK_DEPTH: number;
					public static GL_ALPHA_BITS: number;
					public static GL_PERSPECTIVE_CORRECTION_HINT: number;
					public static GL_LIGHTING: number;
					public static GL_TEXTURE20: number;
					public static GL_MAX_VIEWPORT_DIMS: number;
					public static GL_DOT3_RGBA: number;
					public static GL_STACK_OVERFLOW: number;
					public static GL_BLEND_DST: number;
					public static GL_TEXTURE16: number;
					public static GL_TEXTURE_COORD_ARRAY_STRIDE: number;
					public static GL_LIGHT_MODEL_TWO_SIDE: number;
					public static GL_TEXTURE17: number;
					public static GL_NORMAL_ARRAY_TYPE: number;
					public static GL_TEXTURE14: number;
					public static GL_TEXTURE15: number;
					public static GL_TEXTURE12: number;
					public static GL_TEXTURE13: number;
					public static GL_TEXTURE10: number;
					public static GL_SRC0_ALPHA: number;
					public static GL_TEXTURE11: number;
					public static GL_SUBTRACT: number;
					public static GL_IMPLEMENTATION_COLOR_READ_TYPE_OES: number;
					public static GL_TEXTURE18: number;
					public static GL_COORD_REPLACE_OES: number;
					public static GL_FOG_END: number;
					public static GL_TEXTURE19: number;
					public static GL_UNSIGNED_SHORT_4_4_4_4: number;
					public static GL_BUFFER_ACCESS: number;
					public static GL_TEXTURE_COORD_ARRAY_TYPE: number;
					public static GL_COMBINE: number;
					public static GL_NEAREST_MIPMAP_NEAREST: number;
					public static GL_COLOR_CLEAR_VALUE: number;
					public static GL_TEXTURE30: number;
					public static GL_LINEAR_MIPMAP_LINEAR: number;
					public static GL_TEXTURE31: number;
					public static GL_TEXTURE27: number;
					public static GL_MODELVIEW_MATRIX: number;
					public static GL_TEXTURE28: number;
					public static GL_FOG_MODE: number;
					public static GL_SPOT_DIRECTION: number;
					public static GL_TEXTURE25: number;
					public static GL_EMISSION: number;
					public static GL_TEXTURE26: number;
					public static GL_ALPHA_TEST_FUNC: number;
					public static GL_TEXTURE23: number;
					public static GL_TEXTURE24: number;
					public static GL_TEXTURE21: number;
					public static GL_TEXTURE22: number;
					public static GL_OR: number;
					public static GL_OR_REVERSE: number;
					public static GL_SRC0_RGB: number;
					public static GL_STENCIL_PASS_DEPTH_FAIL: number;
					public static GL_SAMPLE_COVERAGE_INVERT: number;
					public static GL_WRITE_ONLY: number;
					public static GL_SPECULAR: number;
					public static GL_TEXTURE29: number;
					public static GL_STENCIL_BUFFER_BIT: number;
					public static GL_PROJECTION_STACK_DEPTH: number;
					public static GL_DEPTH_WRITEMASK: number;
					public static GL_LINE_LOOP: number;
					public static GL_SMOOTH: number;
					public static GL_LOGIC_OP_MODE: number;
					public static GL_COMBINE_RGB: number;
					public static GL_MAX_LIGHTS: number;
					public static GL_SAMPLE_BUFFERS: number;
					public static GL_SAMPLE_ALPHA_TO_ONE: number;
					public static GL_NORMAL_ARRAY_POINTER: number;
					public static GL_TRIANGLE_FAN: number;
					public static GL_RENDERER: number;
					public static GL_STENCIL_CLEAR_VALUE: number;
					public static GL_DIFFUSE: number;
					public static GL_MULTISAMPLE: number;
					public static GL_OPERAND1_ALPHA: number;
					public static GL_POINT_SMOOTH_HINT: number;
					public static GL_POINT_SIZE: number;
					public static GL_SCISSOR_BOX: number;
					public static GL_BUFFER_SIZE: number;
					public static GL_SMOOTH_LINE_WIDTH_RANGE: number;
					public static GL_PACK_ALIGNMENT: number;
					public static GL_REPEAT: number;
					public static GL_PALETTE4_RGB8_OES: number;
					public static GL_NAND: number;
					public static GL_STENCIL_TEST: number;
					public static GL_ZERO: number;
					public static GL_TEXTURE0: number;
					public static GL_DECR: number;
					public static GL_SMOOTH_POINT_SIZE_RANGE: number;
					public static GL_SHADE_MODEL: number;
					public static GL_FRONT_FACE: number;
					public static GL_BLEND_SRC: number;
					public static GL_COLOR_LOGIC_OP: number;
					public static GL_POLYGON_OFFSET_UNITS: number;
					public static GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES: number;
					public static GL_TEXTURE9: number;
					public static GL_UNSIGNED_SHORT: number;
					public static GL_OPERAND1_RGB: number;
					public static GL_LINES: number;
					public static GL_CLIENT_ACTIVE_TEXTURE: number;
					public static GL_CLAMP_TO_EDGE: number;
					public static GL_POINTS: number;
					public static GL_POINT_FADE_THRESHOLD_SIZE: number;
					public static GL_TEXTURE3: number;
					public static GL_TEXTURE4: number;
					public static GL_TEXTURE1: number;
					public static GL_TEXTURE2: number;
					public static GL_POINT_SIZE_ARRAY_STRIDE_OES: number;
					public static GL_TEXTURE7: number;
					public static GL_TEXTURE8: number;
					public static GL_TEXTURE5: number;
					public static GL_STATIC_DRAW: number;
					public static GL_TEXTURE6: number;
					public static GL_NORMAL_ARRAY_STRIDE: number;
					public static GL_FOG_START: number;
					public static GL_NOTEQUAL: number;
					public static GL_SUBPIXEL_BITS: number;
					public static GL_POLYGON_SMOOTH_HINT: number;
					public static GL_LINE_WIDTH: number;
					public static GL_STENCIL_FAIL: number;
					public static GL_SRC_COLOR: number;
					public static GL_AMBIENT: number;
					public static GL_FRONT: number;
					public static GL_STENCIL_WRITEMASK: number;
					public static GL_TEXTURE_ENV: number;
					public static GL_FOG: number;
					public static GL_TEXTURE_BINDING_2D: number;
					public static GL_STENCIL_BITS: number;
					public static GL_CULL_FACE_MODE: number;
					public static GL_UNSIGNED_SHORT_5_5_5_1: number;
					public static GL_RGB: number;
					public static GL_NOR: number;
					public static GL_OPERAND0_ALPHA: number;
					public static GL_CLEAR: number;
					public static GL_MODELVIEW: number;
					public static GL_PALETTE4_R5_G6_B5_OES: number;
					public static GL_SRC1_RGB: number;
					public static GL_MAX_MODELVIEW_STACK_DEPTH: number;
					public static GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES: number;
					public static GL_POINT_SIZE_MIN: number;
					public static GL_FOG_COLOR: number;
					public static GL_EQUIV: number;
					public static GL_FASTEST: number;
					public static GL_ADD_SIGNED: number;
					public static GL_SRC_ALPHA: number;
					public static GL_COMBINE_ALPHA: number;
					public static GL_BLEND: number;
					public static GL_PALETTE8_R5_G6_B5_OES: number;
					public static GL_POINT_SMOOTH: number;
					public static GL_PALETTE8_RGB8_OES: number;
					public static GL_CONSTANT_ATTENUATION: number;
					public static GL_MAX_ELEMENTS_INDICES: number;
					public static GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES: number;
					public static GL_PALETTE4_RGBA4_OES: number;
					public static GL_INCR: number;
					public static GL_VERTEX_ARRAY_POINTER: number;
					public static GL_POLYGON_OFFSET_FILL: number;
					public static GL_POINT_SPRITE_OES: number;
					public static GL_INVALID_VALUE: number;
					public static GL_LIGHT3: number;
					public static GL_LIGHT2: number;
					public static GL_LIGHT1: number;
					public static GL_LIGHT0: number;
					public static GL_NORMALIZE: number;
					public static GL_LIGHT7: number;
					public static GL_LIGHT6: number;
					public static GL_DEPTH_RANGE: number;
					public static GL_BLUE_BITS: number;
					public static GL_LIGHT5: number;
					public static GL_AMBIENT_AND_DIFFUSE: number;
					public static GL_LIGHT4: number;
					public static GL_FLOAT: number;
					public static GL_MAX_CLIP_PLANES: number;
					public static GL_TEXTURE_MATRIX: number;
					public static GL_GEQUAL: number;
					public static GL_TEXTURE_MIN_FILTER: number;
					public static GL_NICEST: number;
					public static GL_POINT_SIZE_ARRAY_OES: number;
					public static GL_STENCIL_FUNC: number;
					public static GL_UNSIGNED_BYTE: number;
					public static GL_OPERAND2_RGB: number;
					public static GL_TEXTURE_COORD_ARRAY_SIZE: number;
					public static GL_TEXTURE_MAG_FILTER: number;
					public static GL_VERSION: number;
					public static GL_ADD: number;
					public static GL_STACK_UNDERFLOW: number;
					public static GL_FOG_DENSITY: number;
					public static GL_DITHER: number;
					public static GL_GENERATE_MIPMAP: number;
					public static GL_OPERAND2_ALPHA: number;
					public static GL_SAMPLES: number;
					public static GL_MAX_TEXTURE_STACK_DEPTH: number;
					public static GL_MODULATE: number;
					public static GL_DST_ALPHA: number;
					public static GL_COMPRESSED_TEXTURE_FORMATS: number;
					public glDrawElements(param0: number, param1: number, param2: number, param3: java.nio.Buffer): void;
					public glEnableClientState(param0: number): void;
					public glLoadMatrixx(param0: native.Array<number>, param1: number): void;
					public glGenBuffers(param0: number, param1: java.nio.IntBuffer): void;
					public glGetBufferParameteriv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
					public glPushMatrix(): void;
					public glGetLightfv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
					public glScalex(param0: number, param1: number, param2: number): void;
					public glTexParameterxv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
					public glTexEnvx(param0: number, param1: number, param2: number): void;
					public glGetTexEnvxv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
					public glCopyTexSubImage2D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number): void;
					public glGetTexParameterxv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
					public glClipPlanef(param0: number, param1: java.nio.FloatBuffer): void;
					public glMultiTexCoord4x(param0: number, param1: number, param2: number, param3: number, param4: number): void;
					public glPolygonOffsetx(param0: number, param1: number): void;
					public glViewport(param0: number, param1: number, param2: number, param3: number): void;
					public glGetTexParameterfv(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
					public glPointParameterxv(param0: number, param1: native.Array<number>, param2: number): void;
					public glMultMatrixx(param0: java.nio.IntBuffer): void;
					public glLineWidthx(param0: number): void;
					public glPopMatrix(): void;
					public glColor4ub(param0: number, param1: number, param2: number, param3: number): void;
					public glTexParameteriv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
					public glFogfv(param0: number, param1: native.Array<number>, param2: number): void;
					public glHint(param0: number, param1: number): void;
					public glGetTexParameterfv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
					public glOrthof(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): void;
					public glShadeModel(param0: number): void;
					public glFinish(): void;
					public glPointParameterf(param0: number, param1: number): void;
					public glTexParameterf(param0: number, param1: number, param2: number): void;
					public glScalef(param0: number, param1: number, param2: number): void;
					public glGetTexParameteriv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
					public glGetLightxv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
					public glTexEnvf(param0: number, param1: number, param2: number): void;
					public glClipPlanef(param0: number, param1: native.Array<number>, param2: number): void;
					public glClearDepthx(param0: number): void;
					public glTexCoordPointer(param0: number, param1: number, param2: number, param3: java.nio.Buffer): void;
					public glLightfv(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
					public glGetTexEnviv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
					public glIsTexture(param0: number): boolean;
					public glActiveTexture(param0: number): void;
					public glTexParameterfv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
					public glTexParameterx(param0: number, param1: number, param2: number): void;
					public glNormalPointer(param0: number, param1: number, param2: number): void;
					public glBindTexture(param0: number, param1: number): void;
					public glFrontFace(param0: number): void;
					public glLoadMatrixf(param0: native.Array<number>, param1: number): void;
					public glGetClipPlanef(param0: number, param1: java.nio.FloatBuffer): void;
					public glIsBuffer(param0: number): boolean;
					public glClearDepthf(param0: number): void;
					public glCullFace(param0: number): void;
					public glBufferData(param0: number, param1: number, param2: java.nio.Buffer, param3: number): void;
					public glClipPlanex(param0: number, param1: native.Array<number>, param2: number): void;
					public glLightxv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
					public glTexParameterxv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
					public glClear(param0: number): void;
					public glMultiTexCoord4f(param0: number, param1: number, param2: number, param3: number, param4: number): void;
					public glOrthox(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): void;
					public glLightModelf(param0: number, param1: number): void;
					public glGetError(): number;
					public glGenTextures(param0: number, param1: native.Array<number>, param2: number): void;
					public glClearStencil(param0: number): void;
					public glClientActiveTexture(param0: number): void;
					public glSampleCoverage(param0: number, param1: boolean): void;
					public glClipPlanex(param0: number, param1: java.nio.IntBuffer): void;
					public glColorPointer(param0: number, param1: number, param2: number, param3: java.nio.Buffer): void;
					public glDisableClientState(param0: number): void;
					public glLightfv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
					public glMatrixMode(param0: number): void;
					public glPointParameterx(param0: number, param1: number): void;
					public glPointParameterxv(param0: number, param1: java.nio.IntBuffer): void;
					public glPointSizePointerOES(param0: number, param1: number, param2: java.nio.Buffer): void;
					public glLightModelxv(param0: number, param1: native.Array<number>, param2: number): void;
					public glColorMask(param0: boolean, param1: boolean, param2: boolean, param3: boolean): void;
					public glGetMaterialfv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
					public glGetTexEnvxv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
					public glGetBufferParameteriv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
					public glPointSizex(param0: number): void;
					public glRotatef(param0: number, param1: number, param2: number, param3: number): void;
					public glLightModelx(param0: number, param1: number): void;
					public glGetIntegerv(param0: number, param1: java.nio.IntBuffer): void;
					public glGetMaterialxv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
					public glMaterialf(param0: number, param1: number, param2: number): void;
					public glBindBuffer(param0: number, param1: number): void;
					public glTexParameteri(param0: number, param1: number, param2: number): void;
					public glNormal3x(param0: number, param1: number, param2: number): void;
					public glTranslatef(param0: number, param1: number, param2: number): void;
					public glCompressedTexSubImage2D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number, param8: java.nio.Buffer): void;
					public glTexSubImage2D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number, param8: java.nio.Buffer): void;
					public glRotatex(param0: number, param1: number, param2: number, param3: number): void;
					public glAlphaFunc(param0: number, param1: number): void;
					public glLogicOp(param0: number): void;
					public glDeleteTextures(param0: number, param1: java.nio.IntBuffer): void;
					public glTexParameteriv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
					public glTexEnvfv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
					public glBufferSubData(param0: number, param1: number, param2: number, param3: java.nio.Buffer): void;
					public glMultMatrixx(param0: native.Array<number>, param1: number): void;
					public glReadPixels(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: java.nio.Buffer): void;
					public glGetFixedv(param0: number, param1: java.nio.IntBuffer): void;
					public glClearColor(param0: number, param1: number, param2: number, param3: number): void;
					public glFogxv(param0: number, param1: java.nio.IntBuffer): void;
					public glLightxv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
					public glMaterialfv(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
					public glGetFloatv(param0: number, param1: native.Array<number>, param2: number): void;
					public glNormalPointer(param0: number, param1: number, param2: java.nio.Buffer): void;
					public glDeleteTextures(param0: number, param1: native.Array<number>, param2: number): void;
					public glStencilMask(param0: number): void;
					public glTexImage2D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number, param8: java.nio.Buffer): void;
					public glVertexPointer(param0: number, param1: number, param2: number, param3: number): void;
					public glGetTexParameteriv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
					public glColor4x(param0: number, param1: number, param2: number, param3: number): void;
					public glGetBooleanv(param0: number, param1: native.Array<boolean>, param2: number): void;
					public glTexEnviv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
					public glFlush(): void;
					public glTexEnvfv(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
					public glDepthMask(param0: boolean): void;
					public glPointParameterfv(param0: number, param1: java.nio.FloatBuffer): void;
					public glDepthRangef(param0: number, param1: number): void;
					public glStencilOp(param0: number, param1: number, param2: number): void;
					public glTexEnvxv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
					public glLightx(param0: number, param1: number, param2: number): void;
					public glMaterialxv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
					public glPixelStorei(param0: number, param1: number): void;
					public glEnable(param0: number): void;
					public glTexEnvxv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
					public glVertexPointer(param0: number, param1: number, param2: number, param3: java.nio.Buffer): void;
					public glPointParameterfv(param0: number, param1: native.Array<number>, param2: number): void;
					public glTexParameterfv(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
					public glGetTexEnviv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
					public glGenBuffers(param0: number, param1: native.Array<number>, param2: number): void;
					public glLightModelfv(param0: number, param1: native.Array<number>, param2: number): void;
					public glDrawElements(param0: number, param1: number, param2: number, param3: number): void;
					public glGetTexParameterxv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
					public glGetIntegerv(param0: number, param1: native.Array<number>, param2: number): void;
					public glGetMaterialxv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
					public glFogf(param0: number, param1: number): void;
					public glLoadMatrixf(param0: java.nio.FloatBuffer): void;
					public glDepthFunc(param0: number): void;
					public glGetClipPlanef(param0: number, param1: native.Array<number>, param2: number): void;
					public glStencilFunc(param0: number, param1: number, param2: number): void;
					public glClearColorx(param0: number, param1: number, param2: number, param3: number): void;
					public glSampleCoveragex(param0: number, param1: boolean): void;
					public glMultMatrixf(param0: native.Array<number>, param1: number): void;
					public glPointSize(param0: number): void;
					public glLightf(param0: number, param1: number, param2: number): void;
					public glMaterialxv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
					public glGetPointerv(param0: number, param1: native.Array<java.nio.Buffer>): void;
					public glTexCoordPointer(param0: number, param1: number, param2: number, param3: number): void;
					public glCompressedTexImage2D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: java.nio.Buffer): void;
					public glScissor(param0: number, param1: number, param2: number, param3: number): void;
					public glDisable(param0: number): void;
					public glFogfv(param0: number, param1: java.nio.FloatBuffer): void;
					public glGetString(param0: number): string;
					public glColorPointer(param0: number, param1: number, param2: number, param3: number): void;
					public glDrawArrays(param0: number, param1: number, param2: number): void;
					public glLineWidth(param0: number): void;
					public glIsEnabled(param0: number): boolean;
					public glLoadMatrixx(param0: java.nio.IntBuffer): void;
					public glLoadIdentity(): void;
					public glLightModelfv(param0: number, param1: java.nio.FloatBuffer): void;
					public glGetMaterialfv(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
					public glBlendFunc(param0: number, param1: number): void;
					public glGetClipPlanex(param0: number, param1: native.Array<number>, param2: number): void;
					public glGetClipPlanex(param0: number, param1: java.nio.IntBuffer): void;
					public glGetLightfv(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
					public glGetFixedv(param0: number, param1: native.Array<number>, param2: number): void;
					public glColor4f(param0: number, param1: number, param2: number, param3: number): void;
					public glMaterialfv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
					public glCopyTexImage2D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number): void;
					public glGenTextures(param0: number, param1: java.nio.IntBuffer): void;
					public glDeleteBuffers(param0: number, param1: java.nio.IntBuffer): void;
					public glTexEnvi(param0: number, param1: number, param2: number): void;
					public glDepthRangex(param0: number, param1: number): void;
					public glPolygonOffset(param0: number, param1: number): void;
					public glMultMatrixf(param0: java.nio.FloatBuffer): void;
					public glGetLightxv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
					public glGetBooleanv(param0: number, param1: java.nio.IntBuffer): void;
					public glTexEnviv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
					public glTranslatex(param0: number, param1: number, param2: number): void;
					public glFogxv(param0: number, param1: native.Array<number>, param2: number): void;
					public glNormal3f(param0: number, param1: number, param2: number): void;
					public glGetFloatv(param0: number, param1: java.nio.FloatBuffer): void;
					public glFrustumf(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): void;
					public glMaterialx(param0: number, param1: number, param2: number): void;
					public glAlphaFuncx(param0: number, param1: number): void;
					public glFrustumx(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number): void;
					public glFogx(param0: number, param1: number): void;
					public glLightModelxv(param0: number, param1: java.nio.IntBuffer): void;
					public glDeleteBuffers(param0: number, param1: native.Array<number>, param2: number): void;
				}
			}
		}
	}
}

declare module javax {
	export module microedition {
		export module khronos {
			export module opengles {
				export class GL11Ext extends java.lang.Object implements javax.microedition.khronos.opengles.GL {
					public static class: java.lang.Class<javax.microedition.khronos.opengles.GL11Ext>;
					/**
					 * Constructs a new instance of the javax.microedition.khronos.opengles.GL11Ext interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						glTexParameterfv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
						glCurrentPaletteMatrixOES(param0: number): void;
						glDrawTexfOES(param0: number, param1: number, param2: number, param3: number, param4: number): void;
						glDrawTexfvOES(param0: native.Array<number>, param1: number): void;
						glDrawTexfvOES(param0: java.nio.FloatBuffer): void;
						glDrawTexiOES(param0: number, param1: number, param2: number, param3: number, param4: number): void;
						glDrawTexivOES(param0: native.Array<number>, param1: number): void;
						glDrawTexivOES(param0: java.nio.IntBuffer): void;
						glDrawTexsOES(param0: number, param1: number, param2: number, param3: number, param4: number): void;
						glDrawTexsvOES(param0: native.Array<number>, param1: number): void;
						glDrawTexsvOES(param0: java.nio.ShortBuffer): void;
						glDrawTexxOES(param0: number, param1: number, param2: number, param3: number, param4: number): void;
						glDrawTexxvOES(param0: native.Array<number>, param1: number): void;
						glDrawTexxvOES(param0: java.nio.IntBuffer): void;
						glEnable(param0: number): void;
						glEnableClientState(param0: number): void;
						glLoadPaletteFromModelViewMatrixOES(): void;
						glMatrixIndexPointerOES(param0: number, param1: number, param2: number, param3: java.nio.Buffer): void;
						glMatrixIndexPointerOES(param0: number, param1: number, param2: number, param3: number): void;
						glWeightPointerOES(param0: number, param1: number, param2: number, param3: java.nio.Buffer): void;
						glWeightPointerOES(param0: number, param1: number, param2: number, param3: number): void;
					});
					public constructor();
					public static GL_MATRIX_INDEX_ARRAY_OES: number;
					public static GL_WEIGHT_ARRAY_BUFFER_BINDING_OES: number;
					public static GL_WEIGHT_ARRAY_OES: number;
					public static GL_MATRIX_INDEX_ARRAY_TYPE_OES: number;
					public static GL_MATRIX_PALETTE_OES: number;
					public static GL_WEIGHT_ARRAY_POINTER_OES: number;
					public static GL_WEIGHT_ARRAY_TYPE_OES: number;
					public static GL_MAX_PALETTE_MATRICES_OES: number;
					public static GL_MATRIX_INDEX_ARRAY_POINTER_OES: number;
					public static GL_MAX_VERTEX_UNITS_OES: number;
					public static GL_WEIGHT_ARRAY_SIZE_OES: number;
					public static GL_WEIGHT_ARRAY_STRIDE_OES: number;
					public static GL_MATRIX_INDEX_ARRAY_STRIDE_OES: number;
					public static GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES: number;
					public static GL_MATRIX_INDEX_ARRAY_SIZE_OES: number;
					public static GL_TEXTURE_CROP_RECT_OES: number;
					public glEnableClientState(param0: number): void;
					public glMatrixIndexPointerOES(param0: number, param1: number, param2: number, param3: java.nio.Buffer): void;
					public glDrawTexxOES(param0: number, param1: number, param2: number, param3: number, param4: number): void;
					public glDrawTexivOES(param0: java.nio.IntBuffer): void;
					public glDrawTexsvOES(param0: native.Array<number>, param1: number): void;
					public glCurrentPaletteMatrixOES(param0: number): void;
					public glDrawTexivOES(param0: native.Array<number>, param1: number): void;
					public glDrawTexiOES(param0: number, param1: number, param2: number, param3: number, param4: number): void;
					public glDrawTexfvOES(param0: native.Array<number>, param1: number): void;
					public glDrawTexfOES(param0: number, param1: number, param2: number, param3: number, param4: number): void;
					public glDrawTexsOES(param0: number, param1: number, param2: number, param3: number, param4: number): void;
					public glEnable(param0: number): void;
					public glMatrixIndexPointerOES(param0: number, param1: number, param2: number, param3: number): void;
					public glDrawTexxvOES(param0: native.Array<number>, param1: number): void;
					public glLoadPaletteFromModelViewMatrixOES(): void;
					public glWeightPointerOES(param0: number, param1: number, param2: number, param3: java.nio.Buffer): void;
					public glTexParameterfv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
					public glDrawTexfvOES(param0: java.nio.FloatBuffer): void;
					public glDrawTexxvOES(param0: java.nio.IntBuffer): void;
					public glDrawTexsvOES(param0: java.nio.ShortBuffer): void;
					public glWeightPointerOES(param0: number, param1: number, param2: number, param3: number): void;
				}
			}
		}
	}
}

declare module javax {
	export module microedition {
		export module khronos {
			export module opengles {
				export class GL11ExtensionPack extends java.lang.Object implements javax.microedition.khronos.opengles.GL {
					public static class: java.lang.Class<javax.microedition.khronos.opengles.GL11ExtensionPack>;
					/**
					 * Constructs a new instance of the javax.microedition.khronos.opengles.GL11ExtensionPack interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						glBindFramebufferOES(param0: number, param1: number): void;
						glBindRenderbufferOES(param0: number, param1: number): void;
						glBindTexture(param0: number, param1: number): void;
						glBlendEquation(param0: number): void;
						glBlendEquationSeparate(param0: number, param1: number): void;
						glBlendFuncSeparate(param0: number, param1: number, param2: number, param3: number): void;
						glCheckFramebufferStatusOES(param0: number): number;
						glCompressedTexImage2D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: java.nio.Buffer): void;
						glCopyTexImage2D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number): void;
						glDeleteFramebuffersOES(param0: number, param1: native.Array<number>, param2: number): void;
						glDeleteFramebuffersOES(param0: number, param1: java.nio.IntBuffer): void;
						glDeleteRenderbuffersOES(param0: number, param1: native.Array<number>, param2: number): void;
						glDeleteRenderbuffersOES(param0: number, param1: java.nio.IntBuffer): void;
						glEnable(param0: number): void;
						glFramebufferRenderbufferOES(param0: number, param1: number, param2: number, param3: number): void;
						glFramebufferTexture2DOES(param0: number, param1: number, param2: number, param3: number, param4: number): void;
						glGenerateMipmapOES(param0: number): void;
						glGenFramebuffersOES(param0: number, param1: native.Array<number>, param2: number): void;
						glGenFramebuffersOES(param0: number, param1: java.nio.IntBuffer): void;
						glGenRenderbuffersOES(param0: number, param1: native.Array<number>, param2: number): void;
						glGenRenderbuffersOES(param0: number, param1: java.nio.IntBuffer): void;
						glGetFramebufferAttachmentParameterivOES(param0: number, param1: number, param2: number, param3: native.Array<number>, param4: number): void;
						glGetFramebufferAttachmentParameterivOES(param0: number, param1: number, param2: number, param3: java.nio.IntBuffer): void;
						glGetIntegerv(param0: number, param1: native.Array<number>, param2: number): void;
						glGetIntegerv(param0: number, param1: java.nio.IntBuffer): void;
						glGetRenderbufferParameterivOES(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
						glGetRenderbufferParameterivOES(param0: number, param1: number, param2: java.nio.IntBuffer): void;
						glGetTexGenfv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
						glGetTexGenfv(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
						glGetTexGeniv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
						glGetTexGeniv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
						glGetTexGenxv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
						glGetTexGenxv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
						glIsFramebufferOES(param0: number): boolean;
						glIsRenderbufferOES(param0: number): boolean;
						glRenderbufferStorageOES(param0: number, param1: number, param2: number, param3: number): void;
						glStencilOp(param0: number, param1: number, param2: number): void;
						glTexEnvf(param0: number, param1: number, param2: number): void;
						glTexEnvfv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
						glTexEnvfv(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
						glTexEnvx(param0: number, param1: number, param2: number): void;
						glTexEnvxv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
						glTexEnvxv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
						glTexGenf(param0: number, param1: number, param2: number): void;
						glTexGenfv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
						glTexGenfv(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
						glTexGeni(param0: number, param1: number, param2: number): void;
						glTexGeniv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
						glTexGeniv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
						glTexGenx(param0: number, param1: number, param2: number): void;
						glTexGenxv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
						glTexGenxv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
						glTexParameterf(param0: number, param1: number, param2: number): void;
					});
					public constructor();
					public static GL_MIRRORED_REPEAT: number;
					public static GL_COLOR_ATTACHMENT10_OES: number;
					public static GL_RGB5_A1: number;
					public static GL_RENDERBUFFER_STENCIL_SIZE_OES: number;
					public static GL_MAX_RENDERBUFFER_SIZE_OES: number;
					public static GL_RENDERBUFFER_BINDING_OES: number;
					public static GL_TEXTURE_GEN_STR: number;
					public static GL_COLOR_ATTACHMENT5_OES: number;
					public static GL_DECR_WRAP: number;
					public static GL_STENCIL_INDEX1_OES: number;
					public static GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_OES: number;
					public static GL_RENDERBUFFER_INTERNAL_FORMAT_OES: number;
					public static GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_OES: number;
					public static GL_BLEND_SRC_ALPHA: number;
					public static GL_DEPTH_COMPONENT24: number;
					public static GL_BLEND_EQUATION_ALPHA: number;
					public static GL_BLEND_SRC_RGB: number;
					public static GL_COLOR_ATTACHMENT4_OES: number;
					public static GL_BLEND_DST_ALPHA: number;
					public static GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_OES: number;
					public static GL_BLEND_DST_RGB: number;
					public static GL_FRAMEBUFFER_BINDING_OES: number;
					public static GL_NORMAL_MAP: number;
					public static GL_COLOR_ATTACHMENT7_OES: number;
					public static GL_TEXTURE_BINDING_CUBE_MAP: number;
					public static GL_REFLECTION_MAP: number;
					public static GL_DEPTH_COMPONENT: number;
					public static GL_DEPTH_ATTACHMENT_OES: number;
					public static GL_RENDERBUFFER_ALPHA_SIZE_OES: number;
					public static GL_COLOR_ATTACHMENT12_OES: number;
					public static GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_OES: number;
					public static GL_BLEND_EQUATION_RGB: number;
					public static GL_TEXTURE_CUBE_MAP_NEGATIVE_X: number;
					public static GL_INCR_WRAP: number;
					public static GL_TEXTURE_CUBE_MAP_NEGATIVE_Y: number;
					public static GL_RENDERBUFFER_DEPTH_SIZE_OES: number;
					public static GL_TEXTURE_CUBE_MAP_NEGATIVE_Z: number;
					public static GL_RENDERBUFFER_OES: number;
					public static GL_DEPTH_COMPONENT16: number;
					public static GL_COLOR_ATTACHMENT6_OES: number;
					public static GL_COLOR_ATTACHMENT11_OES: number;
					public static GL_MAX_COLOR_ATTACHMENTS_OES: number;
					public static GL_RENDERBUFFER_HEIGHT_OES: number;
					public static GL_FRAMEBUFFER_INCOMPLETE_FORMATS_OES: number;
					public static GL_FRAMEBUFFER_OES: number;
					public static GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_OES: number;
					public static GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_OES: number;
					public static GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_OES: number;
					public static GL_TEXTURE_GEN_MODE: number;
					public static GL_FUNC_REVERSE_SUBTRACT: number;
					public static GL_COLOR_ATTACHMENT9_OES: number;
					public static GL_COLOR_ATTACHMENT14_OES: number;
					public static GL_FRAMEBUFFER_UNSUPPORTED_OES: number;
					public static GL_FUNC_SUBTRACT: number;
					public static GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_OES: number;
					public static GL_MAX_CUBE_MAP_TEXTURE_SIZE: number;
					public static GL_BLEND_EQUATION: number;
					public static GL_COLOR_ATTACHMENT0_OES: number;
					public static GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_OES: number;
					public static GL_TEXTURE_CUBE_MAP_POSITIVE_X: number;
					public static GL_STENCIL_INDEX: number;
					public static GL_STENCIL_INDEX4_OES: number;
					public static GL_TEXTURE_CUBE_MAP_POSITIVE_Z: number;
					public static GL_TEXTURE_CUBE_MAP_POSITIVE_Y: number;
					public static GL_COLOR_ATTACHMENT8_OES: number;
					public static GL_COLOR_ATTACHMENT13_OES: number;
					public static GL_RENDERBUFFER_WIDTH_OES: number;
					public static GL_STENCIL_INDEX8_OES: number;
					public static GL_RENDERBUFFER_RED_SIZE_OES: number;
					public static GL_INVALID_FRAMEBUFFER_OPERATION_OES: number;
					public static GL_FRAMEBUFFER_COMPLETE_OES: number;
					public static GL_RENDERBUFFER_GREEN_SIZE_OES: number;
					public static GL_RGB565_OES: number;
					public static GL_RGBA4: number;
					public static GL_TEXTURE_CUBE_MAP: number;
					public static GL_RGB8: number;
					public static GL_COLOR_ATTACHMENT3_OES: number;
					public static GL_RGBA8: number;
					public static GL_COLOR_ATTACHMENT2_OES: number;
					public static GL_COLOR_ATTACHMENT15_OES: number;
					public static GL_FUNC_ADD: number;
					public static GL_STENCIL_ATTACHMENT_OES: number;
					public static GL_DEPTH_COMPONENT32: number;
					public static GL_RENDERBUFFER_BLUE_SIZE_OES: number;
					public static GL_STR: number;
					public static GL_COLOR_ATTACHMENT1_OES: number;
					public glTexEnvfv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
					public glTexGeni(param0: number, param1: number, param2: number): void;
					public glTexGenfv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
					public glTexEnvx(param0: number, param1: number, param2: number): void;
					public glGenFramebuffersOES(param0: number, param1: native.Array<number>, param2: number): void;
					public glGetTexGenxv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
					public glGetRenderbufferParameterivOES(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
					public glBindRenderbufferOES(param0: number, param1: number): void;
					public glGetTexGenxv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
					public glDeleteRenderbuffersOES(param0: number, param1: native.Array<number>, param2: number): void;
					public glTexGenf(param0: number, param1: number, param2: number): void;
					public glTexGenx(param0: number, param1: number, param2: number): void;
					public glTexGeniv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
					public glIsRenderbufferOES(param0: number): boolean;
					public glGetFramebufferAttachmentParameterivOES(param0: number, param1: number, param2: number, param3: java.nio.IntBuffer): void;
					public glGetTexGenfv(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
					public glTexEnvfv(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
					public glTexParameterf(param0: number, param1: number, param2: number): void;
					public glStencilOp(param0: number, param1: number, param2: number): void;
					public glRenderbufferStorageOES(param0: number, param1: number, param2: number, param3: number): void;
					public glTexEnvxv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
					public glTexEnvf(param0: number, param1: number, param2: number): void;
					public glTexGenxv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
					public glGetRenderbufferParameterivOES(param0: number, param1: number, param2: java.nio.IntBuffer): void;
					public glEnable(param0: number): void;
					public glTexEnvxv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
					public glBlendFuncSeparate(param0: number, param1: number, param2: number, param3: number): void;
					public glGetTexGeniv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
					public glTexGenxv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
					public glBindTexture(param0: number, param1: number): void;
					public glDeleteFramebuffersOES(param0: number, param1: native.Array<number>, param2: number): void;
					public glIsFramebufferOES(param0: number): boolean;
					public glTexGenfv(param0: number, param1: number, param2: java.nio.FloatBuffer): void;
					public glGenRenderbuffersOES(param0: number, param1: native.Array<number>, param2: number): void;
					public glGetIntegerv(param0: number, param1: native.Array<number>, param2: number): void;
					public glFramebufferTexture2DOES(param0: number, param1: number, param2: number, param3: number, param4: number): void;
					public glGetTexGeniv(param0: number, param1: number, param2: java.nio.IntBuffer): void;
					public glBlendEquationSeparate(param0: number, param1: number): void;
					public glFramebufferRenderbufferOES(param0: number, param1: number, param2: number, param3: number): void;
					public glCheckFramebufferStatusOES(param0: number): number;
					public glDeleteRenderbuffersOES(param0: number, param1: java.nio.IntBuffer): void;
					public glCompressedTexImage2D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: java.nio.Buffer): void;
					public glGenRenderbuffersOES(param0: number, param1: java.nio.IntBuffer): void;
					public glGetTexGenfv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
					public glBindFramebufferOES(param0: number, param1: number): void;
					public glCopyTexImage2D(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number): void;
					public glDeleteFramebuffersOES(param0: number, param1: java.nio.IntBuffer): void;
					public glGetIntegerv(param0: number, param1: java.nio.IntBuffer): void;
					public glGenerateMipmapOES(param0: number): void;
					public glTexGeniv(param0: number, param1: number, param2: native.Array<number>, param3: number): void;
					public glGetFramebufferAttachmentParameterivOES(param0: number, param1: number, param2: number, param3: native.Array<number>, param4: number): void;
					public glGenFramebuffersOES(param0: number, param1: java.nio.IntBuffer): void;
					public glBlendEquation(param0: number): void;
				}
			}
		}
	}
}

declare module javax {
	export module net {
		export abstract class ServerSocketFactory extends java.lang.Object {
			public static class: java.lang.Class<javax.net.ServerSocketFactory>;
			public createServerSocket(): java.net.ServerSocket;
			public createServerSocket(param0: number, param1: number): java.net.ServerSocket;
			public static getDefault(): javax.net.ServerSocketFactory;
			public constructor();
			public createServerSocket(param0: number): java.net.ServerSocket;
			public createServerSocket(param0: number, param1: number, param2: java.net.InetAddress): java.net.ServerSocket;
		}
	}
}

declare module javax {
	export module net {
		export abstract class SocketFactory extends java.lang.Object {
			public static class: java.lang.Class<javax.net.SocketFactory>;
			public createSocket(param0: string, param1: number): java.net.Socket;
			public createSocket(param0: java.net.InetAddress, param1: number): java.net.Socket;
			public constructor();
			public static getDefault(): javax.net.SocketFactory;
			public createSocket(): java.net.Socket;
			public createSocket(param0: java.net.InetAddress, param1: number, param2: java.net.InetAddress, param3: number): java.net.Socket;
			public createSocket(param0: string, param1: number, param2: java.net.InetAddress, param3: number): java.net.Socket;
		}
	}
}

declare module javax {
	export module net {
		export module ssl {
			export class CertPathTrustManagerParameters extends java.lang.Object implements javax.net.ssl.ManagerFactoryParameters {
				public static class: java.lang.Class<javax.net.ssl.CertPathTrustManagerParameters>;
				public constructor(param0: java.security.cert.CertPathParameters);
				public getParameters(): java.security.cert.CertPathParameters;
			}
		}
	}
}

declare module javax {
	export module net {
		export module ssl {
			export class HandshakeCompletedEvent extends java.util.EventObject {
				public static class: java.lang.Class<javax.net.ssl.HandshakeCompletedEvent>;
				public getLocalCertificates(): native.Array<java.security.cert.Certificate>;
				public getSocket(): javax.net.ssl.SSLSocket;
				public getSession(): javax.net.ssl.SSLSession;
				public constructor(param0: javax.net.ssl.SSLSocket, param1: javax.net.ssl.SSLSession);
				public getLocalPrincipal(): java.security.Principal;
				public getPeerCertificates(): native.Array<java.security.cert.Certificate>;
				public getPeerCertificateChain(): native.Array<javax.security.cert.X509Certificate>;
				public getCipherSuite(): string;
				public constructor(param0: any);
				public getPeerPrincipal(): java.security.Principal;
			}
		}
	}
}

declare module javax {
	export module net {
		export module ssl {
			export class HandshakeCompletedListener extends java.lang.Object implements java.util.EventListener {
				public static class: java.lang.Class<javax.net.ssl.HandshakeCompletedListener>;
				/**
				 * Constructs a new instance of the javax.net.ssl.HandshakeCompletedListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					handshakeCompleted(param0: javax.net.ssl.HandshakeCompletedEvent): void;
				});
				public constructor();
				public handshakeCompleted(param0: javax.net.ssl.HandshakeCompletedEvent): void;
			}
		}
	}
}

declare module javax {
	export module net {
		export module ssl {
			export class HostnameVerifier extends java.lang.Object {
				public static class: java.lang.Class<javax.net.ssl.HostnameVerifier>;
				/**
				 * Constructs a new instance of the javax.net.ssl.HostnameVerifier interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					verify(param0: string, param1: javax.net.ssl.SSLSession): boolean;
				});
				public constructor();
				public verify(param0: string, param1: javax.net.ssl.SSLSession): boolean;
			}
		}
	}
}

declare module javax {
	export module net {
		export module ssl {
			export abstract class HttpsURLConnection extends java.net.HttpURLConnection {
				public static class: java.lang.Class<javax.net.ssl.HttpsURLConnection>;
				public hostnameVerifier: javax.net.ssl.HostnameVerifier;
				public static getDefaultHostnameVerifier(): javax.net.ssl.HostnameVerifier;
				public getLocalPrincipal(): java.security.Principal;
				public getSSLSocketFactory(): javax.net.ssl.SSLSocketFactory;
				public getHostnameVerifier(): javax.net.ssl.HostnameVerifier;
				public static setDefaultHostnameVerifier(param0: javax.net.ssl.HostnameVerifier): void;
				public getLocalCertificates(): native.Array<java.security.cert.Certificate>;
				public constructor(param0: java.net.URL);
				public setSSLSocketFactory(param0: javax.net.ssl.SSLSocketFactory): void;
				public getCipherSuite(): string;
				public setHostnameVerifier(param0: javax.net.ssl.HostnameVerifier): void;
				public getServerCertificates(): native.Array<java.security.cert.Certificate>;
				public getPeerPrincipal(): java.security.Principal;
				public static setDefaultSSLSocketFactory(param0: javax.net.ssl.SSLSocketFactory): void;
				public static getDefaultSSLSocketFactory(): javax.net.ssl.SSLSocketFactory;
			}
		}
	}
}

declare module javax {
	export module net {
		export module ssl {
			export class KeyManager extends java.lang.Object {
				public static class: java.lang.Class<javax.net.ssl.KeyManager>;
				/**
				 * Constructs a new instance of the javax.net.ssl.KeyManager interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
			}
		}
	}
}

declare module javax {
	export module net {
		export module ssl {
			export class KeyManagerFactory extends java.lang.Object {
				public static class: java.lang.Class<javax.net.ssl.KeyManagerFactory>;
				public static getInstance(param0: string): javax.net.ssl.KeyManagerFactory;
				public getAlgorithm(): string;
				public static getInstance(param0: string, param1: java.security.Provider): javax.net.ssl.KeyManagerFactory;
				public static getDefaultAlgorithm(): string;
				public constructor(param0: javax.net.ssl.KeyManagerFactorySpi, param1: java.security.Provider, param2: string);
				public init(param0: java.security.KeyStore, param1: native.Array<string>): void;
				public getProvider(): java.security.Provider;
				public init(param0: javax.net.ssl.ManagerFactoryParameters): void;
				public static getInstance(param0: string, param1: string): javax.net.ssl.KeyManagerFactory;
				public getKeyManagers(): native.Array<javax.net.ssl.KeyManager>;
			}
		}
	}
}

declare module javax {
	export module net {
		export module ssl {
			export abstract class KeyManagerFactorySpi extends java.lang.Object {
				public static class: java.lang.Class<javax.net.ssl.KeyManagerFactorySpi>;
				public engineInit(param0: java.security.KeyStore, param1: native.Array<string>): void;
				public engineGetKeyManagers(): native.Array<javax.net.ssl.KeyManager>;
				public engineInit(param0: javax.net.ssl.ManagerFactoryParameters): void;
				public constructor();
			}
		}
	}
}

declare module javax {
	export module net {
		export module ssl {
			export class KeyStoreBuilderParameters extends java.lang.Object implements javax.net.ssl.ManagerFactoryParameters {
				public static class: java.lang.Class<javax.net.ssl.KeyStoreBuilderParameters>;
				public constructor(param0: java.util.List<java.security.KeyStore.Builder>);
				public constructor(param0: java.security.KeyStore.Builder);
				public getParameters(): java.util.List<java.security.KeyStore.Builder>;
			}
		}
	}
}

declare module javax {
	export module net {
		export module ssl {
			export class ManagerFactoryParameters extends java.lang.Object {
				public static class: java.lang.Class<javax.net.ssl.ManagerFactoryParameters>;
				/**
				 * Constructs a new instance of the javax.net.ssl.ManagerFactoryParameters interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
			}
		}
	}
}

declare module javax {
	export module net {
		export module ssl {
			export class SSLContext extends java.lang.Object {
				public static class: java.lang.Class<javax.net.ssl.SSLContext>;
				public getClientSessionContext(): javax.net.ssl.SSLSessionContext;
				public static setDefault(param0: javax.net.ssl.SSLContext): void;
				public createSSLEngine(): javax.net.ssl.SSLEngine;
				public static getInstance(param0: string, param1: string): javax.net.ssl.SSLContext;
				public getSupportedSSLParameters(): javax.net.ssl.SSLParameters;
				public getServerSocketFactory(): javax.net.ssl.SSLServerSocketFactory;
				public static getInstance(param0: string, param1: java.security.Provider): javax.net.ssl.SSLContext;
				public getServerSessionContext(): javax.net.ssl.SSLSessionContext;
				public getProvider(): java.security.Provider;
				public getSocketFactory(): javax.net.ssl.SSLSocketFactory;
				public init(param0: native.Array<javax.net.ssl.KeyManager>, param1: native.Array<javax.net.ssl.TrustManager>, param2: java.security.SecureRandom): void;
				public createSSLEngine(param0: string, param1: number): javax.net.ssl.SSLEngine;
				public constructor(param0: javax.net.ssl.SSLContextSpi, param1: java.security.Provider, param2: string);
				public getDefaultSSLParameters(): javax.net.ssl.SSLParameters;
				public getProtocol(): string;
				public static getDefault(): javax.net.ssl.SSLContext;
				public static getInstance(param0: string): javax.net.ssl.SSLContext;
			}
		}
	}
}

declare module javax {
	export module net {
		export module ssl {
			export abstract class SSLContextSpi extends java.lang.Object {
				public static class: java.lang.Class<javax.net.ssl.SSLContextSpi>;
				public engineInit(param0: native.Array<javax.net.ssl.KeyManager>, param1: native.Array<javax.net.ssl.TrustManager>, param2: java.security.SecureRandom): void;
				public engineGetDefaultSSLParameters(): javax.net.ssl.SSLParameters;
				public engineCreateSSLEngine(param0: string, param1: number): javax.net.ssl.SSLEngine;
				public engineGetClientSessionContext(): javax.net.ssl.SSLSessionContext;
				public engineGetSupportedSSLParameters(): javax.net.ssl.SSLParameters;
				public engineCreateSSLEngine(): javax.net.ssl.SSLEngine;
				public engineGetServerSocketFactory(): javax.net.ssl.SSLServerSocketFactory;
				public engineGetSocketFactory(): javax.net.ssl.SSLSocketFactory;
				public constructor();
				public engineGetServerSessionContext(): javax.net.ssl.SSLSessionContext;
			}
		}
	}
}

declare module javax {
	export module net {
		export module ssl {
			export abstract class SSLEngine extends java.lang.Object {
				public static class: java.lang.Class<javax.net.ssl.SSLEngine>;
				public getNeedClientAuth(): boolean;
				public setUseClientMode(param0: boolean): void;
				public unwrap(param0: java.nio.ByteBuffer, param1: native.Array<java.nio.ByteBuffer>, param2: number, param3: number): javax.net.ssl.SSLEngineResult;
				public getSession(): javax.net.ssl.SSLSession;
				public setEnabledProtocols(param0: native.Array<string>): void;
				public closeInbound(): void;
				public isInboundDone(): boolean;
				public getSSLParameters(): javax.net.ssl.SSLParameters;
				public setEnabledCipherSuites(param0: native.Array<string>): void;
				public constructor();
				public getEnableSessionCreation(): boolean;
				public getEnabledProtocols(): native.Array<string>;
				public setEnableSessionCreation(param0: boolean): void;
				public setWantClientAuth(param0: boolean): void;
				public unwrap(param0: java.nio.ByteBuffer, param1: java.nio.ByteBuffer): javax.net.ssl.SSLEngineResult;
				public wrap(param0: native.Array<java.nio.ByteBuffer>, param1: java.nio.ByteBuffer): javax.net.ssl.SSLEngineResult;
				public constructor(param0: string, param1: number);
				public isOutboundDone(): boolean;
				public getEnabledCipherSuites(): native.Array<string>;
				public wrap(param0: native.Array<java.nio.ByteBuffer>, param1: number, param2: number, param3: java.nio.ByteBuffer): javax.net.ssl.SSLEngineResult;
				public closeOutbound(): void;
				public getPeerPort(): number;
				public beginHandshake(): void;
				public unwrap(param0: java.nio.ByteBuffer, param1: native.Array<java.nio.ByteBuffer>): javax.net.ssl.SSLEngineResult;
				public setNeedClientAuth(param0: boolean): void;
				public wrap(param0: java.nio.ByteBuffer, param1: java.nio.ByteBuffer): javax.net.ssl.SSLEngineResult;
				public getHandshakeStatus(): javax.net.ssl.SSLEngineResult.HandshakeStatus;
				public setSSLParameters(param0: javax.net.ssl.SSLParameters): void;
				public getPeerHost(): string;
				public getUseClientMode(): boolean;
				public getDelegatedTask(): java.lang.Runnable;
				public getWantClientAuth(): boolean;
				public getSupportedProtocols(): native.Array<string>;
				public getSupportedCipherSuites(): native.Array<string>;
			}
		}
	}
}

declare module javax {
	export module net {
		export module ssl {
			export class SSLEngineResult extends java.lang.Object {
				public static class: java.lang.Class<javax.net.ssl.SSLEngineResult>;
				public bytesProduced(): number;
				public getHandshakeStatus(): javax.net.ssl.SSLEngineResult.HandshakeStatus;
				public getStatus(): javax.net.ssl.SSLEngineResult.Status;
				public constructor(param0: javax.net.ssl.SSLEngineResult.Status, param1: javax.net.ssl.SSLEngineResult.HandshakeStatus, param2: number, param3: number);
				public toString(): string;
				public bytesConsumed(): number;
			}
			export module SSLEngineResult {
				export class HandshakeStatus {
					public static class: java.lang.Class<javax.net.ssl.SSLEngineResult.HandshakeStatus>;
					public static FINISHED: javax.net.ssl.SSLEngineResult.HandshakeStatus;
					public static NEED_TASK: javax.net.ssl.SSLEngineResult.HandshakeStatus;
					public static NEED_UNWRAP: javax.net.ssl.SSLEngineResult.HandshakeStatus;
					public static NEED_WRAP: javax.net.ssl.SSLEngineResult.HandshakeStatus;
					public static NOT_HANDSHAKING: javax.net.ssl.SSLEngineResult.HandshakeStatus;
					public static values(): native.Array<javax.net.ssl.SSLEngineResult.HandshakeStatus>;
					public static valueOf(param0: string): javax.net.ssl.SSLEngineResult.HandshakeStatus;
					public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
				}
				export class Status {
					public static class: java.lang.Class<javax.net.ssl.SSLEngineResult.Status>;
					public static BUFFER_OVERFLOW: javax.net.ssl.SSLEngineResult.Status;
					public static BUFFER_UNDERFLOW: javax.net.ssl.SSLEngineResult.Status;
					public static CLOSED: javax.net.ssl.SSLEngineResult.Status;
					public static OK: javax.net.ssl.SSLEngineResult.Status;
					public static valueOf(param0: string): javax.net.ssl.SSLEngineResult.Status;
					public static values(): native.Array<javax.net.ssl.SSLEngineResult.Status>;
					public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
				}
			}
		}
	}
}

declare module javax {
	export module net {
		export module ssl {
			export class SSLException extends java.io.IOException {
				public static class: java.lang.Class<javax.net.ssl.SSLException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module javax {
	export module net {
		export module ssl {
			export class SSLHandshakeException extends javax.net.ssl.SSLException {
				public static class: java.lang.Class<javax.net.ssl.SSLHandshakeException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module javax {
	export module net {
		export module ssl {
			export class SSLKeyException extends javax.net.ssl.SSLException {
				public static class: java.lang.Class<javax.net.ssl.SSLKeyException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module javax {
	export module net {
		export module ssl {
			export class SSLParameters extends java.lang.Object {
				public static class: java.lang.Class<javax.net.ssl.SSLParameters>;
				public getNeedClientAuth(): boolean;
				public setNeedClientAuth(param0: boolean): void;
				public getWantClientAuth(): boolean;
				public setCipherSuites(param0: native.Array<string>): void;
				public setWantClientAuth(param0: boolean): void;
				public setProtocols(param0: native.Array<string>): void;
				public getCipherSuites(): native.Array<string>;
				public constructor(param0: native.Array<string>, param1: native.Array<string>);
				public constructor(param0: native.Array<string>);
				public constructor();
				public getProtocols(): native.Array<string>;
			}
		}
	}
}

declare module javax {
	export module net {
		export module ssl {
			export class SSLPeerUnverifiedException extends javax.net.ssl.SSLException {
				public static class: java.lang.Class<javax.net.ssl.SSLPeerUnverifiedException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module javax {
	export module net {
		export module ssl {
			export class SSLPermission extends java.security.BasicPermission {
				public static class: java.lang.Class<javax.net.ssl.SSLPermission>;
				public checkGuard(param0: any): void;
				public implies(param0: java.security.Permission): boolean;
				public getActions(): string;
				public constructor(param0: string);
				public constructor(param0: string, param1: string);
			}
		}
	}
}

declare module javax {
	export module net {
		export module ssl {
			export class SSLProtocolException extends javax.net.ssl.SSLException {
				public static class: java.lang.Class<javax.net.ssl.SSLProtocolException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module javax {
	export module net {
		export module ssl {
			export abstract class SSLServerSocket extends java.net.ServerSocket {
				public static class: java.lang.Class<javax.net.ssl.SSLServerSocket>;
				public constructor(param0: number, param1: number);
				public constructor(param0: number, param1: number, param2: java.net.InetAddress);
				public getNeedClientAuth(): boolean;
				public setNeedClientAuth(param0: boolean): void;
				public setUseClientMode(param0: boolean): void;
				public setEnabledProtocols(param0: native.Array<string>): void;
				public getUseClientMode(): boolean;
				public setEnabledCipherSuites(param0: native.Array<string>): void;
				public constructor();
				public getEnableSessionCreation(): boolean;
				public getEnabledProtocols(): native.Array<string>;
				public getWantClientAuth(): boolean;
				public setWantClientAuth(param0: boolean): void;
				public setEnableSessionCreation(param0: boolean): void;
				public getEnabledCipherSuites(): native.Array<string>;
				public constructor(param0: number);
				public getSupportedProtocols(): native.Array<string>;
				public getSupportedCipherSuites(): native.Array<string>;
			}
		}
	}
}

declare module javax {
	export module net {
		export module ssl {
			export abstract class SSLServerSocketFactory extends javax.net.ServerSocketFactory {
				public static class: java.lang.Class<javax.net.ssl.SSLServerSocketFactory>;
				public static getDefault(): javax.net.ServerSocketFactory;
				public getDefaultCipherSuites(): native.Array<string>;
				public getSupportedCipherSuites(): native.Array<string>;
				public constructor();
			}
		}
	}
}

declare module javax {
	export module net {
		export module ssl {
			export class SSLSession extends java.lang.Object {
				public static class: java.lang.Class<javax.net.ssl.SSLSession>;
				/**
				 * Constructs a new instance of the javax.net.ssl.SSLSession interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getApplicationBufferSize(): number;
					getCipherSuite(): string;
					getCreationTime(): number;
					getId(): native.Array<number>;
					getLastAccessedTime(): number;
					getLocalCertificates(): native.Array<java.security.cert.Certificate>;
					getLocalPrincipal(): java.security.Principal;
					getPacketBufferSize(): number;
					getPeerCertificateChain(): native.Array<javax.security.cert.X509Certificate>;
					getPeerCertificates(): native.Array<java.security.cert.Certificate>;
					getPeerHost(): string;
					getPeerPort(): number;
					getPeerPrincipal(): java.security.Principal;
					getProtocol(): string;
					getSessionContext(): javax.net.ssl.SSLSessionContext;
					getValue(param0: string): any;
					getValueNames(): native.Array<string>;
					invalidate(): void;
					isValid(): boolean;
					putValue(param0: string, param1: any): void;
					removeValue(param0: string): void;
				});
				public constructor();
				public getCreationTime(): number;
				public getId(): native.Array<number>;
				public removeValue(param0: string): void;
				public getLocalPrincipal(): java.security.Principal;
				public getSessionContext(): javax.net.ssl.SSLSessionContext;
				public getPeerCertificateChain(): native.Array<javax.security.cert.X509Certificate>;
				public getPeerCertificates(): native.Array<java.security.cert.Certificate>;
				public getApplicationBufferSize(): number;
				public getPeerHost(): string;
				public isValid(): boolean;
				public getValue(param0: string): any;
				public getLocalCertificates(): native.Array<java.security.cert.Certificate>;
				public getLastAccessedTime(): number;
				public getValueNames(): native.Array<string>;
				public invalidate(): void;
				public putValue(param0: string, param1: any): void;
				public getCipherSuite(): string;
				public getProtocol(): string;
				public getPacketBufferSize(): number;
				public getPeerPort(): number;
				public getPeerPrincipal(): java.security.Principal;
			}
		}
	}
}

declare module javax {
	export module net {
		export module ssl {
			export class SSLSessionBindingEvent extends java.util.EventObject {
				public static class: java.lang.Class<javax.net.ssl.SSLSessionBindingEvent>;
				public getSession(): javax.net.ssl.SSLSession;
				public constructor(param0: javax.net.ssl.SSLSession, param1: string);
				public getName(): string;
				public constructor(param0: any);
			}
		}
	}
}

declare module javax {
	export module net {
		export module ssl {
			export class SSLSessionBindingListener extends java.lang.Object implements java.util.EventListener {
				public static class: java.lang.Class<javax.net.ssl.SSLSessionBindingListener>;
				/**
				 * Constructs a new instance of the javax.net.ssl.SSLSessionBindingListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					valueBound(param0: javax.net.ssl.SSLSessionBindingEvent): void;
					valueUnbound(param0: javax.net.ssl.SSLSessionBindingEvent): void;
				});
				public constructor();
				public valueBound(param0: javax.net.ssl.SSLSessionBindingEvent): void;
				public valueUnbound(param0: javax.net.ssl.SSLSessionBindingEvent): void;
			}
		}
	}
}

declare module javax {
	export module net {
		export module ssl {
			export class SSLSessionContext extends java.lang.Object {
				public static class: java.lang.Class<javax.net.ssl.SSLSessionContext>;
				/**
				 * Constructs a new instance of the javax.net.ssl.SSLSessionContext interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getIds(): java.util.Enumeration<native.Array<number>>;
					getSession(param0: native.Array<number>): javax.net.ssl.SSLSession;
					getSessionCacheSize(): number;
					getSessionTimeout(): number;
					setSessionCacheSize(param0: number): void;
					setSessionTimeout(param0: number): void;
				});
				public constructor();
				public getSessionCacheSize(): number;
				public getIds(): java.util.Enumeration<native.Array<number>>;
				public setSessionTimeout(param0: number): void;
				public getSession(param0: native.Array<number>): javax.net.ssl.SSLSession;
				public getSessionTimeout(): number;
				public setSessionCacheSize(param0: number): void;
			}
		}
	}
}

declare module javax {
	export module net {
		export module ssl {
			export abstract class SSLSocket extends java.net.Socket {
				public static class: java.lang.Class<javax.net.ssl.SSLSocket>;
				public getNeedClientAuth(): boolean;
				public setUseClientMode(param0: boolean): void;
				public setEnabledProtocols(param0: native.Array<string>): void;
				public getSession(): javax.net.ssl.SSLSession;
				public constructor(param0: java.net.Proxy);
				public shutdownOutput(): void;
				public getSSLParameters(): javax.net.ssl.SSLParameters;
				public setEnabledCipherSuites(param0: native.Array<string>): void;
				public constructor();
				public getEnableSessionCreation(): boolean;
				public getEnabledProtocols(): native.Array<string>;
				public setWantClientAuth(param0: boolean): void;
				public setEnableSessionCreation(param0: boolean): void;
				public addHandshakeCompletedListener(param0: javax.net.ssl.HandshakeCompletedListener): void;
				public constructor(param0: string, param1: number);
				public removeHandshakeCompletedListener(param0: javax.net.ssl.HandshakeCompletedListener): void;
				public getEnabledCipherSuites(): native.Array<string>;
				public shutdownInput(): void;
				public constructor(param0: string, param1: number, param2: java.net.InetAddress, param3: number);
				public startHandshake(): void;
				public setNeedClientAuth(param0: boolean): void;
				public setSSLParameters(param0: javax.net.ssl.SSLParameters): void;
				public constructor(param0: java.net.SocketImpl);
				public getUseClientMode(): boolean;
				/** @deprecated */
				public constructor(param0: java.net.InetAddress, param1: number, param2: boolean);
				public getWantClientAuth(): boolean;
				public constructor(param0: java.net.InetAddress, param1: number, param2: java.net.InetAddress, param3: number);
				public constructor(param0: java.net.InetAddress, param1: number);
				/** @deprecated */
				public constructor(param0: string, param1: number, param2: boolean);
				public getSupportedProtocols(): native.Array<string>;
				public getSupportedCipherSuites(): native.Array<string>;
			}
		}
	}
}

declare module javax {
	export module net {
		export module ssl {
			export abstract class SSLSocketFactory extends javax.net.SocketFactory {
				public static class: java.lang.Class<javax.net.ssl.SSLSocketFactory>;
				public static getDefault(): javax.net.SocketFactory;
				public createSocket(param0: java.net.InetAddress, param1: number, param2: java.net.InetAddress, param3: number): java.net.Socket;
				public createSocket(param0: java.net.Socket, param1: string, param2: number, param3: boolean): java.net.Socket;
				public createSocket(): java.net.Socket;
				public createSocket(param0: string, param1: number, param2: java.net.InetAddress, param3: number): java.net.Socket;
				public getDefaultCipherSuites(): native.Array<string>;
				public createSocket(param0: java.net.InetAddress, param1: number): java.net.Socket;
				public getSupportedCipherSuites(): native.Array<string>;
				public createSocket(param0: string, param1: number): java.net.Socket;
				public constructor();
			}
		}
	}
}

declare module javax {
	export module net {
		export module ssl {
			export class TrustManager extends java.lang.Object {
				public static class: java.lang.Class<javax.net.ssl.TrustManager>;
				/**
				 * Constructs a new instance of the javax.net.ssl.TrustManager interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
			}
		}
	}
}

declare module javax {
	export module net {
		export module ssl {
			export class TrustManagerFactory extends java.lang.Object {
				public static class: java.lang.Class<javax.net.ssl.TrustManagerFactory>;
				public getAlgorithm(): string;
				public static getInstance(param0: string, param1: java.security.Provider): javax.net.ssl.TrustManagerFactory;
				public static getDefaultAlgorithm(): string;
				public constructor(param0: javax.net.ssl.TrustManagerFactorySpi, param1: java.security.Provider, param2: string);
				public static getInstance(param0: string): javax.net.ssl.TrustManagerFactory;
				public getTrustManagers(): native.Array<javax.net.ssl.TrustManager>;
				public static getInstance(param0: string, param1: string): javax.net.ssl.TrustManagerFactory;
				public init(param0: java.security.KeyStore): void;
				public getProvider(): java.security.Provider;
				public init(param0: javax.net.ssl.ManagerFactoryParameters): void;
			}
		}
	}
}

declare module javax {
	export module net {
		export module ssl {
			export abstract class TrustManagerFactorySpi extends java.lang.Object {
				public static class: java.lang.Class<javax.net.ssl.TrustManagerFactorySpi>;
				public engineInit(param0: java.security.KeyStore): void;
				public engineGetTrustManagers(): native.Array<javax.net.ssl.TrustManager>;
				public engineInit(param0: javax.net.ssl.ManagerFactoryParameters): void;
				public constructor();
			}
		}
	}
}

declare module javax {
	export module net {
		export module ssl {
			export abstract class X509ExtendedKeyManager extends java.lang.Object implements javax.net.ssl.X509KeyManager {
				public static class: java.lang.Class<javax.net.ssl.X509ExtendedKeyManager>;
				public getServerAliases(param0: string, param1: native.Array<java.security.Principal>): native.Array<string>;
				public chooseServerAlias(param0: string, param1: native.Array<java.security.Principal>, param2: java.net.Socket): string;
				public chooseEngineServerAlias(param0: string, param1: native.Array<java.security.Principal>, param2: javax.net.ssl.SSLEngine): string;
				public chooseEngineClientAlias(param0: native.Array<string>, param1: native.Array<java.security.Principal>, param2: javax.net.ssl.SSLEngine): string;
				public getPrivateKey(param0: string): java.security.PrivateKey;
				public chooseClientAlias(param0: native.Array<string>, param1: native.Array<java.security.Principal>, param2: java.net.Socket): string;
				public getClientAliases(param0: string, param1: native.Array<java.security.Principal>): native.Array<string>;
				public getCertificateChain(param0: string): native.Array<java.security.cert.X509Certificate>;
				public constructor();
			}
		}
	}
}

declare module javax {
	export module net {
		export module ssl {
			export class X509KeyManager extends java.lang.Object implements javax.net.ssl.KeyManager {
				public static class: java.lang.Class<javax.net.ssl.X509KeyManager>;
				/**
				 * Constructs a new instance of the javax.net.ssl.X509KeyManager interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					chooseClientAlias(param0: native.Array<string>, param1: native.Array<java.security.Principal>, param2: java.net.Socket): string;
					chooseServerAlias(param0: string, param1: native.Array<java.security.Principal>, param2: java.net.Socket): string;
					getCertificateChain(param0: string): native.Array<java.security.cert.X509Certificate>;
					getClientAliases(param0: string, param1: native.Array<java.security.Principal>): native.Array<string>;
					getServerAliases(param0: string, param1: native.Array<java.security.Principal>): native.Array<string>;
					getPrivateKey(param0: string): java.security.PrivateKey;
				});
				public constructor();
				public getServerAliases(param0: string, param1: native.Array<java.security.Principal>): native.Array<string>;
				public chooseServerAlias(param0: string, param1: native.Array<java.security.Principal>, param2: java.net.Socket): string;
				public getPrivateKey(param0: string): java.security.PrivateKey;
				public chooseClientAlias(param0: native.Array<string>, param1: native.Array<java.security.Principal>, param2: java.net.Socket): string;
				public getClientAliases(param0: string, param1: native.Array<java.security.Principal>): native.Array<string>;
				public getCertificateChain(param0: string): native.Array<java.security.cert.X509Certificate>;
			}
		}
	}
}

declare module javax {
	export module net {
		export module ssl {
			export class X509TrustManager extends java.lang.Object implements javax.net.ssl.TrustManager {
				public static class: java.lang.Class<javax.net.ssl.X509TrustManager>;
				/**
				 * Constructs a new instance of the javax.net.ssl.X509TrustManager interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					checkClientTrusted(param0: native.Array<java.security.cert.X509Certificate>, param1: string): void;
					checkServerTrusted(param0: native.Array<java.security.cert.X509Certificate>, param1: string): void;
					getAcceptedIssuers(): native.Array<java.security.cert.X509Certificate>;
				});
				public constructor();
				public checkClientTrusted(param0: native.Array<java.security.cert.X509Certificate>, param1: string): void;
				public checkServerTrusted(param0: native.Array<java.security.cert.X509Certificate>, param1: string): void;
				public getAcceptedIssuers(): native.Array<java.security.cert.X509Certificate>;
			}
		}
	}
}

declare module javax {
	export module security {
		export module auth {
			export class AuthPermission extends java.security.BasicPermission {
				public static class: java.lang.Class<javax.security.auth.AuthPermission>;
				public checkGuard(param0: any): void;
				public implies(param0: java.security.Permission): boolean;
				public getActions(): string;
				public constructor(param0: string);
				public constructor(param0: string, param1: string);
			}
		}
	}
}

declare module javax {
	export module security {
		export module auth {
			export class DestroyFailedException extends java.lang.Exception {
				public static class: java.lang.Class<javax.security.auth.DestroyFailedException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module javax {
	export module security {
		export module auth {
			export class Destroyable extends java.lang.Object {
				public static class: java.lang.Class<javax.security.auth.Destroyable>;
				/**
				 * Constructs a new instance of the javax.security.auth.Destroyable interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					destroy(): void;
					isDestroyed(): boolean;
				});
				public constructor();
				public destroy(): void;
				public isDestroyed(): boolean;
			}
		}
	}
}

declare module javax {
	export module security {
		export module auth {
			export class PrivateCredentialPermission extends java.security.Permission {
				public static class: java.lang.Class<javax.security.auth.PrivateCredentialPermission>;
				public checkGuard(param0: any): void;
				public implies(param0: java.security.Permission): boolean;
				public getCredentialClass(): string;
				public getPrincipals(): native.Array<native.Array<string>>;
				public getActions(): string;
				public constructor(param0: string);
				public constructor(param0: string, param1: string);
			}
		}
	}
}

declare module javax {
	export module security {
		export module auth {
			export class Subject extends java.lang.Object implements java.io.Serializable {
				public static class: java.lang.Class<javax.security.auth.Subject>;
				public static doAs(param0: javax.security.auth.Subject, param1: java.security.PrivilegedExceptionAction<any>): any;
				public static getSubject(param0: java.security.AccessControlContext): javax.security.auth.Subject;
				public getPublicCredentials(param0: java.lang.Class<any>): java.util.Set<any>;
				public setReadOnly(): void;
				public toString(): string;
				public getPrivateCredentials(): java.util.Set<any>;
				public getPrivateCredentials(param0: java.lang.Class<any>): java.util.Set<any>;
				public constructor();
				public static doAsPrivileged(param0: javax.security.auth.Subject, param1: java.security.PrivilegedAction<any>, param2: java.security.AccessControlContext): any;
				public static doAsPrivileged(param0: javax.security.auth.Subject, param1: java.security.PrivilegedExceptionAction<any>, param2: java.security.AccessControlContext): any;
				public constructor(param0: boolean, param1: java.util.Set<any>, param2: java.util.Set<any>, param3: java.util.Set<any>);
				public getPrincipals(): java.util.Set<java.security.Principal>;
				public static doAs(param0: javax.security.auth.Subject, param1: java.security.PrivilegedAction<any>): any;
				public hashCode(): number;
				public isReadOnly(): boolean;
				public equals(param0: any): boolean;
				public getPublicCredentials(): java.util.Set<any>;
				public getPrincipals(param0: java.lang.Class<any>): java.util.Set<any>;
			}
		}
	}
}

declare module javax {
	export module security {
		export module auth {
			export class SubjectDomainCombiner extends java.lang.Object implements java.security.DomainCombiner {
				public static class: java.lang.Class<javax.security.auth.SubjectDomainCombiner>;
				public getSubject(): javax.security.auth.Subject;
				public constructor(param0: javax.security.auth.Subject);
				public combine(param0: native.Array<java.security.ProtectionDomain>, param1: native.Array<java.security.ProtectionDomain>): native.Array<java.security.ProtectionDomain>;
			}
		}
	}
}

declare module javax {
	export module security {
		export module auth {
			export module callback {
				export class Callback extends java.lang.Object {
					public static class: java.lang.Class<javax.security.auth.callback.Callback>;
					/**
					 * Constructs a new instance of the javax.security.auth.callback.Callback interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
					});
					public constructor();
				}
			}
		}
	}
}

declare module javax {
	export module security {
		export module auth {
			export module callback {
				export class CallbackHandler extends java.lang.Object {
					public static class: java.lang.Class<javax.security.auth.callback.CallbackHandler>;
					/**
					 * Constructs a new instance of the javax.security.auth.callback.CallbackHandler interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						handle(param0: native.Array<javax.security.auth.callback.Callback>): void;
					});
					public constructor();
					public handle(param0: native.Array<javax.security.auth.callback.Callback>): void;
				}
			}
		}
	}
}

declare module javax {
	export module security {
		export module auth {
			export module callback {
				export class PasswordCallback extends java.lang.Object implements javax.security.auth.callback.Callback, java.io.Serializable {
					public static class: java.lang.Class<javax.security.auth.callback.PasswordCallback>;
					public getPrompt(): string;
					public isEchoOn(): boolean;
					public clearPassword(): void;
					public constructor(param0: string, param1: boolean);
					public setPassword(param0: native.Array<string>): void;
					public getPassword(): native.Array<string>;
				}
			}
		}
	}
}

declare module javax {
	export module security {
		export module auth {
			export module callback {
				export class UnsupportedCallbackException extends java.lang.Exception {
					public static class: java.lang.Class<javax.security.auth.callback.UnsupportedCallbackException>;
					public constructor(param0: string, param1: java.lang.Throwable);
					public constructor(param0: string);
					public constructor(param0: java.lang.Throwable);
					public constructor();
					public constructor(param0: javax.security.auth.callback.Callback, param1: string);
					public getCallback(): javax.security.auth.callback.Callback;
					public constructor(param0: javax.security.auth.callback.Callback);
				}
			}
		}
	}
}

declare module javax {
	export module security {
		export module auth {
			export module login {
				export class LoginException extends java.security.GeneralSecurityException {
					public static class: java.lang.Class<javax.security.auth.login.LoginException>;
					public constructor(param0: string, param1: java.lang.Throwable);
					public constructor(param0: string);
					public constructor(param0: java.lang.Throwable);
					public constructor();
				}
			}
		}
	}
}

declare module javax {
	export module security {
		export module auth {
			export module x500 {
				export class X500Principal extends java.lang.Object implements java.io.Serializable, java.security.Principal {
					public static class: java.lang.Class<javax.security.auth.x500.X500Principal>;
					public static CANONICAL: string;
					public static RFC1779: string;
					public static RFC2253: string;
					public equals(param0: any): boolean;
					public toString(): string;
					public constructor(param0: native.Array<number>);
					public constructor(param0: java.io.InputStream);
					public constructor(param0: string);
					public constructor(param0: string, param1: java.util.Map<string,string>);
					public getName(param0: string): string;
					public getName(): string;
					public getEncoded(): native.Array<number>;
					public getName(param0: string, param1: java.util.Map<string,string>): string;
					public hashCode(): number;
				}
			}
		}
	}
}

declare module javax {
	export module security {
		export module cert {
			export abstract class Certificate extends java.lang.Object {
				public static class: java.lang.Class<javax.security.cert.Certificate>;
				public verify(param0: java.security.PublicKey, param1: string): void;
				public hashCode(): number;
				public verify(param0: java.security.PublicKey): void;
				public getPublicKey(): java.security.PublicKey;
				public equals(param0: any): boolean;
				public getEncoded(): native.Array<number>;
				public toString(): string;
				public constructor();
			}
		}
	}
}

declare module javax {
	export module security {
		export module cert {
			export class CertificateEncodingException extends javax.security.cert.CertificateException {
				public static class: java.lang.Class<javax.security.cert.CertificateEncodingException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module javax {
	export module security {
		export module cert {
			export class CertificateException extends java.lang.Exception {
				public static class: java.lang.Class<javax.security.cert.CertificateException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module javax {
	export module security {
		export module cert {
			export class CertificateExpiredException extends javax.security.cert.CertificateException {
				public static class: java.lang.Class<javax.security.cert.CertificateExpiredException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module javax {
	export module security {
		export module cert {
			export class CertificateNotYetValidException extends javax.security.cert.CertificateException {
				public static class: java.lang.Class<javax.security.cert.CertificateNotYetValidException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module javax {
	export module security {
		export module cert {
			export class CertificateParsingException extends javax.security.cert.CertificateException {
				public static class: java.lang.Class<javax.security.cert.CertificateParsingException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module javax {
	export module security {
		export module cert {
			export abstract class X509Certificate extends javax.security.cert.Certificate {
				public static class: java.lang.Class<javax.security.cert.X509Certificate>;
				public getSerialNumber(): java.math.BigInteger;
				public getNotBefore(): java.util.Date;
				public getNotAfter(): java.util.Date;
				public static getInstance(param0: java.io.InputStream): javax.security.cert.X509Certificate;
				public static getInstance(param0: native.Array<number>): javax.security.cert.X509Certificate;
				public getSubjectDN(): java.security.Principal;
				public getSigAlgParams(): native.Array<number>;
				public getIssuerDN(): java.security.Principal;
				public constructor();
				public getVersion(): number;
				public checkValidity(): void;
				public getSigAlgName(): string;
				public getSigAlgOID(): string;
				public checkValidity(param0: java.util.Date): void;
			}
		}
	}
}

declare module javax {
	export module sql {
		export class CommonDataSource extends java.lang.Object {
			public static class: java.lang.Class<javax.sql.CommonDataSource>;
			/**
			 * Constructs a new instance of the javax.sql.CommonDataSource interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				getLoginTimeout(): number;
				getLogWriter(): java.io.PrintWriter;
				setLoginTimeout(param0: number): void;
				setLogWriter(param0: java.io.PrintWriter): void;
			});
			public constructor();
			public getLoginTimeout(): number;
			public setLoginTimeout(param0: number): void;
			public getLogWriter(): java.io.PrintWriter;
			public setLogWriter(param0: java.io.PrintWriter): void;
		}
	}
}

declare module javax {
	export module sql {
		export class ConnectionEvent extends java.util.EventObject implements java.io.Serializable {
			public static class: java.lang.Class<javax.sql.ConnectionEvent>;
			public getSQLException(): java.sql.SQLException;
			public constructor(param0: javax.sql.PooledConnection);
			public constructor(param0: javax.sql.PooledConnection, param1: java.sql.SQLException);
			public constructor(param0: any);
		}
	}
}

declare module javax {
	export module sql {
		export class ConnectionEventListener extends java.lang.Object implements java.util.EventListener {
			public static class: java.lang.Class<javax.sql.ConnectionEventListener>;
			/**
			 * Constructs a new instance of the javax.sql.ConnectionEventListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				connectionClosed(param0: javax.sql.ConnectionEvent): void;
				connectionErrorOccurred(param0: javax.sql.ConnectionEvent): void;
			});
			public constructor();
			public connectionClosed(param0: javax.sql.ConnectionEvent): void;
			public connectionErrorOccurred(param0: javax.sql.ConnectionEvent): void;
		}
	}
}

declare module javax {
	export module sql {
		export class ConnectionPoolDataSource extends java.lang.Object implements javax.sql.CommonDataSource {
			public static class: java.lang.Class<javax.sql.ConnectionPoolDataSource>;
			/**
			 * Constructs a new instance of the javax.sql.ConnectionPoolDataSource interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				getPooledConnection(): javax.sql.PooledConnection;
				getPooledConnection(param0: string, param1: string): javax.sql.PooledConnection;
				getLoginTimeout(): number;
				getLogWriter(): java.io.PrintWriter;
				setLoginTimeout(param0: number): void;
				setLogWriter(param0: java.io.PrintWriter): void;
			});
			public constructor();
			public getLoginTimeout(): number;
			public getPooledConnection(param0: string, param1: string): javax.sql.PooledConnection;
			public setLoginTimeout(param0: number): void;
			public getPooledConnection(): javax.sql.PooledConnection;
			public getLogWriter(): java.io.PrintWriter;
			public setLogWriter(param0: java.io.PrintWriter): void;
		}
	}
}

declare module javax {
	export module sql {
		export class DataSource extends java.lang.Object implements javax.sql.CommonDataSource, java.sql.Wrapper {
			public static class: java.lang.Class<javax.sql.DataSource>;
			/**
			 * Constructs a new instance of the javax.sql.DataSource interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				getConnection(): java.sql.Connection;
				getConnection(param0: string, param1: string): java.sql.Connection;
				getLoginTimeout(): number;
				getLogWriter(): java.io.PrintWriter;
				setLoginTimeout(param0: number): void;
				setLogWriter(param0: java.io.PrintWriter): void;
				unwrap(param0: java.lang.Class<any>): any;
				isWrapperFor(param0: java.lang.Class<any>): boolean;
			});
			public constructor();
			public getLoginTimeout(): number;
			public setLoginTimeout(param0: number): void;
			public getConnection(param0: string, param1: string): java.sql.Connection;
			public isWrapperFor(param0: java.lang.Class<any>): boolean;
			public getConnection(): java.sql.Connection;
			public getLogWriter(): java.io.PrintWriter;
			public unwrap(param0: java.lang.Class<any>): any;
			public setLogWriter(param0: java.io.PrintWriter): void;
		}
	}
}

declare module javax {
	export module sql {
		export class PooledConnection extends java.lang.Object {
			public static class: java.lang.Class<javax.sql.PooledConnection>;
			/**
			 * Constructs a new instance of the javax.sql.PooledConnection interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				addConnectionEventListener(param0: javax.sql.ConnectionEventListener): void;
				close(): void;
				getConnection(): java.sql.Connection;
				removeConnectionEventListener(param0: javax.sql.ConnectionEventListener): void;
				addStatementEventListener(param0: javax.sql.StatementEventListener): void;
				removeStatementEventListener(param0: javax.sql.StatementEventListener): void;
			});
			public constructor();
			public addConnectionEventListener(param0: javax.sql.ConnectionEventListener): void;
			public removeStatementEventListener(param0: javax.sql.StatementEventListener): void;
			public addStatementEventListener(param0: javax.sql.StatementEventListener): void;
			public getConnection(): java.sql.Connection;
			public removeConnectionEventListener(param0: javax.sql.ConnectionEventListener): void;
			public close(): void;
		}
	}
}

declare module javax {
	export module sql {
		export class RowSet extends java.lang.Object implements java.sql.ResultSet {
			public static class: java.lang.Class<javax.sql.RowSet>;
			/**
			 * Constructs a new instance of the javax.sql.RowSet interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				addRowSetListener(param0: javax.sql.RowSetListener): void;
				clearParameters(): void;
				execute(): void;
				getCommand(): string;
				getDataSourceName(): string;
				getEscapeProcessing(): boolean;
				getMaxFieldSize(): number;
				getMaxRows(): number;
				getPassword(): string;
				getQueryTimeout(): number;
				getTransactionIsolation(): number;
				getTypeMap(): java.util.Map<string,java.lang.Class<any>>;
				getUrl(): string;
				getUsername(): string;
				isReadOnly(): boolean;
				removeRowSetListener(param0: javax.sql.RowSetListener): void;
				setArray(param0: number, param1: java.sql.Array): void;
				setAsciiStream(param0: number, param1: java.io.InputStream, param2: number): void;
				setAsciiStream(param0: number, param1: java.io.InputStream): void;
				setAsciiStream(param0: string, param1: java.io.InputStream): void;
				setAsciiStream(param0: string, param1: java.io.InputStream, param2: number): void;
				setBigDecimal(param0: number, param1: java.math.BigDecimal): void;
				setBigDecimal(param0: string, param1: java.math.BigDecimal): void;
				setBinaryStream(param0: number, param1: java.io.InputStream, param2: number): void;
				setBinaryStream(param0: number, param1: java.io.InputStream): void;
				setBinaryStream(param0: string, param1: java.io.InputStream): void;
				setBinaryStream(param0: string, param1: java.io.InputStream, param2: number): void;
				setBlob(param0: number, param1: java.sql.Blob): void;
				setBlob(param0: number, param1: java.io.InputStream): void;
				setBlob(param0: number, param1: java.io.InputStream, param2: number): void;
				setBlob(param0: string, param1: java.io.InputStream): void;
				setBlob(param0: string, param1: java.io.InputStream, param2: number): void;
				setBlob(param0: string, param1: java.sql.Blob): void;
				setBoolean(param0: number, param1: boolean): void;
				setBoolean(param0: string, param1: boolean): void;
				setByte(param0: number, param1: number): void;
				setByte(param0: string, param1: number): void;
				setBytes(param0: number, param1: native.Array<number>): void;
				setBytes(param0: string, param1: native.Array<number>): void;
				setCharacterStream(param0: number, param1: java.io.Reader, param2: number): void;
				setCharacterStream(param0: number, param1: java.io.Reader): void;
				setCharacterStream(param0: string, param1: java.io.Reader): void;
				setCharacterStream(param0: string, param1: java.io.Reader, param2: number): void;
				setClob(param0: number, param1: java.sql.Clob): void;
				setClob(param0: number, param1: java.io.Reader): void;
				setClob(param0: number, param1: java.io.Reader, param2: number): void;
				setClob(param0: string, param1: java.sql.Clob): void;
				setClob(param0: string, param1: java.io.Reader): void;
				setClob(param0: string, param1: java.io.Reader, param2: number): void;
				setCommand(param0: string): void;
				setConcurrency(param0: number): void;
				setDataSourceName(param0: string): void;
				setDate(param0: number, param1: java.sql.Date): void;
				setDate(param0: number, param1: java.sql.Date, param2: java.util.Calendar): void;
				setDate(param0: string, param1: java.sql.Date): void;
				setDate(param0: string, param1: java.sql.Date, param2: java.util.Calendar): void;
				setDouble(param0: number, param1: number): void;
				setDouble(param0: string, param1: number): void;
				setEscapeProcessing(param0: boolean): void;
				setFloat(param0: number, param1: number): void;
				setFloat(param0: string, param1: number): void;
				setInt(param0: number, param1: number): void;
				setInt(param0: string, param1: number): void;
				setLong(param0: number, param1: number): void;
				setLong(param0: string, param1: number): void;
				setMaxFieldSize(param0: number): void;
				setMaxRows(param0: number): void;
				setNCharacterStream(param0: number, param1: java.io.Reader): void;
				setNCharacterStream(param0: number, param1: java.io.Reader, param2: number): void;
				setNCharacterStream(param0: string, param1: java.io.Reader): void;
				setNCharacterStream(param0: string, param1: java.io.Reader, param2: number): void;
				setNClob(param0: number, param1: java.sql.NClob): void;
				setNClob(param0: number, param1: java.io.Reader): void;
				setNClob(param0: number, param1: java.io.Reader, param2: number): void;
				setNClob(param0: string, param1: java.sql.NClob): void;
				setNClob(param0: string, param1: java.io.Reader): void;
				setNClob(param0: string, param1: java.io.Reader, param2: number): void;
				setNString(param0: number, param1: string): void;
				setNString(param0: string, param1: string): void;
				setNull(param0: number, param1: number): void;
				setNull(param0: number, param1: number, param2: string): void;
				setNull(param0: string, param1: number): void;
				setNull(param0: string, param1: number, param2: string): void;
				setObject(param0: number, param1: any): void;
				setObject(param0: number, param1: any, param2: number): void;
				setObject(param0: number, param1: any, param2: number, param3: number): void;
				setObject(param0: string, param1: any): void;
				setObject(param0: string, param1: any, param2: number): void;
				setObject(param0: string, param1: any, param2: number, param3: number): void;
				setPassword(param0: string): void;
				setQueryTimeout(param0: number): void;
				setReadOnly(param0: boolean): void;
				setRef(param0: number, param1: java.sql.Ref): void;
				setShort(param0: number, param1: number): void;
				setShort(param0: string, param1: number): void;
				setString(param0: number, param1: string): void;
				setString(param0: string, param1: string): void;
				setRowId(param0: number, param1: java.sql.RowId): void;
				setRowId(param0: string, param1: java.sql.RowId): void;
				setSQLXML(param0: number, param1: java.sql.SQLXML): void;
				setSQLXML(param0: string, param1: java.sql.SQLXML): void;
				setTime(param0: number, param1: java.sql.Time): void;
				setTime(param0: number, param1: java.sql.Time, param2: java.util.Calendar): void;
				setTime(param0: string, param1: java.sql.Time): void;
				setTime(param0: string, param1: java.sql.Time, param2: java.util.Calendar): void;
				setTimestamp(param0: number, param1: java.sql.Timestamp): void;
				setTimestamp(param0: number, param1: java.sql.Timestamp, param2: java.util.Calendar): void;
				setTimestamp(param0: string, param1: java.sql.Timestamp): void;
				setTimestamp(param0: string, param1: java.sql.Timestamp, param2: java.util.Calendar): void;
				setTransactionIsolation(param0: number): void;
				setType(param0: number): void;
				setTypeMap(param0: java.util.Map<string,java.lang.Class<any>>): void;
				setUrl(param0: string): void;
				setURL(param0: number, param1: java.net.URL): void;
				setUsername(param0: string): void;
				absolute(param0: number): boolean;
				afterLast(): void;
				beforeFirst(): void;
				cancelRowUpdates(): void;
				clearWarnings(): void;
				close(): void;
				deleteRow(): void;
				findColumn(param0: string): number;
				first(): boolean;
				getArray(param0: number): java.sql.Array;
				getArray(param0: string): java.sql.Array;
				getAsciiStream(param0: number): java.io.InputStream;
				getAsciiStream(param0: string): java.io.InputStream;
				getBigDecimal(param0: number): java.math.BigDecimal;
				getBigDecimal(param0: number, param1: number): java.math.BigDecimal;
				getBigDecimal(param0: string): java.math.BigDecimal;
				getBigDecimal(param0: string, param1: number): java.math.BigDecimal;
				getBinaryStream(param0: number): java.io.InputStream;
				getBinaryStream(param0: string): java.io.InputStream;
				getBlob(param0: number): java.sql.Blob;
				getBlob(param0: string): java.sql.Blob;
				getBoolean(param0: number): boolean;
				getBoolean(param0: string): boolean;
				getByte(param0: number): number;
				getByte(param0: string): number;
				getBytes(param0: number): native.Array<number>;
				getBytes(param0: string): native.Array<number>;
				getCharacterStream(param0: number): java.io.Reader;
				getCharacterStream(param0: string): java.io.Reader;
				getClob(param0: number): java.sql.Clob;
				getClob(param0: string): java.sql.Clob;
				getConcurrency(): number;
				getCursorName(): string;
				getDate(param0: number): java.sql.Date;
				getDate(param0: number, param1: java.util.Calendar): java.sql.Date;
				getDate(param0: string): java.sql.Date;
				getDate(param0: string, param1: java.util.Calendar): java.sql.Date;
				getDouble(param0: number): number;
				getDouble(param0: string): number;
				getFetchDirection(): number;
				getFetchSize(): number;
				getFloat(param0: number): number;
				getFloat(param0: string): number;
				getInt(param0: number): number;
				getInt(param0: string): number;
				getLong(param0: number): number;
				getLong(param0: string): number;
				getMetaData(): java.sql.ResultSetMetaData;
				getObject(param0: number): any;
				getObject(param0: number, param1: java.util.Map<string,java.lang.Class<any>>): any;
				getObject(param0: string): any;
				getObject(param0: string, param1: java.util.Map<string,java.lang.Class<any>>): any;
				getRef(param0: number): java.sql.Ref;
				getRef(param0: string): java.sql.Ref;
				getRow(): number;
				getShort(param0: number): number;
				getShort(param0: string): number;
				getStatement(): java.sql.Statement;
				getString(param0: number): string;
				getString(param0: string): string;
				getTime(param0: number): java.sql.Time;
				getTime(param0: number, param1: java.util.Calendar): java.sql.Time;
				getTime(param0: string): java.sql.Time;
				getTime(param0: string, param1: java.util.Calendar): java.sql.Time;
				getTimestamp(param0: number): java.sql.Timestamp;
				getTimestamp(param0: number, param1: java.util.Calendar): java.sql.Timestamp;
				getTimestamp(param0: string): java.sql.Timestamp;
				getTimestamp(param0: string, param1: java.util.Calendar): java.sql.Timestamp;
				getType(): number;
				getUnicodeStream(param0: number): java.io.InputStream;
				getUnicodeStream(param0: string): java.io.InputStream;
				getURL(param0: number): java.net.URL;
				getURL(param0: string): java.net.URL;
				getWarnings(): java.sql.SQLWarning;
				insertRow(): void;
				isAfterLast(): boolean;
				isBeforeFirst(): boolean;
				isFirst(): boolean;
				isLast(): boolean;
				last(): boolean;
				moveToCurrentRow(): void;
				moveToInsertRow(): void;
				next(): boolean;
				previous(): boolean;
				refreshRow(): void;
				relative(param0: number): boolean;
				rowDeleted(): boolean;
				rowInserted(): boolean;
				rowUpdated(): boolean;
				setFetchDirection(param0: number): void;
				setFetchSize(param0: number): void;
				updateArray(param0: number, param1: java.sql.Array): void;
				updateArray(param0: string, param1: java.sql.Array): void;
				updateAsciiStream(param0: number, param1: java.io.InputStream, param2: number): void;
				updateAsciiStream(param0: string, param1: java.io.InputStream, param2: number): void;
				updateBigDecimal(param0: number, param1: java.math.BigDecimal): void;
				updateBigDecimal(param0: string, param1: java.math.BigDecimal): void;
				updateBinaryStream(param0: number, param1: java.io.InputStream, param2: number): void;
				updateBinaryStream(param0: string, param1: java.io.InputStream, param2: number): void;
				updateBlob(param0: number, param1: java.sql.Blob): void;
				updateBlob(param0: string, param1: java.sql.Blob): void;
				updateBoolean(param0: number, param1: boolean): void;
				updateBoolean(param0: string, param1: boolean): void;
				updateByte(param0: number, param1: number): void;
				updateByte(param0: string, param1: number): void;
				updateBytes(param0: number, param1: native.Array<number>): void;
				updateBytes(param0: string, param1: native.Array<number>): void;
				updateCharacterStream(param0: number, param1: java.io.Reader, param2: number): void;
				updateCharacterStream(param0: string, param1: java.io.Reader, param2: number): void;
				updateClob(param0: number, param1: java.sql.Clob): void;
				updateClob(param0: string, param1: java.sql.Clob): void;
				updateDate(param0: number, param1: java.sql.Date): void;
				updateDate(param0: string, param1: java.sql.Date): void;
				updateDouble(param0: number, param1: number): void;
				updateDouble(param0: string, param1: number): void;
				updateFloat(param0: number, param1: number): void;
				updateFloat(param0: string, param1: number): void;
				updateInt(param0: number, param1: number): void;
				updateInt(param0: string, param1: number): void;
				updateLong(param0: number, param1: number): void;
				updateLong(param0: string, param1: number): void;
				updateNull(param0: number): void;
				updateNull(param0: string): void;
				updateObject(param0: number, param1: any): void;
				updateObject(param0: number, param1: any, param2: number): void;
				updateObject(param0: string, param1: any): void;
				updateObject(param0: string, param1: any, param2: number): void;
				updateRef(param0: number, param1: java.sql.Ref): void;
				updateRef(param0: string, param1: java.sql.Ref): void;
				updateRow(): void;
				updateShort(param0: number, param1: number): void;
				updateShort(param0: string, param1: number): void;
				updateString(param0: number, param1: string): void;
				updateString(param0: string, param1: string): void;
				updateTime(param0: number, param1: java.sql.Time): void;
				updateTime(param0: string, param1: java.sql.Time): void;
				updateTimestamp(param0: number, param1: java.sql.Timestamp): void;
				updateTimestamp(param0: string, param1: java.sql.Timestamp): void;
				wasNull(): boolean;
				getRowId(param0: number): java.sql.RowId;
				getRowId(param0: string): java.sql.RowId;
				updateRowId(param0: number, param1: java.sql.RowId): void;
				updateRowId(param0: string, param1: java.sql.RowId): void;
				getHoldability(): number;
				isClosed(): boolean;
				updateNString(param0: number, param1: string): void;
				updateNString(param0: string, param1: string): void;
				updateNClob(param0: number, param1: java.sql.NClob): void;
				updateNClob(param0: string, param1: java.sql.NClob): void;
				getNClob(param0: number): java.sql.NClob;
				getNClob(param0: string): java.sql.NClob;
				getSQLXML(param0: number): java.sql.SQLXML;
				getSQLXML(param0: string): java.sql.SQLXML;
				updateSQLXML(param0: number, param1: java.sql.SQLXML): void;
				updateSQLXML(param0: string, param1: java.sql.SQLXML): void;
				getNString(param0: number): string;
				getNString(param0: string): string;
				getNCharacterStream(param0: number): java.io.Reader;
				getNCharacterStream(param0: string): java.io.Reader;
				updateNCharacterStream(param0: number, param1: java.io.Reader, param2: number): void;
				updateNCharacterStream(param0: string, param1: java.io.Reader, param2: number): void;
				updateAsciiStream(param0: number, param1: java.io.InputStream, param2: number): void;
				updateBinaryStream(param0: number, param1: java.io.InputStream, param2: number): void;
				updateCharacterStream(param0: number, param1: java.io.Reader, param2: number): void;
				updateAsciiStream(param0: string, param1: java.io.InputStream, param2: number): void;
				updateBinaryStream(param0: string, param1: java.io.InputStream, param2: number): void;
				updateCharacterStream(param0: string, param1: java.io.Reader, param2: number): void;
				updateBlob(param0: number, param1: java.io.InputStream, param2: number): void;
				updateBlob(param0: string, param1: java.io.InputStream, param2: number): void;
				updateClob(param0: number, param1: java.io.Reader, param2: number): void;
				updateClob(param0: string, param1: java.io.Reader, param2: number): void;
				updateNClob(param0: number, param1: java.io.Reader, param2: number): void;
				updateNClob(param0: string, param1: java.io.Reader, param2: number): void;
				updateNCharacterStream(param0: number, param1: java.io.Reader): void;
				updateNCharacterStream(param0: string, param1: java.io.Reader): void;
				updateAsciiStream(param0: number, param1: java.io.InputStream): void;
				updateBinaryStream(param0: number, param1: java.io.InputStream): void;
				updateCharacterStream(param0: number, param1: java.io.Reader): void;
				updateAsciiStream(param0: string, param1: java.io.InputStream): void;
				updateBinaryStream(param0: string, param1: java.io.InputStream): void;
				updateCharacterStream(param0: string, param1: java.io.Reader): void;
				updateBlob(param0: number, param1: java.io.InputStream): void;
				updateBlob(param0: string, param1: java.io.InputStream): void;
				updateClob(param0: number, param1: java.io.Reader): void;
				updateClob(param0: string, param1: java.io.Reader): void;
				updateNClob(param0: number, param1: java.io.Reader): void;
				updateNClob(param0: string, param1: java.io.Reader): void;
				unwrap(param0: java.lang.Class<any>): any;
				isWrapperFor(param0: java.lang.Class<any>): boolean;
			});
			public constructor();
			public static HOLD_CURSORS_OVER_COMMIT: number;
			public static CLOSE_CURSORS_AT_COMMIT: number;
			public static FETCH_UNKNOWN: number;
			public static FETCH_REVERSE: number;
			public static CONCUR_READ_ONLY: number;
			public static TYPE_SCROLL_SENSITIVE: number;
			public static CONCUR_UPDATABLE: number;
			public static TYPE_FORWARD_ONLY: number;
			public static TYPE_SCROLL_INSENSITIVE: number;
			public static FETCH_FORWARD: number;
			public getAsciiStream(param0: number): java.io.InputStream;
			public setNClob(param0: string, param1: java.io.Reader): void;
			public previous(): boolean;
			public setNString(param0: string, param1: string): void;
			public setBlob(param0: number, param1: java.io.InputStream): void;
			public updateBinaryStream(param0: string, param1: java.io.InputStream, param2: number): void;
			public setByte(param0: number, param1: number): void;
			public setSQLXML(param0: number, param1: java.sql.SQLXML): void;
			public cancelRowUpdates(): void;
			public wasNull(): boolean;
			public updateSQLXML(param0: string, param1: java.sql.SQLXML): void;
			public updateRef(param0: string, param1: java.sql.Ref): void;
			public setNull(param0: string, param1: number, param2: string): void;
			public updateNClob(param0: number, param1: java.io.Reader, param2: number): void;
			public updateCharacterStream(param0: number, param1: java.io.Reader, param2: number): void;
			public getNClob(param0: string): java.sql.NClob;
			public updateArray(param0: string, param1: java.sql.Array): void;
			public setCharacterStream(param0: number, param1: java.io.Reader, param2: number): void;
			public setNCharacterStream(param0: string, param1: java.io.Reader): void;
			public refreshRow(): void;
			public setNClob(param0: number, param1: java.sql.NClob): void;
			public updateTime(param0: number, param1: java.sql.Time): void;
			public updateCharacterStream(param0: string, param1: java.io.Reader): void;
			public setEscapeProcessing(param0: boolean): void;
			public getCursorName(): string;
			public getObject(param0: string): any;
			public setBlob(param0: string, param1: java.io.InputStream): void;
			public getDouble(param0: string): number;
			public last(): boolean;
			public relative(param0: number): boolean;
			/** @deprecated */
			public getBigDecimal(param0: number, param1: number): java.math.BigDecimal;
			public setLong(param0: string, param1: number): void;
			public getRef(param0: number): java.sql.Ref;
			public getType(): number;
			public isClosed(): boolean;
			public getObject(param0: number, param1: java.util.Map<string,java.lang.Class<any>>): any;
			public updateBlob(param0: number, param1: java.sql.Blob): void;
			public setDate(param0: string, param1: java.sql.Date, param2: java.util.Calendar): void;
			public clearParameters(): void;
			public updateNull(param0: number): void;
			public updateAsciiStream(param0: string, param1: java.io.InputStream, param2: number): void;
			public setDate(param0: string, param1: java.sql.Date): void;
			public isLast(): boolean;
			public updateString(param0: string, param1: string): void;
			public getSQLXML(param0: number): java.sql.SQLXML;
			public updateNull(param0: string): void;
			public getPassword(): string;
			public getCharacterStream(param0: number): java.io.Reader;
			public updateBigDecimal(param0: string, param1: java.math.BigDecimal): void;
			public updateClob(param0: number, param1: java.sql.Clob): void;
			public getObject(param0: string, param1: java.util.Map<string,java.lang.Class<any>>): any;
			public getUrl(): string;
			public setUrl(param0: string): void;
			public isFirst(): boolean;
			public updateObject(param0: number, param1: any, param2: number): void;
			public setClob(param0: number, param1: java.io.Reader, param2: number): void;
			public findColumn(param0: string): number;
			public setBytes(param0: number, param1: native.Array<number>): void;
			public getString(param0: string): string;
			public setString(param0: string, param1: string): void;
			public updateNString(param0: number, param1: string): void;
			public setCharacterStream(param0: number, param1: java.io.Reader): void;
			public setTimestamp(param0: number, param1: java.sql.Timestamp): void;
			public setArray(param0: number, param1: java.sql.Array): void;
			public setClob(param0: number, param1: java.io.Reader): void;
			public setTimestamp(param0: string, param1: java.sql.Timestamp, param2: java.util.Calendar): void;
			public getRow(): number;
			public setBlob(param0: number, param1: java.io.InputStream, param2: number): void;
			public rowInserted(): boolean;
			public setDouble(param0: number, param1: number): void;
			public getRowId(param0: string): java.sql.RowId;
			public getArray(param0: number): java.sql.Array;
			public getDate(param0: number): java.sql.Date;
			public setClob(param0: string, param1: java.io.Reader): void;
			public rowDeleted(): boolean;
			public setBlob(param0: string, param1: java.io.InputStream, param2: number): void;
			public getTimestamp(param0: string, param1: java.util.Calendar): java.sql.Timestamp;
			public updateObject(param0: string, param1: any): void;
			public setDouble(param0: string, param1: number): void;
			public updateLong(param0: number, param1: number): void;
			public getBoolean(param0: string): boolean;
			public setNCharacterStream(param0: string, param1: java.io.Reader, param2: number): void;
			public setFloat(param0: number, param1: number): void;
			public setNClob(param0: string, param1: java.io.Reader, param2: number): void;
			public getBigDecimal(param0: number): java.math.BigDecimal;
			public updateBinaryStream(param0: number, param1: java.io.InputStream, param2: number): void;
			public getStatement(): java.sql.Statement;
			public updateNClob(param0: string, param1: java.sql.NClob): void;
			public updateByte(param0: string, param1: number): void;
			public updateNCharacterStream(param0: number, param1: java.io.Reader, param2: number): void;
			public setBlob(param0: string, param1: java.sql.Blob): void;
			public setCommand(param0: string): void;
			public getShort(param0: number): number;
			public setBoolean(param0: number, param1: boolean): void;
			public setShort(param0: string, param1: number): void;
			public getDouble(param0: number): number;
			public getBytes(param0: string): native.Array<number>;
			public getString(param0: number): string;
			public setNull(param0: number, param1: number): void;
			public getFetchDirection(): number;
			public updateAsciiStream(param0: string, param1: java.io.InputStream): void;
			public setTimestamp(param0: number, param1: java.sql.Timestamp, param2: java.util.Calendar): void;
			public execute(): void;
			public setInt(param0: number, param1: number): void;
			public getBinaryStream(param0: number): java.io.InputStream;
			public getTime(param0: string, param1: java.util.Calendar): java.sql.Time;
			public getRowId(param0: number): java.sql.RowId;
			public updateClob(param0: string, param1: java.io.Reader, param2: number): void;
			public setSQLXML(param0: string, param1: java.sql.SQLXML): void;
			public updateBoolean(param0: number, param1: boolean): void;
			public updateTimestamp(param0: number, param1: java.sql.Timestamp): void;
			public updateRef(param0: number, param1: java.sql.Ref): void;
			public isWrapperFor(param0: java.lang.Class<any>): boolean;
			public updateBoolean(param0: string, param1: boolean): void;
			public updateFloat(param0: string, param1: number): void;
			public updateNCharacterStream(param0: string, param1: java.io.Reader, param2: number): void;
			public isBeforeFirst(): boolean;
			public setTime(param0: number, param1: java.sql.Time, param2: java.util.Calendar): void;
			public setTime(param0: string, param1: java.sql.Time, param2: java.util.Calendar): void;
			public updateNClob(param0: string, param1: java.io.Reader): void;
			public updateRow(): void;
			public updateBlob(param0: string, param1: java.io.InputStream): void;
			public updateClob(param0: string, param1: java.io.Reader): void;
			public getHoldability(): number;
			public moveToInsertRow(): void;
			public updateClob(param0: number, param1: java.io.Reader, param2: number): void;
			public updateDouble(param0: string, param1: number): void;
			public setURL(param0: number, param1: java.net.URL): void;
			public getRef(param0: string): java.sql.Ref;
			public moveToCurrentRow(): void;
			public setBigDecimal(param0: number, param1: java.math.BigDecimal): void;
			public setTime(param0: number, param1: java.sql.Time): void;
			public getNString(param0: number): string;
			public setRowId(param0: string, param1: java.sql.RowId): void;
			public getLong(param0: number): number;
			public getTransactionIsolation(): number;
			public getQueryTimeout(): number;
			public updateRowId(param0: number, param1: java.sql.RowId): void;
			public updateNCharacterStream(param0: number, param1: java.io.Reader): void;
			public isReadOnly(): boolean;
			public updateBinaryStream(param0: string, param1: java.io.InputStream): void;
			public updateObject(param0: number, param1: any): void;
			public setAsciiStream(param0: number, param1: java.io.InputStream): void;
			public getClob(param0: string): java.sql.Clob;
			public updateDouble(param0: number, param1: number): void;
			public setLong(param0: number, param1: number): void;
			public setMaxRows(param0: number): void;
			public setNull(param0: number, param1: number, param2: string): void;
			public setObject(param0: number, param1: any, param2: number): void;
			public setBinaryStream(param0: string, param1: java.io.InputStream): void;
			public setCharacterStream(param0: string, param1: java.io.Reader): void;
			public removeRowSetListener(param0: javax.sql.RowSetListener): void;
			public getConcurrency(): number;
			public afterLast(): void;
			public getCommand(): string;
			public clearWarnings(): void;
			public setByte(param0: string, param1: number): void;
			public setAsciiStream(param0: string, param1: java.io.InputStream): void;
			public updateArray(param0: number, param1: java.sql.Array): void;
			public getByte(param0: number): number;
			public getNString(param0: string): string;
			public setBinaryStream(param0: number, param1: java.io.InputStream): void;
			public setClob(param0: number, param1: java.sql.Clob): void;
			public setQueryTimeout(param0: number): void;
			public setNClob(param0: number, param1: java.io.Reader): void;
			public updateBinaryStream(param0: number, param1: java.io.InputStream): void;
			public setMaxFieldSize(param0: number): void;
			public setObject(param0: number, param1: any): void;
			public getFloat(param0: string): number;
			public setFetchSize(param0: number): void;
			public setNString(param0: number, param1: string): void;
			public absolute(param0: number): boolean;
			public setConcurrency(param0: number): void;
			public setNCharacterStream(param0: number, param1: java.io.Reader, param2: number): void;
			public updateNString(param0: string, param1: string): void;
			public getInt(param0: number): number;
			public setNull(param0: string, param1: number): void;
			public setDate(param0: number, param1: java.sql.Date): void;
			public setCharacterStream(param0: string, param1: java.io.Reader, param2: number): void;
			public getMaxRows(): number;
			public updateAsciiStream(param0: number, param1: java.io.InputStream, param2: number): void;
			public updateBytes(param0: string, param1: native.Array<number>): void;
			public setNClob(param0: string, param1: java.sql.NClob): void;
			public getDataSourceName(): string;
			/** @deprecated */
			public getBigDecimal(param0: string, param1: number): java.math.BigDecimal;
			public updateNClob(param0: string, param1: java.io.Reader, param2: number): void;
			public setReadOnly(param0: boolean): void;
			public getMetaData(): java.sql.ResultSetMetaData;
			public updateCharacterStream(param0: string, param1: java.io.Reader, param2: number): void;
			public updateCharacterStream(param0: number, param1: java.io.Reader): void;
			public updateBlob(param0: string, param1: java.sql.Blob): void;
			public getTypeMap(): java.util.Map<string,java.lang.Class<any>>;
			public updateAsciiStream(param0: number, param1: java.io.InputStream): void;
			public updateString(param0: number, param1: string): void;
			public getTimestamp(param0: number, param1: java.util.Calendar): java.sql.Timestamp;
			/** @deprecated */
			public getUnicodeStream(param0: string): java.io.InputStream;
			public setNClob(param0: number, param1: java.io.Reader, param2: number): void;
			public close(): void;
			public setFloat(param0: string, param1: number): void;
			public setDate(param0: number, param1: java.sql.Date, param2: java.util.Calendar): void;
			public setObject(param0: string, param1: any, param2: number): void;
			public getDate(param0: string): java.sql.Date;
			public updateNClob(param0: number, param1: java.sql.NClob): void;
			public updateDate(param0: string, param1: java.sql.Date): void;
			public addRowSetListener(param0: javax.sql.RowSetListener): void;
			public getAsciiStream(param0: string): java.io.InputStream;
			public rowUpdated(): boolean;
			public setTransactionIsolation(param0: number): void;
			public getObject(param0: number): any;
			public getURL(param0: number): java.net.URL;
			public updateSQLXML(param0: number, param1: java.sql.SQLXML): void;
			public setTypeMap(param0: java.util.Map<string,java.lang.Class<any>>): void;
			public setBigDecimal(param0: string, param1: java.math.BigDecimal): void;
			public setDataSourceName(param0: string): void;
			public next(): boolean;
			public getShort(param0: string): number;
			/** @deprecated */
			public getUnicodeStream(param0: number): java.io.InputStream;
			public setBlob(param0: number, param1: java.sql.Blob): void;
			public updateInt(param0: string, param1: number): void;
			public getDate(param0: number, param1: java.util.Calendar): java.sql.Date;
			public setInt(param0: string, param1: number): void;
			public setBoolean(param0: string, param1: boolean): void;
			public insertRow(): void;
			public updateBlob(param0: string, param1: java.io.InputStream, param2: number): void;
			public updateInt(param0: number, param1: number): void;
			public getUsername(): string;
			public getFloat(param0: number): number;
			public updateDate(param0: number, param1: java.sql.Date): void;
			public setType(param0: number): void;
			public setClob(param0: string, param1: java.io.Reader, param2: number): void;
			public updateClob(param0: string, param1: java.sql.Clob): void;
			public updateTime(param0: string, param1: java.sql.Time): void;
			public setObject(param0: number, param1: any, param2: number, param3: number): void;
			public isAfterLast(): boolean;
			public getWarnings(): java.sql.SQLWarning;
			public beforeFirst(): void;
			public getBlob(param0: string): java.sql.Blob;
			public updateShort(param0: string, param1: number): void;
			public updateByte(param0: number, param1: number): void;
			public getCharacterStream(param0: string): java.io.Reader;
			public getSQLXML(param0: string): java.sql.SQLXML;
			public getMaxFieldSize(): number;
			public getTime(param0: number, param1: java.util.Calendar): java.sql.Time;
			public updateBlob(param0: number, param1: java.io.InputStream): void;
			public getFetchSize(): number;
			public getLong(param0: string): number;
			public getTime(param0: number): java.sql.Time;
			public getClob(param0: number): java.sql.Clob;
			public getInt(param0: string): number;
			public getArray(param0: string): java.sql.Array;
			public getByte(param0: string): number;
			public setObject(param0: string, param1: any): void;
			public setRef(param0: number, param1: java.sql.Ref): void;
			public setClob(param0: string, param1: java.sql.Clob): void;
			public updateShort(param0: number, param1: number): void;
			public updateTimestamp(param0: string, param1: java.sql.Timestamp): void;
			public updateFloat(param0: number, param1: number): void;
			public setPassword(param0: string): void;
			public getNCharacterStream(param0: string): java.io.Reader;
			public getBoolean(param0: number): boolean;
			public updateNCharacterStream(param0: string, param1: java.io.Reader): void;
			public setString(param0: number, param1: string): void;
			public updateRowId(param0: string, param1: java.sql.RowId): void;
			public first(): boolean;
			public setRowId(param0: number, param1: java.sql.RowId): void;
			public getBytes(param0: number): native.Array<number>;
			public getTimestamp(param0: string): java.sql.Timestamp;
			public getTime(param0: string): java.sql.Time;
			public setShort(param0: number, param1: number): void;
			public updateBytes(param0: number, param1: native.Array<number>): void;
			public unwrap(param0: java.lang.Class<any>): any;
			public getBlob(param0: number): java.sql.Blob;
			public setTime(param0: string, param1: java.sql.Time): void;
			public setBinaryStream(param0: number, param1: java.io.InputStream, param2: number): void;
			public updateBigDecimal(param0: number, param1: java.math.BigDecimal): void;
			public getDate(param0: string, param1: java.util.Calendar): java.sql.Date;
			public getNClob(param0: number): java.sql.NClob;
			public getURL(param0: string): java.net.URL;
			public updateClob(param0: number, param1: java.io.Reader): void;
			public getEscapeProcessing(): boolean;
			public getTimestamp(param0: number): java.sql.Timestamp;
			public setObject(param0: string, param1: any, param2: number, param3: number): void;
			public getBinaryStream(param0: string): java.io.InputStream;
			public updateNClob(param0: number, param1: java.io.Reader): void;
			public setBinaryStream(param0: string, param1: java.io.InputStream, param2: number): void;
			public setBytes(param0: string, param1: native.Array<number>): void;
			public setNCharacterStream(param0: number, param1: java.io.Reader): void;
			public deleteRow(): void;
			public getNCharacterStream(param0: number): java.io.Reader;
			public setFetchDirection(param0: number): void;
			public updateBlob(param0: number, param1: java.io.InputStream, param2: number): void;
			public getBigDecimal(param0: string): java.math.BigDecimal;
			public setUsername(param0: string): void;
			public setAsciiStream(param0: string, param1: java.io.InputStream, param2: number): void;
			public updateObject(param0: string, param1: any, param2: number): void;
			public setAsciiStream(param0: number, param1: java.io.InputStream, param2: number): void;
			public setTimestamp(param0: string, param1: java.sql.Timestamp): void;
			public updateLong(param0: string, param1: number): void;
		}
	}
}

declare module javax {
	export module sql {
		export class RowSetEvent extends java.util.EventObject implements java.io.Serializable {
			public static class: java.lang.Class<javax.sql.RowSetEvent>;
			public constructor(param0: javax.sql.RowSet);
			public constructor(param0: any);
		}
	}
}

declare module javax {
	export module sql {
		export class RowSetInternal extends java.lang.Object {
			public static class: java.lang.Class<javax.sql.RowSetInternal>;
			/**
			 * Constructs a new instance of the javax.sql.RowSetInternal interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				getConnection(): java.sql.Connection;
				getOriginal(): java.sql.ResultSet;
				getOriginalRow(): java.sql.ResultSet;
				getParams(): native.Array<any>;
				setMetaData(param0: javax.sql.RowSetMetaData): void;
			});
			public constructor();
			public getParams(): native.Array<any>;
			public getOriginalRow(): java.sql.ResultSet;
			public setMetaData(param0: javax.sql.RowSetMetaData): void;
			public getOriginal(): java.sql.ResultSet;
			public getConnection(): java.sql.Connection;
		}
	}
}

declare module javax {
	export module sql {
		export class RowSetListener extends java.lang.Object implements java.util.EventListener {
			public static class: java.lang.Class<javax.sql.RowSetListener>;
			/**
			 * Constructs a new instance of the javax.sql.RowSetListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				cursorMoved(param0: javax.sql.RowSetEvent): void;
				rowChanged(param0: javax.sql.RowSetEvent): void;
				rowSetChanged(param0: javax.sql.RowSetEvent): void;
			});
			public constructor();
			public rowSetChanged(param0: javax.sql.RowSetEvent): void;
			public rowChanged(param0: javax.sql.RowSetEvent): void;
			public cursorMoved(param0: javax.sql.RowSetEvent): void;
		}
	}
}

declare module javax {
	export module sql {
		export class RowSetMetaData extends java.lang.Object implements java.sql.ResultSetMetaData {
			public static class: java.lang.Class<javax.sql.RowSetMetaData>;
			/**
			 * Constructs a new instance of the javax.sql.RowSetMetaData interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				setAutoIncrement(param0: number, param1: boolean): void;
				setCaseSensitive(param0: number, param1: boolean): void;
				setCatalogName(param0: number, param1: string): void;
				setColumnCount(param0: number): void;
				setColumnDisplaySize(param0: number, param1: number): void;
				setColumnLabel(param0: number, param1: string): void;
				setColumnName(param0: number, param1: string): void;
				setColumnType(param0: number, param1: number): void;
				setColumnTypeName(param0: number, param1: string): void;
				setCurrency(param0: number, param1: boolean): void;
				setNullable(param0: number, param1: number): void;
				setPrecision(param0: number, param1: number): void;
				setScale(param0: number, param1: number): void;
				setSchemaName(param0: number, param1: string): void;
				setSearchable(param0: number, param1: boolean): void;
				setSigned(param0: number, param1: boolean): void;
				setTableName(param0: number, param1: string): void;
				getCatalogName(param0: number): string;
				getColumnClassName(param0: number): string;
				getColumnCount(): number;
				getColumnDisplaySize(param0: number): number;
				getColumnLabel(param0: number): string;
				getColumnName(param0: number): string;
				getColumnType(param0: number): number;
				getColumnTypeName(param0: number): string;
				getPrecision(param0: number): number;
				getScale(param0: number): number;
				getSchemaName(param0: number): string;
				getTableName(param0: number): string;
				isAutoIncrement(param0: number): boolean;
				isCaseSensitive(param0: number): boolean;
				isCurrency(param0: number): boolean;
				isDefinitelyWritable(param0: number): boolean;
				isNullable(param0: number): number;
				isReadOnly(param0: number): boolean;
				isSearchable(param0: number): boolean;
				isSigned(param0: number): boolean;
				isWritable(param0: number): boolean;
				unwrap(param0: java.lang.Class<any>): any;
				isWrapperFor(param0: java.lang.Class<any>): boolean;
			});
			public constructor();
			public static columnNullableUnknown: number;
			public static columnNullable: number;
			public static columnNoNulls: number;
			public setSchemaName(param0: number, param1: string): void;
			public getColumnType(param0: number): number;
			public isCurrency(param0: number): boolean;
			public setScale(param0: number, param1: number): void;
			public isWrapperFor(param0: java.lang.Class<any>): boolean;
			public setColumnCount(param0: number): void;
			public getColumnDisplaySize(param0: number): number;
			public setPrecision(param0: number, param1: number): void;
			public unwrap(param0: java.lang.Class<any>): any;
			public isSigned(param0: number): boolean;
			public getColumnLabel(param0: number): string;
			public getScale(param0: number): number;
			public setColumnDisplaySize(param0: number, param1: number): void;
			public isDefinitelyWritable(param0: number): boolean;
			public setColumnType(param0: number, param1: number): void;
			public isCaseSensitive(param0: number): boolean;
			public setCaseSensitive(param0: number, param1: boolean): void;
			public isWritable(param0: number): boolean;
			public setTableName(param0: number, param1: string): void;
			public setCatalogName(param0: number, param1: string): void;
			public getColumnCount(): number;
			public getColumnName(param0: number): string;
			public setCurrency(param0: number, param1: boolean): void;
			public getTableName(param0: number): string;
			public isReadOnly(param0: number): boolean;
			public setNullable(param0: number, param1: number): void;
			public setColumnName(param0: number, param1: string): void;
			public getColumnTypeName(param0: number): string;
			public getPrecision(param0: number): number;
			public setSigned(param0: number, param1: boolean): void;
			public isAutoIncrement(param0: number): boolean;
			public setAutoIncrement(param0: number, param1: boolean): void;
			public setSearchable(param0: number, param1: boolean): void;
			public getSchemaName(param0: number): string;
			public getCatalogName(param0: number): string;
			public isSearchable(param0: number): boolean;
			public setColumnTypeName(param0: number, param1: string): void;
			public getColumnClassName(param0: number): string;
			public setColumnLabel(param0: number, param1: string): void;
			public isNullable(param0: number): number;
		}
	}
}

declare module javax {
	export module sql {
		export class RowSetReader extends java.lang.Object {
			public static class: java.lang.Class<javax.sql.RowSetReader>;
			/**
			 * Constructs a new instance of the javax.sql.RowSetReader interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				readData(param0: javax.sql.RowSetInternal): void;
			});
			public constructor();
			public readData(param0: javax.sql.RowSetInternal): void;
		}
	}
}

declare module javax {
	export module sql {
		export class RowSetWriter extends java.lang.Object {
			public static class: java.lang.Class<javax.sql.RowSetWriter>;
			/**
			 * Constructs a new instance of the javax.sql.RowSetWriter interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				writeData(param0: javax.sql.RowSetInternal): boolean;
			});
			public constructor();
			public writeData(param0: javax.sql.RowSetInternal): boolean;
		}
	}
}

declare module javax {
	export module sql {
		export class StatementEvent extends java.util.EventObject {
			public static class: java.lang.Class<javax.sql.StatementEvent>;
			public getSQLException(): java.sql.SQLException;
			public getStatement(): java.sql.PreparedStatement;
			public constructor(param0: javax.sql.PooledConnection, param1: java.sql.PreparedStatement);
			public constructor(param0: any);
			public constructor(param0: javax.sql.PooledConnection, param1: java.sql.PreparedStatement, param2: java.sql.SQLException);
		}
	}
}

declare module javax {
	export module sql {
		export class StatementEventListener extends java.lang.Object implements java.util.EventListener {
			public static class: java.lang.Class<javax.sql.StatementEventListener>;
			/**
			 * Constructs a new instance of the javax.sql.StatementEventListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				statementClosed(param0: javax.sql.StatementEvent): void;
				statementErrorOccurred(param0: javax.sql.StatementEvent): void;
			});
			public constructor();
			public statementErrorOccurred(param0: javax.sql.StatementEvent): void;
			public statementClosed(param0: javax.sql.StatementEvent): void;
		}
	}
}

declare module javax {
	export module xml {
		export class XMLConstants extends java.lang.Object {
			public static class: java.lang.Class<javax.xml.XMLConstants>;
			public static NULL_NS_URI: string;
			public static DEFAULT_NS_PREFIX: string;
			public static XML_NS_URI: string;
			public static XML_NS_PREFIX: string;
			public static XMLNS_ATTRIBUTE_NS_URI: string;
			public static XMLNS_ATTRIBUTE: string;
			public static W3C_XML_SCHEMA_NS_URI: string;
			public static W3C_XML_SCHEMA_INSTANCE_NS_URI: string;
			public static W3C_XPATH_DATATYPE_NS_URI: string;
			public static XML_DTD_NS_URI: string;
			public static RELAXNG_NS_URI: string;
			public static FEATURE_SECURE_PROCESSING: string;
		}
	}
}

declare module javax {
	export module xml {
		export module datatype {
			export class DatatypeConfigurationException extends java.lang.Exception {
				public static class: java.lang.Class<javax.xml.datatype.DatatypeConfigurationException>;
				public printStackTrace(param0: java.io.PrintWriter): void;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public printStackTrace(param0: java.io.PrintStream): void;
				public constructor(param0: string);
				public constructor();
				public printStackTrace(): void;
			}
		}
	}
}

declare module javax {
	export module xml {
		export module datatype {
			export class DatatypeConstants extends java.lang.Object {
				public static class: java.lang.Class<javax.xml.datatype.DatatypeConstants>;
				public static JANUARY: number;
				public static FEBRUARY: number;
				public static MARCH: number;
				public static APRIL: number;
				public static MAY: number;
				public static JUNE: number;
				public static JULY: number;
				public static AUGUST: number;
				public static SEPTEMBER: number;
				public static OCTOBER: number;
				public static NOVEMBER: number;
				public static DECEMBER: number;
				public static LESSER: number;
				public static EQUAL: number;
				public static GREATER: number;
				public static INDETERMINATE: number;
				public static FIELD_UNDEFINED: number;
				public static YEARS: javax.xml.datatype.DatatypeConstants.Field;
				public static MONTHS: javax.xml.datatype.DatatypeConstants.Field;
				public static DAYS: javax.xml.datatype.DatatypeConstants.Field;
				public static HOURS: javax.xml.datatype.DatatypeConstants.Field;
				public static MINUTES: javax.xml.datatype.DatatypeConstants.Field;
				public static SECONDS: javax.xml.datatype.DatatypeConstants.Field;
				public static DATETIME: javax.xml.namespace.QName;
				public static TIME: javax.xml.namespace.QName;
				public static DATE: javax.xml.namespace.QName;
				public static GYEARMONTH: javax.xml.namespace.QName;
				public static GMONTHDAY: javax.xml.namespace.QName;
				public static GYEAR: javax.xml.namespace.QName;
				public static GMONTH: javax.xml.namespace.QName;
				public static GDAY: javax.xml.namespace.QName;
				public static DURATION: javax.xml.namespace.QName;
				public static DURATION_DAYTIME: javax.xml.namespace.QName;
				public static DURATION_YEARMONTH: javax.xml.namespace.QName;
				public static MAX_TIMEZONE_OFFSET: number;
				public static MIN_TIMEZONE_OFFSET: number;
			}
			export module DatatypeConstants {
				export class Field extends java.lang.Object {
					public static class: java.lang.Class<javax.xml.datatype.DatatypeConstants.Field>;
					public toString(): string;
					public getId(): number;
				}
			}
		}
	}
}

declare module javax {
	export module xml {
		export module datatype {
			export abstract class DatatypeFactory extends java.lang.Object {
				public static class: java.lang.Class<javax.xml.datatype.DatatypeFactory>;
				public static DATATYPEFACTORY_PROPERTY: string;
				public static DATATYPEFACTORY_IMPLEMENTATION_CLASS: string;
				public static newInstance(param0: string, param1: java.lang.ClassLoader): javax.xml.datatype.DatatypeFactory;
				public newDurationDayTime(param0: boolean, param1: java.math.BigInteger, param2: java.math.BigInteger, param3: java.math.BigInteger, param4: java.math.BigInteger): javax.xml.datatype.Duration;
				public newXMLGregorianCalendarTime(param0: number, param1: number, param2: number, param3: java.math.BigDecimal, param4: number): javax.xml.datatype.XMLGregorianCalendar;
				public newXMLGregorianCalendar(param0: number, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number, param7: number): javax.xml.datatype.XMLGregorianCalendar;
				public newDurationDayTime(param0: number): javax.xml.datatype.Duration;
				public newDurationYearMonth(param0: number): javax.xml.datatype.Duration;
				public newDurationYearMonth(param0: boolean, param1: java.math.BigInteger, param2: java.math.BigInteger): javax.xml.datatype.Duration;
				public newXMLGregorianCalendar(param0: java.math.BigInteger, param1: number, param2: number, param3: number, param4: number, param5: number, param6: java.math.BigDecimal, param7: number): javax.xml.datatype.XMLGregorianCalendar;
				public newXMLGregorianCalendar(): javax.xml.datatype.XMLGregorianCalendar;
				public newDurationYearMonth(param0: string): javax.xml.datatype.Duration;
				public constructor();
				public newDurationDayTime(param0: string): javax.xml.datatype.Duration;
				public newXMLGregorianCalendar(param0: string): javax.xml.datatype.XMLGregorianCalendar;
				public newDurationYearMonth(param0: boolean, param1: number, param2: number): javax.xml.datatype.Duration;
				public newDurationDayTime(param0: boolean, param1: number, param2: number, param3: number, param4: number): javax.xml.datatype.Duration;
				public static newInstance(): javax.xml.datatype.DatatypeFactory;
				public newXMLGregorianCalendarTime(param0: number, param1: number, param2: number, param3: number, param4: number): javax.xml.datatype.XMLGregorianCalendar;
				public newDuration(param0: boolean, param1: number, param2: number, param3: number, param4: number, param5: number, param6: number): javax.xml.datatype.Duration;
				public newXMLGregorianCalendarTime(param0: number, param1: number, param2: number, param3: number): javax.xml.datatype.XMLGregorianCalendar;
				public newDuration(param0: number): javax.xml.datatype.Duration;
				public newDuration(param0: string): javax.xml.datatype.Duration;
				public newDuration(param0: boolean, param1: java.math.BigInteger, param2: java.math.BigInteger, param3: java.math.BigInteger, param4: java.math.BigInteger, param5: java.math.BigInteger, param6: java.math.BigDecimal): javax.xml.datatype.Duration;
				public newXMLGregorianCalendarDate(param0: number, param1: number, param2: number, param3: number): javax.xml.datatype.XMLGregorianCalendar;
				public newXMLGregorianCalendar(param0: java.util.GregorianCalendar): javax.xml.datatype.XMLGregorianCalendar;
			}
		}
	}
}

declare module javax {
	export module xml {
		export module datatype {
			export abstract class Duration extends java.lang.Object {
				public static class: java.lang.Class<javax.xml.datatype.Duration>;
				public getXMLSchemaType(): javax.xml.namespace.QName;
				public addTo(param0: java.util.Calendar): void;
				public constructor();
				public isShorterThan(param0: javax.xml.datatype.Duration): boolean;
				public getTimeInMillis(param0: java.util.Calendar): number;
				public isLongerThan(param0: javax.xml.datatype.Duration): boolean;
				public getMinutes(): number;
				public add(param0: javax.xml.datatype.Duration): javax.xml.datatype.Duration;
				public compare(param0: javax.xml.datatype.Duration): number;
				public hashCode(): number;
				public getTimeInMillis(param0: java.util.Date): number;
				public equals(param0: any): boolean;
				public getYears(): number;
				public getMonths(): number;
				public multiply(param0: java.math.BigDecimal): javax.xml.datatype.Duration;
				public getSeconds(): number;
				public negate(): javax.xml.datatype.Duration;
				public getSign(): number;
				public toString(): string;
				public subtract(param0: javax.xml.datatype.Duration): javax.xml.datatype.Duration;
				public normalizeWith(param0: java.util.Calendar): javax.xml.datatype.Duration;
				public addTo(param0: java.util.Date): void;
				public getField(param0: javax.xml.datatype.DatatypeConstants.Field): java.lang.Number;
				public multiply(param0: number): javax.xml.datatype.Duration;
				public getDays(): number;
				public isSet(param0: javax.xml.datatype.DatatypeConstants.Field): boolean;
				public getHours(): number;
			}
		}
	}
}

declare module javax {
	export module xml {
		export module datatype {
			export abstract class XMLGregorianCalendar extends java.lang.Object implements java.lang.Cloneable {
				public static class: java.lang.Class<javax.xml.datatype.XMLGregorianCalendar>;
				public toGregorianCalendar(): java.util.GregorianCalendar;
				public setHour(param0: number): void;
				public getYear(): number;
				public setMinute(param0: number): void;
				public getXMLSchemaType(): javax.xml.namespace.QName;
				public getSecond(): number;
				public setYear(param0: java.math.BigInteger): void;
				public constructor();
				public setSecond(param0: number): void;
				public reset(): void;
				public getHour(): number;
				public compare(param0: javax.xml.datatype.XMLGregorianCalendar): number;
				public add(param0: javax.xml.datatype.Duration): void;
				public hashCode(): number;
				public clear(): void;
				public getMonth(): number;
				public equals(param0: any): boolean;
				public clone(): any;
				public getFractionalSecond(): java.math.BigDecimal;
				public setYear(param0: number): void;
				public setTime(param0: number, param1: number, param2: number, param3: number): void;
				public getMillisecond(): number;
				public toGregorianCalendar(param0: java.util.TimeZone, param1: java.util.Locale, param2: javax.xml.datatype.XMLGregorianCalendar): java.util.GregorianCalendar;
				public setFractionalSecond(param0: java.math.BigDecimal): void;
				public getEon(): java.math.BigInteger;
				public setDay(param0: number): void;
				public setTime(param0: number, param1: number, param2: number, param3: java.math.BigDecimal): void;
				public getTimezone(): number;
				public getTimeZone(param0: number): java.util.TimeZone;
				public toXMLFormat(): string;
				public toString(): string;
				public isValid(): boolean;
				public setMonth(param0: number): void;
				public getEonAndYear(): java.math.BigInteger;
				public setMillisecond(param0: number): void;
				public normalize(): javax.xml.datatype.XMLGregorianCalendar;
				public getDay(): number;
				public setTime(param0: number, param1: number, param2: number): void;
				public setTimezone(param0: number): void;
				public getMinute(): number;
			}
		}
	}
}

declare module javax {
	export module xml {
		export module namespace {
			export class NamespaceContext extends java.lang.Object {
				public static class: java.lang.Class<javax.xml.namespace.NamespaceContext>;
				/**
				 * Constructs a new instance of the javax.xml.namespace.NamespaceContext interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getNamespaceURI(param0: string): string;
					getPrefix(param0: string): string;
					getPrefixes(param0: string): java.util.Iterator<any>;
				});
				public constructor();
				public getPrefixes(param0: string): java.util.Iterator<any>;
				public getPrefix(param0: string): string;
				public getNamespaceURI(param0: string): string;
			}
		}
	}
}

declare module javax {
	export module xml {
		export module namespace {
			export class QName extends java.lang.Object implements java.io.Serializable {
				public static class: java.lang.Class<javax.xml.namespace.QName>;
				public static valueOf(param0: string): javax.xml.namespace.QName;
				public getPrefix(): string;
				public getNamespaceURI(): string;
				public getLocalPart(): string;
				public hashCode(): number;
				public constructor(param0: string, param1: string, param2: string);
				public equals(param0: any): boolean;
				public toString(): string;
				public constructor(param0: string, param1: string);
				public constructor(param0: string);
			}
		}
	}
}

declare module javax {
	export module xml {
		export module parsers {
			export abstract class DocumentBuilder extends java.lang.Object {
				public static class: java.lang.Class<javax.xml.parsers.DocumentBuilder>;
				public isXIncludeAware(): boolean;
				public newDocument(): org.w3c.dom.Document;
				public parse(param0: org.xml.sax.InputSource): org.w3c.dom.Document;
				public getSchema(): javax.xml.validation.Schema;
				public constructor();
				public setEntityResolver(param0: org.xml.sax.EntityResolver): void;
				public parse(param0: java.io.InputStream): org.w3c.dom.Document;
				public setErrorHandler(param0: org.xml.sax.ErrorHandler): void;
				public reset(): void;
				public parse(param0: java.io.File): org.w3c.dom.Document;
				public parse(param0: string): org.w3c.dom.Document;
				public isNamespaceAware(): boolean;
				public getDOMImplementation(): org.w3c.dom.DOMImplementation;
				public parse(param0: java.io.InputStream, param1: string): org.w3c.dom.Document;
				public isValidating(): boolean;
			}
		}
	}
}

declare module javax {
	export module xml {
		export module parsers {
			export abstract class DocumentBuilderFactory extends java.lang.Object {
				public static class: java.lang.Class<javax.xml.parsers.DocumentBuilderFactory>;
				public setIgnoringElementContentWhitespace(param0: boolean): void;
				public isCoalescing(): boolean;
				public isXIncludeAware(): boolean;
				public isIgnoringComments(): boolean;
				public static newInstance(): javax.xml.parsers.DocumentBuilderFactory;
				public setIgnoringComments(param0: boolean): void;
				public getAttribute(param0: string): any;
				public setValidating(param0: boolean): void;
				public getSchema(): javax.xml.validation.Schema;
				public getFeature(param0: string): boolean;
				public setNamespaceAware(param0: boolean): void;
				public setSchema(param0: javax.xml.validation.Schema): void;
				public constructor();
				public isExpandEntityReferences(): boolean;
				public isNamespaceAware(): boolean;
				public static newInstance(param0: string, param1: java.lang.ClassLoader): javax.xml.parsers.DocumentBuilderFactory;
				public setXIncludeAware(param0: boolean): void;
				public setAttribute(param0: string, param1: any): void;
				public newDocumentBuilder(): javax.xml.parsers.DocumentBuilder;
				public isIgnoringElementContentWhitespace(): boolean;
				public setCoalescing(param0: boolean): void;
				public setFeature(param0: string, param1: boolean): void;
				public setExpandEntityReferences(param0: boolean): void;
				public isValidating(): boolean;
			}
		}
	}
}

declare module javax {
	export module xml {
		export module parsers {
			export class FactoryConfigurationError extends java.lang.Error {
				public static class: java.lang.Class<javax.xml.parsers.FactoryConfigurationError>;
				public getException(): java.lang.Exception;
				public constructor(param0: java.lang.Exception, param1: string);
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Exception);
				public getMessage(): string;
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module javax {
	export module xml {
		export module parsers {
			export class ParserConfigurationException extends java.lang.Exception {
				public static class: java.lang.Class<javax.xml.parsers.ParserConfigurationException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module javax {
	export module xml {
		export module parsers {
			export abstract class SAXParser extends java.lang.Object {
				public static class: java.lang.Class<javax.xml.parsers.SAXParser>;
				public isXIncludeAware(): boolean;
				public parse(param0: string, param1: org.xml.sax.HandlerBase): void;
				public getProperty(param0: string): any;
				public getSchema(): javax.xml.validation.Schema;
				public parse(param0: java.io.InputStream, param1: org.xml.sax.helpers.DefaultHandler): void;
				public parse(param0: string, param1: org.xml.sax.helpers.DefaultHandler): void;
				public parse(param0: org.xml.sax.InputSource, param1: org.xml.sax.helpers.DefaultHandler): void;
				public setProperty(param0: string, param1: any): void;
				public parse(param0: java.io.File, param1: org.xml.sax.HandlerBase): void;
				public parse(param0: org.xml.sax.InputSource, param1: org.xml.sax.HandlerBase): void;
				public parse(param0: java.io.InputStream, param1: org.xml.sax.helpers.DefaultHandler, param2: string): void;
				public constructor();
				public reset(): void;
				public parse(param0: java.io.InputStream, param1: org.xml.sax.HandlerBase, param2: string): void;
				public isNamespaceAware(): boolean;
				public parse(param0: java.io.InputStream, param1: org.xml.sax.HandlerBase): void;
				public getXMLReader(): org.xml.sax.XMLReader;
				public getParser(): org.xml.sax.Parser;
				public parse(param0: java.io.File, param1: org.xml.sax.helpers.DefaultHandler): void;
				public isValidating(): boolean;
			}
		}
	}
}

declare module javax {
	export module xml {
		export module parsers {
			export abstract class SAXParserFactory extends java.lang.Object {
				public static class: java.lang.Class<javax.xml.parsers.SAXParserFactory>;
				public isXIncludeAware(): boolean;
				public setValidating(param0: boolean): void;
				public getSchema(): javax.xml.validation.Schema;
				public getFeature(param0: string): boolean;
				public setNamespaceAware(param0: boolean): void;
				public setSchema(param0: javax.xml.validation.Schema): void;
				public constructor();
				public newSAXParser(): javax.xml.parsers.SAXParser;
				public isNamespaceAware(): boolean;
				public setXIncludeAware(param0: boolean): void;
				public static newInstance(param0: string, param1: java.lang.ClassLoader): javax.xml.parsers.SAXParserFactory;
				public static newInstance(): javax.xml.parsers.SAXParserFactory;
				public setFeature(param0: string, param1: boolean): void;
				public isValidating(): boolean;
			}
		}
	}
}

declare module javax {
	export module xml {
		export module transform {
			export class ErrorListener extends java.lang.Object {
				public static class: java.lang.Class<javax.xml.transform.ErrorListener>;
				/**
				 * Constructs a new instance of the javax.xml.transform.ErrorListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					warning(param0: javax.xml.transform.TransformerException): void;
					error(param0: javax.xml.transform.TransformerException): void;
					fatalError(param0: javax.xml.transform.TransformerException): void;
				});
				public constructor();
				public error(param0: javax.xml.transform.TransformerException): void;
				public warning(param0: javax.xml.transform.TransformerException): void;
				public fatalError(param0: javax.xml.transform.TransformerException): void;
			}
		}
	}
}

declare module javax {
	export module xml {
		export module transform {
			export class OutputKeys extends java.lang.Object {
				public static class: java.lang.Class<javax.xml.transform.OutputKeys>;
				public static METHOD: string;
				public static VERSION: string;
				public static ENCODING: string;
				public static OMIT_XML_DECLARATION: string;
				public static STANDALONE: string;
				public static DOCTYPE_PUBLIC: string;
				public static DOCTYPE_SYSTEM: string;
				public static CDATA_SECTION_ELEMENTS: string;
				public static INDENT: string;
				public static MEDIA_TYPE: string;
			}
		}
	}
}

declare module javax {
	export module xml {
		export module transform {
			export class Result extends java.lang.Object {
				public static class: java.lang.Class<javax.xml.transform.Result>;
				/**
				 * Constructs a new instance of the javax.xml.transform.Result interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					setSystemId(param0: string): void;
					getSystemId(): string;
				});
				public constructor();
				public static PI_ENABLE_OUTPUT_ESCAPING: string;
				public static PI_DISABLE_OUTPUT_ESCAPING: string;
				public setSystemId(param0: string): void;
				public getSystemId(): string;
			}
		}
	}
}

declare module javax {
	export module xml {
		export module transform {
			export class Source extends java.lang.Object {
				public static class: java.lang.Class<javax.xml.transform.Source>;
				/**
				 * Constructs a new instance of the javax.xml.transform.Source interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					setSystemId(param0: string): void;
					getSystemId(): string;
				});
				public constructor();
				public setSystemId(param0: string): void;
				public getSystemId(): string;
			}
		}
	}
}

declare module javax {
	export module xml {
		export module transform {
			export class SourceLocator extends java.lang.Object {
				public static class: java.lang.Class<javax.xml.transform.SourceLocator>;
				/**
				 * Constructs a new instance of the javax.xml.transform.SourceLocator interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getPublicId(): string;
					getSystemId(): string;
					getLineNumber(): number;
					getColumnNumber(): number;
				});
				public constructor();
				public getPublicId(): string;
				public getLineNumber(): number;
				public getSystemId(): string;
				public getColumnNumber(): number;
			}
		}
	}
}

declare module javax {
	export module xml {
		export module transform {
			export class Templates extends java.lang.Object {
				public static class: java.lang.Class<javax.xml.transform.Templates>;
				/**
				 * Constructs a new instance of the javax.xml.transform.Templates interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					newTransformer(): javax.xml.transform.Transformer;
					getOutputProperties(): java.util.Properties;
				});
				public constructor();
				public getOutputProperties(): java.util.Properties;
				public newTransformer(): javax.xml.transform.Transformer;
			}
		}
	}
}

declare module javax {
	export module xml {
		export module transform {
			export abstract class Transformer extends java.lang.Object {
				public static class: java.lang.Class<javax.xml.transform.Transformer>;
				public getOutputProperties(): java.util.Properties;
				public getOutputProperty(param0: string): string;
				public getErrorListener(): javax.xml.transform.ErrorListener;
				public transform(param0: javax.xml.transform.Source, param1: javax.xml.transform.Result): void;
				public setParameter(param0: string, param1: any): void;
				public constructor();
				public clearParameters(): void;
				public reset(): void;
				public setOutputProperties(param0: java.util.Properties): void;
				public setErrorListener(param0: javax.xml.transform.ErrorListener): void;
				public setURIResolver(param0: javax.xml.transform.URIResolver): void;
				public getParameter(param0: string): any;
				public getURIResolver(): javax.xml.transform.URIResolver;
				public setOutputProperty(param0: string, param1: string): void;
			}
		}
	}
}

declare module javax {
	export module xml {
		export module transform {
			export class TransformerConfigurationException extends javax.xml.transform.TransformerException {
				public static class: java.lang.Class<javax.xml.transform.TransformerConfigurationException>;
				public constructor(param0: string, param1: javax.xml.transform.SourceLocator, param2: java.lang.Throwable);
				public constructor(param0: string, param1: javax.xml.transform.SourceLocator);
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module javax {
	export module xml {
		export module transform {
			export class TransformerException extends java.lang.Exception {
				public static class: java.lang.Class<javax.xml.transform.TransformerException>;
				public setLocator(param0: javax.xml.transform.SourceLocator): void;
				public constructor(param0: string, param1: javax.xml.transform.SourceLocator, param2: java.lang.Throwable);
				public constructor(param0: string, param1: javax.xml.transform.SourceLocator);
				public initCause(param0: java.lang.Throwable): java.lang.Throwable;
				public getLocationAsString(): string;
				public getCause(): java.lang.Throwable;
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
				public getLocator(): javax.xml.transform.SourceLocator;
				public printStackTrace(param0: java.io.PrintWriter): void;
				public getException(): java.lang.Throwable;
				public getMessageAndLocation(): string;
				public constructor(param0: string, param1: java.lang.Throwable);
				public printStackTrace(param0: java.io.PrintStream): void;
				public printStackTrace(): void;
			}
		}
	}
}

declare module javax {
	export module xml {
		export module transform {
			export abstract class TransformerFactory extends java.lang.Object {
				public static class: java.lang.Class<javax.xml.transform.TransformerFactory>;
				public getAttribute(param0: string): any;
				public newTransformer(param0: javax.xml.transform.Source): javax.xml.transform.Transformer;
				public newTemplates(param0: javax.xml.transform.Source): javax.xml.transform.Templates;
				public getAssociatedStylesheet(param0: javax.xml.transform.Source, param1: string, param2: string, param3: string): javax.xml.transform.Source;
				public newTransformer(): javax.xml.transform.Transformer;
				public getErrorListener(): javax.xml.transform.ErrorListener;
				public static newInstance(param0: string, param1: java.lang.ClassLoader): javax.xml.transform.TransformerFactory;
				public getFeature(param0: string): boolean;
				public static newInstance(): javax.xml.transform.TransformerFactory;
				public constructor();
				public setAttribute(param0: string, param1: any): void;
				public setErrorListener(param0: javax.xml.transform.ErrorListener): void;
				public setURIResolver(param0: javax.xml.transform.URIResolver): void;
				public setFeature(param0: string, param1: boolean): void;
				public getURIResolver(): javax.xml.transform.URIResolver;
			}
		}
	}
}

declare module javax {
	export module xml {
		export module transform {
			export class TransformerFactoryConfigurationError extends java.lang.Error {
				public static class: java.lang.Class<javax.xml.transform.TransformerFactoryConfigurationError>;
				public getException(): java.lang.Exception;
				public constructor(param0: java.lang.Exception, param1: string);
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Exception);
				public getMessage(): string;
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module javax {
	export module xml {
		export module transform {
			export class URIResolver extends java.lang.Object {
				public static class: java.lang.Class<javax.xml.transform.URIResolver>;
				/**
				 * Constructs a new instance of the javax.xml.transform.URIResolver interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					resolve(param0: string, param1: string): javax.xml.transform.Source;
				});
				public constructor();
				public resolve(param0: string, param1: string): javax.xml.transform.Source;
			}
		}
	}
}

declare module javax {
	export module xml {
		export module transform {
			export module dom {
				export class DOMLocator extends java.lang.Object implements javax.xml.transform.SourceLocator {
					public static class: java.lang.Class<javax.xml.transform.dom.DOMLocator>;
					/**
					 * Constructs a new instance of the javax.xml.transform.dom.DOMLocator interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						getOriginatingNode(): org.w3c.dom.Node;
						getPublicId(): string;
						getSystemId(): string;
						getLineNumber(): number;
						getColumnNumber(): number;
					});
					public constructor();
					public getLineNumber(): number;
					public getOriginatingNode(): org.w3c.dom.Node;
					public getPublicId(): string;
					public getColumnNumber(): number;
					public getSystemId(): string;
				}
			}
		}
	}
}

declare module javax {
	export module xml {
		export module transform {
			export module dom {
				export class DOMResult extends java.lang.Object implements javax.xml.transform.Result {
					public static class: java.lang.Class<javax.xml.transform.dom.DOMResult>;
					public static FEATURE: string;
					public setNextSibling(param0: org.w3c.dom.Node): void;
					public constructor();
					public constructor(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node);
					public getNextSibling(): org.w3c.dom.Node;
					public constructor(param0: org.w3c.dom.Node);
					public getNode(): org.w3c.dom.Node;
					public constructor(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node, param2: string);
					public setNode(param0: org.w3c.dom.Node): void;
					public setSystemId(param0: string): void;
					public getSystemId(): string;
					public constructor(param0: org.w3c.dom.Node, param1: string);
				}
			}
		}
	}
}

declare module javax {
	export module xml {
		export module transform {
			export module dom {
				export class DOMSource extends java.lang.Object implements javax.xml.transform.Source {
					public static class: java.lang.Class<javax.xml.transform.dom.DOMSource>;
					public static FEATURE: string;
					public constructor();
					public constructor(param0: org.w3c.dom.Node);
					public getNode(): org.w3c.dom.Node;
					public setNode(param0: org.w3c.dom.Node): void;
					public setSystemId(param0: string): void;
					public getSystemId(): string;
					public constructor(param0: org.w3c.dom.Node, param1: string);
				}
			}
		}
	}
}

declare module javax {
	export module xml {
		export module transform {
			export module sax {
				export class SAXResult extends java.lang.Object implements javax.xml.transform.Result {
					public static class: java.lang.Class<javax.xml.transform.sax.SAXResult>;
					public static FEATURE: string;
					public getLexicalHandler(): org.xml.sax.ext.LexicalHandler;
					public constructor();
					public setHandler(param0: org.xml.sax.ContentHandler): void;
					public constructor(param0: org.xml.sax.ContentHandler);
					public getHandler(): org.xml.sax.ContentHandler;
					public setSystemId(param0: string): void;
					public getSystemId(): string;
					public setLexicalHandler(param0: org.xml.sax.ext.LexicalHandler): void;
				}
			}
		}
	}
}

declare module javax {
	export module xml {
		export module transform {
			export module sax {
				export class SAXSource extends java.lang.Object implements javax.xml.transform.Source {
					public static class: java.lang.Class<javax.xml.transform.sax.SAXSource>;
					public static FEATURE: string;
					public getInputSource(): org.xml.sax.InputSource;
					public constructor(param0: org.xml.sax.InputSource);
					public setInputSource(param0: org.xml.sax.InputSource): void;
					public constructor();
					public constructor(param0: org.xml.sax.XMLReader, param1: org.xml.sax.InputSource);
					public getXMLReader(): org.xml.sax.XMLReader;
					public setSystemId(param0: string): void;
					public getSystemId(): string;
					public static sourceToInputSource(param0: javax.xml.transform.Source): org.xml.sax.InputSource;
					public setXMLReader(param0: org.xml.sax.XMLReader): void;
				}
			}
		}
	}
}

declare module javax {
	export module xml {
		export module transform {
			export module sax {
				export abstract class SAXTransformerFactory extends javax.xml.transform.TransformerFactory {
					public static class: java.lang.Class<javax.xml.transform.sax.SAXTransformerFactory>;
					public static FEATURE: string;
					public static FEATURE_XMLFILTER: string;
					public newTransformerHandler(param0: javax.xml.transform.Source): javax.xml.transform.sax.TransformerHandler;
					public newTemplatesHandler(): javax.xml.transform.sax.TemplatesHandler;
					public newXMLFilter(param0: javax.xml.transform.Templates): org.xml.sax.XMLFilter;
					public constructor();
					public newTransformerHandler(param0: javax.xml.transform.Templates): javax.xml.transform.sax.TransformerHandler;
					public newTransformerHandler(): javax.xml.transform.sax.TransformerHandler;
					public newXMLFilter(param0: javax.xml.transform.Source): org.xml.sax.XMLFilter;
				}
			}
		}
	}
}

declare module javax {
	export module xml {
		export module transform {
			export module sax {
				export class TemplatesHandler extends java.lang.Object implements org.xml.sax.ContentHandler {
					public static class: java.lang.Class<javax.xml.transform.sax.TemplatesHandler>;
					/**
					 * Constructs a new instance of the javax.xml.transform.sax.TemplatesHandler interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						getTemplates(): javax.xml.transform.Templates;
						setSystemId(param0: string): void;
						getSystemId(): string;
						setDocumentLocator(param0: org.xml.sax.Locator): void;
						startDocument(): void;
						endDocument(): void;
						startPrefixMapping(param0: string, param1: string): void;
						endPrefixMapping(param0: string): void;
						startElement(param0: string, param1: string, param2: string, param3: org.xml.sax.Attributes): void;
						endElement(param0: string, param1: string, param2: string): void;
						characters(param0: native.Array<string>, param1: number, param2: number): void;
						ignorableWhitespace(param0: native.Array<string>, param1: number, param2: number): void;
						processingInstruction(param0: string, param1: string): void;
						skippedEntity(param0: string): void;
					});
					public constructor();
					public startPrefixMapping(param0: string, param1: string): void;
					public skippedEntity(param0: string): void;
					public endDocument(): void;
					public startElement(param0: string, param1: string, param2: string, param3: org.xml.sax.Attributes): void;
					public endElement(param0: string, param1: string, param2: string): void;
					public characters(param0: native.Array<string>, param1: number, param2: number): void;
					public startDocument(): void;
					public ignorableWhitespace(param0: native.Array<string>, param1: number, param2: number): void;
					public processingInstruction(param0: string, param1: string): void;
					public getTemplates(): javax.xml.transform.Templates;
					public endPrefixMapping(param0: string): void;
					public setSystemId(param0: string): void;
					public getSystemId(): string;
					public setDocumentLocator(param0: org.xml.sax.Locator): void;
				}
			}
		}
	}
}

declare module javax {
	export module xml {
		export module transform {
			export module sax {
				export class TransformerHandler extends java.lang.Object implements org.xml.sax.ContentHandler, org.xml.sax.ext.LexicalHandler, org.xml.sax.DTDHandler {
					public static class: java.lang.Class<javax.xml.transform.sax.TransformerHandler>;
					/**
					 * Constructs a new instance of the javax.xml.transform.sax.TransformerHandler interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						setResult(param0: javax.xml.transform.Result): void;
						setSystemId(param0: string): void;
						getSystemId(): string;
						getTransformer(): javax.xml.transform.Transformer;
						setDocumentLocator(param0: org.xml.sax.Locator): void;
						startDocument(): void;
						endDocument(): void;
						startPrefixMapping(param0: string, param1: string): void;
						endPrefixMapping(param0: string): void;
						startElement(param0: string, param1: string, param2: string, param3: org.xml.sax.Attributes): void;
						endElement(param0: string, param1: string, param2: string): void;
						characters(param0: native.Array<string>, param1: number, param2: number): void;
						ignorableWhitespace(param0: native.Array<string>, param1: number, param2: number): void;
						processingInstruction(param0: string, param1: string): void;
						skippedEntity(param0: string): void;
						startDTD(param0: string, param1: string, param2: string): void;
						endDTD(): void;
						startEntity(param0: string): void;
						endEntity(param0: string): void;
						startCDATA(): void;
						endCDATA(): void;
						comment(param0: native.Array<string>, param1: number, param2: number): void;
						notationDecl(param0: string, param1: string, param2: string): void;
						unparsedEntityDecl(param0: string, param1: string, param2: string, param3: string): void;
					});
					public constructor();
					public comment(param0: native.Array<string>, param1: number, param2: number): void;
					public startPrefixMapping(param0: string, param1: string): void;
					public skippedEntity(param0: string): void;
					public endDTD(): void;
					public endDocument(): void;
					public startElement(param0: string, param1: string, param2: string, param3: org.xml.sax.Attributes): void;
					public endEntity(param0: string): void;
					public endElement(param0: string, param1: string, param2: string): void;
					public startCDATA(): void;
					public startDTD(param0: string, param1: string, param2: string): void;
					public characters(param0: native.Array<string>, param1: number, param2: number): void;
					public startDocument(): void;
					public ignorableWhitespace(param0: native.Array<string>, param1: number, param2: number): void;
					public endCDATA(): void;
					public processingInstruction(param0: string, param1: string): void;
					public endPrefixMapping(param0: string): void;
					public getTransformer(): javax.xml.transform.Transformer;
					public setSystemId(param0: string): void;
					public getSystemId(): string;
					public setResult(param0: javax.xml.transform.Result): void;
					public startEntity(param0: string): void;
					public notationDecl(param0: string, param1: string, param2: string): void;
					public unparsedEntityDecl(param0: string, param1: string, param2: string, param3: string): void;
					public setDocumentLocator(param0: org.xml.sax.Locator): void;
				}
			}
		}
	}
}

declare module javax {
	export module xml {
		export module transform {
			export module stream {
				export class StreamResult extends java.lang.Object implements javax.xml.transform.Result {
					public static class: java.lang.Class<javax.xml.transform.stream.StreamResult>;
					public static FEATURE: string;
					public constructor(param0: java.io.OutputStream);
					public constructor(param0: string);
					public constructor();
					public constructor(param0: java.io.Writer);
					public getOutputStream(): java.io.OutputStream;
					public setSystemId(param0: string): void;
					public getSystemId(): string;
					public setSystemId(param0: java.io.File): void;
					public constructor(param0: java.io.File);
					public getWriter(): java.io.Writer;
					public setOutputStream(param0: java.io.OutputStream): void;
					public setWriter(param0: java.io.Writer): void;
				}
			}
		}
	}
}

declare module javax {
	export module xml {
		export module transform {
			export module stream {
				export class StreamSource extends java.lang.Object implements javax.xml.transform.Source {
					public static class: java.lang.Class<javax.xml.transform.stream.StreamSource>;
					public static FEATURE: string;
					public constructor(param0: java.io.Reader);
					public constructor(param0: string);
					public getPublicId(): string;
					public setPublicId(param0: string): void;
					public constructor(param0: java.io.Reader, param1: string);
					public setSystemId(param0: java.io.File): void;
					public constructor(param0: java.io.InputStream, param1: string);
					public constructor(param0: java.io.InputStream);
					public constructor();
					public getReader(): java.io.Reader;
					public getInputStream(): java.io.InputStream;
					public setReader(param0: java.io.Reader): void;
					public setSystemId(param0: string): void;
					public getSystemId(): string;
					public constructor(param0: java.io.File);
					public setInputStream(param0: java.io.InputStream): void;
				}
			}
		}
	}
}

declare module javax {
	export module xml {
		export module validation {
			export abstract class Schema extends java.lang.Object {
				public static class: java.lang.Class<javax.xml.validation.Schema>;
				public newValidator(): javax.xml.validation.Validator;
				public constructor();
				public newValidatorHandler(): javax.xml.validation.ValidatorHandler;
			}
		}
	}
}

declare module javax {
	export module xml {
		export module validation {
			export abstract class SchemaFactory extends java.lang.Object {
				public static class: java.lang.Class<javax.xml.validation.SchemaFactory>;
				public getResourceResolver(): org.w3c.dom.ls.LSResourceResolver;
				public getProperty(param0: string): any;
				public getFeature(param0: string): boolean;
				public newSchema(param0: java.net.URL): javax.xml.validation.Schema;
				public static newInstance(param0: string): javax.xml.validation.SchemaFactory;
				public static newInstance(param0: string, param1: string, param2: java.lang.ClassLoader): javax.xml.validation.SchemaFactory;
				public setProperty(param0: string, param1: any): void;
				public constructor();
				public setErrorHandler(param0: org.xml.sax.ErrorHandler): void;
				public setResourceResolver(param0: org.w3c.dom.ls.LSResourceResolver): void;
				public newSchema(): javax.xml.validation.Schema;
				public newSchema(param0: javax.xml.transform.Source): javax.xml.validation.Schema;
				public isSchemaLanguageSupported(param0: string): boolean;
				public setFeature(param0: string, param1: boolean): void;
				public newSchema(param0: native.Array<javax.xml.transform.Source>): javax.xml.validation.Schema;
				public newSchema(param0: java.io.File): javax.xml.validation.Schema;
				public getErrorHandler(): org.xml.sax.ErrorHandler;
			}
		}
	}
}

declare module javax {
	export module xml {
		export module validation {
			export abstract class SchemaFactoryLoader extends java.lang.Object {
				public static class: java.lang.Class<javax.xml.validation.SchemaFactoryLoader>;
				public newFactory(param0: string): javax.xml.validation.SchemaFactory;
				public constructor();
			}
		}
	}
}

declare module javax {
	export module xml {
		export module validation {
			export abstract class TypeInfoProvider extends java.lang.Object {
				public static class: java.lang.Class<javax.xml.validation.TypeInfoProvider>;
				public getAttributeTypeInfo(param0: number): org.w3c.dom.TypeInfo;
				public isIdAttribute(param0: number): boolean;
				public getElementTypeInfo(): org.w3c.dom.TypeInfo;
				public isSpecified(param0: number): boolean;
				public constructor();
			}
		}
	}
}

declare module javax {
	export module xml {
		export module validation {
			export abstract class Validator extends java.lang.Object {
				public static class: java.lang.Class<javax.xml.validation.Validator>;
				public setErrorHandler(param0: org.xml.sax.ErrorHandler): void;
				public setResourceResolver(param0: org.w3c.dom.ls.LSResourceResolver): void;
				public reset(): void;
				public validate(param0: javax.xml.transform.Source, param1: javax.xml.transform.Result): void;
				public getResourceResolver(): org.w3c.dom.ls.LSResourceResolver;
				public getProperty(param0: string): any;
				public validate(param0: javax.xml.transform.Source): void;
				public getFeature(param0: string): boolean;
				public setFeature(param0: string, param1: boolean): void;
				public setProperty(param0: string, param1: any): void;
				public constructor();
				public getErrorHandler(): org.xml.sax.ErrorHandler;
			}
		}
	}
}

declare module javax {
	export module xml {
		export module validation {
			export abstract class ValidatorHandler extends java.lang.Object implements org.xml.sax.ContentHandler {
				public static class: java.lang.Class<javax.xml.validation.ValidatorHandler>;
				public getResourceResolver(): org.w3c.dom.ls.LSResourceResolver;
				public getTypeInfoProvider(): javax.xml.validation.TypeInfoProvider;
				public setContentHandler(param0: org.xml.sax.ContentHandler): void;
				public startElement(param0: string, param1: string, param2: string, param3: org.xml.sax.Attributes): void;
				public endElement(param0: string, param1: string, param2: string): void;
				public getProperty(param0: string): any;
				public getFeature(param0: string): boolean;
				public setProperty(param0: string, param1: any): void;
				public processingInstruction(param0: string, param1: string): void;
				public endDocument(): void;
				public characters(param0: native.Array<string>, param1: number, param2: number): void;
				public constructor();
				public skippedEntity(param0: string): void;
				public getContentHandler(): org.xml.sax.ContentHandler;
				public setErrorHandler(param0: org.xml.sax.ErrorHandler): void;
				public setResourceResolver(param0: org.w3c.dom.ls.LSResourceResolver): void;
				public ignorableWhitespace(param0: native.Array<string>, param1: number, param2: number): void;
				public startDocument(): void;
				public setFeature(param0: string, param1: boolean): void;
				public endPrefixMapping(param0: string): void;
				public setDocumentLocator(param0: org.xml.sax.Locator): void;
				public startPrefixMapping(param0: string, param1: string): void;
				public getErrorHandler(): org.xml.sax.ErrorHandler;
			}
		}
	}
}

declare module javax {
	export module xml {
		export module xpath {
			export class XPath extends java.lang.Object {
				public static class: java.lang.Class<javax.xml.xpath.XPath>;
				/**
				 * Constructs a new instance of the javax.xml.xpath.XPath interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					reset(): void;
					setXPathVariableResolver(param0: javax.xml.xpath.XPathVariableResolver): void;
					getXPathVariableResolver(): javax.xml.xpath.XPathVariableResolver;
					setXPathFunctionResolver(param0: javax.xml.xpath.XPathFunctionResolver): void;
					getXPathFunctionResolver(): javax.xml.xpath.XPathFunctionResolver;
					setNamespaceContext(param0: javax.xml.namespace.NamespaceContext): void;
					getNamespaceContext(): javax.xml.namespace.NamespaceContext;
					compile(param0: string): javax.xml.xpath.XPathExpression;
					evaluate(param0: string, param1: any, param2: javax.xml.namespace.QName): any;
					evaluate(param0: string, param1: any): string;
					evaluate(param0: string, param1: org.xml.sax.InputSource, param2: javax.xml.namespace.QName): any;
					evaluate(param0: string, param1: org.xml.sax.InputSource): string;
				});
				public constructor();
				public setNamespaceContext(param0: javax.xml.namespace.NamespaceContext): void;
				public getNamespaceContext(): javax.xml.namespace.NamespaceContext;
				public reset(): void;
				public evaluate(param0: string, param1: any, param2: javax.xml.namespace.QName): any;
				public evaluate(param0: string, param1: org.xml.sax.InputSource, param2: javax.xml.namespace.QName): any;
				public evaluate(param0: string, param1: org.xml.sax.InputSource): string;
				public evaluate(param0: string, param1: any): string;
				public setXPathFunctionResolver(param0: javax.xml.xpath.XPathFunctionResolver): void;
				public getXPathFunctionResolver(): javax.xml.xpath.XPathFunctionResolver;
				public compile(param0: string): javax.xml.xpath.XPathExpression;
				public getXPathVariableResolver(): javax.xml.xpath.XPathVariableResolver;
				public setXPathVariableResolver(param0: javax.xml.xpath.XPathVariableResolver): void;
			}
		}
	}
}

declare module javax {
	export module xml {
		export module xpath {
			export class XPathConstants extends java.lang.Object {
				public static class: java.lang.Class<javax.xml.xpath.XPathConstants>;
				public static NUMBER: javax.xml.namespace.QName;
				public static STRING: javax.xml.namespace.QName;
				public static BOOLEAN: javax.xml.namespace.QName;
				public static NODESET: javax.xml.namespace.QName;
				public static NODE: javax.xml.namespace.QName;
				public static DOM_OBJECT_MODEL: string;
			}
		}
	}
}

declare module javax {
	export module xml {
		export module xpath {
			export class XPathException extends java.lang.Exception {
				public static class: java.lang.Class<javax.xml.xpath.XPathException>;
				public printStackTrace(param0: java.io.PrintWriter): void;
				public constructor(param0: string, param1: java.lang.Throwable);
				public getCause(): java.lang.Throwable;
				public constructor(param0: java.lang.Throwable);
				public printStackTrace(param0: java.io.PrintStream): void;
				public constructor(param0: string);
				public constructor();
				public printStackTrace(): void;
			}
		}
	}
}

declare module javax {
	export module xml {
		export module xpath {
			export class XPathExpression extends java.lang.Object {
				public static class: java.lang.Class<javax.xml.xpath.XPathExpression>;
				/**
				 * Constructs a new instance of the javax.xml.xpath.XPathExpression interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					evaluate(param0: any, param1: javax.xml.namespace.QName): any;
					evaluate(param0: any): string;
					evaluate(param0: org.xml.sax.InputSource, param1: javax.xml.namespace.QName): any;
					evaluate(param0: org.xml.sax.InputSource): string;
				});
				public constructor();
				public evaluate(param0: org.xml.sax.InputSource): string;
				public evaluate(param0: any): string;
				public evaluate(param0: any, param1: javax.xml.namespace.QName): any;
				public evaluate(param0: org.xml.sax.InputSource, param1: javax.xml.namespace.QName): any;
			}
		}
	}
}

declare module javax {
	export module xml {
		export module xpath {
			export class XPathExpressionException extends javax.xml.xpath.XPathException {
				public static class: java.lang.Class<javax.xml.xpath.XPathExpressionException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module javax {
	export module xml {
		export module xpath {
			export abstract class XPathFactory extends java.lang.Object {
				public static class: java.lang.Class<javax.xml.xpath.XPathFactory>;
				public static DEFAULT_PROPERTY_NAME: string;
				public static DEFAULT_OBJECT_MODEL_URI: string;
				public static newInstance(): javax.xml.xpath.XPathFactory;
				public static newInstance(param0: string): javax.xml.xpath.XPathFactory;
				public setXPathFunctionResolver(param0: javax.xml.xpath.XPathFunctionResolver): void;
				public setFeature(param0: string, param1: boolean): void;
				public getFeature(param0: string): boolean;
				public isObjectModelSupported(param0: string): boolean;
				public newXPath(): javax.xml.xpath.XPath;
				public static newInstance(param0: string, param1: string, param2: java.lang.ClassLoader): javax.xml.xpath.XPathFactory;
				public constructor();
				public setXPathVariableResolver(param0: javax.xml.xpath.XPathVariableResolver): void;
			}
		}
	}
}

declare module javax {
	export module xml {
		export module xpath {
			export class XPathFactoryConfigurationException extends javax.xml.xpath.XPathException {
				public static class: java.lang.Class<javax.xml.xpath.XPathFactoryConfigurationException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module javax {
	export module xml {
		export module xpath {
			export class XPathFunction extends java.lang.Object {
				public static class: java.lang.Class<javax.xml.xpath.XPathFunction>;
				/**
				 * Constructs a new instance of the javax.xml.xpath.XPathFunction interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					evaluate(param0: java.util.List<any>): any;
				});
				public constructor();
				public evaluate(param0: java.util.List<any>): any;
			}
		}
	}
}

declare module javax {
	export module xml {
		export module xpath {
			export class XPathFunctionException extends javax.xml.xpath.XPathExpressionException {
				public static class: java.lang.Class<javax.xml.xpath.XPathFunctionException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module javax {
	export module xml {
		export module xpath {
			export class XPathFunctionResolver extends java.lang.Object {
				public static class: java.lang.Class<javax.xml.xpath.XPathFunctionResolver>;
				/**
				 * Constructs a new instance of the javax.xml.xpath.XPathFunctionResolver interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					resolveFunction(param0: javax.xml.namespace.QName, param1: number): javax.xml.xpath.XPathFunction;
				});
				public constructor();
				public resolveFunction(param0: javax.xml.namespace.QName, param1: number): javax.xml.xpath.XPathFunction;
			}
		}
	}
}

declare module javax {
	export module xml {
		export module xpath {
			export class XPathVariableResolver extends java.lang.Object {
				public static class: java.lang.Class<javax.xml.xpath.XPathVariableResolver>;
				/**
				 * Constructs a new instance of the javax.xml.xpath.XPathVariableResolver interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					resolveVariable(param0: javax.xml.namespace.QName): any;
				});
				public constructor();
				public resolveVariable(param0: javax.xml.namespace.QName): any;
			}
		}
	}
}

declare module junit {
	export module framework {
		export class Assert extends java.lang.Object {
			public static class: java.lang.Class<junit.framework.Assert>;
			public static failNotSame(param0: string, param1: any, param2: any): void;
			public static failNotEquals(param0: string, param1: any, param2: any): void;
			public static assertSame(param0: any, param1: any): void;
			public static assertSame(param0: string, param1: any, param2: any): void;
			public static fail(param0: string): void;
			public static assertNull(param0: any): void;
			public static assertNotNull(param0: string, param1: any): void;
			public static assertFalse(param0: boolean): void;
			public static assertEquals(param0: any, param1: any): void;
			public static assertFalse(param0: string, param1: boolean): void;
			public static assertTrue(param0: boolean): void;
			public static assertEquals(param0: string, param1: number, param2: number): void;
			public static failSame(param0: string): void;
			public static assertTrue(param0: string, param1: boolean): void;
			public static assertEquals(param0: number, param1: number): void;
			public static assertEquals(param0: boolean, param1: boolean): void;
			public static assertEquals(param0: string, param1: string, param2: string): void;
			public constructor();
			public static assertEquals(param0: number, param1: number, param2: number): void;
			public static assertEquals(param0: string, param1: boolean, param2: boolean): void;
			public static assertNotNull(param0: any): void;
			public static format(param0: string, param1: any, param2: any): string;
			public static assertNotSame(param0: any, param1: any): void;
			public static fail(): void;
			public static assertEquals(param0: string, param1: string): void;
			public static assertNull(param0: string, param1: any): void;
			public static assertEquals(param0: string, param1: any, param2: any): void;
			public static assertEquals(param0: string, param1: number, param2: number, param3: number): void;
			public static assertNotSame(param0: string, param1: any, param2: any): void;
		}
	}
}

declare module junit {
	export module framework {
		export class AssertionFailedError extends java.lang.AssertionError {
			public static class: java.lang.Class<junit.framework.AssertionFailedError>;
			public constructor(param0: boolean);
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor(param0: number);
			public constructor();
			public constructor(param0: any);
			public constructor(param0: string);
		}
	}
}

declare module junit {
	export module framework {
		export class ComparisonFailure extends junit.framework.AssertionFailedError {
			public static class: java.lang.Class<junit.framework.ComparisonFailure>;
			public getMessage(): string;
			public constructor(param0: boolean);
			public getActual(): string;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor(param0: number);
			public constructor(param0: string, param1: string, param2: string);
			public constructor();
			public getExpected(): string;
			public constructor(param0: any);
			public constructor(param0: string);
		}
	}
}

declare module junit {
	export module framework {
		export class Protectable extends java.lang.Object {
			public static class: java.lang.Class<junit.framework.Protectable>;
			/**
			 * Constructs a new instance of the junit.framework.Protectable interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				protect(): void;
			});
			public constructor();
			public protect(): void;
		}
	}
}

declare module junit {
	export module framework {
		export class Test extends java.lang.Object {
			public static class: java.lang.Class<junit.framework.Test>;
			/**
			 * Constructs a new instance of the junit.framework.Test interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				countTestCases(): number;
				run(param0: junit.framework.TestResult): void;
			});
			public constructor();
			public countTestCases(): number;
			public run(param0: junit.framework.TestResult): void;
		}
	}
}

declare module junit {
	export module framework {
		export abstract class TestCase extends junit.framework.Assert implements junit.framework.Test {
			public static class: java.lang.Class<junit.framework.TestCase>;
			public countTestCases(): number;
			public run(): junit.framework.TestResult;
			public constructor();
			public runBare(): void;
			public createResult(): junit.framework.TestResult;
			public toString(): string;
			public setUp(): void;
			public tearDown(): void;
			public getName(): string;
			public run(param0: junit.framework.TestResult): void;
			public runTest(): void;
			public constructor(param0: string);
			public setName(param0: string): void;
		}
	}
}

declare module junit {
	export module framework {
		export class TestFailure extends java.lang.Object {
			public static class: java.lang.Class<junit.framework.TestFailure>;
			public fFailedTest: junit.framework.Test;
			public fThrownException: java.lang.Throwable;
			public thrownException(): java.lang.Throwable;
			public toString(): string;
			public trace(): string;
			public failedTest(): junit.framework.Test;
			public constructor(param0: junit.framework.Test, param1: java.lang.Throwable);
			public isFailure(): boolean;
			public exceptionMessage(): string;
		}
	}
}

declare module junit {
	export module framework {
		export class TestListener extends java.lang.Object {
			public static class: java.lang.Class<junit.framework.TestListener>;
			/**
			 * Constructs a new instance of the junit.framework.TestListener interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				addError(param0: junit.framework.Test, param1: java.lang.Throwable): void;
				addFailure(param0: junit.framework.Test, param1: junit.framework.AssertionFailedError): void;
				endTest(param0: junit.framework.Test): void;
				startTest(param0: junit.framework.Test): void;
			});
			public constructor();
			public endTest(param0: junit.framework.Test): void;
			public addError(param0: junit.framework.Test, param1: java.lang.Throwable): void;
			public startTest(param0: junit.framework.Test): void;
			public addFailure(param0: junit.framework.Test, param1: junit.framework.AssertionFailedError): void;
		}
	}
}

declare module junit {
	export module framework {
		export class TestResult extends java.lang.Object {
			public static class: java.lang.Class<junit.framework.TestResult>;
			public fFailures: java.util.Vector<junit.framework.TestFailure>;
			public fErrors: java.util.Vector<junit.framework.TestFailure>;
			public fListeners: java.util.Vector<junit.framework.TestListener>;
			public fRunTests: number;
			public endTest(param0: junit.framework.Test): void;
			public startTest(param0: junit.framework.Test): void;
			public addFailure(param0: junit.framework.Test, param1: junit.framework.AssertionFailedError): void;
			public wasSuccessful(): boolean;
			public removeListener(param0: junit.framework.TestListener): void;
			public errorCount(): number;
			public constructor();
			public runCount(): number;
			public run(param0: junit.framework.TestCase): void;
			public addError(param0: junit.framework.Test, param1: java.lang.Throwable): void;
			public errors(): java.util.Enumeration<junit.framework.TestFailure>;
			public failures(): java.util.Enumeration<junit.framework.TestFailure>;
			public failureCount(): number;
			public stop(): void;
			public shouldStop(): boolean;
			public addListener(param0: junit.framework.TestListener): void;
			public runProtected(param0: junit.framework.Test, param1: junit.framework.Protectable): void;
		}
	}
}

declare module junit {
	export module framework {
		export class TestSuite extends java.lang.Object implements junit.framework.Test {
			public static class: java.lang.Class<junit.framework.TestSuite>;
			public testAt(param0: number): junit.framework.Test;
			public constructor(param0: java.lang.Class<any>, param1: string);
			public constructor(param0: native.Array<java.lang.Class<any>>, param1: string);
			public addTestSuite(param0: java.lang.Class<any>): void;
			public countTestCases(): number;
			public static createTest(param0: java.lang.Class<any>, param1: string): junit.framework.Test;
			public addTest(param0: junit.framework.Test): void;
			public constructor();
			public runTest(param0: junit.framework.Test, param1: junit.framework.TestResult): void;
			public tests(): java.util.Enumeration<junit.framework.Test>;
			public static getTestConstructor(param0: java.lang.Class<any>): java.lang.reflect.Constructor<any>;
			public static warning(param0: string): junit.framework.Test;
			public constructor(param0: native.Array<java.lang.Class<any>>);
			public toString(): string;
			public getName(): string;
			public testCount(): number;
			public run(param0: junit.framework.TestResult): void;
			public constructor(param0: java.lang.Class<any>);
			public constructor(param0: string);
			public setName(param0: string): void;
		}
	}
}

declare module junit {
	export module runner {
		export abstract class BaseTestRunner extends java.lang.Object implements junit.framework.TestListener {
			public static class: java.lang.Class<junit.runner.BaseTestRunner>;
			public static SUITE_METHODNAME: string;
			public testFailed(param0: number, param1: junit.framework.Test, param2: java.lang.Throwable): void;
			public startTest(param0: junit.framework.Test): void;
			/** @deprecated */
			public getLoader(): junit.runner.TestSuiteLoader;
			public static getFilteredTrace(param0: string): string;
			public runFailed(param0: string): void;
			public static getPreference(param0: string): string;
			public static showStackRaw(): boolean;
			public getTest(param0: string): junit.framework.Test;
			public processArguments(param0: native.Array<string>): string;
			/** @deprecated */
			public static inVAJava(): boolean;
			public useReloadingTestSuiteLoader(): boolean;
			public static getPreference(param0: string, param1: number): number;
			public static savePreferences(): void;
			public testStarted(param0: string): void;
			public clearStatus(): void;
			public endTest(param0: junit.framework.Test): void;
			public testEnded(param0: string): void;
			public addFailure(param0: junit.framework.Test, param1: junit.framework.AssertionFailedError): void;
			public static setPreferences(param0: java.util.Properties): void;
			public elapsedTimeAsString(param0: number): string;
			public static truncate(param0: string): string;
			public extractClassName(param0: string): string;
			public constructor();
			public static getPreferences(): java.util.Properties;
			public addError(param0: junit.framework.Test, param1: java.lang.Throwable): void;
			public static getFilteredTrace(param0: java.lang.Throwable): string;
			public setPreference(param0: string, param1: string): void;
			public loadSuiteClass(param0: string): java.lang.Class<any>;
			public setLoading(param0: boolean): void;
		}
	}
}

declare module junit {
	export module runner {
		export class TestSuiteLoader extends java.lang.Object {
			public static class: java.lang.Class<junit.runner.TestSuiteLoader>;
			/**
			 * Constructs a new instance of the junit.runner.TestSuiteLoader interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
			 */
			public constructor(implementation: {
				load(param0: string): java.lang.Class<any>;
				reload(param0: java.lang.Class<any>): java.lang.Class<any>;
			});
			public constructor();
			public reload(param0: java.lang.Class<any>): java.lang.Class<any>;
			public load(param0: string): java.lang.Class<any>;
		}
	}
}

declare module junit {
	export module runner {
		export class Version extends java.lang.Object {
			public static class: java.lang.Class<junit.runner.Version>;
			public static id(): string;
		}
	}
}

declare module org {
	export module apache {
		export module commons {
			export module logging {
				export class Log extends java.lang.Object {
					public static class: java.lang.Class<org.apache.commons.logging.Log>;
					/**
					 * Constructs a new instance of the org.apache.commons.logging.Log interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						isDebugEnabled(): boolean;
						isErrorEnabled(): boolean;
						isFatalEnabled(): boolean;
						isInfoEnabled(): boolean;
						isTraceEnabled(): boolean;
						isWarnEnabled(): boolean;
						trace(param0: any): void;
						trace(param0: any, param1: java.lang.Throwable): void;
						debug(param0: any): void;
						debug(param0: any, param1: java.lang.Throwable): void;
						info(param0: any): void;
						info(param0: any, param1: java.lang.Throwable): void;
						warn(param0: any): void;
						warn(param0: any, param1: java.lang.Throwable): void;
						error(param0: any): void;
						error(param0: any, param1: java.lang.Throwable): void;
						fatal(param0: any): void;
						fatal(param0: any, param1: java.lang.Throwable): void;
					});
					public constructor();
					public isDebugEnabled(): boolean;
					public warn(param0: any): void;
					public error(param0: any, param1: java.lang.Throwable): void;
					public isInfoEnabled(): boolean;
					public info(param0: any): void;
					public isErrorEnabled(): boolean;
					public fatal(param0: any): void;
					public debug(param0: any, param1: java.lang.Throwable): void;
					public fatal(param0: any, param1: java.lang.Throwable): void;
					public warn(param0: any, param1: java.lang.Throwable): void;
					public isFatalEnabled(): boolean;
					public isWarnEnabled(): boolean;
					public debug(param0: any): void;
					public trace(param0: any): void;
					public isTraceEnabled(): boolean;
					public info(param0: any, param1: java.lang.Throwable): void;
					public error(param0: any): void;
					public trace(param0: any, param1: java.lang.Throwable): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export class ConnectionClosedException extends java.io.IOException {
				public static class: java.lang.Class<org.apache.http.ConnectionClosedException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export class ConnectionReuseStrategy extends java.lang.Object {
				public static class: java.lang.Class<org.apache.http.ConnectionReuseStrategy>;
				/**
				 * Constructs a new instance of the org.apache.http.ConnectionReuseStrategy interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					keepAlive(param0: org.apache.http.HttpResponse, param1: org.apache.http.protocol.HttpContext): boolean;
				});
				public constructor();
				public keepAlive(param0: org.apache.http.HttpResponse, param1: org.apache.http.protocol.HttpContext): boolean;
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export class FormattedHeader extends java.lang.Object implements org.apache.http.Header {
				public static class: java.lang.Class<org.apache.http.FormattedHeader>;
				/**
				 * Constructs a new instance of the org.apache.http.FormattedHeader interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getBuffer(): org.apache.http.util.CharArrayBuffer;
					getValuePos(): number;
					getName(): string;
					getValue(): string;
					getElements(): native.Array<org.apache.http.HeaderElement>;
				});
				public constructor();
				public getElements(): native.Array<org.apache.http.HeaderElement>;
				public getBuffer(): org.apache.http.util.CharArrayBuffer;
				public getValue(): string;
				public getName(): string;
				public getValuePos(): number;
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export class Header extends java.lang.Object {
				public static class: java.lang.Class<org.apache.http.Header>;
				/**
				 * Constructs a new instance of the org.apache.http.Header interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getName(): string;
					getValue(): string;
					getElements(): native.Array<org.apache.http.HeaderElement>;
				});
				public constructor();
				public getElements(): native.Array<org.apache.http.HeaderElement>;
				public getValue(): string;
				public getName(): string;
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export class HeaderElement extends java.lang.Object {
				public static class: java.lang.Class<org.apache.http.HeaderElement>;
				/**
				 * Constructs a new instance of the org.apache.http.HeaderElement interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getName(): string;
					getValue(): string;
					getParameters(): native.Array<org.apache.http.NameValuePair>;
					getParameterByName(param0: string): org.apache.http.NameValuePair;
					getParameterCount(): number;
					getParameter(param0: number): org.apache.http.NameValuePair;
				});
				public constructor();
				public getParameters(): native.Array<org.apache.http.NameValuePair>;
				public getParameter(param0: number): org.apache.http.NameValuePair;
				public getValue(): string;
				public getName(): string;
				public getParameterByName(param0: string): org.apache.http.NameValuePair;
				public getParameterCount(): number;
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export class HeaderElementIterator extends java.lang.Object {
				public static class: java.lang.Class<org.apache.http.HeaderElementIterator>;
				/**
				 * Constructs a new instance of the org.apache.http.HeaderElementIterator interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					hasNext(): boolean;
					nextElement(): org.apache.http.HeaderElement;
				});
				public constructor();
				public nextElement(): org.apache.http.HeaderElement;
				public hasNext(): boolean;
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export class HeaderIterator extends java.lang.Object {
				public static class: java.lang.Class<org.apache.http.HeaderIterator>;
				/**
				 * Constructs a new instance of the org.apache.http.HeaderIterator interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					hasNext(): boolean;
					nextHeader(): org.apache.http.Header;
				});
				public constructor();
				public nextHeader(): org.apache.http.Header;
				public hasNext(): boolean;
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export class HttpClientConnection extends java.lang.Object implements org.apache.http.HttpConnection {
				public static class: java.lang.Class<org.apache.http.HttpClientConnection>;
				/**
				 * Constructs a new instance of the org.apache.http.HttpClientConnection interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					isResponseAvailable(param0: number): boolean;
					sendRequestHeader(param0: org.apache.http.HttpRequest): void;
					sendRequestEntity(param0: org.apache.http.HttpEntityEnclosingRequest): void;
					receiveResponseHeader(): org.apache.http.HttpResponse;
					receiveResponseEntity(param0: org.apache.http.HttpResponse): void;
					flush(): void;
					close(): void;
					isOpen(): boolean;
					isStale(): boolean;
					setSocketTimeout(param0: number): void;
					getSocketTimeout(): number;
					shutdown(): void;
					getMetrics(): org.apache.http.HttpConnectionMetrics;
				});
				public constructor();
				public sendRequestEntity(param0: org.apache.http.HttpEntityEnclosingRequest): void;
				public close(): void;
				public isStale(): boolean;
				public flush(): void;
				public isResponseAvailable(param0: number): boolean;
				public setSocketTimeout(param0: number): void;
				public sendRequestHeader(param0: org.apache.http.HttpRequest): void;
				public shutdown(): void;
				public getSocketTimeout(): number;
				public getMetrics(): org.apache.http.HttpConnectionMetrics;
				public isOpen(): boolean;
				public receiveResponseEntity(param0: org.apache.http.HttpResponse): void;
				public receiveResponseHeader(): org.apache.http.HttpResponse;
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export class HttpConnection extends java.lang.Object {
				public static class: java.lang.Class<org.apache.http.HttpConnection>;
				/**
				 * Constructs a new instance of the org.apache.http.HttpConnection interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					close(): void;
					isOpen(): boolean;
					isStale(): boolean;
					setSocketTimeout(param0: number): void;
					getSocketTimeout(): number;
					shutdown(): void;
					getMetrics(): org.apache.http.HttpConnectionMetrics;
				});
				public constructor();
				public close(): void;
				public setSocketTimeout(param0: number): void;
				public shutdown(): void;
				public getSocketTimeout(): number;
				public getMetrics(): org.apache.http.HttpConnectionMetrics;
				public isOpen(): boolean;
				public isStale(): boolean;
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export class HttpConnectionMetrics extends java.lang.Object {
				public static class: java.lang.Class<org.apache.http.HttpConnectionMetrics>;
				/**
				 * Constructs a new instance of the org.apache.http.HttpConnectionMetrics interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getRequestCount(): number;
					getResponseCount(): number;
					getSentBytesCount(): number;
					getReceivedBytesCount(): number;
					getMetric(param0: string): any;
					reset(): void;
				});
				public constructor();
				public getRequestCount(): number;
				public reset(): void;
				public getReceivedBytesCount(): number;
				public getResponseCount(): number;
				public getSentBytesCount(): number;
				public getMetric(param0: string): any;
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export class HttpEntity extends java.lang.Object {
				public static class: java.lang.Class<org.apache.http.HttpEntity>;
				/**
				 * Constructs a new instance of the org.apache.http.HttpEntity interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					isRepeatable(): boolean;
					isChunked(): boolean;
					getContentLength(): number;
					getContentType(): org.apache.http.Header;
					getContentEncoding(): org.apache.http.Header;
					getContent(): java.io.InputStream;
					writeTo(param0: java.io.OutputStream): void;
					isStreaming(): boolean;
					consumeContent(): void;
				});
				public constructor();
				public consumeContent(): void;
				public writeTo(param0: java.io.OutputStream): void;
				public getContentEncoding(): org.apache.http.Header;
				public isChunked(): boolean;
				public getContentLength(): number;
				public isRepeatable(): boolean;
				public getContent(): java.io.InputStream;
				public getContentType(): org.apache.http.Header;
				public isStreaming(): boolean;
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export class HttpEntityEnclosingRequest extends java.lang.Object implements org.apache.http.HttpRequest {
				public static class: java.lang.Class<org.apache.http.HttpEntityEnclosingRequest>;
				/**
				 * Constructs a new instance of the org.apache.http.HttpEntityEnclosingRequest interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					expectContinue(): boolean;
					setEntity(param0: org.apache.http.HttpEntity): void;
					getEntity(): org.apache.http.HttpEntity;
					getRequestLine(): org.apache.http.RequestLine;
					getProtocolVersion(): org.apache.http.ProtocolVersion;
					containsHeader(param0: string): boolean;
					getHeaders(param0: string): native.Array<org.apache.http.Header>;
					getFirstHeader(param0: string): org.apache.http.Header;
					getLastHeader(param0: string): org.apache.http.Header;
					getAllHeaders(): native.Array<org.apache.http.Header>;
					addHeader(param0: org.apache.http.Header): void;
					addHeader(param0: string, param1: string): void;
					setHeader(param0: org.apache.http.Header): void;
					setHeader(param0: string, param1: string): void;
					setHeaders(param0: native.Array<org.apache.http.Header>): void;
					removeHeader(param0: org.apache.http.Header): void;
					removeHeaders(param0: string): void;
					headerIterator(): org.apache.http.HeaderIterator;
					headerIterator(param0: string): org.apache.http.HeaderIterator;
					getParams(): org.apache.http.params.HttpParams;
					setParams(param0: org.apache.http.params.HttpParams): void;
				});
				public constructor();
				public setParams(param0: org.apache.http.params.HttpParams): void;
				public addHeader(param0: string, param1: string): void;
				public getParams(): org.apache.http.params.HttpParams;
				public getRequestLine(): org.apache.http.RequestLine;
				public getHeaders(param0: string): native.Array<org.apache.http.Header>;
				public setHeaders(param0: native.Array<org.apache.http.Header>): void;
				public expectContinue(): boolean;
				public headerIterator(param0: string): org.apache.http.HeaderIterator;
				public getAllHeaders(): native.Array<org.apache.http.Header>;
				public setHeader(param0: org.apache.http.Header): void;
				public removeHeaders(param0: string): void;
				public removeHeader(param0: org.apache.http.Header): void;
				public getEntity(): org.apache.http.HttpEntity;
				public getLastHeader(param0: string): org.apache.http.Header;
				public headerIterator(): org.apache.http.HeaderIterator;
				public setHeader(param0: string, param1: string): void;
				public getFirstHeader(param0: string): org.apache.http.Header;
				public getProtocolVersion(): org.apache.http.ProtocolVersion;
				public containsHeader(param0: string): boolean;
				public setEntity(param0: org.apache.http.HttpEntity): void;
				public addHeader(param0: org.apache.http.Header): void;
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export class HttpException extends java.lang.Exception {
				public static class: java.lang.Class<org.apache.http.HttpException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export class HttpHost extends java.lang.Object implements java.lang.Cloneable {
				public static class: java.lang.Class<org.apache.http.HttpHost>;
				public static DEFAULT_SCHEME_NAME: string;
				public hostname: string;
				public lcHostname: string;
				public port: number;
				public schemeName: string;
				public toURI(): string;
				public getPort(): number;
				public getSchemeName(): string;
				public toString(): string;
				public constructor(param0: string);
				public constructor(param0: org.apache.http.HttpHost);
				public constructor(param0: string, param1: number, param2: string);
				public hashCode(): number;
				public constructor(param0: string, param1: number);
				public getHostName(): string;
				public equals(param0: any): boolean;
				public clone(): any;
				public toHostString(): string;
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export class HttpInetConnection extends java.lang.Object implements org.apache.http.HttpConnection {
				public static class: java.lang.Class<org.apache.http.HttpInetConnection>;
				/**
				 * Constructs a new instance of the org.apache.http.HttpInetConnection interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getLocalAddress(): java.net.InetAddress;
					getLocalPort(): number;
					getRemoteAddress(): java.net.InetAddress;
					getRemotePort(): number;
					close(): void;
					isOpen(): boolean;
					isStale(): boolean;
					setSocketTimeout(param0: number): void;
					getSocketTimeout(): number;
					shutdown(): void;
					getMetrics(): org.apache.http.HttpConnectionMetrics;
				});
				public constructor();
				public close(): void;
				public setSocketTimeout(param0: number): void;
				public getLocalPort(): number;
				public shutdown(): void;
				public getRemotePort(): number;
				public getSocketTimeout(): number;
				public getMetrics(): org.apache.http.HttpConnectionMetrics;
				public isOpen(): boolean;
				public getLocalAddress(): java.net.InetAddress;
				public getRemoteAddress(): java.net.InetAddress;
				public isStale(): boolean;
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export class HttpMessage extends java.lang.Object {
				public static class: java.lang.Class<org.apache.http.HttpMessage>;
				/**
				 * Constructs a new instance of the org.apache.http.HttpMessage interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getProtocolVersion(): org.apache.http.ProtocolVersion;
					containsHeader(param0: string): boolean;
					getHeaders(param0: string): native.Array<org.apache.http.Header>;
					getFirstHeader(param0: string): org.apache.http.Header;
					getLastHeader(param0: string): org.apache.http.Header;
					getAllHeaders(): native.Array<org.apache.http.Header>;
					addHeader(param0: org.apache.http.Header): void;
					addHeader(param0: string, param1: string): void;
					setHeader(param0: org.apache.http.Header): void;
					setHeader(param0: string, param1: string): void;
					setHeaders(param0: native.Array<org.apache.http.Header>): void;
					removeHeader(param0: org.apache.http.Header): void;
					removeHeaders(param0: string): void;
					headerIterator(): org.apache.http.HeaderIterator;
					headerIterator(param0: string): org.apache.http.HeaderIterator;
					getParams(): org.apache.http.params.HttpParams;
					setParams(param0: org.apache.http.params.HttpParams): void;
				});
				public constructor();
				public setParams(param0: org.apache.http.params.HttpParams): void;
				public addHeader(param0: string, param1: string): void;
				public getParams(): org.apache.http.params.HttpParams;
				public getHeaders(param0: string): native.Array<org.apache.http.Header>;
				public setHeaders(param0: native.Array<org.apache.http.Header>): void;
				public headerIterator(param0: string): org.apache.http.HeaderIterator;
				public getAllHeaders(): native.Array<org.apache.http.Header>;
				public setHeader(param0: org.apache.http.Header): void;
				public removeHeaders(param0: string): void;
				public removeHeader(param0: org.apache.http.Header): void;
				public getLastHeader(param0: string): org.apache.http.Header;
				public headerIterator(): org.apache.http.HeaderIterator;
				public setHeader(param0: string, param1: string): void;
				public getFirstHeader(param0: string): org.apache.http.Header;
				public getProtocolVersion(): org.apache.http.ProtocolVersion;
				public containsHeader(param0: string): boolean;
				public addHeader(param0: org.apache.http.Header): void;
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export class HttpRequest extends java.lang.Object implements org.apache.http.HttpMessage {
				public static class: java.lang.Class<org.apache.http.HttpRequest>;
				/**
				 * Constructs a new instance of the org.apache.http.HttpRequest interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getRequestLine(): org.apache.http.RequestLine;
					getProtocolVersion(): org.apache.http.ProtocolVersion;
					containsHeader(param0: string): boolean;
					getHeaders(param0: string): native.Array<org.apache.http.Header>;
					getFirstHeader(param0: string): org.apache.http.Header;
					getLastHeader(param0: string): org.apache.http.Header;
					getAllHeaders(): native.Array<org.apache.http.Header>;
					addHeader(param0: org.apache.http.Header): void;
					addHeader(param0: string, param1: string): void;
					setHeader(param0: org.apache.http.Header): void;
					setHeader(param0: string, param1: string): void;
					setHeaders(param0: native.Array<org.apache.http.Header>): void;
					removeHeader(param0: org.apache.http.Header): void;
					removeHeaders(param0: string): void;
					headerIterator(): org.apache.http.HeaderIterator;
					headerIterator(param0: string): org.apache.http.HeaderIterator;
					getParams(): org.apache.http.params.HttpParams;
					setParams(param0: org.apache.http.params.HttpParams): void;
				});
				public constructor();
				public setParams(param0: org.apache.http.params.HttpParams): void;
				public addHeader(param0: string, param1: string): void;
				public getParams(): org.apache.http.params.HttpParams;
				public getRequestLine(): org.apache.http.RequestLine;
				public getHeaders(param0: string): native.Array<org.apache.http.Header>;
				public setHeaders(param0: native.Array<org.apache.http.Header>): void;
				public headerIterator(param0: string): org.apache.http.HeaderIterator;
				public getAllHeaders(): native.Array<org.apache.http.Header>;
				public setHeader(param0: org.apache.http.Header): void;
				public removeHeaders(param0: string): void;
				public removeHeader(param0: org.apache.http.Header): void;
				public getLastHeader(param0: string): org.apache.http.Header;
				public headerIterator(): org.apache.http.HeaderIterator;
				public setHeader(param0: string, param1: string): void;
				public getFirstHeader(param0: string): org.apache.http.Header;
				public getProtocolVersion(): org.apache.http.ProtocolVersion;
				public containsHeader(param0: string): boolean;
				public addHeader(param0: org.apache.http.Header): void;
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export class HttpRequestFactory extends java.lang.Object {
				public static class: java.lang.Class<org.apache.http.HttpRequestFactory>;
				/**
				 * Constructs a new instance of the org.apache.http.HttpRequestFactory interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					newHttpRequest(param0: org.apache.http.RequestLine): org.apache.http.HttpRequest;
					newHttpRequest(param0: string, param1: string): org.apache.http.HttpRequest;
				});
				public constructor();
				public newHttpRequest(param0: string, param1: string): org.apache.http.HttpRequest;
				public newHttpRequest(param0: org.apache.http.RequestLine): org.apache.http.HttpRequest;
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export class HttpRequestInterceptor extends java.lang.Object {
				public static class: java.lang.Class<org.apache.http.HttpRequestInterceptor>;
				/**
				 * Constructs a new instance of the org.apache.http.HttpRequestInterceptor interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					process(param0: org.apache.http.HttpRequest, param1: org.apache.http.protocol.HttpContext): void;
				});
				public constructor();
				public process(param0: org.apache.http.HttpRequest, param1: org.apache.http.protocol.HttpContext): void;
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export class HttpResponse extends java.lang.Object implements org.apache.http.HttpMessage {
				public static class: java.lang.Class<org.apache.http.HttpResponse>;
				/**
				 * Constructs a new instance of the org.apache.http.HttpResponse interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getStatusLine(): org.apache.http.StatusLine;
					setStatusLine(param0: org.apache.http.StatusLine): void;
					setStatusLine(param0: org.apache.http.ProtocolVersion, param1: number): void;
					setStatusLine(param0: org.apache.http.ProtocolVersion, param1: number, param2: string): void;
					setStatusCode(param0: number): void;
					setReasonPhrase(param0: string): void;
					getEntity(): org.apache.http.HttpEntity;
					setEntity(param0: org.apache.http.HttpEntity): void;
					getLocale(): java.util.Locale;
					setLocale(param0: java.util.Locale): void;
					getProtocolVersion(): org.apache.http.ProtocolVersion;
					containsHeader(param0: string): boolean;
					getHeaders(param0: string): native.Array<org.apache.http.Header>;
					getFirstHeader(param0: string): org.apache.http.Header;
					getLastHeader(param0: string): org.apache.http.Header;
					getAllHeaders(): native.Array<org.apache.http.Header>;
					addHeader(param0: org.apache.http.Header): void;
					addHeader(param0: string, param1: string): void;
					setHeader(param0: org.apache.http.Header): void;
					setHeader(param0: string, param1: string): void;
					setHeaders(param0: native.Array<org.apache.http.Header>): void;
					removeHeader(param0: org.apache.http.Header): void;
					removeHeaders(param0: string): void;
					headerIterator(): org.apache.http.HeaderIterator;
					headerIterator(param0: string): org.apache.http.HeaderIterator;
					getParams(): org.apache.http.params.HttpParams;
					setParams(param0: org.apache.http.params.HttpParams): void;
				});
				public constructor();
				public addHeader(param0: string, param1: string): void;
				public setHeaders(param0: native.Array<org.apache.http.Header>): void;
				public getLocale(): java.util.Locale;
				public getAllHeaders(): native.Array<org.apache.http.Header>;
				public getStatusLine(): org.apache.http.StatusLine;
				public getEntity(): org.apache.http.HttpEntity;
				public getLastHeader(param0: string): org.apache.http.Header;
				public headerIterator(): org.apache.http.HeaderIterator;
				public getFirstHeader(param0: string): org.apache.http.Header;
				public getProtocolVersion(): org.apache.http.ProtocolVersion;
				public containsHeader(param0: string): boolean;
				public setReasonPhrase(param0: string): void;
				public addHeader(param0: org.apache.http.Header): void;
				public setParams(param0: org.apache.http.params.HttpParams): void;
				public getParams(): org.apache.http.params.HttpParams;
				public setStatusLine(param0: org.apache.http.ProtocolVersion, param1: number, param2: string): void;
				public getHeaders(param0: string): native.Array<org.apache.http.Header>;
				public setStatusLine(param0: org.apache.http.StatusLine): void;
				public headerIterator(param0: string): org.apache.http.HeaderIterator;
				public setStatusCode(param0: number): void;
				public setHeader(param0: org.apache.http.Header): void;
				public removeHeaders(param0: string): void;
				public removeHeader(param0: org.apache.http.Header): void;
				public setHeader(param0: string, param1: string): void;
				public setLocale(param0: java.util.Locale): void;
				public setStatusLine(param0: org.apache.http.ProtocolVersion, param1: number): void;
				public setEntity(param0: org.apache.http.HttpEntity): void;
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export class HttpResponseFactory extends java.lang.Object {
				public static class: java.lang.Class<org.apache.http.HttpResponseFactory>;
				/**
				 * Constructs a new instance of the org.apache.http.HttpResponseFactory interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					newHttpResponse(param0: org.apache.http.ProtocolVersion, param1: number, param2: org.apache.http.protocol.HttpContext): org.apache.http.HttpResponse;
					newHttpResponse(param0: org.apache.http.StatusLine, param1: org.apache.http.protocol.HttpContext): org.apache.http.HttpResponse;
				});
				public constructor();
				public newHttpResponse(param0: org.apache.http.StatusLine, param1: org.apache.http.protocol.HttpContext): org.apache.http.HttpResponse;
				public newHttpResponse(param0: org.apache.http.ProtocolVersion, param1: number, param2: org.apache.http.protocol.HttpContext): org.apache.http.HttpResponse;
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export class HttpResponseInterceptor extends java.lang.Object {
				public static class: java.lang.Class<org.apache.http.HttpResponseInterceptor>;
				/**
				 * Constructs a new instance of the org.apache.http.HttpResponseInterceptor interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					process(param0: org.apache.http.HttpResponse, param1: org.apache.http.protocol.HttpContext): void;
				});
				public constructor();
				public process(param0: org.apache.http.HttpResponse, param1: org.apache.http.protocol.HttpContext): void;
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export class HttpServerConnection extends java.lang.Object implements org.apache.http.HttpConnection {
				public static class: java.lang.Class<org.apache.http.HttpServerConnection>;
				/**
				 * Constructs a new instance of the org.apache.http.HttpServerConnection interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					receiveRequestHeader(): org.apache.http.HttpRequest;
					receiveRequestEntity(param0: org.apache.http.HttpEntityEnclosingRequest): void;
					sendResponseHeader(param0: org.apache.http.HttpResponse): void;
					sendResponseEntity(param0: org.apache.http.HttpResponse): void;
					flush(): void;
					close(): void;
					isOpen(): boolean;
					isStale(): boolean;
					setSocketTimeout(param0: number): void;
					getSocketTimeout(): number;
					shutdown(): void;
					getMetrics(): org.apache.http.HttpConnectionMetrics;
				});
				public constructor();
				public receiveRequestHeader(): org.apache.http.HttpRequest;
				public close(): void;
				public setSocketTimeout(param0: number): void;
				public shutdown(): void;
				public getSocketTimeout(): number;
				public getMetrics(): org.apache.http.HttpConnectionMetrics;
				public sendResponseHeader(param0: org.apache.http.HttpResponse): void;
				public isOpen(): boolean;
				public isStale(): boolean;
				public receiveRequestEntity(param0: org.apache.http.HttpEntityEnclosingRequest): void;
				public sendResponseEntity(param0: org.apache.http.HttpResponse): void;
				public flush(): void;
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export class HttpStatus extends java.lang.Object {
				public static class: java.lang.Class<org.apache.http.HttpStatus>;
				/**
				 * Constructs a new instance of the org.apache.http.HttpStatus interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
				});
				public constructor();
				public static SC_PROCESSING: number;
				public static SC_PARTIAL_CONTENT: number;
				public static SC_RESET_CONTENT: number;
				public static SC_UNPROCESSABLE_ENTITY: number;
				public static SC_ACCEPTED: number;
				public static SC_FORBIDDEN: number;
				public static SC_NON_AUTHORITATIVE_INFORMATION: number;
				public static SC_NO_CONTENT: number;
				public static SC_METHOD_NOT_ALLOWED: number;
				public static SC_NOT_ACCEPTABLE: number;
				public static SC_OK: number;
				public static SC_INSUFFICIENT_STORAGE: number;
				public static SC_EXPECTATION_FAILED: number;
				public static SC_MOVED_TEMPORARILY: number;
				public static SC_FAILED_DEPENDENCY: number;
				public static SC_MULTI_STATUS: number;
				public static SC_NOT_MODIFIED: number;
				public static SC_NOT_FOUND: number;
				public static SC_REQUEST_TIMEOUT: number;
				public static SC_GATEWAY_TIMEOUT: number;
				public static SC_REQUEST_URI_TOO_LONG: number;
				public static SC_PAYMENT_REQUIRED: number;
				public static SC_CONTINUE: number;
				public static SC_UNAUTHORIZED: number;
				public static SC_MOVED_PERMANENTLY: number;
				public static SC_LOCKED: number;
				public static SC_HTTP_VERSION_NOT_SUPPORTED: number;
				public static SC_USE_PROXY: number;
				public static SC_UNSUPPORTED_MEDIA_TYPE: number;
				public static SC_NOT_IMPLEMENTED: number;
				public static SC_TEMPORARY_REDIRECT: number;
				public static SC_REQUESTED_RANGE_NOT_SATISFIABLE: number;
				public static SC_PROXY_AUTHENTICATION_REQUIRED: number;
				public static SC_METHOD_FAILURE: number;
				public static SC_BAD_GATEWAY: number;
				public static SC_LENGTH_REQUIRED: number;
				public static SC_REQUEST_TOO_LONG: number;
				public static SC_GONE: number;
				public static SC_INSUFFICIENT_SPACE_ON_RESOURCE: number;
				public static SC_SERVICE_UNAVAILABLE: number;
				public static SC_CREATED: number;
				public static SC_PRECONDITION_FAILED: number;
				public static SC_MULTIPLE_CHOICES: number;
				public static SC_SWITCHING_PROTOCOLS: number;
				public static SC_SEE_OTHER: number;
				public static SC_BAD_REQUEST: number;
				public static SC_INTERNAL_SERVER_ERROR: number;
				public static SC_CONFLICT: number;
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export class HttpVersion extends org.apache.http.ProtocolVersion implements java.io.Serializable {
				public static class: java.lang.Class<org.apache.http.HttpVersion>;
				public static HTTP: string;
				public static HTTP_0_9: org.apache.http.HttpVersion;
				public static HTTP_1_0: org.apache.http.HttpVersion;
				public static HTTP_1_1: org.apache.http.HttpVersion;
				public constructor(param0: number, param1: number);
				public forVersion(param0: number, param1: number): org.apache.http.ProtocolVersion;
				public constructor(param0: string, param1: number, param2: number);
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export class MalformedChunkCodingException extends java.io.IOException {
				public static class: java.lang.Class<org.apache.http.MalformedChunkCodingException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export class MethodNotSupportedException extends org.apache.http.HttpException {
				public static class: java.lang.Class<org.apache.http.MethodNotSupportedException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export class NameValuePair extends java.lang.Object {
				public static class: java.lang.Class<org.apache.http.NameValuePair>;
				/**
				 * Constructs a new instance of the org.apache.http.NameValuePair interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getName(): string;
					getValue(): string;
				});
				public constructor();
				public getValue(): string;
				public getName(): string;
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export class NoHttpResponseException extends java.io.IOException {
				public static class: java.lang.Class<org.apache.http.NoHttpResponseException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export class ParseException extends java.lang.RuntimeException {
				public static class: java.lang.Class<org.apache.http.ParseException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export class ProtocolException extends org.apache.http.HttpException {
				public static class: java.lang.Class<org.apache.http.ProtocolException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export class ProtocolVersion extends java.lang.Object implements java.io.Serializable, java.lang.Cloneable {
				public static class: java.lang.Class<org.apache.http.ProtocolVersion>;
				public protocol: string;
				public major: number;
				public minor: number;
				public lessEquals(param0: org.apache.http.ProtocolVersion): boolean;
				public greaterEquals(param0: org.apache.http.ProtocolVersion): boolean;
				public constructor(param0: string, param1: number, param2: number);
				public compareToVersion(param0: org.apache.http.ProtocolVersion): number;
				public toString(): string;
				public getMajor(): number;
				public forVersion(param0: number, param1: number): org.apache.http.ProtocolVersion;
				public hashCode(): number;
				public equals(param0: any): boolean;
				public clone(): any;
				public getMinor(): number;
				public getProtocol(): string;
				public isComparable(param0: org.apache.http.ProtocolVersion): boolean;
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export class ReasonPhraseCatalog extends java.lang.Object {
				public static class: java.lang.Class<org.apache.http.ReasonPhraseCatalog>;
				/**
				 * Constructs a new instance of the org.apache.http.ReasonPhraseCatalog interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getReason(param0: number, param1: java.util.Locale): string;
				});
				public constructor();
				public getReason(param0: number, param1: java.util.Locale): string;
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export class RequestLine extends java.lang.Object {
				public static class: java.lang.Class<org.apache.http.RequestLine>;
				/**
				 * Constructs a new instance of the org.apache.http.RequestLine interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getMethod(): string;
					getProtocolVersion(): org.apache.http.ProtocolVersion;
					getUri(): string;
				});
				public constructor();
				public getMethod(): string;
				public getUri(): string;
				public getProtocolVersion(): org.apache.http.ProtocolVersion;
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export class StatusLine extends java.lang.Object {
				public static class: java.lang.Class<org.apache.http.StatusLine>;
				/**
				 * Constructs a new instance of the org.apache.http.StatusLine interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getProtocolVersion(): org.apache.http.ProtocolVersion;
					getStatusCode(): number;
					getReasonPhrase(): string;
				});
				public constructor();
				public getStatusCode(): number;
				public getReasonPhrase(): string;
				public getProtocolVersion(): org.apache.http.ProtocolVersion;
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export class TokenIterator extends java.lang.Object {
				public static class: java.lang.Class<org.apache.http.TokenIterator>;
				/**
				 * Constructs a new instance of the org.apache.http.TokenIterator interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					hasNext(): boolean;
					nextToken(): string;
				});
				public constructor();
				public hasNext(): boolean;
				public nextToken(): string;
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export class UnsupportedHttpVersionException extends org.apache.http.ProtocolException {
				public static class: java.lang.Class<org.apache.http.UnsupportedHttpVersionException>;
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module auth {
				export class AUTH extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.auth.AUTH>;
					public static WWW_AUTH: string;
					public static WWW_AUTH_RESP: string;
					public static PROXY_AUTH: string;
					public static PROXY_AUTH_RESP: string;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module auth {
				export class AuthScheme extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.auth.AuthScheme>;
					/**
					 * Constructs a new instance of the org.apache.http.auth.AuthScheme interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						processChallenge(param0: org.apache.http.Header): void;
						getSchemeName(): string;
						getParameter(param0: string): string;
						getRealm(): string;
						isConnectionBased(): boolean;
						isComplete(): boolean;
						authenticate(param0: org.apache.http.auth.Credentials, param1: org.apache.http.HttpRequest): org.apache.http.Header;
					});
					public constructor();
					public processChallenge(param0: org.apache.http.Header): void;
					public isConnectionBased(): boolean;
					public getRealm(): string;
					public getParameter(param0: string): string;
					public isComplete(): boolean;
					public authenticate(param0: org.apache.http.auth.Credentials, param1: org.apache.http.HttpRequest): org.apache.http.Header;
					public getSchemeName(): string;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module auth {
				export class AuthSchemeFactory extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.auth.AuthSchemeFactory>;
					/**
					 * Constructs a new instance of the org.apache.http.auth.AuthSchemeFactory interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						newInstance(param0: org.apache.http.params.HttpParams): org.apache.http.auth.AuthScheme;
					});
					public constructor();
					public newInstance(param0: org.apache.http.params.HttpParams): org.apache.http.auth.AuthScheme;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module auth {
				export class AuthSchemeRegistry extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.auth.AuthSchemeRegistry>;
					public register(param0: string, param1: org.apache.http.auth.AuthSchemeFactory): void;
					public setItems(param0: java.util.Map<string,org.apache.http.auth.AuthSchemeFactory>): void;
					public getAuthScheme(param0: string, param1: org.apache.http.params.HttpParams): org.apache.http.auth.AuthScheme;
					public getSchemeNames(): java.util.List<string>;
					public constructor();
					public unregister(param0: string): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module auth {
				export class AuthScope extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.auth.AuthScope>;
					public static ANY_HOST: string;
					public static ANY_PORT: number;
					public static ANY_REALM: string;
					public static ANY_SCHEME: string;
					public static ANY: org.apache.http.auth.AuthScope;
					public equals(param0: any): boolean;
					public getPort(): number;
					public toString(): string;
					public getScheme(): string;
					public getRealm(): string;
					public constructor(param0: string, param1: number, param2: string);
					public constructor(param0: string, param1: number);
					public constructor(param0: string, param1: number, param2: string, param3: string);
					public hashCode(): number;
					public constructor(param0: org.apache.http.auth.AuthScope);
					public match(param0: org.apache.http.auth.AuthScope): number;
					public getHost(): string;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module auth {
				export class AuthState extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.auth.AuthState>;
					public toString(): string;
					public getAuthScheme(): org.apache.http.auth.AuthScheme;
					public setAuthScope(param0: org.apache.http.auth.AuthScope): void;
					public constructor();
					public isValid(): boolean;
					public setCredentials(param0: org.apache.http.auth.Credentials): void;
					public setAuthScheme(param0: org.apache.http.auth.AuthScheme): void;
					public getCredentials(): org.apache.http.auth.Credentials;
					public getAuthScope(): org.apache.http.auth.AuthScope;
					public invalidate(): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module auth {
				export class AuthenticationException extends org.apache.http.ProtocolException {
					public static class: java.lang.Class<org.apache.http.auth.AuthenticationException>;
					public constructor(param0: string, param1: java.lang.Throwable);
					public constructor(param0: string);
					public constructor(param0: java.lang.Throwable);
					public constructor();
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module auth {
				export class BasicUserPrincipal extends java.lang.Object implements java.security.Principal {
					public static class: java.lang.Class<org.apache.http.auth.BasicUserPrincipal>;
					public equals(param0: any): boolean;
					public toString(): string;
					public constructor(param0: string);
					public getName(): string;
					public hashCode(): number;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module auth {
				export class Credentials extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.auth.Credentials>;
					/**
					 * Constructs a new instance of the org.apache.http.auth.Credentials interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						getUserPrincipal(): java.security.Principal;
						getPassword(): string;
					});
					public constructor();
					public getPassword(): string;
					public getUserPrincipal(): java.security.Principal;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module auth {
				export class InvalidCredentialsException extends org.apache.http.auth.AuthenticationException {
					public static class: java.lang.Class<org.apache.http.auth.InvalidCredentialsException>;
					public constructor(param0: string, param1: java.lang.Throwable);
					public constructor(param0: string);
					public constructor(param0: java.lang.Throwable);
					public constructor();
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module auth {
				export class MalformedChallengeException extends org.apache.http.ProtocolException {
					public static class: java.lang.Class<org.apache.http.auth.MalformedChallengeException>;
					public constructor(param0: string, param1: java.lang.Throwable);
					public constructor(param0: string);
					public constructor(param0: java.lang.Throwable);
					public constructor();
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module auth {
				export class NTCredentials extends java.lang.Object implements org.apache.http.auth.Credentials {
					public static class: java.lang.Class<org.apache.http.auth.NTCredentials>;
					public equals(param0: any): boolean;
					public getPassword(): string;
					public toString(): string;
					public constructor(param0: string, param1: string, param2: string, param3: string);
					public constructor(param0: string);
					public getWorkstation(): string;
					public getUserPrincipal(): java.security.Principal;
					public getDomain(): string;
					public hashCode(): number;
					public getUserName(): string;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module auth {
				export class NTUserPrincipal extends java.lang.Object implements java.security.Principal {
					public static class: java.lang.Class<org.apache.http.auth.NTUserPrincipal>;
					public constructor(param0: string, param1: string);
					public getUsername(): string;
					public equals(param0: any): boolean;
					public toString(): string;
					public getName(): string;
					public getDomain(): string;
					public hashCode(): number;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module auth {
				export class UsernamePasswordCredentials extends java.lang.Object implements org.apache.http.auth.Credentials {
					public static class: java.lang.Class<org.apache.http.auth.UsernamePasswordCredentials>;
					public constructor(param0: string, param1: string);
					public equals(param0: any): boolean;
					public getPassword(): string;
					public toString(): string;
					public constructor(param0: string);
					public getUserPrincipal(): java.security.Principal;
					public hashCode(): number;
					public getUserName(): string;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module auth {
				export module params {
					export class AuthPNames extends java.lang.Object {
						public static class: java.lang.Class<org.apache.http.auth.params.AuthPNames>;
						/**
						 * Constructs a new instance of the org.apache.http.auth.params.AuthPNames interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
						 */
						public constructor(implementation: {
						});
						public constructor();
						public static CREDENTIAL_CHARSET: string;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module auth {
				export module params {
					export class AuthParamBean extends org.apache.http.params.HttpAbstractParamBean {
						public static class: java.lang.Class<org.apache.http.auth.params.AuthParamBean>;
						public constructor(param0: org.apache.http.params.HttpParams);
						public setCredentialCharset(param0: string): void;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module auth {
				export module params {
					export class AuthParams extends java.lang.Object {
						public static class: java.lang.Class<org.apache.http.auth.params.AuthParams>;
						public static setCredentialCharset(param0: org.apache.http.params.HttpParams, param1: string): void;
						public static getCredentialCharset(param0: org.apache.http.params.HttpParams): string;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module client {
				export class AuthenticationHandler extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.client.AuthenticationHandler>;
					/**
					 * Constructs a new instance of the org.apache.http.client.AuthenticationHandler interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						isAuthenticationRequested(param0: org.apache.http.HttpResponse, param1: org.apache.http.protocol.HttpContext): boolean;
						getChallenges(param0: org.apache.http.HttpResponse, param1: org.apache.http.protocol.HttpContext): java.util.Map<string,org.apache.http.Header>;
						selectScheme(param0: java.util.Map<string,org.apache.http.Header>, param1: org.apache.http.HttpResponse, param2: org.apache.http.protocol.HttpContext): org.apache.http.auth.AuthScheme;
					});
					public constructor();
					public selectScheme(param0: java.util.Map<string,org.apache.http.Header>, param1: org.apache.http.HttpResponse, param2: org.apache.http.protocol.HttpContext): org.apache.http.auth.AuthScheme;
					public getChallenges(param0: org.apache.http.HttpResponse, param1: org.apache.http.protocol.HttpContext): java.util.Map<string,org.apache.http.Header>;
					public isAuthenticationRequested(param0: org.apache.http.HttpResponse, param1: org.apache.http.protocol.HttpContext): boolean;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module client {
				export class CircularRedirectException extends org.apache.http.client.RedirectException {
					public static class: java.lang.Class<org.apache.http.client.CircularRedirectException>;
					public constructor(param0: string, param1: java.lang.Throwable);
					public constructor(param0: string);
					public constructor(param0: java.lang.Throwable);
					public constructor();
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module client {
				export class ClientProtocolException extends java.io.IOException {
					public static class: java.lang.Class<org.apache.http.client.ClientProtocolException>;
					public constructor(param0: string, param1: java.lang.Throwable);
					public constructor(param0: string);
					public constructor(param0: java.lang.Throwable);
					public constructor();
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module client {
				export class CookieStore extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.client.CookieStore>;
					/**
					 * Constructs a new instance of the org.apache.http.client.CookieStore interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						addCookie(param0: org.apache.http.cookie.Cookie): void;
						getCookies(): java.util.List<org.apache.http.cookie.Cookie>;
						clearExpired(param0: java.util.Date): boolean;
						clear(): void;
					});
					public constructor();
					public getCookies(): java.util.List<org.apache.http.cookie.Cookie>;
					public clearExpired(param0: java.util.Date): boolean;
					public clear(): void;
					public addCookie(param0: org.apache.http.cookie.Cookie): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module client {
				export class CredentialsProvider extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.client.CredentialsProvider>;
					/**
					 * Constructs a new instance of the org.apache.http.client.CredentialsProvider interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						setCredentials(param0: org.apache.http.auth.AuthScope, param1: org.apache.http.auth.Credentials): void;
						getCredentials(param0: org.apache.http.auth.AuthScope): org.apache.http.auth.Credentials;
						clear(): void;
					});
					public constructor();
					public setCredentials(param0: org.apache.http.auth.AuthScope, param1: org.apache.http.auth.Credentials): void;
					public clear(): void;
					public getCredentials(param0: org.apache.http.auth.AuthScope): org.apache.http.auth.Credentials;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module client {
				export class HttpClient extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.client.HttpClient>;
					/**
					 * Constructs a new instance of the org.apache.http.client.HttpClient interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						getParams(): org.apache.http.params.HttpParams;
						getConnectionManager(): org.apache.http.conn.ClientConnectionManager;
						execute(param0: org.apache.http.client.methods.HttpUriRequest): org.apache.http.HttpResponse;
						execute(param0: org.apache.http.client.methods.HttpUriRequest, param1: org.apache.http.protocol.HttpContext): org.apache.http.HttpResponse;
						execute(param0: org.apache.http.HttpHost, param1: org.apache.http.HttpRequest): org.apache.http.HttpResponse;
						execute(param0: org.apache.http.HttpHost, param1: org.apache.http.HttpRequest, param2: org.apache.http.protocol.HttpContext): org.apache.http.HttpResponse;
						execute(param0: org.apache.http.client.methods.HttpUriRequest, param1: org.apache.http.client.ResponseHandler<any>): any;
						execute(param0: org.apache.http.client.methods.HttpUriRequest, param1: org.apache.http.client.ResponseHandler<any>, param2: org.apache.http.protocol.HttpContext): any;
						execute(param0: org.apache.http.HttpHost, param1: org.apache.http.HttpRequest, param2: org.apache.http.client.ResponseHandler<any>): any;
						execute(param0: org.apache.http.HttpHost, param1: org.apache.http.HttpRequest, param2: org.apache.http.client.ResponseHandler<any>, param3: org.apache.http.protocol.HttpContext): any;
					});
					public constructor();
					public execute(param0: org.apache.http.HttpHost, param1: org.apache.http.HttpRequest, param2: org.apache.http.client.ResponseHandler<any>, param3: org.apache.http.protocol.HttpContext): any;
					public execute(param0: org.apache.http.HttpHost, param1: org.apache.http.HttpRequest, param2: org.apache.http.client.ResponseHandler<any>): any;
					public execute(param0: org.apache.http.client.methods.HttpUriRequest, param1: org.apache.http.client.ResponseHandler<any>): any;
					public getConnectionManager(): org.apache.http.conn.ClientConnectionManager;
					public execute(param0: org.apache.http.HttpHost, param1: org.apache.http.HttpRequest): org.apache.http.HttpResponse;
					public execute(param0: org.apache.http.client.methods.HttpUriRequest): org.apache.http.HttpResponse;
					public execute(param0: org.apache.http.client.methods.HttpUriRequest, param1: org.apache.http.protocol.HttpContext): org.apache.http.HttpResponse;
					public getParams(): org.apache.http.params.HttpParams;
					public execute(param0: org.apache.http.HttpHost, param1: org.apache.http.HttpRequest, param2: org.apache.http.protocol.HttpContext): org.apache.http.HttpResponse;
					public execute(param0: org.apache.http.client.methods.HttpUriRequest, param1: org.apache.http.client.ResponseHandler<any>, param2: org.apache.http.protocol.HttpContext): any;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module client {
				export class HttpRequestRetryHandler extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.client.HttpRequestRetryHandler>;
					/**
					 * Constructs a new instance of the org.apache.http.client.HttpRequestRetryHandler interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						retryRequest(param0: java.io.IOException, param1: number, param2: org.apache.http.protocol.HttpContext): boolean;
					});
					public constructor();
					public retryRequest(param0: java.io.IOException, param1: number, param2: org.apache.http.protocol.HttpContext): boolean;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module client {
				export class HttpResponseException extends org.apache.http.client.ClientProtocolException {
					public static class: java.lang.Class<org.apache.http.client.HttpResponseException>;
					public getStatusCode(): number;
					public constructor(param0: string, param1: java.lang.Throwable);
					public constructor(param0: string);
					public constructor(param0: java.lang.Throwable);
					public constructor();
					public constructor(param0: number, param1: string);
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module client {
				export class NonRepeatableRequestException extends org.apache.http.ProtocolException {
					public static class: java.lang.Class<org.apache.http.client.NonRepeatableRequestException>;
					public constructor(param0: string, param1: java.lang.Throwable);
					public constructor(param0: string);
					public constructor(param0: java.lang.Throwable);
					public constructor();
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module client {
				export class RedirectException extends org.apache.http.ProtocolException {
					public static class: java.lang.Class<org.apache.http.client.RedirectException>;
					public constructor(param0: string, param1: java.lang.Throwable);
					public constructor(param0: string);
					public constructor(param0: java.lang.Throwable);
					public constructor();
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module client {
				export class RedirectHandler extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.client.RedirectHandler>;
					/**
					 * Constructs a new instance of the org.apache.http.client.RedirectHandler interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						isRedirectRequested(param0: org.apache.http.HttpResponse, param1: org.apache.http.protocol.HttpContext): boolean;
						getLocationURI(param0: org.apache.http.HttpResponse, param1: org.apache.http.protocol.HttpContext): java.net.URI;
					});
					public constructor();
					public getLocationURI(param0: org.apache.http.HttpResponse, param1: org.apache.http.protocol.HttpContext): java.net.URI;
					public isRedirectRequested(param0: org.apache.http.HttpResponse, param1: org.apache.http.protocol.HttpContext): boolean;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module client {
				export class RequestDirector extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.client.RequestDirector>;
					/**
					 * Constructs a new instance of the org.apache.http.client.RequestDirector interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						execute(param0: org.apache.http.HttpHost, param1: org.apache.http.HttpRequest, param2: org.apache.http.protocol.HttpContext): org.apache.http.HttpResponse;
					});
					public constructor();
					public execute(param0: org.apache.http.HttpHost, param1: org.apache.http.HttpRequest, param2: org.apache.http.protocol.HttpContext): org.apache.http.HttpResponse;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module client {
				export class ResponseHandler<T>  extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.client.ResponseHandler<any>>;
					/**
					 * Constructs a new instance of the org.apache.http.client.ResponseHandler<any> interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						handleResponse(param0: org.apache.http.HttpResponse): T;
					});
					public constructor();
					public handleResponse(param0: org.apache.http.HttpResponse): T;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module client {
				export class UserTokenHandler extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.client.UserTokenHandler>;
					/**
					 * Constructs a new instance of the org.apache.http.client.UserTokenHandler interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						getUserToken(param0: org.apache.http.protocol.HttpContext): any;
					});
					public constructor();
					public getUserToken(param0: org.apache.http.protocol.HttpContext): any;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module client {
				export module entity {
					export class UrlEncodedFormEntity extends org.apache.http.entity.StringEntity {
						public static class: java.lang.Class<org.apache.http.client.entity.UrlEncodedFormEntity>;
						public constructor(param0: java.util.List<any>);
						public constructor();
						public getContentLength(): number;
						public getContentType(): org.apache.http.Header;
						public isStreaming(): boolean;
						public consumeContent(): void;
						public getContent(): java.io.InputStream;
						public isChunked(): boolean;
						public getContentEncoding(): org.apache.http.Header;
						public constructor(param0: java.util.List<any>, param1: string);
						public constructor(param0: string, param1: string);
						public isRepeatable(): boolean;
						public writeTo(param0: java.io.OutputStream): void;
						public constructor(param0: string);
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module client {
				export module methods {
					export class AbortableHttpRequest extends java.lang.Object {
						public static class: java.lang.Class<org.apache.http.client.methods.AbortableHttpRequest>;
						/**
						 * Constructs a new instance of the org.apache.http.client.methods.AbortableHttpRequest interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
						 */
						public constructor(implementation: {
							setConnectionRequest(param0: org.apache.http.conn.ClientConnectionRequest): void;
							setReleaseTrigger(param0: org.apache.http.conn.ConnectionReleaseTrigger): void;
							abort(): void;
						});
						public constructor();
						public setConnectionRequest(param0: org.apache.http.conn.ClientConnectionRequest): void;
						public setReleaseTrigger(param0: org.apache.http.conn.ConnectionReleaseTrigger): void;
						public abort(): void;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module client {
				export module methods {
					export class HttpDelete extends org.apache.http.client.methods.HttpRequestBase {
						public static class: java.lang.Class<org.apache.http.client.methods.HttpDelete>;
						public static METHOD_NAME: string;
						public getFirstHeader(param0: string): org.apache.http.Header;
						public getParams(): org.apache.http.params.HttpParams;
						public setHeader(param0: org.apache.http.Header): void;
						public setReleaseTrigger(param0: org.apache.http.conn.ConnectionReleaseTrigger): void;
						public abort(): void;
						public getProtocolVersion(): org.apache.http.ProtocolVersion;
						public isAborted(): boolean;
						public getAllHeaders(): native.Array<org.apache.http.Header>;
						public getHeaders(param0: string): native.Array<org.apache.http.Header>;
						public setConnectionRequest(param0: org.apache.http.conn.ClientConnectionRequest): void;
						public setParams(param0: org.apache.http.params.HttpParams): void;
						public getURI(): java.net.URI;
						public removeHeader(param0: org.apache.http.Header): void;
						public getMethod(): string;
						public headerIterator(param0: string): org.apache.http.HeaderIterator;
						public setHeader(param0: string, param1: string): void;
						public constructor();
						public constructor(param0: org.apache.http.params.HttpParams);
						public addHeader(param0: string, param1: string): void;
						public containsHeader(param0: string): boolean;
						public headerIterator(): org.apache.http.HeaderIterator;
						public constructor(param0: java.net.URI);
						public setHeaders(param0: native.Array<org.apache.http.Header>): void;
						public removeHeaders(param0: string): void;
						public getLastHeader(param0: string): org.apache.http.Header;
						public addHeader(param0: org.apache.http.Header): void;
						public constructor(param0: string);
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module client {
				export module methods {
					export abstract class HttpEntityEnclosingRequestBase extends org.apache.http.client.methods.HttpRequestBase implements org.apache.http.HttpEntityEnclosingRequest {
						public static class: java.lang.Class<org.apache.http.client.methods.HttpEntityEnclosingRequestBase>;
						public getEntity(): org.apache.http.HttpEntity;
						public getFirstHeader(param0: string): org.apache.http.Header;
						public getParams(): org.apache.http.params.HttpParams;
						public setHeader(param0: org.apache.http.Header): void;
						public setReleaseTrigger(param0: org.apache.http.conn.ConnectionReleaseTrigger): void;
						public getProtocolVersion(): org.apache.http.ProtocolVersion;
						public abort(): void;
						public isAborted(): boolean;
						public getAllHeaders(): native.Array<org.apache.http.Header>;
						public getHeaders(param0: string): native.Array<org.apache.http.Header>;
						public setParams(param0: org.apache.http.params.HttpParams): void;
						public setConnectionRequest(param0: org.apache.http.conn.ClientConnectionRequest): void;
						public getURI(): java.net.URI;
						public expectContinue(): boolean;
						public removeHeader(param0: org.apache.http.Header): void;
						public getMethod(): string;
						public headerIterator(param0: string): org.apache.http.HeaderIterator;
						public setHeader(param0: string, param1: string): void;
						public constructor();
						public getRequestLine(): org.apache.http.RequestLine;
						public constructor(param0: org.apache.http.params.HttpParams);
						public clone(): any;
						public addHeader(param0: string, param1: string): void;
						public containsHeader(param0: string): boolean;
						public headerIterator(): org.apache.http.HeaderIterator;
						public setHeaders(param0: native.Array<org.apache.http.Header>): void;
						public removeHeaders(param0: string): void;
						public setEntity(param0: org.apache.http.HttpEntity): void;
						public getLastHeader(param0: string): org.apache.http.Header;
						public addHeader(param0: org.apache.http.Header): void;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module client {
				export module methods {
					export class HttpGet extends org.apache.http.client.methods.HttpRequestBase {
						public static class: java.lang.Class<org.apache.http.client.methods.HttpGet>;
						public static METHOD_NAME: string;
						public getFirstHeader(param0: string): org.apache.http.Header;
						public getParams(): org.apache.http.params.HttpParams;
						public setHeader(param0: org.apache.http.Header): void;
						public setReleaseTrigger(param0: org.apache.http.conn.ConnectionReleaseTrigger): void;
						public abort(): void;
						public getProtocolVersion(): org.apache.http.ProtocolVersion;
						public isAborted(): boolean;
						public getAllHeaders(): native.Array<org.apache.http.Header>;
						public getHeaders(param0: string): native.Array<org.apache.http.Header>;
						public setConnectionRequest(param0: org.apache.http.conn.ClientConnectionRequest): void;
						public setParams(param0: org.apache.http.params.HttpParams): void;
						public getURI(): java.net.URI;
						public removeHeader(param0: org.apache.http.Header): void;
						public getMethod(): string;
						public headerIterator(param0: string): org.apache.http.HeaderIterator;
						public setHeader(param0: string, param1: string): void;
						public constructor();
						public constructor(param0: org.apache.http.params.HttpParams);
						public addHeader(param0: string, param1: string): void;
						public containsHeader(param0: string): boolean;
						public headerIterator(): org.apache.http.HeaderIterator;
						public constructor(param0: java.net.URI);
						public setHeaders(param0: native.Array<org.apache.http.Header>): void;
						public removeHeaders(param0: string): void;
						public getLastHeader(param0: string): org.apache.http.Header;
						public addHeader(param0: org.apache.http.Header): void;
						public constructor(param0: string);
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module client {
				export module methods {
					export class HttpHead extends org.apache.http.client.methods.HttpRequestBase {
						public static class: java.lang.Class<org.apache.http.client.methods.HttpHead>;
						public static METHOD_NAME: string;
						public getFirstHeader(param0: string): org.apache.http.Header;
						public getParams(): org.apache.http.params.HttpParams;
						public setHeader(param0: org.apache.http.Header): void;
						public setReleaseTrigger(param0: org.apache.http.conn.ConnectionReleaseTrigger): void;
						public abort(): void;
						public getProtocolVersion(): org.apache.http.ProtocolVersion;
						public isAborted(): boolean;
						public getAllHeaders(): native.Array<org.apache.http.Header>;
						public getHeaders(param0: string): native.Array<org.apache.http.Header>;
						public setConnectionRequest(param0: org.apache.http.conn.ClientConnectionRequest): void;
						public setParams(param0: org.apache.http.params.HttpParams): void;
						public getURI(): java.net.URI;
						public removeHeader(param0: org.apache.http.Header): void;
						public getMethod(): string;
						public headerIterator(param0: string): org.apache.http.HeaderIterator;
						public setHeader(param0: string, param1: string): void;
						public constructor();
						public constructor(param0: org.apache.http.params.HttpParams);
						public addHeader(param0: string, param1: string): void;
						public containsHeader(param0: string): boolean;
						public headerIterator(): org.apache.http.HeaderIterator;
						public constructor(param0: java.net.URI);
						public setHeaders(param0: native.Array<org.apache.http.Header>): void;
						public removeHeaders(param0: string): void;
						public getLastHeader(param0: string): org.apache.http.Header;
						public addHeader(param0: org.apache.http.Header): void;
						public constructor(param0: string);
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module client {
				export module methods {
					export class HttpOptions extends org.apache.http.client.methods.HttpRequestBase {
						public static class: java.lang.Class<org.apache.http.client.methods.HttpOptions>;
						public static METHOD_NAME: string;
						public getFirstHeader(param0: string): org.apache.http.Header;
						public getParams(): org.apache.http.params.HttpParams;
						public setHeader(param0: org.apache.http.Header): void;
						public setReleaseTrigger(param0: org.apache.http.conn.ConnectionReleaseTrigger): void;
						public abort(): void;
						public getProtocolVersion(): org.apache.http.ProtocolVersion;
						public isAborted(): boolean;
						public getAllHeaders(): native.Array<org.apache.http.Header>;
						public getHeaders(param0: string): native.Array<org.apache.http.Header>;
						public setConnectionRequest(param0: org.apache.http.conn.ClientConnectionRequest): void;
						public setParams(param0: org.apache.http.params.HttpParams): void;
						public getURI(): java.net.URI;
						public removeHeader(param0: org.apache.http.Header): void;
						public getMethod(): string;
						public headerIterator(param0: string): org.apache.http.HeaderIterator;
						public setHeader(param0: string, param1: string): void;
						public constructor();
						public constructor(param0: org.apache.http.params.HttpParams);
						public addHeader(param0: string, param1: string): void;
						public containsHeader(param0: string): boolean;
						public headerIterator(): org.apache.http.HeaderIterator;
						public constructor(param0: java.net.URI);
						public setHeaders(param0: native.Array<org.apache.http.Header>): void;
						public removeHeaders(param0: string): void;
						public getLastHeader(param0: string): org.apache.http.Header;
						public addHeader(param0: org.apache.http.Header): void;
						public getAllowedMethods(param0: org.apache.http.HttpResponse): java.util.Set<string>;
						public constructor(param0: string);
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module client {
				export module methods {
					export class HttpPost extends org.apache.http.client.methods.HttpEntityEnclosingRequestBase {
						public static class: java.lang.Class<org.apache.http.client.methods.HttpPost>;
						public static METHOD_NAME: string;
						public getEntity(): org.apache.http.HttpEntity;
						public getFirstHeader(param0: string): org.apache.http.Header;
						public getParams(): org.apache.http.params.HttpParams;
						public setHeader(param0: org.apache.http.Header): void;
						public setReleaseTrigger(param0: org.apache.http.conn.ConnectionReleaseTrigger): void;
						public abort(): void;
						public getProtocolVersion(): org.apache.http.ProtocolVersion;
						public isAborted(): boolean;
						public getAllHeaders(): native.Array<org.apache.http.Header>;
						public getHeaders(param0: string): native.Array<org.apache.http.Header>;
						public setConnectionRequest(param0: org.apache.http.conn.ClientConnectionRequest): void;
						public setParams(param0: org.apache.http.params.HttpParams): void;
						public getURI(): java.net.URI;
						public expectContinue(): boolean;
						public removeHeader(param0: org.apache.http.Header): void;
						public getMethod(): string;
						public headerIterator(param0: string): org.apache.http.HeaderIterator;
						public setHeader(param0: string, param1: string): void;
						public constructor();
						public constructor(param0: org.apache.http.params.HttpParams);
						public addHeader(param0: string, param1: string): void;
						public containsHeader(param0: string): boolean;
						public headerIterator(): org.apache.http.HeaderIterator;
						public constructor(param0: java.net.URI);
						public setHeaders(param0: native.Array<org.apache.http.Header>): void;
						public removeHeaders(param0: string): void;
						public setEntity(param0: org.apache.http.HttpEntity): void;
						public getLastHeader(param0: string): org.apache.http.Header;
						public addHeader(param0: org.apache.http.Header): void;
						public constructor(param0: string);
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module client {
				export module methods {
					export class HttpPut extends org.apache.http.client.methods.HttpEntityEnclosingRequestBase {
						public static class: java.lang.Class<org.apache.http.client.methods.HttpPut>;
						public static METHOD_NAME: string;
						public getEntity(): org.apache.http.HttpEntity;
						public getFirstHeader(param0: string): org.apache.http.Header;
						public getParams(): org.apache.http.params.HttpParams;
						public setHeader(param0: org.apache.http.Header): void;
						public setReleaseTrigger(param0: org.apache.http.conn.ConnectionReleaseTrigger): void;
						public abort(): void;
						public getProtocolVersion(): org.apache.http.ProtocolVersion;
						public isAborted(): boolean;
						public getAllHeaders(): native.Array<org.apache.http.Header>;
						public getHeaders(param0: string): native.Array<org.apache.http.Header>;
						public setConnectionRequest(param0: org.apache.http.conn.ClientConnectionRequest): void;
						public setParams(param0: org.apache.http.params.HttpParams): void;
						public getURI(): java.net.URI;
						public expectContinue(): boolean;
						public removeHeader(param0: org.apache.http.Header): void;
						public getMethod(): string;
						public headerIterator(param0: string): org.apache.http.HeaderIterator;
						public setHeader(param0: string, param1: string): void;
						public constructor();
						public constructor(param0: org.apache.http.params.HttpParams);
						public addHeader(param0: string, param1: string): void;
						public containsHeader(param0: string): boolean;
						public headerIterator(): org.apache.http.HeaderIterator;
						public constructor(param0: java.net.URI);
						public setHeaders(param0: native.Array<org.apache.http.Header>): void;
						public removeHeaders(param0: string): void;
						public setEntity(param0: org.apache.http.HttpEntity): void;
						public getLastHeader(param0: string): org.apache.http.Header;
						public addHeader(param0: org.apache.http.Header): void;
						public constructor(param0: string);
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module client {
				export module methods {
					export abstract class HttpRequestBase extends org.apache.http.message.AbstractHttpMessage implements org.apache.http.client.methods.HttpUriRequest, org.apache.http.client.methods.AbortableHttpRequest, java.lang.Cloneable {
						public static class: java.lang.Class<org.apache.http.client.methods.HttpRequestBase>;
						public getFirstHeader(param0: string): org.apache.http.Header;
						public getParams(): org.apache.http.params.HttpParams;
						public setHeader(param0: org.apache.http.Header): void;
						public setReleaseTrigger(param0: org.apache.http.conn.ConnectionReleaseTrigger): void;
						public getProtocolVersion(): org.apache.http.ProtocolVersion;
						public abort(): void;
						public setURI(param0: java.net.URI): void;
						public isAborted(): boolean;
						public getAllHeaders(): native.Array<org.apache.http.Header>;
						public getHeaders(param0: string): native.Array<org.apache.http.Header>;
						public setConnectionRequest(param0: org.apache.http.conn.ClientConnectionRequest): void;
						public setParams(param0: org.apache.http.params.HttpParams): void;
						public getURI(): java.net.URI;
						public removeHeader(param0: org.apache.http.Header): void;
						public getMethod(): string;
						public headerIterator(param0: string): org.apache.http.HeaderIterator;
						public setHeader(param0: string, param1: string): void;
						public constructor();
						public getRequestLine(): org.apache.http.RequestLine;
						public constructor(param0: org.apache.http.params.HttpParams);
						public clone(): any;
						public addHeader(param0: string, param1: string): void;
						public containsHeader(param0: string): boolean;
						public headerIterator(): org.apache.http.HeaderIterator;
						public setHeaders(param0: native.Array<org.apache.http.Header>): void;
						public removeHeaders(param0: string): void;
						public getLastHeader(param0: string): org.apache.http.Header;
						public addHeader(param0: org.apache.http.Header): void;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module client {
				export module methods {
					export class HttpTrace extends org.apache.http.client.methods.HttpRequestBase {
						public static class: java.lang.Class<org.apache.http.client.methods.HttpTrace>;
						public static METHOD_NAME: string;
						public getFirstHeader(param0: string): org.apache.http.Header;
						public getParams(): org.apache.http.params.HttpParams;
						public setHeader(param0: org.apache.http.Header): void;
						public setReleaseTrigger(param0: org.apache.http.conn.ConnectionReleaseTrigger): void;
						public abort(): void;
						public getProtocolVersion(): org.apache.http.ProtocolVersion;
						public isAborted(): boolean;
						public getAllHeaders(): native.Array<org.apache.http.Header>;
						public getHeaders(param0: string): native.Array<org.apache.http.Header>;
						public setConnectionRequest(param0: org.apache.http.conn.ClientConnectionRequest): void;
						public setParams(param0: org.apache.http.params.HttpParams): void;
						public getURI(): java.net.URI;
						public removeHeader(param0: org.apache.http.Header): void;
						public getMethod(): string;
						public headerIterator(param0: string): org.apache.http.HeaderIterator;
						public setHeader(param0: string, param1: string): void;
						public constructor();
						public constructor(param0: org.apache.http.params.HttpParams);
						public addHeader(param0: string, param1: string): void;
						public containsHeader(param0: string): boolean;
						public headerIterator(): org.apache.http.HeaderIterator;
						public constructor(param0: java.net.URI);
						public setHeaders(param0: native.Array<org.apache.http.Header>): void;
						public removeHeaders(param0: string): void;
						public getLastHeader(param0: string): org.apache.http.Header;
						public addHeader(param0: org.apache.http.Header): void;
						public constructor(param0: string);
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module client {
				export module methods {
					export class HttpUriRequest extends java.lang.Object implements org.apache.http.HttpRequest {
						public static class: java.lang.Class<org.apache.http.client.methods.HttpUriRequest>;
						/**
						 * Constructs a new instance of the org.apache.http.client.methods.HttpUriRequest interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
						 */
						public constructor(implementation: {
							getMethod(): string;
							getURI(): java.net.URI;
							abort(): void;
							isAborted(): boolean;
							getRequestLine(): org.apache.http.RequestLine;
							getProtocolVersion(): org.apache.http.ProtocolVersion;
							containsHeader(param0: string): boolean;
							getHeaders(param0: string): native.Array<org.apache.http.Header>;
							getFirstHeader(param0: string): org.apache.http.Header;
							getLastHeader(param0: string): org.apache.http.Header;
							getAllHeaders(): native.Array<org.apache.http.Header>;
							addHeader(param0: org.apache.http.Header): void;
							addHeader(param0: string, param1: string): void;
							setHeader(param0: org.apache.http.Header): void;
							setHeader(param0: string, param1: string): void;
							setHeaders(param0: native.Array<org.apache.http.Header>): void;
							removeHeader(param0: org.apache.http.Header): void;
							removeHeaders(param0: string): void;
							headerIterator(): org.apache.http.HeaderIterator;
							headerIterator(param0: string): org.apache.http.HeaderIterator;
							getParams(): org.apache.http.params.HttpParams;
							setParams(param0: org.apache.http.params.HttpParams): void;
						});
						public constructor();
						public getRequestLine(): org.apache.http.RequestLine;
						public getFirstHeader(param0: string): org.apache.http.Header;
						public getParams(): org.apache.http.params.HttpParams;
						public setHeader(param0: org.apache.http.Header): void;
						public addHeader(param0: string, param1: string): void;
						public containsHeader(param0: string): boolean;
						public abort(): void;
						public getProtocolVersion(): org.apache.http.ProtocolVersion;
						public headerIterator(): org.apache.http.HeaderIterator;
						public isAborted(): boolean;
						public getAllHeaders(): native.Array<org.apache.http.Header>;
						public getHeaders(param0: string): native.Array<org.apache.http.Header>;
						public setHeaders(param0: native.Array<org.apache.http.Header>): void;
						public removeHeaders(param0: string): void;
						public setParams(param0: org.apache.http.params.HttpParams): void;
						public getURI(): java.net.URI;
						public removeHeader(param0: org.apache.http.Header): void;
						public getMethod(): string;
						public getLastHeader(param0: string): org.apache.http.Header;
						public addHeader(param0: org.apache.http.Header): void;
						public headerIterator(param0: string): org.apache.http.HeaderIterator;
						public setHeader(param0: string, param1: string): void;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module client {
				export module params {
					export class AllClientPNames extends java.lang.Object implements org.apache.http.params.CoreConnectionPNames, org.apache.http.params.CoreProtocolPNames, org.apache.http.client.params.ClientPNames, org.apache.http.auth.params.AuthPNames, org.apache.http.cookie.params.CookieSpecPNames, org.apache.http.conn.params.ConnConnectionPNames, org.apache.http.conn.params.ConnManagerPNames, org.apache.http.conn.params.ConnRoutePNames {
						public static class: java.lang.Class<org.apache.http.client.params.AllClientPNames>;
						/**
						 * Constructs a new instance of the org.apache.http.client.params.AllClientPNames interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
						 */
						public constructor(implementation: {
						});
						public constructor();
						public static HANDLE_AUTHENTICATION: string;
						public static FORCED_ROUTE: string;
						public static ORIGIN_SERVER: string;
						public static COOKIE_POLICY: string;
						public static HTTP_CONTENT_CHARSET: string;
						public static TIMEOUT: string;
						public static DEFAULT_HEADERS: string;
						public static MAX_REDIRECTS: string;
						public static USER_AGENT: string;
						public static WAIT_FOR_CONTINUE: string;
						public static CONNECTION_TIMEOUT: string;
						public static SO_TIMEOUT: string;
						public static STALE_CONNECTION_CHECK: string;
						public static SINGLE_COOKIE_HEADER: string;
						public static MAX_LINE_LENGTH: string;
						public static REJECT_RELATIVE_REDIRECT: string;
						public static MAX_TOTAL_CONNECTIONS: string;
						public static SO_LINGER: string;
						public static STRICT_TRANSFER_ENCODING: string;
						public static MAX_CONNECTIONS_PER_ROUTE: string;
						public static PROTOCOL_VERSION: string;
						public static DEFAULT_PROXY: string;
						public static HANDLE_REDIRECTS: string;
						public static VIRTUAL_HOST: string;
						public static USE_EXPECT_CONTINUE: string;
						public static MAX_HEADER_COUNT: string;
						public static DATE_PATTERNS: string;
						public static CONNECTION_MANAGER_FACTORY: string;
						public static DEFAULT_HOST: string;
						public static LOCAL_ADDRESS: string;
						public static CONNECTION_MANAGER_FACTORY_CLASS_NAME: string;
						public static CREDENTIAL_CHARSET: string;
						public static MAX_STATUS_LINE_GARBAGE: string;
						public static SOCKET_BUFFER_SIZE: string;
						public static ALLOW_CIRCULAR_REDIRECTS: string;
						public static TCP_NODELAY: string;
						public static HTTP_ELEMENT_CHARSET: string;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module client {
				export module params {
					export class AuthPolicy extends java.lang.Object {
						public static class: java.lang.Class<org.apache.http.client.params.AuthPolicy>;
						public static NTLM: string;
						public static DIGEST: string;
						public static BASIC: string;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module client {
				export module params {
					export class ClientPNames extends java.lang.Object {
						public static class: java.lang.Class<org.apache.http.client.params.ClientPNames>;
						/**
						 * Constructs a new instance of the org.apache.http.client.params.ClientPNames interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
						 */
						public constructor(implementation: {
						});
						public constructor();
						public static HANDLE_AUTHENTICATION: string;
						public static MAX_REDIRECTS: string;
						public static COOKIE_POLICY: string;
						public static HANDLE_REDIRECTS: string;
						public static VIRTUAL_HOST: string;
						public static ALLOW_CIRCULAR_REDIRECTS: string;
						public static DEFAULT_HEADERS: string;
						public static CONNECTION_MANAGER_FACTORY: string;
						public static DEFAULT_HOST: string;
						public static CONNECTION_MANAGER_FACTORY_CLASS_NAME: string;
						public static REJECT_RELATIVE_REDIRECT: string;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module client {
				export module params {
					export class ClientParamBean extends org.apache.http.params.HttpAbstractParamBean {
						public static class: java.lang.Class<org.apache.http.client.params.ClientParamBean>;
						public setRejectRelativeRedirect(param0: boolean): void;
						public setVirtualHost(param0: org.apache.http.HttpHost): void;
						public constructor(param0: org.apache.http.params.HttpParams);
						public setDefaultHost(param0: org.apache.http.HttpHost): void;
						public setMaxRedirects(param0: number): void;
						public setConnectionManagerFactory(param0: org.apache.http.conn.ClientConnectionManagerFactory): void;
						public setHandleRedirects(param0: boolean): void;
						public setHandleAuthentication(param0: boolean): void;
						public setAllowCircularRedirects(param0: boolean): void;
						public setConnectionManagerFactoryClassName(param0: string): void;
						public setCookiePolicy(param0: string): void;
						public setDefaultHeaders(param0: java.util.Collection<org.apache.http.Header>): void;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module client {
				export module params {
					export class CookiePolicy extends java.lang.Object {
						public static class: java.lang.Class<org.apache.http.client.params.CookiePolicy>;
						public static BROWSER_COMPATIBILITY: string;
						public static NETSCAPE: string;
						public static RFC_2109: string;
						public static RFC_2965: string;
						public static BEST_MATCH: string;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module client {
				export module params {
					export class HttpClientParams extends java.lang.Object {
						public static class: java.lang.Class<org.apache.http.client.params.HttpClientParams>;
						public static setCookiePolicy(param0: org.apache.http.params.HttpParams, param1: string): void;
						public static setAuthenticating(param0: org.apache.http.params.HttpParams, param1: boolean): void;
						public static isAuthenticating(param0: org.apache.http.params.HttpParams): boolean;
						public static getCookiePolicy(param0: org.apache.http.params.HttpParams): string;
						public static setRedirecting(param0: org.apache.http.params.HttpParams, param1: boolean): void;
						public static isRedirecting(param0: org.apache.http.params.HttpParams): boolean;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module client {
				export module protocol {
					export class ClientContext extends java.lang.Object {
						public static class: java.lang.Class<org.apache.http.client.protocol.ClientContext>;
						/**
						 * Constructs a new instance of the org.apache.http.client.protocol.ClientContext interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
						 */
						public constructor(implementation: {
						});
						public constructor();
						public static COOKIESPEC_REGISTRY: string;
						public static AUTHSCHEME_REGISTRY: string;
						public static COOKIE_SPEC: string;
						public static COOKIE_STORE: string;
						public static USER_TOKEN: string;
						public static TARGET_AUTH_STATE: string;
						public static CREDS_PROVIDER: string;
						public static PROXY_AUTH_STATE: string;
						public static AUTH_SCHEME_PREF: string;
						public static COOKIE_ORIGIN: string;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module client {
				export module protocol {
					export class ClientContextConfigurer extends java.lang.Object implements org.apache.http.client.protocol.ClientContext {
						public static class: java.lang.Class<org.apache.http.client.protocol.ClientContextConfigurer>;
						public setAuthSchemeRegistry(param0: org.apache.http.auth.AuthSchemeRegistry): void;
						public setCredentialsProvider(param0: org.apache.http.client.CredentialsProvider): void;
						public setCookieStore(param0: org.apache.http.client.CookieStore): void;
						public setAuthSchemePref(param0: java.util.List<string>): void;
						public constructor(param0: org.apache.http.protocol.HttpContext);
						public setCookieSpecRegistry(param0: org.apache.http.cookie.CookieSpecRegistry): void;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module client {
				export module protocol {
					export class RequestAddCookies extends java.lang.Object implements org.apache.http.HttpRequestInterceptor {
						public static class: java.lang.Class<org.apache.http.client.protocol.RequestAddCookies>;
						public constructor();
						public process(param0: org.apache.http.HttpRequest, param1: org.apache.http.protocol.HttpContext): void;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module client {
				export module protocol {
					export class RequestDefaultHeaders extends java.lang.Object implements org.apache.http.HttpRequestInterceptor {
						public static class: java.lang.Class<org.apache.http.client.protocol.RequestDefaultHeaders>;
						public constructor();
						public process(param0: org.apache.http.HttpRequest, param1: org.apache.http.protocol.HttpContext): void;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module client {
				export module protocol {
					export class RequestProxyAuthentication extends java.lang.Object implements org.apache.http.HttpRequestInterceptor {
						public static class: java.lang.Class<org.apache.http.client.protocol.RequestProxyAuthentication>;
						public constructor();
						public process(param0: org.apache.http.HttpRequest, param1: org.apache.http.protocol.HttpContext): void;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module client {
				export module protocol {
					export class RequestTargetAuthentication extends java.lang.Object implements org.apache.http.HttpRequestInterceptor {
						public static class: java.lang.Class<org.apache.http.client.protocol.RequestTargetAuthentication>;
						public constructor();
						public process(param0: org.apache.http.HttpRequest, param1: org.apache.http.protocol.HttpContext): void;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module client {
				export module protocol {
					export class ResponseProcessCookies extends java.lang.Object implements org.apache.http.HttpResponseInterceptor {
						public static class: java.lang.Class<org.apache.http.client.protocol.ResponseProcessCookies>;
						public process(param0: org.apache.http.HttpResponse, param1: org.apache.http.protocol.HttpContext): void;
						public constructor();
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module client {
				export module utils {
					export class CloneUtils extends java.lang.Object {
						public static class: java.lang.Class<org.apache.http.client.utils.CloneUtils>;
						public static clone(param0: any): any;
						public clone(): any;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module client {
				export module utils {
					export class URIUtils extends java.lang.Object {
						public static class: java.lang.Class<org.apache.http.client.utils.URIUtils>;
						public static resolve(param0: java.net.URI, param1: java.net.URI): java.net.URI;
						public static rewriteURI(param0: java.net.URI, param1: org.apache.http.HttpHost): java.net.URI;
						public static resolve(param0: java.net.URI, param1: string): java.net.URI;
						public static createURI(param0: string, param1: string, param2: number, param3: string, param4: string, param5: string): java.net.URI;
						public static rewriteURI(param0: java.net.URI, param1: org.apache.http.HttpHost, param2: boolean): java.net.URI;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module client {
				export module utils {
					export class URLEncodedUtils extends java.lang.Object {
						public static class: java.lang.Class<org.apache.http.client.utils.URLEncodedUtils>;
						public static CONTENT_TYPE: string;
						public static parse(param0: java.net.URI, param1: string): java.util.List<org.apache.http.NameValuePair>;
						public constructor();
						public static parse(param0: org.apache.http.HttpEntity): java.util.List<org.apache.http.NameValuePair>;
						public static isEncoded(param0: org.apache.http.HttpEntity): boolean;
						public static parse(param0: java.util.List<org.apache.http.NameValuePair>, param1: java.util.Scanner, param2: string): void;
						public static format(param0: java.util.List<any>, param1: string): string;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module conn {
				export class BasicEofSensorWatcher extends java.lang.Object implements org.apache.http.conn.EofSensorWatcher {
					public static class: java.lang.Class<org.apache.http.conn.BasicEofSensorWatcher>;
					public managedConn: org.apache.http.conn.ManagedClientConnection;
					public attemptReuse: boolean;
					public constructor(param0: org.apache.http.conn.ManagedClientConnection, param1: boolean);
					public eofDetected(param0: java.io.InputStream): boolean;
					public streamClosed(param0: java.io.InputStream): boolean;
					public streamAbort(param0: java.io.InputStream): boolean;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module conn {
				export class BasicManagedEntity extends org.apache.http.entity.HttpEntityWrapper implements org.apache.http.conn.ConnectionReleaseTrigger, org.apache.http.conn.EofSensorWatcher {
					public static class: java.lang.Class<org.apache.http.conn.BasicManagedEntity>;
					public managedConn: org.apache.http.conn.ManagedClientConnection;
					public attemptReuse: boolean;
					public abortConnection(): void;
					public isRepeatable(): boolean;
					public streamClosed(param0: java.io.InputStream): boolean;
					public getContentType(): org.apache.http.Header;
					public isStreaming(): boolean;
					public constructor(param0: org.apache.http.HttpEntity);
					public constructor(param0: org.apache.http.HttpEntity, param1: org.apache.http.conn.ManagedClientConnection, param2: boolean);
					public getContentLength(): number;
					public getContentEncoding(): org.apache.http.Header;
					public getContent(): java.io.InputStream;
					public writeTo(param0: java.io.OutputStream): void;
					public eofDetected(param0: java.io.InputStream): boolean;
					public isChunked(): boolean;
					public releaseConnection(): void;
					public streamAbort(param0: java.io.InputStream): boolean;
					public releaseManagedConnection(): void;
					public consumeContent(): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module conn {
				export class ClientConnectionManager extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.conn.ClientConnectionManager>;
					/**
					 * Constructs a new instance of the org.apache.http.conn.ClientConnectionManager interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						getSchemeRegistry(): org.apache.http.conn.scheme.SchemeRegistry;
						requestConnection(param0: org.apache.http.conn.routing.HttpRoute, param1: any): org.apache.http.conn.ClientConnectionRequest;
						releaseConnection(param0: org.apache.http.conn.ManagedClientConnection, param1: number, param2: java.util.concurrent.TimeUnit): void;
						closeIdleConnections(param0: number, param1: java.util.concurrent.TimeUnit): void;
						closeExpiredConnections(): void;
						shutdown(): void;
					});
					public constructor();
					public closeExpiredConnections(): void;
					public shutdown(): void;
					public getSchemeRegistry(): org.apache.http.conn.scheme.SchemeRegistry;
					public closeIdleConnections(param0: number, param1: java.util.concurrent.TimeUnit): void;
					public releaseConnection(param0: org.apache.http.conn.ManagedClientConnection, param1: number, param2: java.util.concurrent.TimeUnit): void;
					public requestConnection(param0: org.apache.http.conn.routing.HttpRoute, param1: any): org.apache.http.conn.ClientConnectionRequest;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module conn {
				export class ClientConnectionManagerFactory extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.conn.ClientConnectionManagerFactory>;
					/**
					 * Constructs a new instance of the org.apache.http.conn.ClientConnectionManagerFactory interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						newInstance(param0: org.apache.http.params.HttpParams, param1: org.apache.http.conn.scheme.SchemeRegistry): org.apache.http.conn.ClientConnectionManager;
					});
					public constructor();
					public newInstance(param0: org.apache.http.params.HttpParams, param1: org.apache.http.conn.scheme.SchemeRegistry): org.apache.http.conn.ClientConnectionManager;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module conn {
				export class ClientConnectionOperator extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.conn.ClientConnectionOperator>;
					/**
					 * Constructs a new instance of the org.apache.http.conn.ClientConnectionOperator interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						createConnection(): org.apache.http.conn.OperatedClientConnection;
						openConnection(param0: org.apache.http.conn.OperatedClientConnection, param1: org.apache.http.HttpHost, param2: java.net.InetAddress, param3: org.apache.http.protocol.HttpContext, param4: org.apache.http.params.HttpParams): void;
						updateSecureConnection(param0: org.apache.http.conn.OperatedClientConnection, param1: org.apache.http.HttpHost, param2: org.apache.http.protocol.HttpContext, param3: org.apache.http.params.HttpParams): void;
					});
					public constructor();
					public openConnection(param0: org.apache.http.conn.OperatedClientConnection, param1: org.apache.http.HttpHost, param2: java.net.InetAddress, param3: org.apache.http.protocol.HttpContext, param4: org.apache.http.params.HttpParams): void;
					public updateSecureConnection(param0: org.apache.http.conn.OperatedClientConnection, param1: org.apache.http.HttpHost, param2: org.apache.http.protocol.HttpContext, param3: org.apache.http.params.HttpParams): void;
					public createConnection(): org.apache.http.conn.OperatedClientConnection;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module conn {
				export class ClientConnectionRequest extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.conn.ClientConnectionRequest>;
					/**
					 * Constructs a new instance of the org.apache.http.conn.ClientConnectionRequest interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						getConnection(param0: number, param1: java.util.concurrent.TimeUnit): org.apache.http.conn.ManagedClientConnection;
						abortRequest(): void;
					});
					public constructor();
					public abortRequest(): void;
					public getConnection(param0: number, param1: java.util.concurrent.TimeUnit): org.apache.http.conn.ManagedClientConnection;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module conn {
				export class ConnectTimeoutException extends java.io.InterruptedIOException {
					public static class: java.lang.Class<org.apache.http.conn.ConnectTimeoutException>;
					public constructor(param0: string, param1: java.lang.Throwable);
					public constructor(param0: string);
					public constructor(param0: java.lang.Throwable);
					public constructor();
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module conn {
				export class ConnectionKeepAliveStrategy extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.conn.ConnectionKeepAliveStrategy>;
					/**
					 * Constructs a new instance of the org.apache.http.conn.ConnectionKeepAliveStrategy interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						getKeepAliveDuration(param0: org.apache.http.HttpResponse, param1: org.apache.http.protocol.HttpContext): number;
					});
					public constructor();
					public getKeepAliveDuration(param0: org.apache.http.HttpResponse, param1: org.apache.http.protocol.HttpContext): number;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module conn {
				export class ConnectionPoolTimeoutException extends org.apache.http.conn.ConnectTimeoutException {
					public static class: java.lang.Class<org.apache.http.conn.ConnectionPoolTimeoutException>;
					public constructor(param0: string, param1: java.lang.Throwable);
					public constructor(param0: string);
					public constructor(param0: java.lang.Throwable);
					public constructor();
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module conn {
				export class ConnectionReleaseTrigger extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.conn.ConnectionReleaseTrigger>;
					/**
					 * Constructs a new instance of the org.apache.http.conn.ConnectionReleaseTrigger interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						releaseConnection(): void;
						abortConnection(): void;
					});
					public constructor();
					public abortConnection(): void;
					public releaseConnection(): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module conn {
				export class EofSensorInputStream extends java.io.InputStream implements org.apache.http.conn.ConnectionReleaseTrigger {
					public static class: java.lang.Class<org.apache.http.conn.EofSensorInputStream>;
					public wrappedStream: java.io.InputStream;
					public abortConnection(): void;
					public read(): number;
					public read(param0: native.Array<number>, param1: number, param2: number): number;
					public constructor(param0: java.io.InputStream, param1: org.apache.http.conn.EofSensorWatcher);
					public read(param0: native.Array<number>): number;
					public checkAbort(): void;
					public isReadAllowed(): boolean;
					public checkEOF(param0: number): void;
					public available(): number;
					public constructor();
					public close(): void;
					public releaseConnection(): void;
					public checkClose(): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module conn {
				export class EofSensorWatcher extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.conn.EofSensorWatcher>;
					/**
					 * Constructs a new instance of the org.apache.http.conn.EofSensorWatcher interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						eofDetected(param0: java.io.InputStream): boolean;
						streamClosed(param0: java.io.InputStream): boolean;
						streamAbort(param0: java.io.InputStream): boolean;
					});
					public constructor();
					public eofDetected(param0: java.io.InputStream): boolean;
					public streamClosed(param0: java.io.InputStream): boolean;
					public streamAbort(param0: java.io.InputStream): boolean;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module conn {
				export class HttpHostConnectException extends java.net.ConnectException {
					public static class: java.lang.Class<org.apache.http.conn.HttpHostConnectException>;
					public constructor(param0: string, param1: java.lang.Throwable);
					public constructor(param0: string);
					public constructor(param0: java.lang.Throwable);
					public constructor();
					public constructor(param0: org.apache.http.HttpHost, param1: java.net.ConnectException);
					public getHost(): org.apache.http.HttpHost;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module conn {
				export class ManagedClientConnection extends java.lang.Object implements org.apache.http.HttpClientConnection, org.apache.http.HttpInetConnection, org.apache.http.conn.ConnectionReleaseTrigger {
					public static class: java.lang.Class<org.apache.http.conn.ManagedClientConnection>;
					/**
					 * Constructs a new instance of the org.apache.http.conn.ManagedClientConnection interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						isSecure(): boolean;
						getRoute(): org.apache.http.conn.routing.HttpRoute;
						getSSLSession(): javax.net.ssl.SSLSession;
						open(param0: org.apache.http.conn.routing.HttpRoute, param1: org.apache.http.protocol.HttpContext, param2: org.apache.http.params.HttpParams): void;
						tunnelTarget(param0: boolean, param1: org.apache.http.params.HttpParams): void;
						tunnelProxy(param0: org.apache.http.HttpHost, param1: boolean, param2: org.apache.http.params.HttpParams): void;
						layerProtocol(param0: org.apache.http.protocol.HttpContext, param1: org.apache.http.params.HttpParams): void;
						markReusable(): void;
						unmarkReusable(): void;
						isMarkedReusable(): boolean;
						setState(param0: any): void;
						getState(): any;
						setIdleDuration(param0: number, param1: java.util.concurrent.TimeUnit): void;
						isResponseAvailable(param0: number): boolean;
						sendRequestHeader(param0: org.apache.http.HttpRequest): void;
						sendRequestEntity(param0: org.apache.http.HttpEntityEnclosingRequest): void;
						receiveResponseHeader(): org.apache.http.HttpResponse;
						receiveResponseEntity(param0: org.apache.http.HttpResponse): void;
						flush(): void;
						getLocalAddress(): java.net.InetAddress;
						getLocalPort(): number;
						getRemoteAddress(): java.net.InetAddress;
						getRemotePort(): number;
						releaseConnection(): void;
						abortConnection(): void;
						close(): void;
						isOpen(): boolean;
						isStale(): boolean;
						setSocketTimeout(param0: number): void;
						getSocketTimeout(): number;
						shutdown(): void;
						getMetrics(): org.apache.http.HttpConnectionMetrics;
						close(): void;
						isOpen(): boolean;
						isStale(): boolean;
						setSocketTimeout(param0: number): void;
						getSocketTimeout(): number;
						shutdown(): void;
						getMetrics(): org.apache.http.HttpConnectionMetrics;
					});
					public constructor();
					public abortConnection(): void;
					public sendRequestEntity(param0: org.apache.http.HttpEntityEnclosingRequest): void;
					public tunnelProxy(param0: org.apache.http.HttpHost, param1: boolean, param2: org.apache.http.params.HttpParams): void;
					public getSSLSession(): javax.net.ssl.SSLSession;
					public layerProtocol(param0: org.apache.http.protocol.HttpContext, param1: org.apache.http.params.HttpParams): void;
					public isResponseAvailable(param0: number): boolean;
					public setIdleDuration(param0: number, param1: java.util.concurrent.TimeUnit): void;
					public isOpen(): boolean;
					public shutdown(): void;
					public isStale(): boolean;
					public sendRequestHeader(param0: org.apache.http.HttpRequest): void;
					public close(): void;
					public getState(): any;
					public releaseConnection(): void;
					public getRoute(): org.apache.http.conn.routing.HttpRoute;
					public open(param0: org.apache.http.conn.routing.HttpRoute, param1: org.apache.http.protocol.HttpContext, param2: org.apache.http.params.HttpParams): void;
					public markReusable(): void;
					public getMetrics(): org.apache.http.HttpConnectionMetrics;
					public isSecure(): boolean;
					public setState(param0: any): void;
					public flush(): void;
					public receiveResponseHeader(): org.apache.http.HttpResponse;
					public tunnelTarget(param0: boolean, param1: org.apache.http.params.HttpParams): void;
					public isMarkedReusable(): boolean;
					public getSocketTimeout(): number;
					public getRemoteAddress(): java.net.InetAddress;
					public getRemotePort(): number;
					public setSocketTimeout(param0: number): void;
					public getLocalPort(): number;
					public unmarkReusable(): void;
					public receiveResponseEntity(param0: org.apache.http.HttpResponse): void;
					public getLocalAddress(): java.net.InetAddress;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module conn {
				export class MultihomePlainSocketFactory extends java.lang.Object implements org.apache.http.conn.scheme.SocketFactory {
					public static class: java.lang.Class<org.apache.http.conn.MultihomePlainSocketFactory>;
					public createSocket(): java.net.Socket;
					public equals(param0: any): boolean;
					public static getSocketFactory(): org.apache.http.conn.MultihomePlainSocketFactory;
					public connectSocket(param0: java.net.Socket, param1: string, param2: number, param3: java.net.InetAddress, param4: number, param5: org.apache.http.params.HttpParams): java.net.Socket;
					public isSecure(param0: java.net.Socket): boolean;
					public hashCode(): number;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module conn {
				export class OperatedClientConnection extends java.lang.Object implements org.apache.http.HttpClientConnection, org.apache.http.HttpInetConnection {
					public static class: java.lang.Class<org.apache.http.conn.OperatedClientConnection>;
					/**
					 * Constructs a new instance of the org.apache.http.conn.OperatedClientConnection interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						getTargetHost(): org.apache.http.HttpHost;
						isSecure(): boolean;
						getSocket(): java.net.Socket;
						opening(param0: java.net.Socket, param1: org.apache.http.HttpHost): void;
						openCompleted(param0: boolean, param1: org.apache.http.params.HttpParams): void;
						update(param0: java.net.Socket, param1: org.apache.http.HttpHost, param2: boolean, param3: org.apache.http.params.HttpParams): void;
						isResponseAvailable(param0: number): boolean;
						sendRequestHeader(param0: org.apache.http.HttpRequest): void;
						sendRequestEntity(param0: org.apache.http.HttpEntityEnclosingRequest): void;
						receiveResponseHeader(): org.apache.http.HttpResponse;
						receiveResponseEntity(param0: org.apache.http.HttpResponse): void;
						flush(): void;
						getLocalAddress(): java.net.InetAddress;
						getLocalPort(): number;
						getRemoteAddress(): java.net.InetAddress;
						getRemotePort(): number;
						close(): void;
						isOpen(): boolean;
						isStale(): boolean;
						setSocketTimeout(param0: number): void;
						getSocketTimeout(): number;
						shutdown(): void;
						getMetrics(): org.apache.http.HttpConnectionMetrics;
						close(): void;
						isOpen(): boolean;
						isStale(): boolean;
						setSocketTimeout(param0: number): void;
						getSocketTimeout(): number;
						shutdown(): void;
						getMetrics(): org.apache.http.HttpConnectionMetrics;
					});
					public constructor();
					public getTargetHost(): org.apache.http.HttpHost;
					public sendRequestEntity(param0: org.apache.http.HttpEntityEnclosingRequest): void;
					public getMetrics(): org.apache.http.HttpConnectionMetrics;
					public isSecure(): boolean;
					public flush(): void;
					public isResponseAvailable(param0: number): boolean;
					public update(param0: java.net.Socket, param1: org.apache.http.HttpHost, param2: boolean, param3: org.apache.http.params.HttpParams): void;
					public receiveResponseHeader(): org.apache.http.HttpResponse;
					public isOpen(): boolean;
					public shutdown(): void;
					public getSocketTimeout(): number;
					public getRemoteAddress(): java.net.InetAddress;
					public getRemotePort(): number;
					public isStale(): boolean;
					public sendRequestHeader(param0: org.apache.http.HttpRequest): void;
					public close(): void;
					public setSocketTimeout(param0: number): void;
					public getLocalPort(): number;
					public opening(param0: java.net.Socket, param1: org.apache.http.HttpHost): void;
					public openCompleted(param0: boolean, param1: org.apache.http.params.HttpParams): void;
					public receiveResponseEntity(param0: org.apache.http.HttpResponse): void;
					public getLocalAddress(): java.net.InetAddress;
					public getSocket(): java.net.Socket;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module conn {
				export module params {
					export class ConnConnectionPNames extends java.lang.Object {
						public static class: java.lang.Class<org.apache.http.conn.params.ConnConnectionPNames>;
						/**
						 * Constructs a new instance of the org.apache.http.conn.params.ConnConnectionPNames interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
						 */
						public constructor(implementation: {
						});
						public constructor();
						public static MAX_STATUS_LINE_GARBAGE: string;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module conn {
				export module params {
					export class ConnConnectionParamBean extends org.apache.http.params.HttpAbstractParamBean {
						public static class: java.lang.Class<org.apache.http.conn.params.ConnConnectionParamBean>;
						public setMaxStatusLineGarbage(param0: number): void;
						public constructor(param0: org.apache.http.params.HttpParams);
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module conn {
				export module params {
					export class ConnManagerPNames extends java.lang.Object {
						public static class: java.lang.Class<org.apache.http.conn.params.ConnManagerPNames>;
						/**
						 * Constructs a new instance of the org.apache.http.conn.params.ConnManagerPNames interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
						 */
						public constructor(implementation: {
						});
						public constructor();
						public static MAX_TOTAL_CONNECTIONS: string;
						public static MAX_CONNECTIONS_PER_ROUTE: string;
						public static TIMEOUT: string;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module conn {
				export module params {
					export class ConnManagerParamBean extends org.apache.http.params.HttpAbstractParamBean {
						public static class: java.lang.Class<org.apache.http.conn.params.ConnManagerParamBean>;
						public constructor(param0: org.apache.http.params.HttpParams);
						public setMaxTotalConnections(param0: number): void;
						public setTimeout(param0: number): void;
						public setConnectionsPerRoute(param0: org.apache.http.conn.params.ConnPerRouteBean): void;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module conn {
				export module params {
					export class ConnManagerParams extends java.lang.Object implements org.apache.http.conn.params.ConnManagerPNames {
						public static class: java.lang.Class<org.apache.http.conn.params.ConnManagerParams>;
						public static DEFAULT_MAX_TOTAL_CONNECTIONS: number;
						public constructor();
						public static setTimeout(param0: org.apache.http.params.HttpParams, param1: number): void;
						public static getTimeout(param0: org.apache.http.params.HttpParams): number;
						public static getMaxConnectionsPerRoute(param0: org.apache.http.params.HttpParams): org.apache.http.conn.params.ConnPerRoute;
						public static setMaxTotalConnections(param0: org.apache.http.params.HttpParams, param1: number): void;
						public static getMaxTotalConnections(param0: org.apache.http.params.HttpParams): number;
						public static setMaxConnectionsPerRoute(param0: org.apache.http.params.HttpParams, param1: org.apache.http.conn.params.ConnPerRoute): void;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module conn {
				export module params {
					export class ConnPerRoute extends java.lang.Object {
						public static class: java.lang.Class<org.apache.http.conn.params.ConnPerRoute>;
						/**
						 * Constructs a new instance of the org.apache.http.conn.params.ConnPerRoute interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
						 */
						public constructor(implementation: {
							getMaxForRoute(param0: org.apache.http.conn.routing.HttpRoute): number;
						});
						public constructor();
						public getMaxForRoute(param0: org.apache.http.conn.routing.HttpRoute): number;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module conn {
				export module params {
					export class ConnPerRouteBean extends java.lang.Object implements org.apache.http.conn.params.ConnPerRoute {
						public static class: java.lang.Class<org.apache.http.conn.params.ConnPerRouteBean>;
						public static DEFAULT_MAX_CONNECTIONS_PER_ROUTE: number;
						public setMaxForRoute(param0: org.apache.http.conn.routing.HttpRoute, param1: number): void;
						public constructor();
						public setMaxForRoutes(param0: java.util.Map<org.apache.http.conn.routing.HttpRoute,java.lang.Integer>): void;
						public constructor(param0: number);
						public getDefaultMax(): number;
						public setDefaultMaxPerRoute(param0: number): void;
						public getMaxForRoute(param0: org.apache.http.conn.routing.HttpRoute): number;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module conn {
				export module params {
					export class ConnRoutePNames extends java.lang.Object {
						public static class: java.lang.Class<org.apache.http.conn.params.ConnRoutePNames>;
						/**
						 * Constructs a new instance of the org.apache.http.conn.params.ConnRoutePNames interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
						 */
						public constructor(implementation: {
						});
						public constructor();
						public static FORCED_ROUTE: string;
						public static DEFAULT_PROXY: string;
						public static LOCAL_ADDRESS: string;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module conn {
				export module params {
					export class ConnRouteParamBean extends org.apache.http.params.HttpAbstractParamBean {
						public static class: java.lang.Class<org.apache.http.conn.params.ConnRouteParamBean>;
						public setDefaultProxy(param0: org.apache.http.HttpHost): void;
						public constructor(param0: org.apache.http.params.HttpParams);
						public setForcedRoute(param0: org.apache.http.conn.routing.HttpRoute): void;
						public setLocalAddress(param0: java.net.InetAddress): void;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module conn {
				export module params {
					export class ConnRouteParams extends java.lang.Object implements org.apache.http.conn.params.ConnRoutePNames {
						public static class: java.lang.Class<org.apache.http.conn.params.ConnRouteParams>;
						public static NO_HOST: org.apache.http.HttpHost;
						public static NO_ROUTE: org.apache.http.conn.routing.HttpRoute;
						public static setForcedRoute(param0: org.apache.http.params.HttpParams, param1: org.apache.http.conn.routing.HttpRoute): void;
						public static getForcedRoute(param0: org.apache.http.params.HttpParams): org.apache.http.conn.routing.HttpRoute;
						public static getLocalAddress(param0: org.apache.http.params.HttpParams): java.net.InetAddress;
						public static setLocalAddress(param0: org.apache.http.params.HttpParams, param1: java.net.InetAddress): void;
						public static setDefaultProxy(param0: org.apache.http.params.HttpParams, param1: org.apache.http.HttpHost): void;
						public static getDefaultProxy(param0: org.apache.http.params.HttpParams): org.apache.http.HttpHost;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module conn {
				export module routing {
					export class BasicRouteDirector extends java.lang.Object implements org.apache.http.conn.routing.HttpRouteDirector {
						public static class: java.lang.Class<org.apache.http.conn.routing.BasicRouteDirector>;
						public constructor();
						public firstStep(param0: org.apache.http.conn.routing.RouteInfo): number;
						public directStep(param0: org.apache.http.conn.routing.RouteInfo, param1: org.apache.http.conn.routing.RouteInfo): number;
						public proxiedStep(param0: org.apache.http.conn.routing.RouteInfo, param1: org.apache.http.conn.routing.RouteInfo): number;
						public nextStep(param0: org.apache.http.conn.routing.RouteInfo, param1: org.apache.http.conn.routing.RouteInfo): number;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module conn {
				export module routing {
					export class HttpRoute extends java.lang.Object implements org.apache.http.conn.routing.RouteInfo, java.lang.Cloneable {
						public static class: java.lang.Class<org.apache.http.conn.routing.HttpRoute>;
						public getTunnelType(): org.apache.http.conn.routing.RouteInfo.TunnelType;
						public isSecure(): boolean;
						public clone(): any;
						public constructor(param0: org.apache.http.HttpHost, param1: java.net.InetAddress, param2: org.apache.http.HttpHost, param3: boolean);
						public getLocalAddress(): java.net.InetAddress;
						public equals(param0: any): boolean;
						public hashCode(): number;
						public constructor(param0: org.apache.http.HttpHost);
						public constructor(param0: org.apache.http.HttpHost, param1: java.net.InetAddress, param2: native.Array<org.apache.http.HttpHost>, param3: boolean, param4: org.apache.http.conn.routing.RouteInfo.TunnelType, param5: org.apache.http.conn.routing.RouteInfo.LayerType);
						public toString(): string;
						public getProxyHost(): org.apache.http.HttpHost;
						public getHopTarget(param0: number): org.apache.http.HttpHost;
						public constructor(param0: org.apache.http.HttpHost, param1: java.net.InetAddress, param2: boolean);
						public isLayered(): boolean;
						public getTargetHost(): org.apache.http.HttpHost;
						public getHopCount(): number;
						public constructor(param0: org.apache.http.HttpHost, param1: java.net.InetAddress, param2: org.apache.http.HttpHost, param3: boolean, param4: org.apache.http.conn.routing.RouteInfo.TunnelType, param5: org.apache.http.conn.routing.RouteInfo.LayerType);
						public getLayerType(): org.apache.http.conn.routing.RouteInfo.LayerType;
						public isTunnelled(): boolean;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module conn {
				export module routing {
					export class HttpRouteDirector extends java.lang.Object {
						public static class: java.lang.Class<org.apache.http.conn.routing.HttpRouteDirector>;
						/**
						 * Constructs a new instance of the org.apache.http.conn.routing.HttpRouteDirector interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
						 */
						public constructor(implementation: {
							nextStep(param0: org.apache.http.conn.routing.RouteInfo, param1: org.apache.http.conn.routing.RouteInfo): number;
						});
						public constructor();
						public static LAYER_PROTOCOL: number;
						public static CONNECT_PROXY: number;
						public static TUNNEL_TARGET: number;
						public static UNREACHABLE: number;
						public static TUNNEL_PROXY: number;
						public static COMPLETE: number;
						public static CONNECT_TARGET: number;
						public nextStep(param0: org.apache.http.conn.routing.RouteInfo, param1: org.apache.http.conn.routing.RouteInfo): number;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module conn {
				export module routing {
					export class HttpRoutePlanner extends java.lang.Object {
						public static class: java.lang.Class<org.apache.http.conn.routing.HttpRoutePlanner>;
						/**
						 * Constructs a new instance of the org.apache.http.conn.routing.HttpRoutePlanner interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
						 */
						public constructor(implementation: {
							determineRoute(param0: org.apache.http.HttpHost, param1: org.apache.http.HttpRequest, param2: org.apache.http.protocol.HttpContext): org.apache.http.conn.routing.HttpRoute;
						});
						public constructor();
						public determineRoute(param0: org.apache.http.HttpHost, param1: org.apache.http.HttpRequest, param2: org.apache.http.protocol.HttpContext): org.apache.http.conn.routing.HttpRoute;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module conn {
				export module routing {
					export class RouteInfo extends java.lang.Object {
						public static class: java.lang.Class<org.apache.http.conn.routing.RouteInfo>;
						/**
						 * Constructs a new instance of the org.apache.http.conn.routing.RouteInfo interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
						 */
						public constructor(implementation: {
							getTargetHost(): org.apache.http.HttpHost;
							getLocalAddress(): java.net.InetAddress;
							getHopCount(): number;
							getHopTarget(param0: number): org.apache.http.HttpHost;
							getProxyHost(): org.apache.http.HttpHost;
							getTunnelType(): org.apache.http.conn.routing.RouteInfo.TunnelType;
							isTunnelled(): boolean;
							getLayerType(): org.apache.http.conn.routing.RouteInfo.LayerType;
							isLayered(): boolean;
							isSecure(): boolean;
						});
						public constructor();
						public getHopTarget(param0: number): org.apache.http.HttpHost;
						public getTunnelType(): org.apache.http.conn.routing.RouteInfo.TunnelType;
						public isLayered(): boolean;
						public isSecure(): boolean;
						public getTargetHost(): org.apache.http.HttpHost;
						public getLocalAddress(): java.net.InetAddress;
						public getHopCount(): number;
						public getLayerType(): org.apache.http.conn.routing.RouteInfo.LayerType;
						public isTunnelled(): boolean;
						public getProxyHost(): org.apache.http.HttpHost;
					}
					export module RouteInfo {
						export class LayerType {
							public static class: java.lang.Class<org.apache.http.conn.routing.RouteInfo.LayerType>;
							public static LAYERED: org.apache.http.conn.routing.RouteInfo.LayerType;
							public static PLAIN: org.apache.http.conn.routing.RouteInfo.LayerType;
							public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
							public static values(): native.Array<org.apache.http.conn.routing.RouteInfo.LayerType>;
							public static valueOf(param0: string): org.apache.http.conn.routing.RouteInfo.LayerType;
						}
						export class TunnelType {
							public static class: java.lang.Class<org.apache.http.conn.routing.RouteInfo.TunnelType>;
							public static PLAIN: org.apache.http.conn.routing.RouteInfo.TunnelType;
							public static TUNNELLED: org.apache.http.conn.routing.RouteInfo.TunnelType;
							public static valueOf(param0: java.lang.Class<any>, param1: string): java.lang.Enum<any>;
							public static valueOf(param0: string): org.apache.http.conn.routing.RouteInfo.TunnelType;
							public static values(): native.Array<org.apache.http.conn.routing.RouteInfo.TunnelType>;
						}
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module conn {
				export module routing {
					export class RouteTracker extends java.lang.Object implements org.apache.http.conn.routing.RouteInfo, java.lang.Cloneable {
						public static class: java.lang.Class<org.apache.http.conn.routing.RouteTracker>;
						public getTunnelType(): org.apache.http.conn.routing.RouteInfo.TunnelType;
						public isSecure(): boolean;
						public constructor(param0: org.apache.http.conn.routing.HttpRoute);
						public clone(): any;
						public getLocalAddress(): java.net.InetAddress;
						public equals(param0: any): boolean;
						public hashCode(): number;
						public constructor(param0: org.apache.http.HttpHost, param1: java.net.InetAddress);
						public isConnected(): boolean;
						public tunnelTarget(param0: boolean): void;
						public toString(): string;
						public tunnelProxy(param0: org.apache.http.HttpHost, param1: boolean): void;
						public getProxyHost(): org.apache.http.HttpHost;
						public getHopTarget(param0: number): org.apache.http.HttpHost;
						public connectTarget(param0: boolean): void;
						public connectProxy(param0: org.apache.http.HttpHost, param1: boolean): void;
						public isLayered(): boolean;
						public getTargetHost(): org.apache.http.HttpHost;
						public getHopCount(): number;
						public layerProtocol(param0: boolean): void;
						public toRoute(): org.apache.http.conn.routing.HttpRoute;
						public getLayerType(): org.apache.http.conn.routing.RouteInfo.LayerType;
						public isTunnelled(): boolean;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module conn {
				export module scheme {
					export class HostNameResolver extends java.lang.Object {
						public static class: java.lang.Class<org.apache.http.conn.scheme.HostNameResolver>;
						/**
						 * Constructs a new instance of the org.apache.http.conn.scheme.HostNameResolver interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
						 */
						public constructor(implementation: {
							resolve(param0: string): java.net.InetAddress;
						});
						public constructor();
						public resolve(param0: string): java.net.InetAddress;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module conn {
				export module scheme {
					export class LayeredSocketFactory extends java.lang.Object implements org.apache.http.conn.scheme.SocketFactory {
						public static class: java.lang.Class<org.apache.http.conn.scheme.LayeredSocketFactory>;
						/**
						 * Constructs a new instance of the org.apache.http.conn.scheme.LayeredSocketFactory interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
						 */
						public constructor(implementation: {
							createSocket(param0: java.net.Socket, param1: string, param2: number, param3: boolean): java.net.Socket;
							createSocket(): java.net.Socket;
							connectSocket(param0: java.net.Socket, param1: string, param2: number, param3: java.net.InetAddress, param4: number, param5: org.apache.http.params.HttpParams): java.net.Socket;
							isSecure(param0: java.net.Socket): boolean;
						});
						public constructor();
						public connectSocket(param0: java.net.Socket, param1: string, param2: number, param3: java.net.InetAddress, param4: number, param5: org.apache.http.params.HttpParams): java.net.Socket;
						public createSocket(param0: java.net.Socket, param1: string, param2: number, param3: boolean): java.net.Socket;
						public isSecure(param0: java.net.Socket): boolean;
						public createSocket(): java.net.Socket;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module conn {
				export module scheme {
					export class PlainSocketFactory extends java.lang.Object implements org.apache.http.conn.scheme.SocketFactory {
						public static class: java.lang.Class<org.apache.http.conn.scheme.PlainSocketFactory>;
						public constructor();
						public equals(param0: any): boolean;
						public hashCode(): number;
						public connectSocket(param0: java.net.Socket, param1: string, param2: number, param3: java.net.InetAddress, param4: number, param5: org.apache.http.params.HttpParams): java.net.Socket;
						public isSecure(param0: java.net.Socket): boolean;
						public constructor(param0: org.apache.http.conn.scheme.HostNameResolver);
						public createSocket(): java.net.Socket;
						public static getSocketFactory(): org.apache.http.conn.scheme.PlainSocketFactory;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module conn {
				export module scheme {
					export class Scheme extends java.lang.Object {
						public static class: java.lang.Class<org.apache.http.conn.scheme.Scheme>;
						public getSocketFactory(): org.apache.http.conn.scheme.SocketFactory;
						public isLayered(): boolean;
						public resolvePort(param0: number): number;
						public getDefaultPort(): number;
						public equals(param0: any): boolean;
						public hashCode(): number;
						public getName(): string;
						public constructor(param0: string, param1: org.apache.http.conn.scheme.SocketFactory, param2: number);
						public toString(): string;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module conn {
				export module scheme {
					export class SchemeRegistry extends java.lang.Object {
						public static class: java.lang.Class<org.apache.http.conn.scheme.SchemeRegistry>;
						public constructor();
						public get(param0: string): org.apache.http.conn.scheme.Scheme;
						public getScheme(param0: org.apache.http.HttpHost): org.apache.http.conn.scheme.Scheme;
						public getSchemeNames(): java.util.List<string>;
						public register(param0: org.apache.http.conn.scheme.Scheme): org.apache.http.conn.scheme.Scheme;
						public unregister(param0: string): org.apache.http.conn.scheme.Scheme;
						public setItems(param0: java.util.Map<string,org.apache.http.conn.scheme.Scheme>): void;
						public getScheme(param0: string): org.apache.http.conn.scheme.Scheme;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module conn {
				export module scheme {
					export class SocketFactory extends java.lang.Object {
						public static class: java.lang.Class<org.apache.http.conn.scheme.SocketFactory>;
						/**
						 * Constructs a new instance of the org.apache.http.conn.scheme.SocketFactory interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
						 */
						public constructor(implementation: {
							createSocket(): java.net.Socket;
							connectSocket(param0: java.net.Socket, param1: string, param2: number, param3: java.net.InetAddress, param4: number, param5: org.apache.http.params.HttpParams): java.net.Socket;
							isSecure(param0: java.net.Socket): boolean;
						});
						public constructor();
						public connectSocket(param0: java.net.Socket, param1: string, param2: number, param3: java.net.InetAddress, param4: number, param5: org.apache.http.params.HttpParams): java.net.Socket;
						public isSecure(param0: java.net.Socket): boolean;
						public createSocket(): java.net.Socket;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module conn {
				export module ssl {
					export abstract class AbstractVerifier extends java.lang.Object implements org.apache.http.conn.ssl.X509HostnameVerifier {
						public static class: java.lang.Class<org.apache.http.conn.ssl.AbstractVerifier>;
						public static acceptableCountryWildcard(param0: string): boolean;
						public verify(param0: string, param1: native.Array<string>, param2: native.Array<string>): void;
						public verify(param0: string, param1: native.Array<string>, param2: native.Array<string>, param3: boolean): void;
						public constructor();
						public static countDots(param0: string): number;
						public verify(param0: string, param1: javax.net.ssl.SSLSession): boolean;
						public static getDNSSubjectAlts(param0: java.security.cert.X509Certificate): native.Array<string>;
						public verify(param0: string, param1: javax.net.ssl.SSLSocket): void;
						public static getCNs(param0: java.security.cert.X509Certificate): native.Array<string>;
						public verify(param0: string, param1: java.security.cert.X509Certificate): void;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module conn {
				export module ssl {
					export class AllowAllHostnameVerifier extends org.apache.http.conn.ssl.AbstractVerifier {
						public static class: java.lang.Class<org.apache.http.conn.ssl.AllowAllHostnameVerifier>;
						public verify(param0: string, param1: native.Array<string>, param2: native.Array<string>): void;
						public verify(param0: string, param1: native.Array<string>, param2: native.Array<string>, param3: boolean): void;
						public constructor();
						public verify(param0: string, param1: javax.net.ssl.SSLSession): boolean;
						public verify(param0: string, param1: javax.net.ssl.SSLSocket): void;
						public toString(): string;
						public verify(param0: string, param1: java.security.cert.X509Certificate): void;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module conn {
				export module ssl {
					export class BrowserCompatHostnameVerifier extends org.apache.http.conn.ssl.AbstractVerifier {
						public static class: java.lang.Class<org.apache.http.conn.ssl.BrowserCompatHostnameVerifier>;
						public verify(param0: string, param1: native.Array<string>, param2: native.Array<string>): void;
						public verify(param0: string, param1: native.Array<string>, param2: native.Array<string>, param3: boolean): void;
						public constructor();
						public verify(param0: string, param1: javax.net.ssl.SSLSession): boolean;
						public verify(param0: string, param1: javax.net.ssl.SSLSocket): void;
						public toString(): string;
						public verify(param0: string, param1: java.security.cert.X509Certificate): void;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module conn {
				export module ssl {
					export class SSLSocketFactory extends java.lang.Object implements org.apache.http.conn.scheme.LayeredSocketFactory {
						public static class: java.lang.Class<org.apache.http.conn.ssl.SSLSocketFactory>;
						public static TLS: string;
						public static SSL: string;
						public static SSLV2: string;
						public static ALLOW_ALL_HOSTNAME_VERIFIER: org.apache.http.conn.ssl.X509HostnameVerifier;
						public static BROWSER_COMPATIBLE_HOSTNAME_VERIFIER: org.apache.http.conn.ssl.X509HostnameVerifier;
						public static STRICT_HOSTNAME_VERIFIER: org.apache.http.conn.ssl.X509HostnameVerifier;
						public constructor(param0: string, param1: java.security.KeyStore, param2: string, param3: java.security.KeyStore, param4: java.security.SecureRandom, param5: org.apache.http.conn.scheme.HostNameResolver);
						public getHostnameVerifier(): org.apache.http.conn.ssl.X509HostnameVerifier;
						public constructor(param0: java.security.KeyStore);
						public constructor(param0: java.security.KeyStore, param1: string);
						public static getSocketFactory(): org.apache.http.conn.ssl.SSLSocketFactory;
						public connectSocket(param0: java.net.Socket, param1: string, param2: number, param3: java.net.InetAddress, param4: number, param5: org.apache.http.params.HttpParams): java.net.Socket;
						public createSocket(param0: java.net.Socket, param1: string, param2: number, param3: boolean): java.net.Socket;
						public constructor(param0: java.security.KeyStore, param1: string, param2: java.security.KeyStore);
						public isSecure(param0: java.net.Socket): boolean;
						public createSocket(): java.net.Socket;
						public setHostnameVerifier(param0: org.apache.http.conn.ssl.X509HostnameVerifier): void;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module conn {
				export module ssl {
					export class StrictHostnameVerifier extends org.apache.http.conn.ssl.AbstractVerifier {
						public static class: java.lang.Class<org.apache.http.conn.ssl.StrictHostnameVerifier>;
						public verify(param0: string, param1: native.Array<string>, param2: native.Array<string>): void;
						public verify(param0: string, param1: native.Array<string>, param2: native.Array<string>, param3: boolean): void;
						public constructor();
						public verify(param0: string, param1: javax.net.ssl.SSLSession): boolean;
						public verify(param0: string, param1: javax.net.ssl.SSLSocket): void;
						public toString(): string;
						public verify(param0: string, param1: java.security.cert.X509Certificate): void;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module conn {
				export module ssl {
					export class X509HostnameVerifier extends java.lang.Object implements javax.net.ssl.HostnameVerifier {
						public static class: java.lang.Class<org.apache.http.conn.ssl.X509HostnameVerifier>;
						/**
						 * Constructs a new instance of the org.apache.http.conn.ssl.X509HostnameVerifier interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
						 */
						public constructor(implementation: {
							verify(param0: string, param1: javax.net.ssl.SSLSession): boolean;
							verify(param0: string, param1: javax.net.ssl.SSLSocket): void;
							verify(param0: string, param1: java.security.cert.X509Certificate): void;
							verify(param0: string, param1: native.Array<string>, param2: native.Array<string>): void;
							verify(param0: string, param1: javax.net.ssl.SSLSession): boolean;
						});
						public constructor();
						public verify(param0: string, param1: native.Array<string>, param2: native.Array<string>): void;
						public verify(param0: string, param1: javax.net.ssl.SSLSession): boolean;
						public verify(param0: string, param1: javax.net.ssl.SSLSocket): void;
						public verify(param0: string, param1: java.security.cert.X509Certificate): void;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module conn {
				export module util {
					export class InetAddressUtils extends java.lang.Object {
						public static class: java.lang.Class<org.apache.http.conn.util.InetAddressUtils>;
						public static isIPv6HexCompressedAddress(param0: string): boolean;
						public static isIPv6Address(param0: string): boolean;
						public static isIPv4Address(param0: string): boolean;
						public static isIPv6StdAddress(param0: string): boolean;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module cookie {
				export class ClientCookie extends java.lang.Object implements org.apache.http.cookie.Cookie {
					public static class: java.lang.Class<org.apache.http.cookie.ClientCookie>;
					/**
					 * Constructs a new instance of the org.apache.http.cookie.ClientCookie interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						getAttribute(param0: string): string;
						containsAttribute(param0: string): boolean;
						getName(): string;
						getValue(): string;
						getComment(): string;
						getCommentURL(): string;
						getExpiryDate(): java.util.Date;
						isPersistent(): boolean;
						getDomain(): string;
						getPath(): string;
						getPorts(): native.Array<number>;
						isSecure(): boolean;
						getVersion(): number;
						isExpired(param0: java.util.Date): boolean;
					});
					public constructor();
					public static PORT_ATTR: string;
					public static VERSION_ATTR: string;
					public static COMMENT_ATTR: string;
					public static DOMAIN_ATTR: string;
					public static PATH_ATTR: string;
					public static COMMENTURL_ATTR: string;
					public static SECURE_ATTR: string;
					public static EXPIRES_ATTR: string;
					public static DISCARD_ATTR: string;
					public static MAX_AGE_ATTR: string;
					public getVersion(): number;
					public isSecure(): boolean;
					public getExpiryDate(): java.util.Date;
					public isPersistent(): boolean;
					public isExpired(param0: java.util.Date): boolean;
					public containsAttribute(param0: string): boolean;
					public getAttribute(param0: string): string;
					public getPath(): string;
					public getValue(): string;
					public getName(): string;
					public getCommentURL(): string;
					public getPorts(): native.Array<number>;
					public getDomain(): string;
					public getComment(): string;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module cookie {
				export class Cookie extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.cookie.Cookie>;
					/**
					 * Constructs a new instance of the org.apache.http.cookie.Cookie interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						getName(): string;
						getValue(): string;
						getComment(): string;
						getCommentURL(): string;
						getExpiryDate(): java.util.Date;
						isPersistent(): boolean;
						getDomain(): string;
						getPath(): string;
						getPorts(): native.Array<number>;
						isSecure(): boolean;
						getVersion(): number;
						isExpired(param0: java.util.Date): boolean;
					});
					public constructor();
					public getPath(): string;
					public getValue(): string;
					public getName(): string;
					public getVersion(): number;
					public getCommentURL(): string;
					public getPorts(): native.Array<number>;
					public isSecure(): boolean;
					public getExpiryDate(): java.util.Date;
					public isPersistent(): boolean;
					public getDomain(): string;
					public isExpired(param0: java.util.Date): boolean;
					public getComment(): string;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module cookie {
				export class CookieAttributeHandler extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.cookie.CookieAttributeHandler>;
					/**
					 * Constructs a new instance of the org.apache.http.cookie.CookieAttributeHandler interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						parse(param0: org.apache.http.cookie.SetCookie, param1: string): void;
						validate(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): void;
						match(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): boolean;
					});
					public constructor();
					public parse(param0: org.apache.http.cookie.SetCookie, param1: string): void;
					public validate(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): void;
					public match(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): boolean;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module cookie {
				export class CookieIdentityComparator extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.cookie.CookieIdentityComparator>;
					public equals(param0: any): boolean;
					public compare(param0: any, param1: any): number;
					public compare(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.Cookie): number;
					public constructor();
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module cookie {
				export class CookieOrigin extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.cookie.CookieOrigin>;
					public getPath(): string;
					public getPort(): number;
					public toString(): string;
					public constructor(param0: string, param1: number, param2: string, param3: boolean);
					public isSecure(): boolean;
					public getHost(): string;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module cookie {
				export class CookiePathComparator extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.cookie.CookiePathComparator>;
					public equals(param0: any): boolean;
					public compare(param0: any, param1: any): number;
					public compare(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.Cookie): number;
					public constructor();
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module cookie {
				export class CookieSpec extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.cookie.CookieSpec>;
					/**
					 * Constructs a new instance of the org.apache.http.cookie.CookieSpec interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						getVersion(): number;
						parse(param0: org.apache.http.Header, param1: org.apache.http.cookie.CookieOrigin): java.util.List<org.apache.http.cookie.Cookie>;
						validate(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): void;
						match(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): boolean;
						formatCookies(param0: java.util.List<org.apache.http.cookie.Cookie>): java.util.List<org.apache.http.Header>;
						getVersionHeader(): org.apache.http.Header;
					});
					public constructor();
					public formatCookies(param0: java.util.List<org.apache.http.cookie.Cookie>): java.util.List<org.apache.http.Header>;
					public getVersion(): number;
					public getVersionHeader(): org.apache.http.Header;
					public parse(param0: org.apache.http.Header, param1: org.apache.http.cookie.CookieOrigin): java.util.List<org.apache.http.cookie.Cookie>;
					public validate(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): void;
					public match(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): boolean;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module cookie {
				export class CookieSpecFactory extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.cookie.CookieSpecFactory>;
					/**
					 * Constructs a new instance of the org.apache.http.cookie.CookieSpecFactory interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						newInstance(param0: org.apache.http.params.HttpParams): org.apache.http.cookie.CookieSpec;
					});
					public constructor();
					public newInstance(param0: org.apache.http.params.HttpParams): org.apache.http.cookie.CookieSpec;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module cookie {
				export class CookieSpecRegistry extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.cookie.CookieSpecRegistry>;
					public getCookieSpec(param0: string): org.apache.http.cookie.CookieSpec;
					public constructor();
					public unregister(param0: string): void;
					public register(param0: string, param1: org.apache.http.cookie.CookieSpecFactory): void;
					public setItems(param0: java.util.Map<string,org.apache.http.cookie.CookieSpecFactory>): void;
					public getSpecNames(): java.util.List<string>;
					public getCookieSpec(param0: string, param1: org.apache.http.params.HttpParams): org.apache.http.cookie.CookieSpec;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module cookie {
				export class MalformedCookieException extends org.apache.http.ProtocolException {
					public static class: java.lang.Class<org.apache.http.cookie.MalformedCookieException>;
					public constructor(param0: string, param1: java.lang.Throwable);
					public constructor(param0: string);
					public constructor(param0: java.lang.Throwable);
					public constructor();
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module cookie {
				export class SM extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.cookie.SM>;
					/**
					 * Constructs a new instance of the org.apache.http.cookie.SM interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
					});
					public constructor();
					public static SET_COOKIE2: string;
					public static COOKIE2: string;
					public static COOKIE: string;
					public static SET_COOKIE: string;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module cookie {
				export class SetCookie extends java.lang.Object implements org.apache.http.cookie.Cookie {
					public static class: java.lang.Class<org.apache.http.cookie.SetCookie>;
					/**
					 * Constructs a new instance of the org.apache.http.cookie.SetCookie interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						setValue(param0: string): void;
						setComment(param0: string): void;
						setExpiryDate(param0: java.util.Date): void;
						setDomain(param0: string): void;
						setPath(param0: string): void;
						setSecure(param0: boolean): void;
						setVersion(param0: number): void;
						getName(): string;
						getValue(): string;
						getComment(): string;
						getCommentURL(): string;
						getExpiryDate(): java.util.Date;
						isPersistent(): boolean;
						getDomain(): string;
						getPath(): string;
						getPorts(): native.Array<number>;
						isSecure(): boolean;
						getVersion(): number;
						isExpired(param0: java.util.Date): boolean;
					});
					public constructor();
					public setComment(param0: string): void;
					public getVersion(): number;
					public setSecure(param0: boolean): void;
					public isSecure(): boolean;
					public getExpiryDate(): java.util.Date;
					public isPersistent(): boolean;
					public setValue(param0: string): void;
					public setPath(param0: string): void;
					public isExpired(param0: java.util.Date): boolean;
					public getPath(): string;
					public getValue(): string;
					public getName(): string;
					public setVersion(param0: number): void;
					public getCommentURL(): string;
					public getPorts(): native.Array<number>;
					public setExpiryDate(param0: java.util.Date): void;
					public getDomain(): string;
					public getComment(): string;
					public setDomain(param0: string): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module cookie {
				export class SetCookie2 extends java.lang.Object implements org.apache.http.cookie.SetCookie {
					public static class: java.lang.Class<org.apache.http.cookie.SetCookie2>;
					/**
					 * Constructs a new instance of the org.apache.http.cookie.SetCookie2 interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						setCommentURL(param0: string): void;
						setPorts(param0: native.Array<number>): void;
						setDiscard(param0: boolean): void;
						setValue(param0: string): void;
						setComment(param0: string): void;
						setExpiryDate(param0: java.util.Date): void;
						setDomain(param0: string): void;
						setPath(param0: string): void;
						setSecure(param0: boolean): void;
						setVersion(param0: number): void;
						getName(): string;
						getValue(): string;
						getComment(): string;
						getCommentURL(): string;
						getExpiryDate(): java.util.Date;
						isPersistent(): boolean;
						getDomain(): string;
						getPath(): string;
						getPorts(): native.Array<number>;
						isSecure(): boolean;
						getVersion(): number;
						isExpired(param0: java.util.Date): boolean;
					});
					public constructor();
					public setComment(param0: string): void;
					public getVersion(): number;
					public setSecure(param0: boolean): void;
					public setDiscard(param0: boolean): void;
					public isSecure(): boolean;
					public getExpiryDate(): java.util.Date;
					public isPersistent(): boolean;
					public setValue(param0: string): void;
					public setPath(param0: string): void;
					public isExpired(param0: java.util.Date): boolean;
					public setPorts(param0: native.Array<number>): void;
					public getPath(): string;
					public getValue(): string;
					public getName(): string;
					public setVersion(param0: number): void;
					public getCommentURL(): string;
					public getPorts(): native.Array<number>;
					public setExpiryDate(param0: java.util.Date): void;
					public getDomain(): string;
					public getComment(): string;
					public setCommentURL(param0: string): void;
					public setDomain(param0: string): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module cookie {
				export module params {
					export class CookieSpecPNames extends java.lang.Object {
						public static class: java.lang.Class<org.apache.http.cookie.params.CookieSpecPNames>;
						/**
						 * Constructs a new instance of the org.apache.http.cookie.params.CookieSpecPNames interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
						 */
						public constructor(implementation: {
						});
						public constructor();
						public static DATE_PATTERNS: string;
						public static SINGLE_COOKIE_HEADER: string;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module cookie {
				export module params {
					export class CookieSpecParamBean extends org.apache.http.params.HttpAbstractParamBean {
						public static class: java.lang.Class<org.apache.http.cookie.params.CookieSpecParamBean>;
						public constructor(param0: org.apache.http.params.HttpParams);
						public setDatePatterns(param0: java.util.Collection<string>): void;
						public setSingleHeader(param0: boolean): void;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module entity {
				export abstract class AbstractHttpEntity extends java.lang.Object implements org.apache.http.HttpEntity {
					public static class: java.lang.Class<org.apache.http.entity.AbstractHttpEntity>;
					public contentType: org.apache.http.Header;
					public contentEncoding: org.apache.http.Header;
					public chunked: boolean;
					public getContentType(): org.apache.http.Header;
					public setContentEncoding(param0: string): void;
					public isRepeatable(): boolean;
					public isStreaming(): boolean;
					public getContentLength(): number;
					public getContentEncoding(): org.apache.http.Header;
					public getContent(): java.io.InputStream;
					public writeTo(param0: java.io.OutputStream): void;
					public constructor();
					public isChunked(): boolean;
					public setContentEncoding(param0: org.apache.http.Header): void;
					public setContentType(param0: org.apache.http.Header): void;
					public setContentType(param0: string): void;
					public consumeContent(): void;
					public setChunked(param0: boolean): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module entity {
				export class BasicHttpEntity extends org.apache.http.entity.AbstractHttpEntity {
					public static class: java.lang.Class<org.apache.http.entity.BasicHttpEntity>;
					public getContentEncoding(): org.apache.http.Header;
					public getContent(): java.io.InputStream;
					public isRepeatable(): boolean;
					public writeTo(param0: java.io.OutputStream): void;
					public getContentType(): org.apache.http.Header;
					public constructor();
					public setContent(param0: java.io.InputStream): void;
					public isStreaming(): boolean;
					public isChunked(): boolean;
					public consumeContent(): void;
					public getContentLength(): number;
					public setContentLength(param0: number): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module entity {
				export class BufferedHttpEntity extends org.apache.http.entity.HttpEntityWrapper {
					public static class: java.lang.Class<org.apache.http.entity.BufferedHttpEntity>;
					public getContentEncoding(): org.apache.http.Header;
					public getContent(): java.io.InputStream;
					public isRepeatable(): boolean;
					public writeTo(param0: java.io.OutputStream): void;
					public getContentType(): org.apache.http.Header;
					public isChunked(): boolean;
					public isStreaming(): boolean;
					public constructor(param0: org.apache.http.HttpEntity);
					public consumeContent(): void;
					public getContentLength(): number;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module entity {
				export class ByteArrayEntity extends org.apache.http.entity.AbstractHttpEntity implements java.lang.Cloneable {
					public static class: java.lang.Class<org.apache.http.entity.ByteArrayEntity>;
					public content: native.Array<number>;
					public getContentEncoding(): org.apache.http.Header;
					public constructor(param0: native.Array<number>);
					public isRepeatable(): boolean;
					public getContent(): java.io.InputStream;
					public writeTo(param0: java.io.OutputStream): void;
					public clone(): any;
					public getContentType(): org.apache.http.Header;
					public constructor();
					public isStreaming(): boolean;
					public isChunked(): boolean;
					public consumeContent(): void;
					public getContentLength(): number;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module entity {
				export class ContentLengthStrategy extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.entity.ContentLengthStrategy>;
					/**
					 * Constructs a new instance of the org.apache.http.entity.ContentLengthStrategy interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						determineLength(param0: org.apache.http.HttpMessage): number;
					});
					public constructor();
					public static CHUNKED: number;
					public static IDENTITY: number;
					public determineLength(param0: org.apache.http.HttpMessage): number;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module entity {
				export class ContentProducer extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.entity.ContentProducer>;
					/**
					 * Constructs a new instance of the org.apache.http.entity.ContentProducer interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						writeTo(param0: java.io.OutputStream): void;
					});
					public constructor();
					public writeTo(param0: java.io.OutputStream): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module entity {
				export class EntityTemplate extends org.apache.http.entity.AbstractHttpEntity {
					public static class: java.lang.Class<org.apache.http.entity.EntityTemplate>;
					public getContentEncoding(): org.apache.http.Header;
					public getContent(): java.io.InputStream;
					public isRepeatable(): boolean;
					public writeTo(param0: java.io.OutputStream): void;
					public getContentType(): org.apache.http.Header;
					public constructor();
					public isStreaming(): boolean;
					public isChunked(): boolean;
					public constructor(param0: org.apache.http.entity.ContentProducer);
					public consumeContent(): void;
					public getContentLength(): number;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module entity {
				export class FileEntity extends org.apache.http.entity.AbstractHttpEntity implements java.lang.Cloneable {
					public static class: java.lang.Class<org.apache.http.entity.FileEntity>;
					public file: java.io.File;
					public getContentEncoding(): org.apache.http.Header;
					public isRepeatable(): boolean;
					public getContent(): java.io.InputStream;
					public writeTo(param0: java.io.OutputStream): void;
					public clone(): any;
					public getContentType(): org.apache.http.Header;
					public constructor();
					public isStreaming(): boolean;
					public isChunked(): boolean;
					public constructor(param0: java.io.File, param1: string);
					public consumeContent(): void;
					public getContentLength(): number;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module entity {
				export class HttpEntityWrapper extends java.lang.Object implements org.apache.http.HttpEntity {
					public static class: java.lang.Class<org.apache.http.entity.HttpEntityWrapper>;
					public wrappedEntity: org.apache.http.HttpEntity;
					public getContentEncoding(): org.apache.http.Header;
					public isRepeatable(): boolean;
					public getContentType(): org.apache.http.Header;
					public getContent(): java.io.InputStream;
					public writeTo(param0: java.io.OutputStream): void;
					public isChunked(): boolean;
					public isStreaming(): boolean;
					public constructor(param0: org.apache.http.HttpEntity);
					public consumeContent(): void;
					public getContentLength(): number;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module entity {
				export class InputStreamEntity extends org.apache.http.entity.AbstractHttpEntity {
					public static class: java.lang.Class<org.apache.http.entity.InputStreamEntity>;
					public getContentEncoding(): org.apache.http.Header;
					public isRepeatable(): boolean;
					public getContent(): java.io.InputStream;
					public writeTo(param0: java.io.OutputStream): void;
					public getContentType(): org.apache.http.Header;
					public constructor();
					public isStreaming(): boolean;
					public isChunked(): boolean;
					public constructor(param0: java.io.InputStream, param1: number);
					public consumeContent(): void;
					public getContentLength(): number;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module entity {
				export class SerializableEntity extends org.apache.http.entity.AbstractHttpEntity {
					public static class: java.lang.Class<org.apache.http.entity.SerializableEntity>;
					public getContentEncoding(): org.apache.http.Header;
					public constructor(param0: java.io.Serializable, param1: boolean);
					public getContent(): java.io.InputStream;
					public isRepeatable(): boolean;
					public writeTo(param0: java.io.OutputStream): void;
					public getContentType(): org.apache.http.Header;
					public constructor();
					public isStreaming(): boolean;
					public isChunked(): boolean;
					public consumeContent(): void;
					public getContentLength(): number;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module entity {
				export class StringEntity extends org.apache.http.entity.AbstractHttpEntity implements java.lang.Cloneable {
					public static class: java.lang.Class<org.apache.http.entity.StringEntity>;
					public content: native.Array<number>;
					public isRepeatable(): boolean;
					public getContentType(): org.apache.http.Header;
					public constructor(param0: string);
					public isStreaming(): boolean;
					public getContentLength(): number;
					public constructor(param0: string, param1: string);
					public getContentEncoding(): org.apache.http.Header;
					public getContent(): java.io.InputStream;
					public writeTo(param0: java.io.OutputStream): void;
					public clone(): any;
					public constructor();
					public isChunked(): boolean;
					public consumeContent(): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export abstract class AbstractHttpClientConnection extends java.lang.Object implements org.apache.http.HttpClientConnection {
					public static class: java.lang.Class<org.apache.http.impl.AbstractHttpClientConnection>;
					public sendRequestEntity(param0: org.apache.http.HttpEntityEnclosingRequest): void;
					public getMetrics(): org.apache.http.HttpConnectionMetrics;
					public init(param0: org.apache.http.io.SessionInputBuffer, param1: org.apache.http.io.SessionOutputBuffer, param2: org.apache.http.params.HttpParams): void;
					public flush(): void;
					public isResponseAvailable(param0: number): boolean;
					public createRequestWriter(param0: org.apache.http.io.SessionOutputBuffer, param1: org.apache.http.params.HttpParams): org.apache.http.io.HttpMessageWriter;
					public receiveResponseHeader(): org.apache.http.HttpResponse;
					public createEntitySerializer(): org.apache.http.impl.entity.EntitySerializer;
					public isOpen(): boolean;
					public shutdown(): void;
					public getSocketTimeout(): number;
					public constructor();
					public isStale(): boolean;
					public sendRequestHeader(param0: org.apache.http.HttpRequest): void;
					public close(): void;
					public setSocketTimeout(param0: number): void;
					public createEntityDeserializer(): org.apache.http.impl.entity.EntityDeserializer;
					public createResponseParser(param0: org.apache.http.io.SessionInputBuffer, param1: org.apache.http.HttpResponseFactory, param2: org.apache.http.params.HttpParams): org.apache.http.io.HttpMessageParser;
					public createHttpResponseFactory(): org.apache.http.HttpResponseFactory;
					public assertOpen(): void;
					public receiveResponseEntity(param0: org.apache.http.HttpResponse): void;
					public doFlush(): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export abstract class AbstractHttpServerConnection extends java.lang.Object implements org.apache.http.HttpServerConnection {
					public static class: java.lang.Class<org.apache.http.impl.AbstractHttpServerConnection>;
					public receiveRequestEntity(param0: org.apache.http.HttpEntityEnclosingRequest): void;
					public createHttpRequestFactory(): org.apache.http.HttpRequestFactory;
					public createResponseWriter(param0: org.apache.http.io.SessionOutputBuffer, param1: org.apache.http.params.HttpParams): org.apache.http.io.HttpMessageWriter;
					public receiveRequestHeader(): org.apache.http.HttpRequest;
					public getMetrics(): org.apache.http.HttpConnectionMetrics;
					public init(param0: org.apache.http.io.SessionInputBuffer, param1: org.apache.http.io.SessionOutputBuffer, param2: org.apache.http.params.HttpParams): void;
					public flush(): void;
					public createEntitySerializer(): org.apache.http.impl.entity.EntitySerializer;
					public isOpen(): boolean;
					public shutdown(): void;
					public getSocketTimeout(): number;
					public constructor();
					public isStale(): boolean;
					public createRequestParser(param0: org.apache.http.io.SessionInputBuffer, param1: org.apache.http.HttpRequestFactory, param2: org.apache.http.params.HttpParams): org.apache.http.io.HttpMessageParser;
					public close(): void;
					public sendResponseEntity(param0: org.apache.http.HttpResponse): void;
					public setSocketTimeout(param0: number): void;
					public createEntityDeserializer(): org.apache.http.impl.entity.EntityDeserializer;
					public assertOpen(): void;
					public doFlush(): void;
					public sendResponseHeader(param0: org.apache.http.HttpResponse): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export class DefaultConnectionReuseStrategy extends java.lang.Object implements org.apache.http.ConnectionReuseStrategy {
					public static class: java.lang.Class<org.apache.http.impl.DefaultConnectionReuseStrategy>;
					public createTokenIterator(param0: org.apache.http.HeaderIterator): org.apache.http.TokenIterator;
					public keepAlive(param0: org.apache.http.HttpResponse, param1: org.apache.http.protocol.HttpContext): boolean;
					public constructor();
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export class DefaultHttpClientConnection extends org.apache.http.impl.SocketHttpClientConnection {
					public static class: java.lang.Class<org.apache.http.impl.DefaultHttpClientConnection>;
					public sendRequestEntity(param0: org.apache.http.HttpEntityEnclosingRequest): void;
					public bind(param0: java.net.Socket, param1: org.apache.http.params.HttpParams): void;
					public flush(): void;
					public isResponseAvailable(param0: number): boolean;
					public receiveResponseHeader(): org.apache.http.HttpResponse;
					public toString(): string;
					public constructor();
					public getRemoteAddress(): java.net.InetAddress;
					public getRemotePort(): number;
					public sendRequestHeader(param0: org.apache.http.HttpRequest): void;
					public getLocalPort(): number;
					public receiveResponseEntity(param0: org.apache.http.HttpResponse): void;
					public getLocalAddress(): java.net.InetAddress;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export class DefaultHttpRequestFactory extends java.lang.Object implements org.apache.http.HttpRequestFactory {
					public static class: java.lang.Class<org.apache.http.impl.DefaultHttpRequestFactory>;
					public newHttpRequest(param0: string, param1: string): org.apache.http.HttpRequest;
					public constructor();
					public newHttpRequest(param0: org.apache.http.RequestLine): org.apache.http.HttpRequest;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export class DefaultHttpResponseFactory extends java.lang.Object implements org.apache.http.HttpResponseFactory {
					public static class: java.lang.Class<org.apache.http.impl.DefaultHttpResponseFactory>;
					public reasonCatalog: org.apache.http.ReasonPhraseCatalog;
					public newHttpResponse(param0: org.apache.http.ProtocolVersion, param1: number, param2: org.apache.http.protocol.HttpContext): org.apache.http.HttpResponse;
					public constructor();
					public newHttpResponse(param0: org.apache.http.StatusLine, param1: org.apache.http.protocol.HttpContext): org.apache.http.HttpResponse;
					public constructor(param0: org.apache.http.ReasonPhraseCatalog);
					public determineLocale(param0: org.apache.http.protocol.HttpContext): java.util.Locale;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export class DefaultHttpServerConnection extends org.apache.http.impl.SocketHttpServerConnection {
					public static class: java.lang.Class<org.apache.http.impl.DefaultHttpServerConnection>;
					public receiveRequestEntity(param0: org.apache.http.HttpEntityEnclosingRequest): void;
					public toString(): string;
					public bind(param0: java.net.Socket, param1: org.apache.http.params.HttpParams): void;
					public constructor();
					public getRemoteAddress(): java.net.InetAddress;
					public getRemotePort(): number;
					public receiveRequestHeader(): org.apache.http.HttpRequest;
					public sendResponseEntity(param0: org.apache.http.HttpResponse): void;
					public flush(): void;
					public getLocalPort(): number;
					public getLocalAddress(): java.net.InetAddress;
					public sendResponseHeader(param0: org.apache.http.HttpResponse): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export class EnglishReasonPhraseCatalog extends java.lang.Object implements org.apache.http.ReasonPhraseCatalog {
					public static class: java.lang.Class<org.apache.http.impl.EnglishReasonPhraseCatalog>;
					public static INSTANCE: org.apache.http.impl.EnglishReasonPhraseCatalog;
					public getReason(param0: number, param1: java.util.Locale): string;
					public constructor();
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export class HttpConnectionMetricsImpl extends java.lang.Object implements org.apache.http.HttpConnectionMetrics {
					public static class: java.lang.Class<org.apache.http.impl.HttpConnectionMetricsImpl>;
					public static REQUEST_COUNT: string;
					public static RESPONSE_COUNT: string;
					public static SENT_BYTES_COUNT: string;
					public static RECEIVED_BYTES_COUNT: string;
					public reset(): void;
					public getResponseCount(): number;
					public setMetric(param0: string, param1: any): void;
					public getSentBytesCount(): number;
					public incrementRequestCount(): void;
					public getMetric(param0: string): any;
					public getRequestCount(): number;
					public getReceivedBytesCount(): number;
					public constructor(param0: org.apache.http.io.HttpTransportMetrics, param1: org.apache.http.io.HttpTransportMetrics);
					public incrementResponseCount(): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export class NoConnectionReuseStrategy extends java.lang.Object implements org.apache.http.ConnectionReuseStrategy {
					public static class: java.lang.Class<org.apache.http.impl.NoConnectionReuseStrategy>;
					public keepAlive(param0: org.apache.http.HttpResponse, param1: org.apache.http.protocol.HttpContext): boolean;
					public constructor();
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export class SocketHttpClientConnection extends org.apache.http.impl.AbstractHttpClientConnection implements org.apache.http.HttpInetConnection {
					public static class: java.lang.Class<org.apache.http.impl.SocketHttpClientConnection>;
					public sendRequestEntity(param0: org.apache.http.HttpEntityEnclosingRequest): void;
					public bind(param0: java.net.Socket, param1: org.apache.http.params.HttpParams): void;
					public assertNotOpen(): void;
					public getMetrics(): org.apache.http.HttpConnectionMetrics;
					public flush(): void;
					public isResponseAvailable(param0: number): boolean;
					public createSessionInputBuffer(param0: java.net.Socket, param1: number, param2: org.apache.http.params.HttpParams): org.apache.http.io.SessionInputBuffer;
					public receiveResponseHeader(): org.apache.http.HttpResponse;
					public isOpen(): boolean;
					public shutdown(): void;
					public createSessionOutputBuffer(param0: java.net.Socket, param1: number, param2: org.apache.http.params.HttpParams): org.apache.http.io.SessionOutputBuffer;
					public getSocketTimeout(): number;
					public constructor();
					public getRemoteAddress(): java.net.InetAddress;
					public getRemotePort(): number;
					public isStale(): boolean;
					public close(): void;
					public sendRequestHeader(param0: org.apache.http.HttpRequest): void;
					public setSocketTimeout(param0: number): void;
					public getLocalPort(): number;
					public assertOpen(): void;
					public getLocalAddress(): java.net.InetAddress;
					public receiveResponseEntity(param0: org.apache.http.HttpResponse): void;
					public getSocket(): java.net.Socket;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export class SocketHttpServerConnection extends org.apache.http.impl.AbstractHttpServerConnection implements org.apache.http.HttpInetConnection {
					public static class: java.lang.Class<org.apache.http.impl.SocketHttpServerConnection>;
					public receiveRequestEntity(param0: org.apache.http.HttpEntityEnclosingRequest): void;
					public bind(param0: java.net.Socket, param1: org.apache.http.params.HttpParams): void;
					public assertNotOpen(): void;
					public receiveRequestHeader(): org.apache.http.HttpRequest;
					public getMetrics(): org.apache.http.HttpConnectionMetrics;
					public createHttpDataTransmitter(param0: java.net.Socket, param1: number, param2: org.apache.http.params.HttpParams): org.apache.http.io.SessionOutputBuffer;
					public flush(): void;
					public createHttpDataReceiver(param0: java.net.Socket, param1: number, param2: org.apache.http.params.HttpParams): org.apache.http.io.SessionInputBuffer;
					public isOpen(): boolean;
					public shutdown(): void;
					public getSocketTimeout(): number;
					public constructor();
					public getRemoteAddress(): java.net.InetAddress;
					public getRemotePort(): number;
					public isStale(): boolean;
					public close(): void;
					public sendResponseEntity(param0: org.apache.http.HttpResponse): void;
					public setSocketTimeout(param0: number): void;
					public getLocalPort(): number;
					public assertOpen(): void;
					public getLocalAddress(): java.net.InetAddress;
					public getSocket(): java.net.Socket;
					public sendResponseHeader(param0: org.apache.http.HttpResponse): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module auth {
					export abstract class AuthSchemeBase extends java.lang.Object implements org.apache.http.auth.AuthScheme {
						public static class: java.lang.Class<org.apache.http.impl.auth.AuthSchemeBase>;
						public constructor();
						public isComplete(): boolean;
						public isProxy(): boolean;
						public getParameter(param0: string): string;
						public getRealm(): string;
						public isConnectionBased(): boolean;
						public processChallenge(param0: org.apache.http.Header): void;
						public getSchemeName(): string;
						public parseChallenge(param0: org.apache.http.util.CharArrayBuffer, param1: number, param2: number): void;
						public authenticate(param0: org.apache.http.auth.Credentials, param1: org.apache.http.HttpRequest): org.apache.http.Header;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module auth {
					export class BasicScheme extends org.apache.http.impl.auth.RFC2617Scheme {
						public static class: java.lang.Class<org.apache.http.impl.auth.BasicScheme>;
						public constructor();
						public isComplete(): boolean;
						public isConnectionBased(): boolean;
						public getParameter(param0: string): string;
						public getRealm(): string;
						public getSchemeName(): string;
						public processChallenge(param0: org.apache.http.Header): void;
						public authenticate(param0: org.apache.http.auth.Credentials, param1: org.apache.http.HttpRequest): org.apache.http.Header;
						public static authenticate(param0: org.apache.http.auth.Credentials, param1: string, param2: boolean): org.apache.http.Header;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module auth {
					export class BasicSchemeFactory extends java.lang.Object implements org.apache.http.auth.AuthSchemeFactory {
						public static class: java.lang.Class<org.apache.http.impl.auth.BasicSchemeFactory>;
						public constructor();
						public newInstance(param0: org.apache.http.params.HttpParams): org.apache.http.auth.AuthScheme;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module auth {
					export class DigestScheme extends org.apache.http.impl.auth.RFC2617Scheme {
						public static class: java.lang.Class<org.apache.http.impl.auth.DigestScheme>;
						public constructor();
						public overrideParamter(param0: string, param1: string): void;
						public isComplete(): boolean;
						public isConnectionBased(): boolean;
						public getParameter(param0: string): string;
						public getRealm(): string;
						public processChallenge(param0: org.apache.http.Header): void;
						public getSchemeName(): string;
						public static createCnonce(): string;
						public authenticate(param0: org.apache.http.auth.Credentials, param1: org.apache.http.HttpRequest): org.apache.http.Header;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module auth {
					export class DigestSchemeFactory extends java.lang.Object implements org.apache.http.auth.AuthSchemeFactory {
						public static class: java.lang.Class<org.apache.http.impl.auth.DigestSchemeFactory>;
						public constructor();
						public newInstance(param0: org.apache.http.params.HttpParams): org.apache.http.auth.AuthScheme;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module auth {
					export class NTLMEngine extends java.lang.Object {
						public static class: java.lang.Class<org.apache.http.impl.auth.NTLMEngine>;
						/**
						 * Constructs a new instance of the org.apache.http.impl.auth.NTLMEngine interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
						 */
						public constructor(implementation: {
							generateType1Msg(param0: string, param1: string): string;
							generateType3Msg(param0: string, param1: string, param2: string, param3: string, param4: string): string;
						});
						public constructor();
						public generateType3Msg(param0: string, param1: string, param2: string, param3: string, param4: string): string;
						public generateType1Msg(param0: string, param1: string): string;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module auth {
					export class NTLMEngineException extends org.apache.http.auth.AuthenticationException {
						public static class: java.lang.Class<org.apache.http.impl.auth.NTLMEngineException>;
						public constructor();
						public constructor(param0: java.lang.Throwable);
						public constructor(param0: string, param1: java.lang.Throwable);
						public constructor(param0: string);
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module auth {
					export class NTLMScheme extends org.apache.http.impl.auth.AuthSchemeBase {
						public static class: java.lang.Class<org.apache.http.impl.auth.NTLMScheme>;
						public constructor();
						public isComplete(): boolean;
						public getParameter(param0: string): string;
						public getRealm(): string;
						public isConnectionBased(): boolean;
						public constructor(param0: org.apache.http.impl.auth.NTLMEngine);
						public getSchemeName(): string;
						public processChallenge(param0: org.apache.http.Header): void;
						public parseChallenge(param0: org.apache.http.util.CharArrayBuffer, param1: number, param2: number): void;
						public authenticate(param0: org.apache.http.auth.Credentials, param1: org.apache.http.HttpRequest): org.apache.http.Header;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module auth {
					export abstract class RFC2617Scheme extends org.apache.http.impl.auth.AuthSchemeBase {
						public static class: java.lang.Class<org.apache.http.impl.auth.RFC2617Scheme>;
						public constructor();
						public isComplete(): boolean;
						public getParameter(param0: string): string;
						public getRealm(): string;
						public isConnectionBased(): boolean;
						public getParameters(): java.util.Map<string,string>;
						public processChallenge(param0: org.apache.http.Header): void;
						public getSchemeName(): string;
						public parseChallenge(param0: org.apache.http.util.CharArrayBuffer, param1: number, param2: number): void;
						public authenticate(param0: org.apache.http.auth.Credentials, param1: org.apache.http.HttpRequest): org.apache.http.Header;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module auth {
					export class UnsupportedDigestAlgorithmException extends java.lang.RuntimeException {
						public static class: java.lang.Class<org.apache.http.impl.auth.UnsupportedDigestAlgorithmException>;
						public constructor();
						public constructor(param0: java.lang.Throwable);
						public constructor(param0: string, param1: java.lang.Throwable);
						public constructor(param0: string);
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module client {
					export abstract class AbstractAuthenticationHandler extends java.lang.Object implements org.apache.http.client.AuthenticationHandler {
						public static class: java.lang.Class<org.apache.http.impl.client.AbstractAuthenticationHandler>;
						public constructor();
						public parseChallenges(param0: native.Array<org.apache.http.Header>): java.util.Map<string,org.apache.http.Header>;
						public getAuthPreferences(): java.util.List<string>;
						public selectScheme(param0: java.util.Map<string,org.apache.http.Header>, param1: org.apache.http.HttpResponse, param2: org.apache.http.protocol.HttpContext): org.apache.http.auth.AuthScheme;
						public isAuthenticationRequested(param0: org.apache.http.HttpResponse, param1: org.apache.http.protocol.HttpContext): boolean;
						public getChallenges(param0: org.apache.http.HttpResponse, param1: org.apache.http.protocol.HttpContext): java.util.Map<string,org.apache.http.Header>;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module client {
					export abstract class AbstractHttpClient extends java.lang.Object implements org.apache.http.client.HttpClient {
						public static class: java.lang.Class<org.apache.http.impl.client.AbstractHttpClient>;
						public execute(param0: org.apache.http.client.methods.HttpUriRequest, param1: org.apache.http.client.ResponseHandler<any>, param2: org.apache.http.protocol.HttpContext): any;
						public setRoutePlanner(param0: org.apache.http.conn.routing.HttpRoutePlanner): void;
						public getCookieStore(): org.apache.http.client.CookieStore;
						public addResponseInterceptor(param0: org.apache.http.HttpResponseInterceptor): void;
						public getCookieSpecs(): org.apache.http.cookie.CookieSpecRegistry;
						public getProxyAuthenticationHandler(): org.apache.http.client.AuthenticationHandler;
						public createAuthSchemeRegistry(): org.apache.http.auth.AuthSchemeRegistry;
						public getHttpProcessor(): org.apache.http.protocol.BasicHttpProcessor;
						public clearRequestInterceptors(): void;
						public getHttpRequestRetryHandler(): org.apache.http.client.HttpRequestRetryHandler;
						public addResponseInterceptor(param0: org.apache.http.HttpResponseInterceptor, param1: number): void;
						public setHttpRequestRetryHandler(param0: org.apache.http.client.HttpRequestRetryHandler): void;
						public createRedirectHandler(): org.apache.http.client.RedirectHandler;
						public getTargetAuthenticationHandler(): org.apache.http.client.AuthenticationHandler;
						public execute(param0: org.apache.http.HttpHost, param1: org.apache.http.HttpRequest, param2: org.apache.http.client.ResponseHandler<any>, param3: org.apache.http.protocol.HttpContext): any;
						public createClientRequestDirector(param0: org.apache.http.protocol.HttpRequestExecutor, param1: org.apache.http.conn.ClientConnectionManager, param2: org.apache.http.ConnectionReuseStrategy, param3: org.apache.http.conn.ConnectionKeepAliveStrategy, param4: org.apache.http.conn.routing.HttpRoutePlanner, param5: org.apache.http.protocol.HttpProcessor, param6: org.apache.http.client.HttpRequestRetryHandler, param7: org.apache.http.client.RedirectHandler, param8: org.apache.http.client.AuthenticationHandler, param9: org.apache.http.client.AuthenticationHandler, param10: org.apache.http.client.UserTokenHandler, param11: org.apache.http.params.HttpParams): org.apache.http.client.RequestDirector;
						public setRedirectHandler(param0: org.apache.http.client.RedirectHandler): void;
						public getConnectionManager(): org.apache.http.conn.ClientConnectionManager;
						public createCookieStore(): org.apache.http.client.CookieStore;
						public addRequestInterceptor(param0: org.apache.http.HttpRequestInterceptor, param1: number): void;
						public execute(param0: org.apache.http.HttpHost, param1: org.apache.http.HttpRequest, param2: org.apache.http.protocol.HttpContext): org.apache.http.HttpResponse;
						public addRequestInterceptor(param0: org.apache.http.HttpRequestInterceptor): void;
						public createHttpRoutePlanner(): org.apache.http.conn.routing.HttpRoutePlanner;
						public createUserTokenHandler(): org.apache.http.client.UserTokenHandler;
						public setTargetAuthenticationHandler(param0: org.apache.http.client.AuthenticationHandler): void;
						public setProxyAuthenticationHandler(param0: org.apache.http.client.AuthenticationHandler): void;
						public determineParams(param0: org.apache.http.HttpRequest): org.apache.http.params.HttpParams;
						public createConnectionKeepAliveStrategy(): org.apache.http.conn.ConnectionKeepAliveStrategy;
						public createHttpProcessor(): org.apache.http.protocol.BasicHttpProcessor;
						public createProxyAuthenticationHandler(): org.apache.http.client.AuthenticationHandler;
						public createHttpContext(): org.apache.http.protocol.HttpContext;
						public getRequestInterceptor(param0: number): org.apache.http.HttpRequestInterceptor;
						public getRoutePlanner(): org.apache.http.conn.routing.HttpRoutePlanner;
						public setReuseStrategy(param0: org.apache.http.ConnectionReuseStrategy): void;
						public getParams(): org.apache.http.params.HttpParams;
						public createConnectionReuseStrategy(): org.apache.http.ConnectionReuseStrategy;
						public constructor(param0: org.apache.http.conn.ClientConnectionManager, param1: org.apache.http.params.HttpParams);
						public execute(param0: org.apache.http.HttpHost, param1: org.apache.http.HttpRequest): org.apache.http.HttpResponse;
						public clearResponseInterceptors(): void;
						public execute(param0: org.apache.http.client.methods.HttpUriRequest, param1: org.apache.http.client.ResponseHandler<any>): any;
						public setParams(param0: org.apache.http.params.HttpParams): void;
						public removeRequestInterceptorByClass(param0: java.lang.Class<any>): void;
						public execute(param0: org.apache.http.HttpHost, param1: org.apache.http.HttpRequest, param2: org.apache.http.client.ResponseHandler<any>): any;
						public getCredentialsProvider(): org.apache.http.client.CredentialsProvider;
						public setUserTokenHandler(param0: org.apache.http.client.UserTokenHandler): void;
						public createCredentialsProvider(): org.apache.http.client.CredentialsProvider;
						public execute(param0: org.apache.http.client.methods.HttpUriRequest, param1: org.apache.http.protocol.HttpContext): org.apache.http.HttpResponse;
						public getRequestExecutor(): org.apache.http.protocol.HttpRequestExecutor;
						public setCookieSpecs(param0: org.apache.http.cookie.CookieSpecRegistry): void;
						public getUserTokenHandler(): org.apache.http.client.UserTokenHandler;
						public createHttpParams(): org.apache.http.params.HttpParams;
						public setKeepAliveStrategy(param0: org.apache.http.conn.ConnectionKeepAliveStrategy): void;
						public getConnectionReuseStrategy(): org.apache.http.ConnectionReuseStrategy;
						public getConnectionKeepAliveStrategy(): org.apache.http.conn.ConnectionKeepAliveStrategy;
						public createRequestExecutor(): org.apache.http.protocol.HttpRequestExecutor;
						public setCredentialsProvider(param0: org.apache.http.client.CredentialsProvider): void;
						public createClientConnectionManager(): org.apache.http.conn.ClientConnectionManager;
						public removeResponseInterceptorByClass(param0: java.lang.Class<any>): void;
						public setAuthSchemes(param0: org.apache.http.auth.AuthSchemeRegistry): void;
						public createTargetAuthenticationHandler(): org.apache.http.client.AuthenticationHandler;
						public getAuthSchemes(): org.apache.http.auth.AuthSchemeRegistry;
						public getResponseInterceptorCount(): number;
						public createCookieSpecRegistry(): org.apache.http.cookie.CookieSpecRegistry;
						public getRedirectHandler(): org.apache.http.client.RedirectHandler;
						public getRequestInterceptorCount(): number;
						public execute(param0: org.apache.http.client.methods.HttpUriRequest): org.apache.http.HttpResponse;
						public createHttpRequestRetryHandler(): org.apache.http.client.HttpRequestRetryHandler;
						public setCookieStore(param0: org.apache.http.client.CookieStore): void;
						public getResponseInterceptor(param0: number): org.apache.http.HttpResponseInterceptor;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module client {
					export class BasicCookieStore extends java.lang.Object implements org.apache.http.client.CookieStore {
						public static class: java.lang.Class<org.apache.http.impl.client.BasicCookieStore>;
						public addCookies(param0: native.Array<org.apache.http.cookie.Cookie>): void;
						public getCookies(): java.util.List<org.apache.http.cookie.Cookie>;
						public constructor();
						public clear(): void;
						public addCookie(param0: org.apache.http.cookie.Cookie): void;
						public clearExpired(param0: java.util.Date): boolean;
						public toString(): string;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module client {
					export class BasicCredentialsProvider extends java.lang.Object implements org.apache.http.client.CredentialsProvider {
						public static class: java.lang.Class<org.apache.http.impl.client.BasicCredentialsProvider>;
						public setCredentials(param0: org.apache.http.auth.AuthScope, param1: org.apache.http.auth.Credentials): void;
						public constructor();
						public getCredentials(param0: org.apache.http.auth.AuthScope): org.apache.http.auth.Credentials;
						public clear(): void;
						public toString(): string;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module client {
					export class BasicResponseHandler extends org.apache.http.client.ResponseHandler<string> {
						public static class: java.lang.Class<org.apache.http.impl.client.BasicResponseHandler>;
						public constructor();
						public handleResponse(param0: org.apache.http.HttpResponse): string;
						public handleResponse(param0: org.apache.http.HttpResponse): any;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module client {
					export class ClientParamsStack extends org.apache.http.params.AbstractHttpParams {
						public static class: java.lang.Class<org.apache.http.impl.client.ClientParamsStack>;
						public applicationParams: org.apache.http.params.HttpParams;
						public clientParams: org.apache.http.params.HttpParams;
						public requestParams: org.apache.http.params.HttpParams;
						public overrideParams: org.apache.http.params.HttpParams;
						public constructor();
						public setIntParameter(param0: string, param1: number): org.apache.http.params.HttpParams;
						public getRequestParams(): org.apache.http.params.HttpParams;
						public constructor(param0: org.apache.http.impl.client.ClientParamsStack, param1: org.apache.http.params.HttpParams, param2: org.apache.http.params.HttpParams, param3: org.apache.http.params.HttpParams, param4: org.apache.http.params.HttpParams);
						public getApplicationParams(): org.apache.http.params.HttpParams;
						public getClientParams(): org.apache.http.params.HttpParams;
						public copy(): org.apache.http.params.HttpParams;
						public getOverrideParams(): org.apache.http.params.HttpParams;
						public setDoubleParameter(param0: string, param1: number): org.apache.http.params.HttpParams;
						public constructor(param0: org.apache.http.params.HttpParams, param1: org.apache.http.params.HttpParams, param2: org.apache.http.params.HttpParams, param3: org.apache.http.params.HttpParams);
						public isParameterTrue(param0: string): boolean;
						public setBooleanParameter(param0: string, param1: boolean): org.apache.http.params.HttpParams;
						public setParameter(param0: string, param1: any): org.apache.http.params.HttpParams;
						public removeParameter(param0: string): boolean;
						public getLongParameter(param0: string, param1: number): number;
						public getDoubleParameter(param0: string, param1: number): number;
						public isParameterFalse(param0: string): boolean;
						public setLongParameter(param0: string, param1: number): org.apache.http.params.HttpParams;
						public getBooleanParameter(param0: string, param1: boolean): boolean;
						public getIntParameter(param0: string, param1: number): number;
						public constructor(param0: org.apache.http.impl.client.ClientParamsStack);
						public getParameter(param0: string): any;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module client {
					export class DefaultConnectionKeepAliveStrategy extends java.lang.Object implements org.apache.http.conn.ConnectionKeepAliveStrategy {
						public static class: java.lang.Class<org.apache.http.impl.client.DefaultConnectionKeepAliveStrategy>;
						public constructor();
						public getKeepAliveDuration(param0: org.apache.http.HttpResponse, param1: org.apache.http.protocol.HttpContext): number;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module client {
					export class DefaultHttpClient extends org.apache.http.impl.client.AbstractHttpClient {
						public static class: java.lang.Class<org.apache.http.impl.client.DefaultHttpClient>;
						public execute(param0: org.apache.http.client.methods.HttpUriRequest, param1: org.apache.http.client.ResponseHandler<any>, param2: org.apache.http.protocol.HttpContext): any;
						public createHttpContext(): org.apache.http.protocol.HttpContext;
						public getParams(): org.apache.http.params.HttpParams;
						public createConnectionReuseStrategy(): org.apache.http.ConnectionReuseStrategy;
						public constructor(param0: org.apache.http.conn.ClientConnectionManager, param1: org.apache.http.params.HttpParams);
						public execute(param0: org.apache.http.HttpHost, param1: org.apache.http.HttpRequest): org.apache.http.HttpResponse;
						public execute(param0: org.apache.http.client.methods.HttpUriRequest, param1: org.apache.http.client.ResponseHandler<any>): any;
						public createAuthSchemeRegistry(): org.apache.http.auth.AuthSchemeRegistry;
						public execute(param0: org.apache.http.HttpHost, param1: org.apache.http.HttpRequest, param2: org.apache.http.client.ResponseHandler<any>): any;
						public createCredentialsProvider(): org.apache.http.client.CredentialsProvider;
						public execute(param0: org.apache.http.client.methods.HttpUriRequest, param1: org.apache.http.protocol.HttpContext): org.apache.http.HttpResponse;
						public constructor();
						public createRedirectHandler(): org.apache.http.client.RedirectHandler;
						public constructor(param0: org.apache.http.params.HttpParams);
						public createHttpParams(): org.apache.http.params.HttpParams;
						public execute(param0: org.apache.http.HttpHost, param1: org.apache.http.HttpRequest, param2: org.apache.http.client.ResponseHandler<any>, param3: org.apache.http.protocol.HttpContext): any;
						public createRequestExecutor(): org.apache.http.protocol.HttpRequestExecutor;
						public createClientConnectionManager(): org.apache.http.conn.ClientConnectionManager;
						public getConnectionManager(): org.apache.http.conn.ClientConnectionManager;
						public createCookieStore(): org.apache.http.client.CookieStore;
						public createTargetAuthenticationHandler(): org.apache.http.client.AuthenticationHandler;
						public execute(param0: org.apache.http.HttpHost, param1: org.apache.http.HttpRequest, param2: org.apache.http.protocol.HttpContext): org.apache.http.HttpResponse;
						public createCookieSpecRegistry(): org.apache.http.cookie.CookieSpecRegistry;
						public execute(param0: org.apache.http.client.methods.HttpUriRequest): org.apache.http.HttpResponse;
						public createHttpRequestRetryHandler(): org.apache.http.client.HttpRequestRetryHandler;
						public createHttpRoutePlanner(): org.apache.http.conn.routing.HttpRoutePlanner;
						public createUserTokenHandler(): org.apache.http.client.UserTokenHandler;
						public createConnectionKeepAliveStrategy(): org.apache.http.conn.ConnectionKeepAliveStrategy;
						public createHttpProcessor(): org.apache.http.protocol.BasicHttpProcessor;
						public createProxyAuthenticationHandler(): org.apache.http.client.AuthenticationHandler;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module client {
					export class DefaultHttpRequestRetryHandler extends java.lang.Object implements org.apache.http.client.HttpRequestRetryHandler {
						public static class: java.lang.Class<org.apache.http.impl.client.DefaultHttpRequestRetryHandler>;
						public isRequestSentRetryEnabled(): boolean;
						public constructor();
						public constructor(param0: number, param1: boolean);
						public retryRequest(param0: java.io.IOException, param1: number, param2: org.apache.http.protocol.HttpContext): boolean;
						public getRetryCount(): number;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module client {
					export class DefaultProxyAuthenticationHandler extends org.apache.http.impl.client.AbstractAuthenticationHandler {
						public static class: java.lang.Class<org.apache.http.impl.client.DefaultProxyAuthenticationHandler>;
						public constructor();
						public selectScheme(param0: java.util.Map<string,org.apache.http.Header>, param1: org.apache.http.HttpResponse, param2: org.apache.http.protocol.HttpContext): org.apache.http.auth.AuthScheme;
						public isAuthenticationRequested(param0: org.apache.http.HttpResponse, param1: org.apache.http.protocol.HttpContext): boolean;
						public getChallenges(param0: org.apache.http.HttpResponse, param1: org.apache.http.protocol.HttpContext): java.util.Map<string,org.apache.http.Header>;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module client {
					export class DefaultRedirectHandler extends java.lang.Object implements org.apache.http.client.RedirectHandler {
						public static class: java.lang.Class<org.apache.http.impl.client.DefaultRedirectHandler>;
						public constructor();
						public getLocationURI(param0: org.apache.http.HttpResponse, param1: org.apache.http.protocol.HttpContext): java.net.URI;
						public isRedirectRequested(param0: org.apache.http.HttpResponse, param1: org.apache.http.protocol.HttpContext): boolean;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module client {
					export class DefaultRequestDirector extends java.lang.Object implements org.apache.http.client.RequestDirector {
						public static class: java.lang.Class<org.apache.http.impl.client.DefaultRequestDirector>;
						public connManager: org.apache.http.conn.ClientConnectionManager;
						public routePlanner: org.apache.http.conn.routing.HttpRoutePlanner;
						public reuseStrategy: org.apache.http.ConnectionReuseStrategy;
						public keepAliveStrategy: org.apache.http.conn.ConnectionKeepAliveStrategy;
						public requestExec: org.apache.http.protocol.HttpRequestExecutor;
						public httpProcessor: org.apache.http.protocol.HttpProcessor;
						public retryHandler: org.apache.http.client.HttpRequestRetryHandler;
						public redirectHandler: org.apache.http.client.RedirectHandler;
						public params: org.apache.http.params.HttpParams;
						public managedConn: org.apache.http.conn.ManagedClientConnection;
						public rewriteRequestURI(param0: org.apache.http.impl.client.RequestWrapper, param1: org.apache.http.conn.routing.HttpRoute): void;
						public createTunnelToTarget(param0: org.apache.http.conn.routing.HttpRoute, param1: org.apache.http.protocol.HttpContext): boolean;
						public constructor(param0: org.apache.http.protocol.HttpRequestExecutor, param1: org.apache.http.conn.ClientConnectionManager, param2: org.apache.http.ConnectionReuseStrategy, param3: org.apache.http.conn.ConnectionKeepAliveStrategy, param4: org.apache.http.conn.routing.HttpRoutePlanner, param5: org.apache.http.protocol.HttpProcessor, param6: org.apache.http.client.HttpRequestRetryHandler, param7: org.apache.http.client.RedirectHandler, param8: org.apache.http.client.AuthenticationHandler, param9: org.apache.http.client.AuthenticationHandler, param10: org.apache.http.client.UserTokenHandler, param11: org.apache.http.params.HttpParams);
						public handleResponse(param0: org.apache.http.impl.client.RoutedRequest, param1: org.apache.http.HttpResponse, param2: org.apache.http.protocol.HttpContext): org.apache.http.impl.client.RoutedRequest;
						public createTunnelToProxy(param0: org.apache.http.conn.routing.HttpRoute, param1: number, param2: org.apache.http.protocol.HttpContext): boolean;
						public determineRoute(param0: org.apache.http.HttpHost, param1: org.apache.http.HttpRequest, param2: org.apache.http.protocol.HttpContext): org.apache.http.conn.routing.HttpRoute;
						public createConnectRequest(param0: org.apache.http.conn.routing.HttpRoute, param1: org.apache.http.protocol.HttpContext): org.apache.http.HttpRequest;
						public releaseConnection(): void;
						public establishRoute(param0: org.apache.http.conn.routing.HttpRoute, param1: org.apache.http.protocol.HttpContext): void;
						public execute(param0: org.apache.http.HttpHost, param1: org.apache.http.HttpRequest, param2: org.apache.http.protocol.HttpContext): org.apache.http.HttpResponse;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module client {
					export class DefaultTargetAuthenticationHandler extends org.apache.http.impl.client.AbstractAuthenticationHandler {
						public static class: java.lang.Class<org.apache.http.impl.client.DefaultTargetAuthenticationHandler>;
						public constructor();
						public selectScheme(param0: java.util.Map<string,org.apache.http.Header>, param1: org.apache.http.HttpResponse, param2: org.apache.http.protocol.HttpContext): org.apache.http.auth.AuthScheme;
						public isAuthenticationRequested(param0: org.apache.http.HttpResponse, param1: org.apache.http.protocol.HttpContext): boolean;
						public getChallenges(param0: org.apache.http.HttpResponse, param1: org.apache.http.protocol.HttpContext): java.util.Map<string,org.apache.http.Header>;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module client {
					export class DefaultUserTokenHandler extends java.lang.Object implements org.apache.http.client.UserTokenHandler {
						public static class: java.lang.Class<org.apache.http.impl.client.DefaultUserTokenHandler>;
						public constructor();
						public getUserToken(param0: org.apache.http.protocol.HttpContext): any;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module client {
					export class EntityEnclosingRequestWrapper extends org.apache.http.impl.client.RequestWrapper implements org.apache.http.HttpEntityEnclosingRequest {
						public static class: java.lang.Class<org.apache.http.impl.client.EntityEnclosingRequestWrapper>;
						public getEntity(): org.apache.http.HttpEntity;
						public getFirstHeader(param0: string): org.apache.http.Header;
						public getParams(): org.apache.http.params.HttpParams;
						public setHeader(param0: org.apache.http.Header): void;
						public getProtocolVersion(): org.apache.http.ProtocolVersion;
						public abort(): void;
						public isAborted(): boolean;
						public getAllHeaders(): native.Array<org.apache.http.Header>;
						public getHeaders(param0: string): native.Array<org.apache.http.Header>;
						public setParams(param0: org.apache.http.params.HttpParams): void;
						public getURI(): java.net.URI;
						public expectContinue(): boolean;
						public removeHeader(param0: org.apache.http.Header): void;
						public getMethod(): string;
						public headerIterator(param0: string): org.apache.http.HeaderIterator;
						public setHeader(param0: string, param1: string): void;
						public constructor(param0: org.apache.http.HttpEntityEnclosingRequest);
						public constructor();
						public getRequestLine(): org.apache.http.RequestLine;
						public constructor(param0: org.apache.http.params.HttpParams);
						public addHeader(param0: string, param1: string): void;
						public containsHeader(param0: string): boolean;
						public headerIterator(): org.apache.http.HeaderIterator;
						public setHeaders(param0: native.Array<org.apache.http.Header>): void;
						public removeHeaders(param0: string): void;
						public setEntity(param0: org.apache.http.HttpEntity): void;
						public getLastHeader(param0: string): org.apache.http.Header;
						public addHeader(param0: org.apache.http.Header): void;
						public isRepeatable(): boolean;
						public constructor(param0: org.apache.http.HttpRequest);
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module client {
					export class RedirectLocations extends java.lang.Object {
						public static class: java.lang.Class<org.apache.http.impl.client.RedirectLocations>;
						public constructor();
						public add(param0: java.net.URI): void;
						public contains(param0: java.net.URI): boolean;
						public remove(param0: java.net.URI): boolean;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module client {
					export class RequestWrapper extends org.apache.http.message.AbstractHttpMessage implements org.apache.http.client.methods.HttpUriRequest {
						public static class: java.lang.Class<org.apache.http.impl.client.RequestWrapper>;
						public getFirstHeader(param0: string): org.apache.http.Header;
						public getParams(): org.apache.http.params.HttpParams;
						public setHeader(param0: org.apache.http.Header): void;
						public getProtocolVersion(): org.apache.http.ProtocolVersion;
						public abort(): void;
						public setURI(param0: java.net.URI): void;
						public isAborted(): boolean;
						public getAllHeaders(): native.Array<org.apache.http.Header>;
						public getHeaders(param0: string): native.Array<org.apache.http.Header>;
						public setParams(param0: org.apache.http.params.HttpParams): void;
						public getURI(): java.net.URI;
						public removeHeader(param0: org.apache.http.Header): void;
						public getMethod(): string;
						public headerIterator(param0: string): org.apache.http.HeaderIterator;
						public setHeader(param0: string, param1: string): void;
						public incrementExecCount(): void;
						public constructor();
						public getRequestLine(): org.apache.http.RequestLine;
						public constructor(param0: org.apache.http.params.HttpParams);
						public setMethod(param0: string): void;
						public addHeader(param0: string, param1: string): void;
						public containsHeader(param0: string): boolean;
						public headerIterator(): org.apache.http.HeaderIterator;
						public getExecCount(): number;
						public setHeaders(param0: native.Array<org.apache.http.Header>): void;
						public removeHeaders(param0: string): void;
						public getOriginal(): org.apache.http.HttpRequest;
						public getLastHeader(param0: string): org.apache.http.Header;
						public addHeader(param0: org.apache.http.Header): void;
						public isRepeatable(): boolean;
						public constructor(param0: org.apache.http.HttpRequest);
						public setProtocolVersion(param0: org.apache.http.ProtocolVersion): void;
						public resetHeaders(): void;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module client {
					export class RoutedRequest extends java.lang.Object {
						public static class: java.lang.Class<org.apache.http.impl.client.RoutedRequest>;
						public request: org.apache.http.impl.client.RequestWrapper;
						public route: org.apache.http.conn.routing.HttpRoute;
						public getRoute(): org.apache.http.conn.routing.HttpRoute;
						public getRequest(): org.apache.http.impl.client.RequestWrapper;
						public constructor(param0: org.apache.http.impl.client.RequestWrapper, param1: org.apache.http.conn.routing.HttpRoute);
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module client {
					export class TunnelRefusedException extends org.apache.http.HttpException {
						public static class: java.lang.Class<org.apache.http.impl.client.TunnelRefusedException>;
						public constructor(param0: string, param1: org.apache.http.HttpResponse);
						public constructor();
						public constructor(param0: java.lang.Throwable);
						public getResponse(): org.apache.http.HttpResponse;
						public constructor(param0: string, param1: java.lang.Throwable);
						public constructor(param0: string);
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module conn {
					export abstract class AbstractClientConnAdapter extends java.lang.Object implements org.apache.http.conn.ManagedClientConnection {
						public static class: java.lang.Class<org.apache.http.impl.conn.AbstractClientConnAdapter>;
						public sendRequestEntity(param0: org.apache.http.HttpEntityEnclosingRequest): void;
						public setState(param0: any): void;
						public close(): void;
						public isResponseAvailable(param0: number): boolean;
						public getLocalAddress(): java.net.InetAddress;
						public releaseConnection(): void;
						public isStale(): boolean;
						public isMarkedReusable(): boolean;
						public setSocketTimeout(param0: number): void;
						public assertNotAborted(): void;
						public shutdown(): void;
						public tunnelProxy(param0: org.apache.http.HttpHost, param1: boolean, param2: org.apache.http.params.HttpParams): void;
						public receiveResponseHeader(): org.apache.http.HttpResponse;
						public getRemoteAddress(): java.net.InetAddress;
						public getSSLSession(): javax.net.ssl.SSLSession;
						public tunnelTarget(param0: boolean, param1: org.apache.http.params.HttpParams): void;
						public sendRequestHeader(param0: org.apache.http.HttpRequest): void;
						public setIdleDuration(param0: number, param1: java.util.concurrent.TimeUnit): void;
						public isOpen(): boolean;
						public assertValid(param0: org.apache.http.conn.OperatedClientConnection): void;
						public markReusable(): void;
						public getSocketTimeout(): number;
						public isSecure(): boolean;
						public getWrappedConnection(): org.apache.http.conn.OperatedClientConnection;
						public flush(): void;
						public detach(): void;
						public getMetrics(): org.apache.http.HttpConnectionMetrics;
						public getRemotePort(): number;
						public getManager(): org.apache.http.conn.ClientConnectionManager;
						public getLocalPort(): number;
						public unmarkReusable(): void;
						public abortConnection(): void;
						public constructor(param0: org.apache.http.conn.ClientConnectionManager, param1: org.apache.http.conn.OperatedClientConnection);
						public getRoute(): org.apache.http.conn.routing.HttpRoute;
						public receiveResponseEntity(param0: org.apache.http.HttpResponse): void;
						public layerProtocol(param0: org.apache.http.protocol.HttpContext, param1: org.apache.http.params.HttpParams): void;
						public open(param0: org.apache.http.conn.routing.HttpRoute, param1: org.apache.http.protocol.HttpContext, param2: org.apache.http.params.HttpParams): void;
						public getState(): any;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module conn {
					export abstract class AbstractPoolEntry extends java.lang.Object {
						public static class: java.lang.Class<org.apache.http.impl.conn.AbstractPoolEntry>;
						public connOperator: org.apache.http.conn.ClientConnectionOperator;
						public connection: org.apache.http.conn.OperatedClientConnection;
						public route: org.apache.http.conn.routing.HttpRoute;
						public state: any;
						public tracker: org.apache.http.conn.routing.RouteTracker;
						public constructor(param0: org.apache.http.conn.ClientConnectionOperator, param1: org.apache.http.conn.routing.HttpRoute);
						public shutdownEntry(): void;
						public tunnelProxy(param0: org.apache.http.HttpHost, param1: boolean, param2: org.apache.http.params.HttpParams): void;
						public setState(param0: any): void;
						public tunnelTarget(param0: boolean, param1: org.apache.http.params.HttpParams): void;
						public layerProtocol(param0: org.apache.http.protocol.HttpContext, param1: org.apache.http.params.HttpParams): void;
						public open(param0: org.apache.http.conn.routing.HttpRoute, param1: org.apache.http.protocol.HttpContext, param2: org.apache.http.params.HttpParams): void;
						public getState(): any;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module conn {
					export abstract class AbstractPooledConnAdapter extends org.apache.http.impl.conn.AbstractClientConnAdapter {
						public static class: java.lang.Class<org.apache.http.impl.conn.AbstractPooledConnAdapter>;
						public poolEntry: org.apache.http.impl.conn.AbstractPoolEntry;
						public markReusable(): void;
						public isSecure(): boolean;
						public close(): void;
						public setState(param0: any): void;
						public detach(): void;
						public constructor(param0: org.apache.http.conn.ClientConnectionManager, param1: org.apache.http.impl.conn.AbstractPoolEntry);
						public unmarkReusable(): void;
						public isMarkedReusable(): boolean;
						public constructor(param0: org.apache.http.conn.ClientConnectionManager, param1: org.apache.http.conn.OperatedClientConnection);
						public getRoute(): org.apache.http.conn.routing.HttpRoute;
						public shutdown(): void;
						public tunnelProxy(param0: org.apache.http.HttpHost, param1: boolean, param2: org.apache.http.params.HttpParams): void;
						public getSSLSession(): javax.net.ssl.SSLSession;
						public tunnelTarget(param0: boolean, param1: org.apache.http.params.HttpParams): void;
						public assertAttached(): void;
						public layerProtocol(param0: org.apache.http.protocol.HttpContext, param1: org.apache.http.params.HttpParams): void;
						public setIdleDuration(param0: number, param1: java.util.concurrent.TimeUnit): void;
						public open(param0: org.apache.http.conn.routing.HttpRoute, param1: org.apache.http.protocol.HttpContext, param2: org.apache.http.params.HttpParams): void;
						public getState(): any;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module conn {
					export class DefaultClientConnection extends org.apache.http.impl.SocketHttpClientConnection implements org.apache.http.conn.OperatedClientConnection {
						public static class: java.lang.Class<org.apache.http.impl.conn.DefaultClientConnection>;
						public sendRequestEntity(param0: org.apache.http.HttpEntityEnclosingRequest): void;
						public getSocket(): java.net.Socket;
						public close(): void;
						public createSessionInputBuffer(param0: java.net.Socket, param1: number, param2: org.apache.http.params.HttpParams): org.apache.http.io.SessionInputBuffer;
						public isResponseAvailable(param0: number): boolean;
						public getLocalAddress(): java.net.InetAddress;
						public isStale(): boolean;
						public setSocketTimeout(param0: number): void;
						public shutdown(): void;
						public receiveResponseHeader(): org.apache.http.HttpResponse;
						public getRemoteAddress(): java.net.InetAddress;
						public sendRequestHeader(param0: org.apache.http.HttpRequest): void;
						public opening(param0: java.net.Socket, param1: org.apache.http.HttpHost): void;
						public update(param0: java.net.Socket, param1: org.apache.http.HttpHost, param2: boolean, param3: org.apache.http.params.HttpParams): void;
						public isOpen(): boolean;
						public constructor();
						public getSocketTimeout(): number;
						public isSecure(): boolean;
						public createSessionOutputBuffer(param0: java.net.Socket, param1: number, param2: org.apache.http.params.HttpParams): org.apache.http.io.SessionOutputBuffer;
						public flush(): void;
						public getRemotePort(): number;
						public getMetrics(): org.apache.http.HttpConnectionMetrics;
						public getLocalPort(): number;
						public createResponseParser(param0: org.apache.http.io.SessionInputBuffer, param1: org.apache.http.HttpResponseFactory, param2: org.apache.http.params.HttpParams): org.apache.http.io.HttpMessageParser;
						public openCompleted(param0: boolean, param1: org.apache.http.params.HttpParams): void;
						public receiveResponseEntity(param0: org.apache.http.HttpResponse): void;
						public getTargetHost(): org.apache.http.HttpHost;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module conn {
					export class DefaultClientConnectionOperator extends java.lang.Object implements org.apache.http.conn.ClientConnectionOperator {
						public static class: java.lang.Class<org.apache.http.impl.conn.DefaultClientConnectionOperator>;
						public schemeRegistry: org.apache.http.conn.scheme.SchemeRegistry;
						public constructor(param0: org.apache.http.conn.scheme.SchemeRegistry);
						public openConnection(param0: org.apache.http.conn.OperatedClientConnection, param1: org.apache.http.HttpHost, param2: java.net.InetAddress, param3: org.apache.http.protocol.HttpContext, param4: org.apache.http.params.HttpParams): void;
						public prepareSocket(param0: java.net.Socket, param1: org.apache.http.protocol.HttpContext, param2: org.apache.http.params.HttpParams): void;
						public updateSecureConnection(param0: org.apache.http.conn.OperatedClientConnection, param1: org.apache.http.HttpHost, param2: org.apache.http.protocol.HttpContext, param3: org.apache.http.params.HttpParams): void;
						public createConnection(): org.apache.http.conn.OperatedClientConnection;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module conn {
					export class DefaultHttpRoutePlanner extends java.lang.Object implements org.apache.http.conn.routing.HttpRoutePlanner {
						public static class: java.lang.Class<org.apache.http.impl.conn.DefaultHttpRoutePlanner>;
						public schemeRegistry: org.apache.http.conn.scheme.SchemeRegistry;
						public constructor(param0: org.apache.http.conn.scheme.SchemeRegistry);
						public determineRoute(param0: org.apache.http.HttpHost, param1: org.apache.http.HttpRequest, param2: org.apache.http.protocol.HttpContext): org.apache.http.conn.routing.HttpRoute;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module conn {
					export class DefaultResponseParser extends org.apache.http.impl.io.AbstractMessageParser {
						public static class: java.lang.Class<org.apache.http.impl.conn.DefaultResponseParser>;
						public parseHead(param0: org.apache.http.io.SessionInputBuffer): org.apache.http.HttpMessage;
						public parse(): org.apache.http.HttpMessage;
						public constructor(param0: org.apache.http.io.SessionInputBuffer, param1: org.apache.http.message.LineParser, param2: org.apache.http.HttpResponseFactory, param3: org.apache.http.params.HttpParams);
						public constructor(param0: org.apache.http.io.SessionInputBuffer, param1: org.apache.http.message.LineParser, param2: org.apache.http.params.HttpParams);
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module conn {
					export class IdleConnectionHandler extends java.lang.Object {
						public static class: java.lang.Class<org.apache.http.impl.conn.IdleConnectionHandler>;
						public constructor();
						public closeExpiredConnections(): void;
						public remove(param0: org.apache.http.HttpConnection): boolean;
						public add(param0: org.apache.http.HttpConnection, param1: number, param2: java.util.concurrent.TimeUnit): void;
						public removeAll(): void;
						public closeIdleConnections(param0: number): void;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module conn {
					export class LoggingSessionInputBuffer extends java.lang.Object implements org.apache.http.io.SessionInputBuffer {
						public static class: java.lang.Class<org.apache.http.impl.conn.LoggingSessionInputBuffer>;
						public read(): number;
						public readLine(param0: org.apache.http.util.CharArrayBuffer): number;
						public read(param0: native.Array<number>): number;
						public constructor(param0: org.apache.http.io.SessionInputBuffer, param1: org.apache.http.impl.conn.Wire);
						public read(param0: native.Array<number>, param1: number, param2: number): number;
						public getMetrics(): org.apache.http.io.HttpTransportMetrics;
						public isDataAvailable(param0: number): boolean;
						public readLine(): string;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module conn {
					export class LoggingSessionOutputBuffer extends java.lang.Object implements org.apache.http.io.SessionOutputBuffer {
						public static class: java.lang.Class<org.apache.http.impl.conn.LoggingSessionOutputBuffer>;
						public constructor(param0: org.apache.http.io.SessionOutputBuffer, param1: org.apache.http.impl.conn.Wire);
						public write(param0: number): void;
						public write(param0: native.Array<number>, param1: number, param2: number): void;
						public flush(): void;
						public writeLine(param0: string): void;
						public write(param0: native.Array<number>): void;
						public writeLine(param0: org.apache.http.util.CharArrayBuffer): void;
						public getMetrics(): org.apache.http.io.HttpTransportMetrics;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module conn {
					export class ProxySelectorRoutePlanner extends java.lang.Object implements org.apache.http.conn.routing.HttpRoutePlanner {
						public static class: java.lang.Class<org.apache.http.impl.conn.ProxySelectorRoutePlanner>;
						public schemeRegistry: org.apache.http.conn.scheme.SchemeRegistry;
						public proxySelector: java.net.ProxySelector;
						public setProxySelector(param0: java.net.ProxySelector): void;
						public getHost(param0: java.net.InetSocketAddress): string;
						public getProxySelector(): java.net.ProxySelector;
						public determineProxy(param0: org.apache.http.HttpHost, param1: org.apache.http.HttpRequest, param2: org.apache.http.protocol.HttpContext): org.apache.http.HttpHost;
						public chooseProxy(param0: java.util.List<java.net.Proxy>, param1: org.apache.http.HttpHost, param2: org.apache.http.HttpRequest, param3: org.apache.http.protocol.HttpContext): java.net.Proxy;
						public constructor(param0: org.apache.http.conn.scheme.SchemeRegistry, param1: java.net.ProxySelector);
						public determineRoute(param0: org.apache.http.HttpHost, param1: org.apache.http.HttpRequest, param2: org.apache.http.protocol.HttpContext): org.apache.http.conn.routing.HttpRoute;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module conn {
					export class SingleClientConnManager extends java.lang.Object implements org.apache.http.conn.ClientConnectionManager {
						public static class: java.lang.Class<org.apache.http.impl.conn.SingleClientConnManager>;
						public static MISUSE_MESSAGE: string;
						public schemeRegistry: org.apache.http.conn.scheme.SchemeRegistry;
						public connOperator: org.apache.http.conn.ClientConnectionOperator;
						public uniquePoolEntry: org.apache.http.impl.conn.SingleClientConnManager.PoolEntry;
						public managedConn: org.apache.http.impl.conn.SingleClientConnManager.ConnAdapter;
						public lastReleaseTime: number;
						public connectionExpiresTime: number;
						public alwaysShutDown: boolean;
						public isShutDown: boolean;
						public constructor(param0: org.apache.http.params.HttpParams, param1: org.apache.http.conn.scheme.SchemeRegistry);
						public getSchemeRegistry(): org.apache.http.conn.scheme.SchemeRegistry;
						public shutdown(): void;
						public closeExpiredConnections(): void;
						public createConnectionOperator(param0: org.apache.http.conn.scheme.SchemeRegistry): org.apache.http.conn.ClientConnectionOperator;
						public closeIdleConnections(param0: number, param1: java.util.concurrent.TimeUnit): void;
						public getConnection(param0: org.apache.http.conn.routing.HttpRoute, param1: any): org.apache.http.conn.ManagedClientConnection;
						public revokeConnection(): void;
						public requestConnection(param0: org.apache.http.conn.routing.HttpRoute, param1: any): org.apache.http.conn.ClientConnectionRequest;
						public releaseConnection(param0: org.apache.http.conn.ManagedClientConnection, param1: number, param2: java.util.concurrent.TimeUnit): void;
						public assertStillUp(): void;
						public finalize(): void;
					}
					export module SingleClientConnManager {
						export class ConnAdapter extends org.apache.http.impl.conn.AbstractPooledConnAdapter {
							public static class: java.lang.Class<org.apache.http.impl.conn.SingleClientConnManager.ConnAdapter>;
							public getRoute(): org.apache.http.conn.routing.HttpRoute;
							public isMarkedReusable(): boolean;
							public constructor(param0: org.apache.http.conn.ClientConnectionManager, param1: org.apache.http.conn.OperatedClientConnection);
							public setIdleDuration(param0: number, param1: java.util.concurrent.TimeUnit): void;
							public getSSLSession(): javax.net.ssl.SSLSession;
							public constructor(param0: org.apache.http.impl.conn.SingleClientConnManager, param1: org.apache.http.impl.conn.SingleClientConnManager.PoolEntry, param2: org.apache.http.conn.routing.HttpRoute);
							public constructor(param0: org.apache.http.conn.ClientConnectionManager, param1: org.apache.http.impl.conn.AbstractPoolEntry);
							public tunnelProxy(param0: org.apache.http.HttpHost, param1: boolean, param2: org.apache.http.params.HttpParams): void;
							public open(param0: org.apache.http.conn.routing.HttpRoute, param1: org.apache.http.protocol.HttpContext, param2: org.apache.http.params.HttpParams): void;
							public layerProtocol(param0: org.apache.http.protocol.HttpContext, param1: org.apache.http.params.HttpParams): void;
							public tunnelTarget(param0: boolean, param1: org.apache.http.params.HttpParams): void;
							public markReusable(): void;
							public getState(): any;
							public setState(param0: any): void;
							public isSecure(): boolean;
							public unmarkReusable(): void;
						}
						export class PoolEntry extends org.apache.http.impl.conn.AbstractPoolEntry {
							public static class: java.lang.Class<org.apache.http.impl.conn.SingleClientConnManager.PoolEntry>;
							public close(): void;
							public constructor(param0: org.apache.http.impl.conn.SingleClientConnManager);
							public shutdown(): void;
							public constructor(param0: org.apache.http.conn.ClientConnectionOperator, param1: org.apache.http.conn.routing.HttpRoute);
						}
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module conn {
					export class Wire extends java.lang.Object {
						public static class: java.lang.Class<org.apache.http.impl.conn.Wire>;
						public output(param0: string): void;
						public input(param0: native.Array<number>, param1: number, param2: number): void;
						public input(param0: string): void;
						public constructor(param0: org.apache.commons.logging.Log);
						public input(param0: native.Array<number>): void;
						public output(param0: java.io.InputStream): void;
						public output(param0: number): void;
						public input(param0: java.io.InputStream): void;
						public enabled(): boolean;
						public input(param0: number): void;
						public output(param0: native.Array<number>, param1: number, param2: number): void;
						public output(param0: native.Array<number>): void;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module conn {
					export module tsccm {
						export abstract class AbstractConnPool extends java.lang.Object implements org.apache.http.impl.conn.tsccm.RefQueueHandler {
							public static class: java.lang.Class<org.apache.http.impl.conn.tsccm.AbstractConnPool>;
							public poolLock: java.util.concurrent.locks.Lock;
							public issuedConnections: java.util.Set<org.apache.http.impl.conn.tsccm.BasicPoolEntryRef>;
							public idleConnHandler: org.apache.http.impl.conn.IdleConnectionHandler;
							public numConnections: number;
							public refQueue: java.lang.ref.ReferenceQueue<any>;
							public isShutDown: boolean;
							public constructor();
							public closeIdleConnections(param0: number, param1: java.util.concurrent.TimeUnit): void;
							public getEntry(param0: org.apache.http.conn.routing.HttpRoute, param1: any, param2: number, param3: java.util.concurrent.TimeUnit): org.apache.http.impl.conn.tsccm.BasicPoolEntry;
							public handleReference(param0: java.lang.ref.Reference<any>): void;
							public freeEntry(param0: org.apache.http.impl.conn.tsccm.BasicPoolEntry, param1: boolean, param2: number, param3: java.util.concurrent.TimeUnit): void;
							public deleteClosedConnections(): void;
							public shutdown(): void;
							public handleLostEntry(param0: org.apache.http.conn.routing.HttpRoute): void;
							public handleReference(param0: java.lang.ref.Reference<any>): void;
							public requestPoolEntry(param0: org.apache.http.conn.routing.HttpRoute, param1: any): org.apache.http.impl.conn.tsccm.PoolEntryRequest;
							public closeConnection(param0: org.apache.http.conn.OperatedClientConnection): void;
							public closeExpiredConnections(): void;
							public enableConnectionGC(): void;
						}
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module conn {
					export module tsccm {
						export class BasicPoolEntry extends org.apache.http.impl.conn.AbstractPoolEntry {
							public static class: java.lang.Class<org.apache.http.impl.conn.tsccm.BasicPoolEntry>;
							public getWeakRef(): org.apache.http.impl.conn.tsccm.BasicPoolEntryRef;
							public constructor(param0: org.apache.http.conn.ClientConnectionOperator, param1: org.apache.http.conn.routing.HttpRoute, param2: java.lang.ref.ReferenceQueue<any>);
							public getConnection(): org.apache.http.conn.OperatedClientConnection;
							public getPlannedRoute(): org.apache.http.conn.routing.HttpRoute;
							public constructor(param0: org.apache.http.conn.ClientConnectionOperator, param1: org.apache.http.conn.routing.HttpRoute);
						}
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module conn {
					export module tsccm {
						export class BasicPoolEntryRef extends java.lang.ref.WeakReference<org.apache.http.impl.conn.tsccm.BasicPoolEntry> {
							public static class: java.lang.Class<org.apache.http.impl.conn.tsccm.BasicPoolEntryRef>;
							public getRoute(): org.apache.http.conn.routing.HttpRoute;
							public constructor(param0: any);
							public constructor(param0: any, param1: java.lang.ref.ReferenceQueue<any>);
							public constructor(param0: org.apache.http.impl.conn.tsccm.BasicPoolEntry, param1: java.lang.ref.ReferenceQueue<any>);
						}
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module conn {
					export module tsccm {
						export class BasicPooledConnAdapter extends org.apache.http.impl.conn.AbstractPooledConnAdapter {
							public static class: java.lang.Class<org.apache.http.impl.conn.tsccm.BasicPooledConnAdapter>;
							public getRoute(): org.apache.http.conn.routing.HttpRoute;
							public isMarkedReusable(): boolean;
							public constructor(param0: org.apache.http.conn.ClientConnectionManager, param1: org.apache.http.conn.OperatedClientConnection);
							public setIdleDuration(param0: number, param1: java.util.concurrent.TimeUnit): void;
							public getSSLSession(): javax.net.ssl.SSLSession;
							public constructor(param0: org.apache.http.conn.ClientConnectionManager, param1: org.apache.http.impl.conn.AbstractPoolEntry);
							public getPoolEntry(): org.apache.http.impl.conn.AbstractPoolEntry;
							public tunnelProxy(param0: org.apache.http.HttpHost, param1: boolean, param2: org.apache.http.params.HttpParams): void;
							public open(param0: org.apache.http.conn.routing.HttpRoute, param1: org.apache.http.protocol.HttpContext, param2: org.apache.http.params.HttpParams): void;
							public layerProtocol(param0: org.apache.http.protocol.HttpContext, param1: org.apache.http.params.HttpParams): void;
							public constructor(param0: org.apache.http.impl.conn.tsccm.ThreadSafeClientConnManager, param1: org.apache.http.impl.conn.AbstractPoolEntry);
							public tunnelTarget(param0: boolean, param1: org.apache.http.params.HttpParams): void;
							public detach(): void;
							public markReusable(): void;
							public getManager(): org.apache.http.conn.ClientConnectionManager;
							public getState(): any;
							public setState(param0: any): void;
							public isSecure(): boolean;
							public unmarkReusable(): void;
						}
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module conn {
					export module tsccm {
						export class ConnPoolByRoute extends org.apache.http.impl.conn.tsccm.AbstractConnPool {
							public static class: java.lang.Class<org.apache.http.impl.conn.tsccm.ConnPoolByRoute>;
							public operator: org.apache.http.conn.ClientConnectionOperator;
							public freeConnections: java.util.Queue<org.apache.http.impl.conn.tsccm.BasicPoolEntry>;
							public waitingThreads: java.util.Queue<org.apache.http.impl.conn.tsccm.WaitingThread>;
							public routeToPool: java.util.Map<org.apache.http.conn.routing.HttpRoute,org.apache.http.impl.conn.tsccm.RouteSpecificPool>;
							public maxTotalConnections: number;
							public constructor();
							public getFreeEntry(param0: org.apache.http.impl.conn.tsccm.RouteSpecificPool, param1: any): org.apache.http.impl.conn.tsccm.BasicPoolEntry;
							public getRoutePool(param0: org.apache.http.conn.routing.HttpRoute, param1: boolean): org.apache.http.impl.conn.tsccm.RouteSpecificPool;
							public createWaitingThreadQueue(): java.util.Queue<org.apache.http.impl.conn.tsccm.WaitingThread>;
							public deleteLeastUsedEntry(): void;
							public createRouteToPoolMap(): java.util.Map<org.apache.http.conn.routing.HttpRoute,org.apache.http.impl.conn.tsccm.RouteSpecificPool>;
							public handleReference(param0: java.lang.ref.Reference<any>): void;
							public freeEntry(param0: org.apache.http.impl.conn.tsccm.BasicPoolEntry, param1: boolean, param2: number, param3: java.util.concurrent.TimeUnit): void;
							public createEntry(param0: org.apache.http.impl.conn.tsccm.RouteSpecificPool, param1: org.apache.http.conn.ClientConnectionOperator): org.apache.http.impl.conn.tsccm.BasicPoolEntry;
							public deleteClosedConnections(): void;
							public deleteEntry(param0: org.apache.http.impl.conn.tsccm.BasicPoolEntry): void;
							public shutdown(): void;
							public handleLostEntry(param0: org.apache.http.conn.routing.HttpRoute): void;
							public notifyWaitingThread(param0: org.apache.http.impl.conn.tsccm.RouteSpecificPool): void;
							public handleReference(param0: java.lang.ref.Reference<any>): void;
							public getConnectionsInPool(param0: org.apache.http.conn.routing.HttpRoute): number;
							public requestPoolEntry(param0: org.apache.http.conn.routing.HttpRoute, param1: any): org.apache.http.impl.conn.tsccm.PoolEntryRequest;
							public createFreeConnQueue(): java.util.Queue<org.apache.http.impl.conn.tsccm.BasicPoolEntry>;
							public newWaitingThread(param0: java.util.concurrent.locks.Condition, param1: org.apache.http.impl.conn.tsccm.RouteSpecificPool): org.apache.http.impl.conn.tsccm.WaitingThread;
							public newRouteSpecificPool(param0: org.apache.http.conn.routing.HttpRoute): org.apache.http.impl.conn.tsccm.RouteSpecificPool;
							public getEntryBlocking(param0: org.apache.http.conn.routing.HttpRoute, param1: any, param2: number, param3: java.util.concurrent.TimeUnit, param4: org.apache.http.impl.conn.tsccm.WaitingThreadAborter): org.apache.http.impl.conn.tsccm.BasicPoolEntry;
							public constructor(param0: org.apache.http.conn.ClientConnectionOperator, param1: org.apache.http.params.HttpParams);
						}
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module conn {
					export module tsccm {
						export class PoolEntryRequest extends java.lang.Object {
							public static class: java.lang.Class<org.apache.http.impl.conn.tsccm.PoolEntryRequest>;
							/**
							 * Constructs a new instance of the org.apache.http.impl.conn.tsccm.PoolEntryRequest interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
							 */
							public constructor(implementation: {
								getPoolEntry(param0: number, param1: java.util.concurrent.TimeUnit): org.apache.http.impl.conn.tsccm.BasicPoolEntry;
								abortRequest(): void;
							});
							public constructor();
							public getPoolEntry(param0: number, param1: java.util.concurrent.TimeUnit): org.apache.http.impl.conn.tsccm.BasicPoolEntry;
							public abortRequest(): void;
						}
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module conn {
					export module tsccm {
						export class RefQueueHandler extends java.lang.Object {
							public static class: java.lang.Class<org.apache.http.impl.conn.tsccm.RefQueueHandler>;
							/**
							 * Constructs a new instance of the org.apache.http.impl.conn.tsccm.RefQueueHandler interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
							 */
							public constructor(implementation: {
								handleReference(param0: java.lang.ref.Reference<any>): void;
							});
							public constructor();
							public handleReference(param0: java.lang.ref.Reference<any>): void;
						}
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module conn {
					export module tsccm {
						export class RefQueueWorker extends java.lang.Object implements java.lang.Runnable {
							public static class: java.lang.Class<org.apache.http.impl.conn.tsccm.RefQueueWorker>;
							public refQueue: java.lang.ref.ReferenceQueue<any>;
							public refHandler: org.apache.http.impl.conn.tsccm.RefQueueHandler;
							public workerThread: java.lang.Thread;
							public constructor(param0: java.lang.ref.ReferenceQueue<any>, param1: org.apache.http.impl.conn.tsccm.RefQueueHandler);
							public toString(): string;
							public shutdown(): void;
							public run(): void;
						}
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module conn {
					export module tsccm {
						export class RouteSpecificPool extends java.lang.Object {
							public static class: java.lang.Class<org.apache.http.impl.conn.tsccm.RouteSpecificPool>;
							public route: org.apache.http.conn.routing.HttpRoute;
							public maxEntries: number;
							public freeEntries: java.util.LinkedList<org.apache.http.impl.conn.tsccm.BasicPoolEntry>;
							public waitingThreads: java.util.Queue<org.apache.http.impl.conn.tsccm.WaitingThread>;
							public numEntries: number;
							public removeThread(param0: org.apache.http.impl.conn.tsccm.WaitingThread): void;
							public getRoute(): org.apache.http.conn.routing.HttpRoute;
							public hasThread(): boolean;
							public createdEntry(param0: org.apache.http.impl.conn.tsccm.BasicPoolEntry): void;
							public getMaxEntries(): number;
							public deleteEntry(param0: org.apache.http.impl.conn.tsccm.BasicPoolEntry): boolean;
							public getEntryCount(): number;
							public queueThread(param0: org.apache.http.impl.conn.tsccm.WaitingThread): void;
							public nextThread(): org.apache.http.impl.conn.tsccm.WaitingThread;
							public allocEntry(param0: any): org.apache.http.impl.conn.tsccm.BasicPoolEntry;
							public constructor(param0: org.apache.http.conn.routing.HttpRoute, param1: number);
							public getCapacity(): number;
							public freeEntry(param0: org.apache.http.impl.conn.tsccm.BasicPoolEntry): void;
							public dropEntry(): void;
							public isUnused(): boolean;
						}
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module conn {
					export module tsccm {
						export class ThreadSafeClientConnManager extends java.lang.Object implements org.apache.http.conn.ClientConnectionManager {
							public static class: java.lang.Class<org.apache.http.impl.conn.tsccm.ThreadSafeClientConnManager>;
							public schemeRegistry: org.apache.http.conn.scheme.SchemeRegistry;
							public connectionPool: org.apache.http.impl.conn.tsccm.AbstractConnPool;
							public connOperator: org.apache.http.conn.ClientConnectionOperator;
							public createConnectionOperator(param0: org.apache.http.conn.scheme.SchemeRegistry): org.apache.http.conn.ClientConnectionOperator;
							public closeIdleConnections(param0: number, param1: java.util.concurrent.TimeUnit): void;
							public getConnectionsInPool(): number;
							public constructor(param0: org.apache.http.params.HttpParams, param1: org.apache.http.conn.scheme.SchemeRegistry);
							public getConnectionsInPool(param0: org.apache.http.conn.routing.HttpRoute): number;
							public getSchemeRegistry(): org.apache.http.conn.scheme.SchemeRegistry;
							public closeExpiredConnections(): void;
							public finalize(): void;
							public createConnectionPool(param0: org.apache.http.params.HttpParams): org.apache.http.impl.conn.tsccm.AbstractConnPool;
							public shutdown(): void;
							public releaseConnection(param0: org.apache.http.conn.ManagedClientConnection, param1: number, param2: java.util.concurrent.TimeUnit): void;
							public requestConnection(param0: org.apache.http.conn.routing.HttpRoute, param1: any): org.apache.http.conn.ClientConnectionRequest;
						}
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module conn {
					export module tsccm {
						export class WaitingThread extends java.lang.Object {
							public static class: java.lang.Class<org.apache.http.impl.conn.tsccm.WaitingThread>;
							public getThread(): java.lang.Thread;
							public await(param0: java.util.Date): boolean;
							public constructor(param0: java.util.concurrent.locks.Condition, param1: org.apache.http.impl.conn.tsccm.RouteSpecificPool);
							public interrupt(): void;
							public getPool(): org.apache.http.impl.conn.tsccm.RouteSpecificPool;
							public getCondition(): java.util.concurrent.locks.Condition;
							public wakeup(): void;
						}
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module conn {
					export module tsccm {
						export class WaitingThreadAborter extends java.lang.Object {
							public static class: java.lang.Class<org.apache.http.impl.conn.tsccm.WaitingThreadAborter>;
							public constructor();
							public setWaitingThread(param0: org.apache.http.impl.conn.tsccm.WaitingThread): void;
							public abort(): void;
						}
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module cookie {
					export abstract class AbstractCookieAttributeHandler extends java.lang.Object implements org.apache.http.cookie.CookieAttributeHandler {
						public static class: java.lang.Class<org.apache.http.impl.cookie.AbstractCookieAttributeHandler>;
						public constructor();
						public validate(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): void;
						public parse(param0: org.apache.http.cookie.SetCookie, param1: string): void;
						public match(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): boolean;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module cookie {
					export abstract class AbstractCookieSpec extends java.lang.Object implements org.apache.http.cookie.CookieSpec {
						public static class: java.lang.Class<org.apache.http.impl.cookie.AbstractCookieSpec>;
						public constructor();
						public getAttribHandlers(): java.util.Collection<org.apache.http.cookie.CookieAttributeHandler>;
						public validate(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): void;
						public getVersionHeader(): org.apache.http.Header;
						public registerAttribHandler(param0: string, param1: org.apache.http.cookie.CookieAttributeHandler): void;
						public getAttribHandler(param0: string): org.apache.http.cookie.CookieAttributeHandler;
						public parse(param0: org.apache.http.Header, param1: org.apache.http.cookie.CookieOrigin): java.util.List<org.apache.http.cookie.Cookie>;
						public getVersion(): number;
						public findAttribHandler(param0: string): org.apache.http.cookie.CookieAttributeHandler;
						public formatCookies(param0: java.util.List<org.apache.http.cookie.Cookie>): java.util.List<org.apache.http.Header>;
						public match(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): boolean;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module cookie {
					export class BasicClientCookie extends java.lang.Object implements org.apache.http.cookie.SetCookie, org.apache.http.cookie.ClientCookie, java.lang.Cloneable {
						public static class: java.lang.Class<org.apache.http.impl.cookie.BasicClientCookie>;
						public setSecure(param0: boolean): void;
						public setVersion(param0: number): void;
						public getValue(): string;
						public getPath(): string;
						public containsAttribute(param0: string): boolean;
						public getName(): string;
						public setDomain(param0: string): void;
						public setValue(param0: string): void;
						public getExpiryDate(): java.util.Date;
						public isPersistent(): boolean;
						public constructor(param0: string, param1: string);
						public getAttribute(param0: string): string;
						public getDomain(): string;
						public isExpired(param0: java.util.Date): boolean;
						public setComment(param0: string): void;
						public isSecure(): boolean;
						public setExpiryDate(param0: java.util.Date): void;
						public clone(): any;
						public getVersion(): number;
						public getComment(): string;
						public getPorts(): native.Array<number>;
						public getCommentURL(): string;
						public toString(): string;
						public setPath(param0: string): void;
						public setAttribute(param0: string, param1: string): void;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module cookie {
					export class BasicClientCookie2 extends org.apache.http.impl.cookie.BasicClientCookie implements org.apache.http.cookie.SetCookie2 {
						public static class: java.lang.Class<org.apache.http.impl.cookie.BasicClientCookie2>;
						public setSecure(param0: boolean): void;
						public setVersion(param0: number): void;
						public getValue(): string;
						public getPath(): string;
						public containsAttribute(param0: string): boolean;
						public getName(): string;
						public setDomain(param0: string): void;
						public setValue(param0: string): void;
						public isPersistent(): boolean;
						public getExpiryDate(): java.util.Date;
						public constructor(param0: string, param1: string);
						public setPorts(param0: native.Array<number>): void;
						public getAttribute(param0: string): string;
						public setCommentURL(param0: string): void;
						public isExpired(param0: java.util.Date): boolean;
						public getDomain(): string;
						public setComment(param0: string): void;
						public isSecure(): boolean;
						public clone(): any;
						public setExpiryDate(param0: java.util.Date): void;
						public getVersion(): number;
						public getComment(): string;
						public getPorts(): native.Array<number>;
						public getCommentURL(): string;
						public setPath(param0: string): void;
						public setDiscard(param0: boolean): void;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module cookie {
					export class BasicCommentHandler extends org.apache.http.impl.cookie.AbstractCookieAttributeHandler {
						public static class: java.lang.Class<org.apache.http.impl.cookie.BasicCommentHandler>;
						public constructor();
						public validate(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): void;
						public parse(param0: org.apache.http.cookie.SetCookie, param1: string): void;
						public match(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): boolean;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module cookie {
					export class BasicDomainHandler extends java.lang.Object implements org.apache.http.cookie.CookieAttributeHandler {
						public static class: java.lang.Class<org.apache.http.impl.cookie.BasicDomainHandler>;
						public constructor();
						public validate(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): void;
						public parse(param0: org.apache.http.cookie.SetCookie, param1: string): void;
						public match(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): boolean;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module cookie {
					export class BasicExpiresHandler extends org.apache.http.impl.cookie.AbstractCookieAttributeHandler {
						public static class: java.lang.Class<org.apache.http.impl.cookie.BasicExpiresHandler>;
						public constructor();
						public validate(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): void;
						public parse(param0: org.apache.http.cookie.SetCookie, param1: string): void;
						public constructor(param0: native.Array<string>);
						public match(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): boolean;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module cookie {
					export class BasicMaxAgeHandler extends org.apache.http.impl.cookie.AbstractCookieAttributeHandler {
						public static class: java.lang.Class<org.apache.http.impl.cookie.BasicMaxAgeHandler>;
						public constructor();
						public validate(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): void;
						public parse(param0: org.apache.http.cookie.SetCookie, param1: string): void;
						public match(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): boolean;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module cookie {
					export class BasicPathHandler extends java.lang.Object implements org.apache.http.cookie.CookieAttributeHandler {
						public static class: java.lang.Class<org.apache.http.impl.cookie.BasicPathHandler>;
						public constructor();
						public validate(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): void;
						public parse(param0: org.apache.http.cookie.SetCookie, param1: string): void;
						public match(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): boolean;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module cookie {
					export class BasicSecureHandler extends org.apache.http.impl.cookie.AbstractCookieAttributeHandler {
						public static class: java.lang.Class<org.apache.http.impl.cookie.BasicSecureHandler>;
						public constructor();
						public validate(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): void;
						public parse(param0: org.apache.http.cookie.SetCookie, param1: string): void;
						public match(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): boolean;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module cookie {
					export class BestMatchSpec extends java.lang.Object implements org.apache.http.cookie.CookieSpec {
						public static class: java.lang.Class<org.apache.http.impl.cookie.BestMatchSpec>;
						public constructor();
						public validate(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): void;
						public getVersionHeader(): org.apache.http.Header;
						public parse(param0: org.apache.http.Header, param1: org.apache.http.cookie.CookieOrigin): java.util.List<org.apache.http.cookie.Cookie>;
						public getVersion(): number;
						public formatCookies(param0: java.util.List<org.apache.http.cookie.Cookie>): java.util.List<org.apache.http.Header>;
						public match(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): boolean;
						public constructor(param0: native.Array<string>, param1: boolean);
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module cookie {
					export class BestMatchSpecFactory extends java.lang.Object implements org.apache.http.cookie.CookieSpecFactory {
						public static class: java.lang.Class<org.apache.http.impl.cookie.BestMatchSpecFactory>;
						public constructor();
						public newInstance(param0: org.apache.http.params.HttpParams): org.apache.http.cookie.CookieSpec;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module cookie {
					export class BrowserCompatSpec extends org.apache.http.impl.cookie.CookieSpecBase {
						public static class: java.lang.Class<org.apache.http.impl.cookie.BrowserCompatSpec>;
						public static DATE_PATTERNS: native.Array<string>;
						public constructor();
						public parse(param0: native.Array<org.apache.http.HeaderElement>, param1: org.apache.http.cookie.CookieOrigin): java.util.List<org.apache.http.cookie.Cookie>;
						public getVersionHeader(): org.apache.http.Header;
						public validate(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): void;
						public parse(param0: org.apache.http.Header, param1: org.apache.http.cookie.CookieOrigin): java.util.List<org.apache.http.cookie.Cookie>;
						public getVersion(): number;
						public formatCookies(param0: java.util.List<org.apache.http.cookie.Cookie>): java.util.List<org.apache.http.Header>;
						public constructor(param0: native.Array<string>);
						public match(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): boolean;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module cookie {
					export class BrowserCompatSpecFactory extends java.lang.Object implements org.apache.http.cookie.CookieSpecFactory {
						public static class: java.lang.Class<org.apache.http.impl.cookie.BrowserCompatSpecFactory>;
						public constructor();
						public newInstance(param0: org.apache.http.params.HttpParams): org.apache.http.cookie.CookieSpec;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module cookie {
					export abstract class CookieSpecBase extends org.apache.http.impl.cookie.AbstractCookieSpec {
						public static class: java.lang.Class<org.apache.http.impl.cookie.CookieSpecBase>;
						public constructor();
						public parse(param0: native.Array<org.apache.http.HeaderElement>, param1: org.apache.http.cookie.CookieOrigin): java.util.List<org.apache.http.cookie.Cookie>;
						public static getDefaultPath(param0: org.apache.http.cookie.CookieOrigin): string;
						public validate(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): void;
						public getVersionHeader(): org.apache.http.Header;
						public parse(param0: org.apache.http.Header, param1: org.apache.http.cookie.CookieOrigin): java.util.List<org.apache.http.cookie.Cookie>;
						public static getDefaultDomain(param0: org.apache.http.cookie.CookieOrigin): string;
						public getVersion(): number;
						public formatCookies(param0: java.util.List<org.apache.http.cookie.Cookie>): java.util.List<org.apache.http.Header>;
						public match(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): boolean;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module cookie {
					export class DateParseException extends java.lang.Exception {
						public static class: java.lang.Class<org.apache.http.impl.cookie.DateParseException>;
						public constructor();
						public constructor(param0: java.lang.Throwable);
						public constructor(param0: string, param1: java.lang.Throwable);
						public constructor(param0: string);
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module cookie {
					export class DateUtils extends java.lang.Object {
						public static class: java.lang.Class<org.apache.http.impl.cookie.DateUtils>;
						public static PATTERN_RFC1123: string;
						public static PATTERN_RFC1036: string;
						public static PATTERN_ASCTIME: string;
						public static GMT: java.util.TimeZone;
						public static parseDate(param0: string): java.util.Date;
						public static formatDate(param0: java.util.Date): string;
						public static parseDate(param0: string, param1: native.Array<string>, param2: java.util.Date): java.util.Date;
						public static parseDate(param0: string, param1: native.Array<string>): java.util.Date;
						public static formatDate(param0: java.util.Date, param1: string): string;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module cookie {
					export class NetscapeDomainHandler extends org.apache.http.impl.cookie.BasicDomainHandler {
						public static class: java.lang.Class<org.apache.http.impl.cookie.NetscapeDomainHandler>;
						public constructor();
						public validate(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): void;
						public parse(param0: org.apache.http.cookie.SetCookie, param1: string): void;
						public match(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): boolean;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module cookie {
					export class NetscapeDraftHeaderParser extends java.lang.Object {
						public static class: java.lang.Class<org.apache.http.impl.cookie.NetscapeDraftHeaderParser>;
						public static DEFAULT: org.apache.http.impl.cookie.NetscapeDraftHeaderParser;
						public constructor();
						public parseHeader(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.message.ParserCursor): org.apache.http.HeaderElement;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module cookie {
					export class NetscapeDraftSpec extends org.apache.http.impl.cookie.CookieSpecBase {
						public static class: java.lang.Class<org.apache.http.impl.cookie.NetscapeDraftSpec>;
						public static EXPIRES_PATTERN: string;
						public constructor();
						public parse(param0: native.Array<org.apache.http.HeaderElement>, param1: org.apache.http.cookie.CookieOrigin): java.util.List<org.apache.http.cookie.Cookie>;
						public getVersionHeader(): org.apache.http.Header;
						public validate(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): void;
						public parse(param0: org.apache.http.Header, param1: org.apache.http.cookie.CookieOrigin): java.util.List<org.apache.http.cookie.Cookie>;
						public getVersion(): number;
						public formatCookies(param0: java.util.List<org.apache.http.cookie.Cookie>): java.util.List<org.apache.http.Header>;
						public constructor(param0: native.Array<string>);
						public match(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): boolean;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module cookie {
					export class NetscapeDraftSpecFactory extends java.lang.Object implements org.apache.http.cookie.CookieSpecFactory {
						public static class: java.lang.Class<org.apache.http.impl.cookie.NetscapeDraftSpecFactory>;
						public constructor();
						public newInstance(param0: org.apache.http.params.HttpParams): org.apache.http.cookie.CookieSpec;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module cookie {
					export class RFC2109DomainHandler extends java.lang.Object implements org.apache.http.cookie.CookieAttributeHandler {
						public static class: java.lang.Class<org.apache.http.impl.cookie.RFC2109DomainHandler>;
						public constructor();
						public validate(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): void;
						public parse(param0: org.apache.http.cookie.SetCookie, param1: string): void;
						public match(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): boolean;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module cookie {
					export class RFC2109Spec extends org.apache.http.impl.cookie.CookieSpecBase {
						public static class: java.lang.Class<org.apache.http.impl.cookie.RFC2109Spec>;
						public formatCookieAsVer(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.cookie.Cookie, param2: number): void;
						public constructor();
						public parse(param0: native.Array<org.apache.http.HeaderElement>, param1: org.apache.http.cookie.CookieOrigin): java.util.List<org.apache.http.cookie.Cookie>;
						public formatParamAsVer(param0: org.apache.http.util.CharArrayBuffer, param1: string, param2: string, param3: number): void;
						public validate(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): void;
						public getVersionHeader(): org.apache.http.Header;
						public parse(param0: org.apache.http.Header, param1: org.apache.http.cookie.CookieOrigin): java.util.List<org.apache.http.cookie.Cookie>;
						public getVersion(): number;
						public formatCookies(param0: java.util.List<org.apache.http.cookie.Cookie>): java.util.List<org.apache.http.Header>;
						public match(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): boolean;
						public constructor(param0: native.Array<string>, param1: boolean);
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module cookie {
					export class RFC2109SpecFactory extends java.lang.Object implements org.apache.http.cookie.CookieSpecFactory {
						public static class: java.lang.Class<org.apache.http.impl.cookie.RFC2109SpecFactory>;
						public constructor();
						public newInstance(param0: org.apache.http.params.HttpParams): org.apache.http.cookie.CookieSpec;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module cookie {
					export class RFC2109VersionHandler extends org.apache.http.impl.cookie.AbstractCookieAttributeHandler {
						public static class: java.lang.Class<org.apache.http.impl.cookie.RFC2109VersionHandler>;
						public constructor();
						public validate(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): void;
						public parse(param0: org.apache.http.cookie.SetCookie, param1: string): void;
						public match(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): boolean;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module cookie {
					export class RFC2965CommentUrlAttributeHandler extends java.lang.Object implements org.apache.http.cookie.CookieAttributeHandler {
						public static class: java.lang.Class<org.apache.http.impl.cookie.RFC2965CommentUrlAttributeHandler>;
						public constructor();
						public validate(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): void;
						public parse(param0: org.apache.http.cookie.SetCookie, param1: string): void;
						public match(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): boolean;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module cookie {
					export class RFC2965DiscardAttributeHandler extends java.lang.Object implements org.apache.http.cookie.CookieAttributeHandler {
						public static class: java.lang.Class<org.apache.http.impl.cookie.RFC2965DiscardAttributeHandler>;
						public constructor();
						public validate(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): void;
						public parse(param0: org.apache.http.cookie.SetCookie, param1: string): void;
						public match(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): boolean;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module cookie {
					export class RFC2965DomainAttributeHandler extends java.lang.Object implements org.apache.http.cookie.CookieAttributeHandler {
						public static class: java.lang.Class<org.apache.http.impl.cookie.RFC2965DomainAttributeHandler>;
						public domainMatch(param0: string, param1: string): boolean;
						public constructor();
						public validate(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): void;
						public parse(param0: org.apache.http.cookie.SetCookie, param1: string): void;
						public match(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): boolean;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module cookie {
					export class RFC2965PortAttributeHandler extends java.lang.Object implements org.apache.http.cookie.CookieAttributeHandler {
						public static class: java.lang.Class<org.apache.http.impl.cookie.RFC2965PortAttributeHandler>;
						public constructor();
						public validate(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): void;
						public parse(param0: org.apache.http.cookie.SetCookie, param1: string): void;
						public match(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): boolean;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module cookie {
					export class RFC2965Spec extends org.apache.http.impl.cookie.RFC2109Spec {
						public static class: java.lang.Class<org.apache.http.impl.cookie.RFC2965Spec>;
						public formatCookieAsVer(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.cookie.Cookie, param2: number): void;
						public constructor();
						public parse(param0: native.Array<org.apache.http.HeaderElement>, param1: org.apache.http.cookie.CookieOrigin): java.util.List<org.apache.http.cookie.Cookie>;
						public validate(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): void;
						public getVersionHeader(): org.apache.http.Header;
						public parse(param0: org.apache.http.Header, param1: org.apache.http.cookie.CookieOrigin): java.util.List<org.apache.http.cookie.Cookie>;
						public getVersion(): number;
						public formatCookies(param0: java.util.List<org.apache.http.cookie.Cookie>): java.util.List<org.apache.http.Header>;
						public match(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): boolean;
						public constructor(param0: native.Array<string>, param1: boolean);
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module cookie {
					export class RFC2965SpecFactory extends java.lang.Object implements org.apache.http.cookie.CookieSpecFactory {
						public static class: java.lang.Class<org.apache.http.impl.cookie.RFC2965SpecFactory>;
						public constructor();
						public newInstance(param0: org.apache.http.params.HttpParams): org.apache.http.cookie.CookieSpec;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module cookie {
					export class RFC2965VersionAttributeHandler extends java.lang.Object implements org.apache.http.cookie.CookieAttributeHandler {
						public static class: java.lang.Class<org.apache.http.impl.cookie.RFC2965VersionAttributeHandler>;
						public constructor();
						public validate(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): void;
						public parse(param0: org.apache.http.cookie.SetCookie, param1: string): void;
						public match(param0: org.apache.http.cookie.Cookie, param1: org.apache.http.cookie.CookieOrigin): boolean;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module entity {
					export class EntityDeserializer extends java.lang.Object {
						public static class: java.lang.Class<org.apache.http.impl.entity.EntityDeserializer>;
						public constructor(param0: org.apache.http.entity.ContentLengthStrategy);
						public deserialize(param0: org.apache.http.io.SessionInputBuffer, param1: org.apache.http.HttpMessage): org.apache.http.HttpEntity;
						public doDeserialize(param0: org.apache.http.io.SessionInputBuffer, param1: org.apache.http.HttpMessage): org.apache.http.entity.BasicHttpEntity;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module entity {
					export class EntitySerializer extends java.lang.Object {
						public static class: java.lang.Class<org.apache.http.impl.entity.EntitySerializer>;
						public constructor(param0: org.apache.http.entity.ContentLengthStrategy);
						public doSerialize(param0: org.apache.http.io.SessionOutputBuffer, param1: org.apache.http.HttpMessage): java.io.OutputStream;
						public serialize(param0: org.apache.http.io.SessionOutputBuffer, param1: org.apache.http.HttpMessage, param2: org.apache.http.HttpEntity): void;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module entity {
					export class LaxContentLengthStrategy extends java.lang.Object implements org.apache.http.entity.ContentLengthStrategy {
						public static class: java.lang.Class<org.apache.http.impl.entity.LaxContentLengthStrategy>;
						public constructor();
						public determineLength(param0: org.apache.http.HttpMessage): number;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module entity {
					export class StrictContentLengthStrategy extends java.lang.Object implements org.apache.http.entity.ContentLengthStrategy {
						public static class: java.lang.Class<org.apache.http.impl.entity.StrictContentLengthStrategy>;
						public constructor();
						public determineLength(param0: org.apache.http.HttpMessage): number;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module io {
					export abstract class AbstractMessageParser extends java.lang.Object implements org.apache.http.io.HttpMessageParser {
						public static class: java.lang.Class<org.apache.http.impl.io.AbstractMessageParser>;
						public lineParser: org.apache.http.message.LineParser;
						public parseHead(param0: org.apache.http.io.SessionInputBuffer): org.apache.http.HttpMessage;
						public static parseHeaders(param0: org.apache.http.io.SessionInputBuffer, param1: number, param2: number, param3: org.apache.http.message.LineParser): native.Array<org.apache.http.Header>;
						public parse(): org.apache.http.HttpMessage;
						public constructor(param0: org.apache.http.io.SessionInputBuffer, param1: org.apache.http.message.LineParser, param2: org.apache.http.params.HttpParams);
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module io {
					export abstract class AbstractMessageWriter extends java.lang.Object implements org.apache.http.io.HttpMessageWriter {
						public static class: java.lang.Class<org.apache.http.impl.io.AbstractMessageWriter>;
						public sessionBuffer: org.apache.http.io.SessionOutputBuffer;
						public lineBuf: org.apache.http.util.CharArrayBuffer;
						public lineFormatter: org.apache.http.message.LineFormatter;
						public constructor(param0: org.apache.http.io.SessionOutputBuffer, param1: org.apache.http.message.LineFormatter, param2: org.apache.http.params.HttpParams);
						public write(param0: org.apache.http.HttpMessage): void;
						public writeHeadLine(param0: org.apache.http.HttpMessage): void;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module io {
					export abstract class AbstractSessionInputBuffer extends java.lang.Object implements org.apache.http.io.SessionInputBuffer {
						public static class: java.lang.Class<org.apache.http.impl.io.AbstractSessionInputBuffer>;
						public init(param0: java.io.InputStream, param1: number, param2: org.apache.http.params.HttpParams): void;
						public read(): number;
						public constructor();
						public readLine(param0: org.apache.http.util.CharArrayBuffer): number;
						public hasBufferedData(): boolean;
						public read(param0: native.Array<number>): number;
						public fillBuffer(): number;
						public read(param0: native.Array<number>, param1: number, param2: number): number;
						public getMetrics(): org.apache.http.io.HttpTransportMetrics;
						public readLine(): string;
						public isDataAvailable(param0: number): boolean;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module io {
					export abstract class AbstractSessionOutputBuffer extends java.lang.Object implements org.apache.http.io.SessionOutputBuffer {
						public static class: java.lang.Class<org.apache.http.impl.io.AbstractSessionOutputBuffer>;
						public constructor();
						public write(param0: number): void;
						public init(param0: java.io.OutputStream, param1: number, param2: org.apache.http.params.HttpParams): void;
						public flushBuffer(): void;
						public write(param0: native.Array<number>, param1: number, param2: number): void;
						public flush(): void;
						public writeLine(param0: string): void;
						public write(param0: native.Array<number>): void;
						public writeLine(param0: org.apache.http.util.CharArrayBuffer): void;
						public getMetrics(): org.apache.http.io.HttpTransportMetrics;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module io {
					export class ChunkedInputStream extends java.io.InputStream {
						public static class: java.lang.Class<org.apache.http.impl.io.ChunkedInputStream>;
						public read(): number;
						public constructor();
						public read(param0: native.Array<number>): number;
						public close(): void;
						public getFooters(): native.Array<org.apache.http.Header>;
						public constructor(param0: org.apache.http.io.SessionInputBuffer);
						public read(param0: native.Array<number>, param1: number, param2: number): number;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module io {
					export class ChunkedOutputStream extends java.io.OutputStream {
						public static class: java.lang.Class<org.apache.http.impl.io.ChunkedOutputStream>;
						public constructor();
						public writeClosingChunk(): void;
						public close(): void;
						public finish(): void;
						public write(param0: number): void;
						public write(param0: native.Array<number>, param1: number, param2: number): void;
						public flush(): void;
						public constructor(param0: org.apache.http.io.SessionOutputBuffer, param1: number);
						public write(param0: native.Array<number>): void;
						public flushCache(): void;
						public flushCacheWithAppend(param0: native.Array<number>, param1: number, param2: number): void;
						public constructor(param0: org.apache.http.io.SessionOutputBuffer);
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module io {
					export class ContentLengthInputStream extends java.io.InputStream {
						public static class: java.lang.Class<org.apache.http.impl.io.ContentLengthInputStream>;
						public read(): number;
						public skip(param0: number): number;
						public constructor();
						public constructor(param0: org.apache.http.io.SessionInputBuffer, param1: number);
						public read(param0: native.Array<number>): number;
						public close(): void;
						public read(param0: native.Array<number>, param1: number, param2: number): number;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module io {
					export class ContentLengthOutputStream extends java.io.OutputStream {
						public static class: java.lang.Class<org.apache.http.impl.io.ContentLengthOutputStream>;
						public constructor();
						public close(): void;
						public write(param0: number): void;
						public write(param0: native.Array<number>, param1: number, param2: number): void;
						public flush(): void;
						public constructor(param0: org.apache.http.io.SessionOutputBuffer, param1: number);
						public write(param0: native.Array<number>): void;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module io {
					export class HttpRequestParser extends org.apache.http.impl.io.AbstractMessageParser {
						public static class: java.lang.Class<org.apache.http.impl.io.HttpRequestParser>;
						public constructor(param0: org.apache.http.io.SessionInputBuffer, param1: org.apache.http.message.LineParser, param2: org.apache.http.HttpRequestFactory, param3: org.apache.http.params.HttpParams);
						public parseHead(param0: org.apache.http.io.SessionInputBuffer): org.apache.http.HttpMessage;
						public parse(): org.apache.http.HttpMessage;
						public constructor(param0: org.apache.http.io.SessionInputBuffer, param1: org.apache.http.message.LineParser, param2: org.apache.http.params.HttpParams);
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module io {
					export class HttpRequestWriter extends org.apache.http.impl.io.AbstractMessageWriter {
						public static class: java.lang.Class<org.apache.http.impl.io.HttpRequestWriter>;
						public constructor(param0: org.apache.http.io.SessionOutputBuffer, param1: org.apache.http.message.LineFormatter, param2: org.apache.http.params.HttpParams);
						public write(param0: org.apache.http.HttpMessage): void;
						public writeHeadLine(param0: org.apache.http.HttpMessage): void;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module io {
					export class HttpResponseParser extends org.apache.http.impl.io.AbstractMessageParser {
						public static class: java.lang.Class<org.apache.http.impl.io.HttpResponseParser>;
						public parseHead(param0: org.apache.http.io.SessionInputBuffer): org.apache.http.HttpMessage;
						public parse(): org.apache.http.HttpMessage;
						public constructor(param0: org.apache.http.io.SessionInputBuffer, param1: org.apache.http.message.LineParser, param2: org.apache.http.HttpResponseFactory, param3: org.apache.http.params.HttpParams);
						public constructor(param0: org.apache.http.io.SessionInputBuffer, param1: org.apache.http.message.LineParser, param2: org.apache.http.params.HttpParams);
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module io {
					export class HttpResponseWriter extends org.apache.http.impl.io.AbstractMessageWriter {
						public static class: java.lang.Class<org.apache.http.impl.io.HttpResponseWriter>;
						public constructor(param0: org.apache.http.io.SessionOutputBuffer, param1: org.apache.http.message.LineFormatter, param2: org.apache.http.params.HttpParams);
						public write(param0: org.apache.http.HttpMessage): void;
						public writeHeadLine(param0: org.apache.http.HttpMessage): void;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module io {
					export class HttpTransportMetricsImpl extends java.lang.Object implements org.apache.http.io.HttpTransportMetrics {
						public static class: java.lang.Class<org.apache.http.impl.io.HttpTransportMetricsImpl>;
						public constructor();
						public setBytesTransferred(param0: number): void;
						public getBytesTransferred(): number;
						public incrementBytesTransferred(param0: number): void;
						public reset(): void;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module io {
					export class IdentityInputStream extends java.io.InputStream {
						public static class: java.lang.Class<org.apache.http.impl.io.IdentityInputStream>;
						public read(): number;
						public constructor();
						public read(param0: native.Array<number>): number;
						public close(): void;
						public constructor(param0: org.apache.http.io.SessionInputBuffer);
						public read(param0: native.Array<number>, param1: number, param2: number): number;
						public available(): number;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module io {
					export class IdentityOutputStream extends java.io.OutputStream {
						public static class: java.lang.Class<org.apache.http.impl.io.IdentityOutputStream>;
						public constructor();
						public close(): void;
						public write(param0: number): void;
						public write(param0: native.Array<number>, param1: number, param2: number): void;
						public flush(): void;
						public write(param0: native.Array<number>): void;
						public constructor(param0: org.apache.http.io.SessionOutputBuffer);
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module io {
					export class SocketInputBuffer extends org.apache.http.impl.io.AbstractSessionInputBuffer {
						public static class: java.lang.Class<org.apache.http.impl.io.SocketInputBuffer>;
						public read(): number;
						public constructor();
						public readLine(param0: org.apache.http.util.CharArrayBuffer): number;
						public read(param0: native.Array<number>): number;
						public constructor(param0: java.net.Socket, param1: number, param2: org.apache.http.params.HttpParams);
						public read(param0: native.Array<number>, param1: number, param2: number): number;
						public getMetrics(): org.apache.http.io.HttpTransportMetrics;
						public isDataAvailable(param0: number): boolean;
						public readLine(): string;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module impl {
				export module io {
					export class SocketOutputBuffer extends org.apache.http.impl.io.AbstractSessionOutputBuffer {
						public static class: java.lang.Class<org.apache.http.impl.io.SocketOutputBuffer>;
						public constructor();
						public write(param0: number): void;
						public write(param0: native.Array<number>, param1: number, param2: number): void;
						public writeLine(param0: string): void;
						public flush(): void;
						public constructor(param0: java.net.Socket, param1: number, param2: org.apache.http.params.HttpParams);
						public write(param0: native.Array<number>): void;
						public writeLine(param0: org.apache.http.util.CharArrayBuffer): void;
						public getMetrics(): org.apache.http.io.HttpTransportMetrics;
					}
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module io {
				export class HttpMessageParser extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.io.HttpMessageParser>;
					/**
					 * Constructs a new instance of the org.apache.http.io.HttpMessageParser interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						parse(): org.apache.http.HttpMessage;
					});
					public constructor();
					public parse(): org.apache.http.HttpMessage;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module io {
				export class HttpMessageWriter extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.io.HttpMessageWriter>;
					/**
					 * Constructs a new instance of the org.apache.http.io.HttpMessageWriter interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						write(param0: org.apache.http.HttpMessage): void;
					});
					public constructor();
					public write(param0: org.apache.http.HttpMessage): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module io {
				export class HttpTransportMetrics extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.io.HttpTransportMetrics>;
					/**
					 * Constructs a new instance of the org.apache.http.io.HttpTransportMetrics interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						getBytesTransferred(): number;
						reset(): void;
					});
					public constructor();
					public reset(): void;
					public getBytesTransferred(): number;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module io {
				export class SessionInputBuffer extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.io.SessionInputBuffer>;
					/**
					 * Constructs a new instance of the org.apache.http.io.SessionInputBuffer interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						read(param0: native.Array<number>, param1: number, param2: number): number;
						read(param0: native.Array<number>): number;
						read(): number;
						readLine(param0: org.apache.http.util.CharArrayBuffer): number;
						readLine(): string;
						isDataAvailable(param0: number): boolean;
						getMetrics(): org.apache.http.io.HttpTransportMetrics;
					});
					public constructor();
					public readLine(): string;
					public read(param0: native.Array<number>, param1: number, param2: number): number;
					public read(): number;
					public read(param0: native.Array<number>): number;
					public getMetrics(): org.apache.http.io.HttpTransportMetrics;
					public readLine(param0: org.apache.http.util.CharArrayBuffer): number;
					public isDataAvailable(param0: number): boolean;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module io {
				export class SessionOutputBuffer extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.io.SessionOutputBuffer>;
					/**
					 * Constructs a new instance of the org.apache.http.io.SessionOutputBuffer interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						write(param0: native.Array<number>, param1: number, param2: number): void;
						write(param0: native.Array<number>): void;
						write(param0: number): void;
						writeLine(param0: string): void;
						writeLine(param0: org.apache.http.util.CharArrayBuffer): void;
						flush(): void;
						getMetrics(): org.apache.http.io.HttpTransportMetrics;
					});
					public constructor();
					public write(param0: native.Array<number>, param1: number, param2: number): void;
					public writeLine(param0: org.apache.http.util.CharArrayBuffer): void;
					public write(param0: native.Array<number>): void;
					public writeLine(param0: string): void;
					public getMetrics(): org.apache.http.io.HttpTransportMetrics;
					public write(param0: number): void;
					public flush(): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module message {
				export abstract class AbstractHttpMessage extends java.lang.Object implements org.apache.http.HttpMessage {
					public static class: java.lang.Class<org.apache.http.message.AbstractHttpMessage>;
					public headergroup: org.apache.http.message.HeaderGroup;
					public params: org.apache.http.params.HttpParams;
					public setHeader(param0: org.apache.http.Header): void;
					public setParams(param0: org.apache.http.params.HttpParams): void;
					public headerIterator(param0: string): org.apache.http.HeaderIterator;
					public containsHeader(param0: string): boolean;
					public constructor(param0: org.apache.http.params.HttpParams);
					public removeHeaders(param0: string): void;
					public headerIterator(): org.apache.http.HeaderIterator;
					public setHeaders(param0: native.Array<org.apache.http.Header>): void;
					public getHeaders(param0: string): native.Array<org.apache.http.Header>;
					public getLastHeader(param0: string): org.apache.http.Header;
					public getAllHeaders(): native.Array<org.apache.http.Header>;
					public getFirstHeader(param0: string): org.apache.http.Header;
					public setHeader(param0: string, param1: string): void;
					public getParams(): org.apache.http.params.HttpParams;
					public addHeader(param0: org.apache.http.Header): void;
					public constructor();
					public removeHeader(param0: org.apache.http.Header): void;
					public getProtocolVersion(): org.apache.http.ProtocolVersion;
					public addHeader(param0: string, param1: string): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module message {
				export class BasicHeader extends java.lang.Object implements org.apache.http.Header, java.lang.Cloneable {
					public static class: java.lang.Class<org.apache.http.message.BasicHeader>;
					public constructor(param0: string, param1: string);
					public getValue(): string;
					public toString(): string;
					public clone(): any;
					public getName(): string;
					public getElements(): native.Array<org.apache.http.HeaderElement>;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module message {
				export class BasicHeaderElement extends java.lang.Object implements org.apache.http.HeaderElement, java.lang.Cloneable {
					public static class: java.lang.Class<org.apache.http.message.BasicHeaderElement>;
					public constructor(param0: string, param1: string);
					public getParameters(): native.Array<org.apache.http.NameValuePair>;
					public equals(param0: any): boolean;
					public getParameterByName(param0: string): org.apache.http.NameValuePair;
					public getValue(): string;
					public toString(): string;
					public clone(): any;
					public getName(): string;
					public constructor(param0: string, param1: string, param2: native.Array<org.apache.http.NameValuePair>);
					public getParameter(param0: number): org.apache.http.NameValuePair;
					public getParameterCount(): number;
					public hashCode(): number;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module message {
				export class BasicHeaderElementIterator extends java.lang.Object implements org.apache.http.HeaderElementIterator {
					public static class: java.lang.Class<org.apache.http.message.BasicHeaderElementIterator>;
					public next(): any;
					public constructor(param0: org.apache.http.HeaderIterator);
					public nextElement(): org.apache.http.HeaderElement;
					public constructor(param0: org.apache.http.HeaderIterator, param1: org.apache.http.message.HeaderValueParser);
					public hasNext(): boolean;
					public remove(): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module message {
				export class BasicHeaderIterator extends java.lang.Object implements org.apache.http.HeaderIterator {
					public static class: java.lang.Class<org.apache.http.message.BasicHeaderIterator>;
					public allHeaders: native.Array<org.apache.http.Header>;
					public currentIndex: number;
					public headerName: string;
					public next(): any;
					public constructor(param0: native.Array<org.apache.http.Header>, param1: string);
					public findNext(param0: number): number;
					public nextHeader(): org.apache.http.Header;
					public filterHeader(param0: number): boolean;
					public hasNext(): boolean;
					public remove(): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module message {
				export class BasicHeaderValueFormatter extends java.lang.Object implements org.apache.http.message.HeaderValueFormatter {
					public static class: java.lang.Class<org.apache.http.message.BasicHeaderValueFormatter>;
					public static DEFAULT: org.apache.http.message.BasicHeaderValueFormatter;
					public static SEPARATORS: string;
					public static UNSAFE_CHARS: string;
					public formatParameters(param0: org.apache.http.util.CharArrayBuffer, param1: native.Array<org.apache.http.NameValuePair>, param2: boolean): org.apache.http.util.CharArrayBuffer;
					public static formatParameters(param0: native.Array<org.apache.http.NameValuePair>, param1: boolean, param2: org.apache.http.message.HeaderValueFormatter): string;
					public estimateNameValuePairLen(param0: org.apache.http.NameValuePair): number;
					public formatHeaderElement(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.HeaderElement, param2: boolean): org.apache.http.util.CharArrayBuffer;
					public isUnsafe(param0: string): boolean;
					public static formatNameValuePair(param0: org.apache.http.NameValuePair, param1: boolean, param2: org.apache.http.message.HeaderValueFormatter): string;
					public formatNameValuePair(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.NameValuePair, param2: boolean): org.apache.http.util.CharArrayBuffer;
					public static formatHeaderElement(param0: org.apache.http.HeaderElement, param1: boolean, param2: org.apache.http.message.HeaderValueFormatter): string;
					public estimateHeaderElementLen(param0: org.apache.http.HeaderElement): number;
					public doFormatValue(param0: org.apache.http.util.CharArrayBuffer, param1: string, param2: boolean): void;
					public constructor();
					public estimateParametersLen(param0: native.Array<org.apache.http.NameValuePair>): number;
					public isSeparator(param0: string): boolean;
					public static formatElements(param0: native.Array<org.apache.http.HeaderElement>, param1: boolean, param2: org.apache.http.message.HeaderValueFormatter): string;
					public estimateElementsLen(param0: native.Array<org.apache.http.HeaderElement>): number;
					public formatElements(param0: org.apache.http.util.CharArrayBuffer, param1: native.Array<org.apache.http.HeaderElement>, param2: boolean): org.apache.http.util.CharArrayBuffer;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module message {
				export class BasicHeaderValueParser extends java.lang.Object implements org.apache.http.message.HeaderValueParser {
					public static class: java.lang.Class<org.apache.http.message.BasicHeaderValueParser>;
					public static DEFAULT: org.apache.http.message.BasicHeaderValueParser;
					public parseParameters(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.message.ParserCursor): native.Array<org.apache.http.NameValuePair>;
					public createHeaderElement(param0: string, param1: string, param2: native.Array<org.apache.http.NameValuePair>): org.apache.http.HeaderElement;
					public static parseNameValuePair(param0: string, param1: org.apache.http.message.HeaderValueParser): org.apache.http.NameValuePair;
					public constructor();
					public parseHeaderElement(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.message.ParserCursor): org.apache.http.HeaderElement;
					public parseNameValuePair(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.message.ParserCursor): org.apache.http.NameValuePair;
					public parseNameValuePair(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.message.ParserCursor, param2: native.Array<string>): org.apache.http.NameValuePair;
					public parseElements(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.message.ParserCursor): native.Array<org.apache.http.HeaderElement>;
					public createNameValuePair(param0: string, param1: string): org.apache.http.NameValuePair;
					public static parseHeaderElement(param0: string, param1: org.apache.http.message.HeaderValueParser): org.apache.http.HeaderElement;
					public static parseParameters(param0: string, param1: org.apache.http.message.HeaderValueParser): native.Array<org.apache.http.NameValuePair>;
					public static parseElements(param0: string, param1: org.apache.http.message.HeaderValueParser): native.Array<org.apache.http.HeaderElement>;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module message {
				export class BasicHttpEntityEnclosingRequest extends org.apache.http.message.BasicHttpRequest implements org.apache.http.HttpEntityEnclosingRequest {
					public static class: java.lang.Class<org.apache.http.message.BasicHttpEntityEnclosingRequest>;
					public headerIterator(param0: string): org.apache.http.HeaderIterator;
					public constructor(param0: org.apache.http.RequestLine);
					public constructor(param0: string, param1: string, param2: org.apache.http.ProtocolVersion);
					public getRequestLine(): org.apache.http.RequestLine;
					public headerIterator(): org.apache.http.HeaderIterator;
					public expectContinue(): boolean;
					public getEntity(): org.apache.http.HttpEntity;
					public getAllHeaders(): native.Array<org.apache.http.Header>;
					public getFirstHeader(param0: string): org.apache.http.Header;
					public getParams(): org.apache.http.params.HttpParams;
					public constructor(param0: string, param1: string);
					public addHeader(param0: org.apache.http.Header): void;
					public constructor();
					public getProtocolVersion(): org.apache.http.ProtocolVersion;
					public removeHeader(param0: org.apache.http.Header): void;
					public addHeader(param0: string, param1: string): void;
					public setHeader(param0: org.apache.http.Header): void;
					public setParams(param0: org.apache.http.params.HttpParams): void;
					public containsHeader(param0: string): boolean;
					public constructor(param0: org.apache.http.params.HttpParams);
					public removeHeaders(param0: string): void;
					public setHeaders(param0: native.Array<org.apache.http.Header>): void;
					public getHeaders(param0: string): native.Array<org.apache.http.Header>;
					public getLastHeader(param0: string): org.apache.http.Header;
					public setHeader(param0: string, param1: string): void;
					public setEntity(param0: org.apache.http.HttpEntity): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module message {
				export class BasicHttpRequest extends org.apache.http.message.AbstractHttpMessage implements org.apache.http.HttpRequest {
					public static class: java.lang.Class<org.apache.http.message.BasicHttpRequest>;
					public setHeader(param0: org.apache.http.Header): void;
					public setParams(param0: org.apache.http.params.HttpParams): void;
					public headerIterator(param0: string): org.apache.http.HeaderIterator;
					public constructor(param0: org.apache.http.RequestLine);
					public containsHeader(param0: string): boolean;
					public constructor(param0: org.apache.http.params.HttpParams);
					public constructor(param0: string, param1: string, param2: org.apache.http.ProtocolVersion);
					public removeHeaders(param0: string): void;
					public getRequestLine(): org.apache.http.RequestLine;
					public headerIterator(): org.apache.http.HeaderIterator;
					public setHeaders(param0: native.Array<org.apache.http.Header>): void;
					public getHeaders(param0: string): native.Array<org.apache.http.Header>;
					public getLastHeader(param0: string): org.apache.http.Header;
					public getAllHeaders(): native.Array<org.apache.http.Header>;
					public getFirstHeader(param0: string): org.apache.http.Header;
					public setHeader(param0: string, param1: string): void;
					public getParams(): org.apache.http.params.HttpParams;
					public constructor(param0: string, param1: string);
					public addHeader(param0: org.apache.http.Header): void;
					public constructor();
					public getProtocolVersion(): org.apache.http.ProtocolVersion;
					public removeHeader(param0: org.apache.http.Header): void;
					public addHeader(param0: string, param1: string): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module message {
				export class BasicHttpResponse extends org.apache.http.message.AbstractHttpMessage implements org.apache.http.HttpResponse {
					public static class: java.lang.Class<org.apache.http.message.BasicHttpResponse>;
					public headerIterator(param0: string): org.apache.http.HeaderIterator;
					public getReason(param0: number): string;
					public headerIterator(): org.apache.http.HeaderIterator;
					public constructor(param0: org.apache.http.ProtocolVersion, param1: number, param2: string);
					public getEntity(): org.apache.http.HttpEntity;
					public getStatusLine(): org.apache.http.StatusLine;
					public getAllHeaders(): native.Array<org.apache.http.Header>;
					public getLocale(): java.util.Locale;
					public getFirstHeader(param0: string): org.apache.http.Header;
					public getParams(): org.apache.http.params.HttpParams;
					public addHeader(param0: org.apache.http.Header): void;
					public constructor();
					public setReasonPhrase(param0: string): void;
					public constructor(param0: org.apache.http.StatusLine, param1: org.apache.http.ReasonPhraseCatalog, param2: java.util.Locale);
					public getProtocolVersion(): org.apache.http.ProtocolVersion;
					public removeHeader(param0: org.apache.http.Header): void;
					public setStatusCode(param0: number): void;
					public addHeader(param0: string, param1: string): void;
					public constructor(param0: org.apache.http.StatusLine);
					public setStatusLine(param0: org.apache.http.StatusLine): void;
					public setStatusLine(param0: org.apache.http.ProtocolVersion, param1: number): void;
					public setHeader(param0: org.apache.http.Header): void;
					public setParams(param0: org.apache.http.params.HttpParams): void;
					public containsHeader(param0: string): boolean;
					public constructor(param0: org.apache.http.params.HttpParams);
					public removeHeaders(param0: string): void;
					public setLocale(param0: java.util.Locale): void;
					public setStatusLine(param0: org.apache.http.ProtocolVersion, param1: number, param2: string): void;
					public setHeaders(param0: native.Array<org.apache.http.Header>): void;
					public getHeaders(param0: string): native.Array<org.apache.http.Header>;
					public getLastHeader(param0: string): org.apache.http.Header;
					public setHeader(param0: string, param1: string): void;
					public setEntity(param0: org.apache.http.HttpEntity): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module message {
				export class BasicLineFormatter extends java.lang.Object implements org.apache.http.message.LineFormatter {
					public static class: java.lang.Class<org.apache.http.message.BasicLineFormatter>;
					public static DEFAULT: org.apache.http.message.BasicLineFormatter;
					public formatHeader(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.Header): org.apache.http.util.CharArrayBuffer;
					public doFormatRequestLine(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.RequestLine): void;
					public formatRequestLine(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.RequestLine): org.apache.http.util.CharArrayBuffer;
					public doFormatHeader(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.Header): void;
					public doFormatStatusLine(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.StatusLine): void;
					public static formatProtocolVersion(param0: org.apache.http.ProtocolVersion, param1: org.apache.http.message.LineFormatter): string;
					public formatStatusLine(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.StatusLine): org.apache.http.util.CharArrayBuffer;
					public appendProtocolVersion(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.ProtocolVersion): org.apache.http.util.CharArrayBuffer;
					public initBuffer(param0: org.apache.http.util.CharArrayBuffer): org.apache.http.util.CharArrayBuffer;
					public constructor();
					public static formatRequestLine(param0: org.apache.http.RequestLine, param1: org.apache.http.message.LineFormatter): string;
					public estimateProtocolVersionLen(param0: org.apache.http.ProtocolVersion): number;
					public static formatStatusLine(param0: org.apache.http.StatusLine, param1: org.apache.http.message.LineFormatter): string;
					public static formatHeader(param0: org.apache.http.Header, param1: org.apache.http.message.LineFormatter): string;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module message {
				export class BasicLineParser extends java.lang.Object implements org.apache.http.message.LineParser {
					public static class: java.lang.Class<org.apache.http.message.BasicLineParser>;
					public static DEFAULT: org.apache.http.message.BasicLineParser;
					public protocol: org.apache.http.ProtocolVersion;
					public constructor(param0: org.apache.http.ProtocolVersion);
					public createStatusLine(param0: org.apache.http.ProtocolVersion, param1: number, param2: string): org.apache.http.StatusLine;
					public static parseRequestLine(param0: string, param1: org.apache.http.message.LineParser): org.apache.http.RequestLine;
					public createProtocolVersion(param0: number, param1: number): org.apache.http.ProtocolVersion;
					public static parseProtocolVersion(param0: string, param1: org.apache.http.message.LineParser): org.apache.http.ProtocolVersion;
					public parseRequestLine(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.message.ParserCursor): org.apache.http.RequestLine;
					public parseStatusLine(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.message.ParserCursor): org.apache.http.StatusLine;
					public static parseHeader(param0: string, param1: org.apache.http.message.LineParser): org.apache.http.Header;
					public skipWhitespace(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.message.ParserCursor): void;
					public static parseStatusLine(param0: string, param1: org.apache.http.message.LineParser): org.apache.http.StatusLine;
					public constructor();
					public hasProtocolVersion(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.message.ParserCursor): boolean;
					public createRequestLine(param0: string, param1: string, param2: org.apache.http.ProtocolVersion): org.apache.http.RequestLine;
					public parseHeader(param0: org.apache.http.util.CharArrayBuffer): org.apache.http.Header;
					public parseProtocolVersion(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.message.ParserCursor): org.apache.http.ProtocolVersion;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module message {
				export class BasicListHeaderIterator extends java.lang.Object implements org.apache.http.HeaderIterator {
					public static class: java.lang.Class<org.apache.http.message.BasicListHeaderIterator>;
					public allHeaders: java.util.List<any>;
					public currentIndex: number;
					public lastIndex: number;
					public headerName: string;
					public next(): any;
					public findNext(param0: number): number;
					public nextHeader(): org.apache.http.Header;
					public constructor(param0: java.util.List<any>, param1: string);
					public filterHeader(param0: number): boolean;
					public hasNext(): boolean;
					public remove(): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module message {
				export class BasicNameValuePair extends java.lang.Object implements org.apache.http.NameValuePair, java.lang.Cloneable {
					public static class: java.lang.Class<org.apache.http.message.BasicNameValuePair>;
					public constructor(param0: string, param1: string);
					public equals(param0: any): boolean;
					public getValue(): string;
					public toString(): string;
					public clone(): any;
					public getName(): string;
					public hashCode(): number;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module message {
				export class BasicRequestLine extends java.lang.Object implements org.apache.http.RequestLine, java.lang.Cloneable {
					public static class: java.lang.Class<org.apache.http.message.BasicRequestLine>;
					public toString(): string;
					public clone(): any;
					public constructor(param0: string, param1: string, param2: org.apache.http.ProtocolVersion);
					public getProtocolVersion(): org.apache.http.ProtocolVersion;
					public getUri(): string;
					public getMethod(): string;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module message {
				export class BasicStatusLine extends java.lang.Object implements org.apache.http.StatusLine, java.lang.Cloneable {
					public static class: java.lang.Class<org.apache.http.message.BasicStatusLine>;
					public getStatusCode(): number;
					public toString(): string;
					public clone(): any;
					public getReasonPhrase(): string;
					public getProtocolVersion(): org.apache.http.ProtocolVersion;
					public constructor(param0: org.apache.http.ProtocolVersion, param1: number, param2: string);
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module message {
				export class BasicTokenIterator extends java.lang.Object implements org.apache.http.TokenIterator {
					public static class: java.lang.Class<org.apache.http.message.BasicTokenIterator>;
					public static HTTP_SEPARATORS: string;
					public headerIt: org.apache.http.HeaderIterator;
					public currentHeader: string;
					public currentToken: string;
					public searchPos: number;
					public isTokenSeparator(param0: string): boolean;
					public isHttpSeparator(param0: string): boolean;
					public next(): any;
					public createToken(param0: string, param1: number, param2: number): string;
					public findTokenStart(param0: number): number;
					public nextToken(): string;
					public findTokenSeparator(param0: number): number;
					public hasNext(): boolean;
					public remove(): void;
					public isWhitespace(param0: string): boolean;
					public findNext(param0: number): number;
					public constructor(param0: org.apache.http.HeaderIterator);
					public findTokenEnd(param0: number): number;
					public isTokenChar(param0: string): boolean;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module message {
				export class BufferedHeader extends java.lang.Object implements org.apache.http.FormattedHeader, java.lang.Cloneable {
					public static class: java.lang.Class<org.apache.http.message.BufferedHeader>;
					public getValuePos(): number;
					public getValue(): string;
					public toString(): string;
					public clone(): any;
					public getName(): string;
					public constructor(param0: org.apache.http.util.CharArrayBuffer);
					public getBuffer(): org.apache.http.util.CharArrayBuffer;
					public getElements(): native.Array<org.apache.http.HeaderElement>;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module message {
				export class HeaderGroup extends java.lang.Object implements java.lang.Cloneable {
					public static class: java.lang.Class<org.apache.http.message.HeaderGroup>;
					public containsHeader(param0: string): boolean;
					public getCondensedHeader(param0: string): org.apache.http.Header;
					public copy(): org.apache.http.message.HeaderGroup;
					public iterator(param0: string): org.apache.http.HeaderIterator;
					public updateHeader(param0: org.apache.http.Header): void;
					public setHeaders(param0: native.Array<org.apache.http.Header>): void;
					public iterator(): org.apache.http.HeaderIterator;
					public getHeaders(param0: string): native.Array<org.apache.http.Header>;
					public getLastHeader(param0: string): org.apache.http.Header;
					public getAllHeaders(): native.Array<org.apache.http.Header>;
					public getFirstHeader(param0: string): org.apache.http.Header;
					public clone(): any;
					public addHeader(param0: org.apache.http.Header): void;
					public constructor();
					public clear(): void;
					public removeHeader(param0: org.apache.http.Header): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module message {
				export class HeaderValueFormatter extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.message.HeaderValueFormatter>;
					/**
					 * Constructs a new instance of the org.apache.http.message.HeaderValueFormatter interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						formatElements(param0: org.apache.http.util.CharArrayBuffer, param1: native.Array<org.apache.http.HeaderElement>, param2: boolean): org.apache.http.util.CharArrayBuffer;
						formatHeaderElement(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.HeaderElement, param2: boolean): org.apache.http.util.CharArrayBuffer;
						formatParameters(param0: org.apache.http.util.CharArrayBuffer, param1: native.Array<org.apache.http.NameValuePair>, param2: boolean): org.apache.http.util.CharArrayBuffer;
						formatNameValuePair(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.NameValuePair, param2: boolean): org.apache.http.util.CharArrayBuffer;
					});
					public constructor();
					public formatParameters(param0: org.apache.http.util.CharArrayBuffer, param1: native.Array<org.apache.http.NameValuePair>, param2: boolean): org.apache.http.util.CharArrayBuffer;
					public formatHeaderElement(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.HeaderElement, param2: boolean): org.apache.http.util.CharArrayBuffer;
					public formatNameValuePair(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.NameValuePair, param2: boolean): org.apache.http.util.CharArrayBuffer;
					public formatElements(param0: org.apache.http.util.CharArrayBuffer, param1: native.Array<org.apache.http.HeaderElement>, param2: boolean): org.apache.http.util.CharArrayBuffer;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module message {
				export class HeaderValueParser extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.message.HeaderValueParser>;
					/**
					 * Constructs a new instance of the org.apache.http.message.HeaderValueParser interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						parseElements(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.message.ParserCursor): native.Array<org.apache.http.HeaderElement>;
						parseHeaderElement(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.message.ParserCursor): org.apache.http.HeaderElement;
						parseParameters(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.message.ParserCursor): native.Array<org.apache.http.NameValuePair>;
						parseNameValuePair(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.message.ParserCursor): org.apache.http.NameValuePair;
					});
					public constructor();
					public parseParameters(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.message.ParserCursor): native.Array<org.apache.http.NameValuePair>;
					public parseHeaderElement(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.message.ParserCursor): org.apache.http.HeaderElement;
					public parseNameValuePair(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.message.ParserCursor): org.apache.http.NameValuePair;
					public parseElements(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.message.ParserCursor): native.Array<org.apache.http.HeaderElement>;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module message {
				export class LineFormatter extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.message.LineFormatter>;
					/**
					 * Constructs a new instance of the org.apache.http.message.LineFormatter interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						appendProtocolVersion(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.ProtocolVersion): org.apache.http.util.CharArrayBuffer;
						formatRequestLine(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.RequestLine): org.apache.http.util.CharArrayBuffer;
						formatStatusLine(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.StatusLine): org.apache.http.util.CharArrayBuffer;
						formatHeader(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.Header): org.apache.http.util.CharArrayBuffer;
					});
					public constructor();
					public appendProtocolVersion(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.ProtocolVersion): org.apache.http.util.CharArrayBuffer;
					public formatHeader(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.Header): org.apache.http.util.CharArrayBuffer;
					public formatRequestLine(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.RequestLine): org.apache.http.util.CharArrayBuffer;
					public formatStatusLine(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.StatusLine): org.apache.http.util.CharArrayBuffer;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module message {
				export class LineParser extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.message.LineParser>;
					/**
					 * Constructs a new instance of the org.apache.http.message.LineParser interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						parseProtocolVersion(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.message.ParserCursor): org.apache.http.ProtocolVersion;
						hasProtocolVersion(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.message.ParserCursor): boolean;
						parseRequestLine(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.message.ParserCursor): org.apache.http.RequestLine;
						parseStatusLine(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.message.ParserCursor): org.apache.http.StatusLine;
						parseHeader(param0: org.apache.http.util.CharArrayBuffer): org.apache.http.Header;
					});
					public constructor();
					public parseRequestLine(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.message.ParserCursor): org.apache.http.RequestLine;
					public parseStatusLine(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.message.ParserCursor): org.apache.http.StatusLine;
					public hasProtocolVersion(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.message.ParserCursor): boolean;
					public parseHeader(param0: org.apache.http.util.CharArrayBuffer): org.apache.http.Header;
					public parseProtocolVersion(param0: org.apache.http.util.CharArrayBuffer, param1: org.apache.http.message.ParserCursor): org.apache.http.ProtocolVersion;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module message {
				export class ParserCursor extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.message.ParserCursor>;
					public atEnd(): boolean;
					public toString(): string;
					public getLowerBound(): number;
					public getUpperBound(): number;
					public updatePos(param0: number): void;
					public getPos(): number;
					public constructor(param0: number, param1: number);
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module params {
				export abstract class AbstractHttpParams extends java.lang.Object implements org.apache.http.params.HttpParams {
					public static class: java.lang.Class<org.apache.http.params.AbstractHttpParams>;
					public isParameterFalse(param0: string): boolean;
					public setDoubleParameter(param0: string, param1: number): org.apache.http.params.HttpParams;
					public getIntParameter(param0: string, param1: number): number;
					public setLongParameter(param0: string, param1: number): org.apache.http.params.HttpParams;
					public getParameter(param0: string): any;
					public getLongParameter(param0: string, param1: number): number;
					public isParameterTrue(param0: string): boolean;
					public removeParameter(param0: string): boolean;
					public setParameter(param0: string, param1: any): org.apache.http.params.HttpParams;
					public copy(): org.apache.http.params.HttpParams;
					public constructor();
					public setBooleanParameter(param0: string, param1: boolean): org.apache.http.params.HttpParams;
					public setIntParameter(param0: string, param1: number): org.apache.http.params.HttpParams;
					public getDoubleParameter(param0: string, param1: number): number;
					public getBooleanParameter(param0: string, param1: boolean): boolean;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module params {
				export class BasicHttpParams extends org.apache.http.params.AbstractHttpParams implements java.io.Serializable, java.lang.Cloneable {
					public static class: java.lang.Class<org.apache.http.params.BasicHttpParams>;
					public isParameterFalse(param0: string): boolean;
					public setDoubleParameter(param0: string, param1: number): org.apache.http.params.HttpParams;
					public getIntParameter(param0: string, param1: number): number;
					public setParameters(param0: native.Array<string>, param1: any): void;
					public setLongParameter(param0: string, param1: number): org.apache.http.params.HttpParams;
					public getParameter(param0: string): any;
					public isParameterSetLocally(param0: string): boolean;
					public getLongParameter(param0: string, param1: number): number;
					public isParameterTrue(param0: string): boolean;
					public removeParameter(param0: string): boolean;
					public setParameter(param0: string, param1: any): org.apache.http.params.HttpParams;
					public copy(): org.apache.http.params.HttpParams;
					public clone(): any;
					public constructor();
					public isParameterSet(param0: string): boolean;
					public clear(): void;
					public copyParams(param0: org.apache.http.params.HttpParams): void;
					public setBooleanParameter(param0: string, param1: boolean): org.apache.http.params.HttpParams;
					public setIntParameter(param0: string, param1: number): org.apache.http.params.HttpParams;
					public getDoubleParameter(param0: string, param1: number): number;
					public getBooleanParameter(param0: string, param1: boolean): boolean;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module params {
				export class CoreConnectionPNames extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.params.CoreConnectionPNames>;
					/**
					 * Constructs a new instance of the org.apache.http.params.CoreConnectionPNames interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
					});
					public constructor();
					public static SO_LINGER: string;
					public static CONNECTION_TIMEOUT: string;
					public static SO_TIMEOUT: string;
					public static SOCKET_BUFFER_SIZE: string;
					public static MAX_HEADER_COUNT: string;
					public static TCP_NODELAY: string;
					public static STALE_CONNECTION_CHECK: string;
					public static MAX_LINE_LENGTH: string;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module params {
				export class CoreProtocolPNames extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.params.CoreProtocolPNames>;
					/**
					 * Constructs a new instance of the org.apache.http.params.CoreProtocolPNames interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
					});
					public constructor();
					public static ORIGIN_SERVER: string;
					public static STRICT_TRANSFER_ENCODING: string;
					public static PROTOCOL_VERSION: string;
					public static USER_AGENT: string;
					public static WAIT_FOR_CONTINUE: string;
					public static HTTP_CONTENT_CHARSET: string;
					public static USE_EXPECT_CONTINUE: string;
					public static HTTP_ELEMENT_CHARSET: string;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module params {
				export class DefaultedHttpParams extends org.apache.http.params.AbstractHttpParams {
					public static class: java.lang.Class<org.apache.http.params.DefaultedHttpParams>;
					public isParameterFalse(param0: string): boolean;
					public setDoubleParameter(param0: string, param1: number): org.apache.http.params.HttpParams;
					public getIntParameter(param0: string, param1: number): number;
					public setLongParameter(param0: string, param1: number): org.apache.http.params.HttpParams;
					public getParameter(param0: string): any;
					public getLongParameter(param0: string, param1: number): number;
					public getDefaults(): org.apache.http.params.HttpParams;
					public isParameterTrue(param0: string): boolean;
					public removeParameter(param0: string): boolean;
					public copy(): org.apache.http.params.HttpParams;
					public setParameter(param0: string, param1: any): org.apache.http.params.HttpParams;
					public constructor();
					public setBooleanParameter(param0: string, param1: boolean): org.apache.http.params.HttpParams;
					public constructor(param0: org.apache.http.params.HttpParams, param1: org.apache.http.params.HttpParams);
					public setIntParameter(param0: string, param1: number): org.apache.http.params.HttpParams;
					public getDoubleParameter(param0: string, param1: number): number;
					public getBooleanParameter(param0: string, param1: boolean): boolean;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module params {
				export abstract class HttpAbstractParamBean extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.params.HttpAbstractParamBean>;
					public params: org.apache.http.params.HttpParams;
					public constructor(param0: org.apache.http.params.HttpParams);
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module params {
				export class HttpConnectionParamBean extends org.apache.http.params.HttpAbstractParamBean {
					public static class: java.lang.Class<org.apache.http.params.HttpConnectionParamBean>;
					public setSoTimeout(param0: number): void;
					public constructor(param0: org.apache.http.params.HttpParams);
					public setSocketBufferSize(param0: number): void;
					public setTcpNoDelay(param0: boolean): void;
					public setLinger(param0: number): void;
					public setConnectionTimeout(param0: number): void;
					public setStaleCheckingEnabled(param0: boolean): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module params {
				export class HttpConnectionParams extends java.lang.Object implements org.apache.http.params.CoreConnectionPNames {
					public static class: java.lang.Class<org.apache.http.params.HttpConnectionParams>;
					public static isStaleCheckingEnabled(param0: org.apache.http.params.HttpParams): boolean;
					public static getTcpNoDelay(param0: org.apache.http.params.HttpParams): boolean;
					public static setTcpNoDelay(param0: org.apache.http.params.HttpParams, param1: boolean): void;
					public static getSoTimeout(param0: org.apache.http.params.HttpParams): number;
					public static setSocketBufferSize(param0: org.apache.http.params.HttpParams, param1: number): void;
					public static getConnectionTimeout(param0: org.apache.http.params.HttpParams): number;
					public static setConnectionTimeout(param0: org.apache.http.params.HttpParams, param1: number): void;
					public static setSoTimeout(param0: org.apache.http.params.HttpParams, param1: number): void;
					public static setLinger(param0: org.apache.http.params.HttpParams, param1: number): void;
					public static getLinger(param0: org.apache.http.params.HttpParams): number;
					public static setStaleCheckingEnabled(param0: org.apache.http.params.HttpParams, param1: boolean): void;
					public static getSocketBufferSize(param0: org.apache.http.params.HttpParams): number;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module params {
				export class HttpParams extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.params.HttpParams>;
					/**
					 * Constructs a new instance of the org.apache.http.params.HttpParams interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						getParameter(param0: string): any;
						setParameter(param0: string, param1: any): org.apache.http.params.HttpParams;
						copy(): org.apache.http.params.HttpParams;
						removeParameter(param0: string): boolean;
						getLongParameter(param0: string, param1: number): number;
						setLongParameter(param0: string, param1: number): org.apache.http.params.HttpParams;
						getIntParameter(param0: string, param1: number): number;
						setIntParameter(param0: string, param1: number): org.apache.http.params.HttpParams;
						getDoubleParameter(param0: string, param1: number): number;
						setDoubleParameter(param0: string, param1: number): org.apache.http.params.HttpParams;
						getBooleanParameter(param0: string, param1: boolean): boolean;
						setBooleanParameter(param0: string, param1: boolean): org.apache.http.params.HttpParams;
						isParameterTrue(param0: string): boolean;
						isParameterFalse(param0: string): boolean;
					});
					public constructor();
					public isParameterFalse(param0: string): boolean;
					public setDoubleParameter(param0: string, param1: number): org.apache.http.params.HttpParams;
					public getIntParameter(param0: string, param1: number): number;
					public setLongParameter(param0: string, param1: number): org.apache.http.params.HttpParams;
					public getParameter(param0: string): any;
					public getLongParameter(param0: string, param1: number): number;
					public isParameterTrue(param0: string): boolean;
					public removeParameter(param0: string): boolean;
					public setParameter(param0: string, param1: any): org.apache.http.params.HttpParams;
					public copy(): org.apache.http.params.HttpParams;
					public setBooleanParameter(param0: string, param1: boolean): org.apache.http.params.HttpParams;
					public setIntParameter(param0: string, param1: number): org.apache.http.params.HttpParams;
					public getDoubleParameter(param0: string, param1: number): number;
					public getBooleanParameter(param0: string, param1: boolean): boolean;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module params {
				export class HttpProtocolParamBean extends org.apache.http.params.HttpAbstractParamBean {
					public static class: java.lang.Class<org.apache.http.params.HttpProtocolParamBean>;
					public setContentCharset(param0: string): void;
					public setHttpElementCharset(param0: string): void;
					public constructor(param0: org.apache.http.params.HttpParams);
					public setUserAgent(param0: string): void;
					public setUseExpectContinue(param0: boolean): void;
					public setVersion(param0: org.apache.http.HttpVersion): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module params {
				export class HttpProtocolParams extends java.lang.Object implements org.apache.http.params.CoreProtocolPNames {
					public static class: java.lang.Class<org.apache.http.params.HttpProtocolParams>;
					public static getHttpElementCharset(param0: org.apache.http.params.HttpParams): string;
					public static setUserAgent(param0: org.apache.http.params.HttpParams, param1: string): void;
					public static getContentCharset(param0: org.apache.http.params.HttpParams): string;
					public static setUseExpectContinue(param0: org.apache.http.params.HttpParams, param1: boolean): void;
					public static useExpectContinue(param0: org.apache.http.params.HttpParams): boolean;
					public static setVersion(param0: org.apache.http.params.HttpParams, param1: org.apache.http.ProtocolVersion): void;
					public static setContentCharset(param0: org.apache.http.params.HttpParams, param1: string): void;
					public static getUserAgent(param0: org.apache.http.params.HttpParams): string;
					public static getVersion(param0: org.apache.http.params.HttpParams): org.apache.http.ProtocolVersion;
					public static setHttpElementCharset(param0: org.apache.http.params.HttpParams, param1: string): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module protocol {
				export class BasicHttpContext extends java.lang.Object implements org.apache.http.protocol.HttpContext {
					public static class: java.lang.Class<org.apache.http.protocol.BasicHttpContext>;
					public getAttribute(param0: string): any;
					public removeAttribute(param0: string): any;
					public constructor();
					public setAttribute(param0: string, param1: any): void;
					public constructor(param0: org.apache.http.protocol.HttpContext);
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module protocol {
				export class BasicHttpProcessor extends java.lang.Object implements org.apache.http.protocol.HttpProcessor, org.apache.http.protocol.HttpRequestInterceptorList, org.apache.http.protocol.HttpResponseInterceptorList, java.lang.Cloneable {
					public static class: java.lang.Class<org.apache.http.protocol.BasicHttpProcessor>;
					public requestInterceptors: java.util.List<any>;
					public responseInterceptors: java.util.List<any>;
					public addInterceptor(param0: org.apache.http.HttpRequestInterceptor): void;
					public addResponseInterceptor(param0: org.apache.http.HttpResponseInterceptor): void;
					public getResponseInterceptorCount(): number;
					public copyInterceptors(param0: org.apache.http.protocol.BasicHttpProcessor): void;
					public removeRequestInterceptorByClass(param0: java.lang.Class<any>): void;
					public addResponseInterceptor(param0: org.apache.http.HttpResponseInterceptor, param1: number): void;
					public removeResponseInterceptorByClass(param0: java.lang.Class<any>): void;
					public addRequestInterceptor(param0: org.apache.http.HttpRequestInterceptor): void;
					public getResponseInterceptor(param0: number): org.apache.http.HttpResponseInterceptor;
					public addInterceptor(param0: org.apache.http.HttpResponseInterceptor, param1: number): void;
					public process(param0: org.apache.http.HttpResponse, param1: org.apache.http.protocol.HttpContext): void;
					public clone(): any;
					public constructor();
					public getRequestInterceptorCount(): number;
					public setInterceptors(param0: java.util.List<any>): void;
					public copy(): org.apache.http.protocol.BasicHttpProcessor;
					public process(param0: org.apache.http.HttpRequest, param1: org.apache.http.protocol.HttpContext): void;
					public clearInterceptors(): void;
					public addRequestInterceptor(param0: org.apache.http.HttpRequestInterceptor, param1: number): void;
					public getRequestInterceptor(param0: number): org.apache.http.HttpRequestInterceptor;
					public addInterceptor(param0: org.apache.http.HttpRequestInterceptor, param1: number): void;
					public clearRequestInterceptors(): void;
					public addInterceptor(param0: org.apache.http.HttpResponseInterceptor): void;
					public clearResponseInterceptors(): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module protocol {
				export class DefaultedHttpContext extends java.lang.Object implements org.apache.http.protocol.HttpContext {
					public static class: java.lang.Class<org.apache.http.protocol.DefaultedHttpContext>;
					public getDefaults(): org.apache.http.protocol.HttpContext;
					public getAttribute(param0: string): any;
					public removeAttribute(param0: string): any;
					public setAttribute(param0: string, param1: any): void;
					public constructor(param0: org.apache.http.protocol.HttpContext, param1: org.apache.http.protocol.HttpContext);
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module protocol {
				export class ExecutionContext extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.protocol.ExecutionContext>;
					/**
					 * Constructs a new instance of the org.apache.http.protocol.ExecutionContext interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
					});
					public constructor();
					public static HTTP_TARGET_HOST: string;
					public static HTTP_PROXY_HOST: string;
					public static HTTP_RESPONSE: string;
					public static HTTP_CONNECTION: string;
					public static HTTP_REQUEST: string;
					public static HTTP_REQ_SENT: string;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module protocol {
				export class HTTP extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.protocol.HTTP>;
					public static CR: number;
					public static LF: number;
					public static SP: number;
					public static HT: number;
					public static TRANSFER_ENCODING: string;
					public static CONTENT_LEN: string;
					public static CONTENT_TYPE: string;
					public static CONTENT_ENCODING: string;
					public static EXPECT_DIRECTIVE: string;
					public static CONN_DIRECTIVE: string;
					public static TARGET_HOST: string;
					public static USER_AGENT: string;
					public static DATE_HEADER: string;
					public static SERVER_HEADER: string;
					public static EXPECT_CONTINUE: string;
					public static CONN_CLOSE: string;
					public static CONN_KEEP_ALIVE: string;
					public static CHUNK_CODING: string;
					public static IDENTITY_CODING: string;
					public static UTF_8: string;
					public static UTF_16: string;
					public static US_ASCII: string;
					public static ASCII: string;
					public static ISO_8859_1: string;
					public static DEFAULT_CONTENT_CHARSET: string;
					public static DEFAULT_PROTOCOL_CHARSET: string;
					public static OCTET_STREAM_TYPE: string;
					public static PLAIN_TEXT_TYPE: string;
					public static CHARSET_PARAM: string;
					public static DEFAULT_CONTENT_TYPE: string;
					public static isWhitespace(param0: string): boolean;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module protocol {
				export class HttpContext extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.protocol.HttpContext>;
					/**
					 * Constructs a new instance of the org.apache.http.protocol.HttpContext interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						getAttribute(param0: string): any;
						setAttribute(param0: string, param1: any): void;
						removeAttribute(param0: string): any;
					});
					public constructor();
					public static RESERVED_PREFIX: string;
					public getAttribute(param0: string): any;
					public removeAttribute(param0: string): any;
					public setAttribute(param0: string, param1: any): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module protocol {
				export class HttpDateGenerator extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.protocol.HttpDateGenerator>;
					public static PATTERN_RFC1123: string;
					public static GMT: java.util.TimeZone;
					public getCurrentDate(): string;
					public constructor();
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module protocol {
				export class HttpExpectationVerifier extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.protocol.HttpExpectationVerifier>;
					/**
					 * Constructs a new instance of the org.apache.http.protocol.HttpExpectationVerifier interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						verify(param0: org.apache.http.HttpRequest, param1: org.apache.http.HttpResponse, param2: org.apache.http.protocol.HttpContext): void;
					});
					public constructor();
					public verify(param0: org.apache.http.HttpRequest, param1: org.apache.http.HttpResponse, param2: org.apache.http.protocol.HttpContext): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module protocol {
				export class HttpProcessor extends java.lang.Object implements org.apache.http.HttpRequestInterceptor, org.apache.http.HttpResponseInterceptor {
					public static class: java.lang.Class<org.apache.http.protocol.HttpProcessor>;
					/**
					 * Constructs a new instance of the org.apache.http.protocol.HttpProcessor interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						process(param0: org.apache.http.HttpRequest, param1: org.apache.http.protocol.HttpContext): void;
						process(param0: org.apache.http.HttpResponse, param1: org.apache.http.protocol.HttpContext): void;
					});
					public constructor();
					public process(param0: org.apache.http.HttpResponse, param1: org.apache.http.protocol.HttpContext): void;
					public process(param0: org.apache.http.HttpRequest, param1: org.apache.http.protocol.HttpContext): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module protocol {
				export class HttpRequestExecutor extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.protocol.HttpRequestExecutor>;
					public doReceiveResponse(param0: org.apache.http.HttpRequest, param1: org.apache.http.HttpClientConnection, param2: org.apache.http.protocol.HttpContext): org.apache.http.HttpResponse;
					public constructor();
					public doSendRequest(param0: org.apache.http.HttpRequest, param1: org.apache.http.HttpClientConnection, param2: org.apache.http.protocol.HttpContext): org.apache.http.HttpResponse;
					public canResponseHaveBody(param0: org.apache.http.HttpRequest, param1: org.apache.http.HttpResponse): boolean;
					public execute(param0: org.apache.http.HttpRequest, param1: org.apache.http.HttpClientConnection, param2: org.apache.http.protocol.HttpContext): org.apache.http.HttpResponse;
					public postProcess(param0: org.apache.http.HttpResponse, param1: org.apache.http.protocol.HttpProcessor, param2: org.apache.http.protocol.HttpContext): void;
					public preProcess(param0: org.apache.http.HttpRequest, param1: org.apache.http.protocol.HttpProcessor, param2: org.apache.http.protocol.HttpContext): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module protocol {
				export class HttpRequestHandler extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.protocol.HttpRequestHandler>;
					/**
					 * Constructs a new instance of the org.apache.http.protocol.HttpRequestHandler interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						handle(param0: org.apache.http.HttpRequest, param1: org.apache.http.HttpResponse, param2: org.apache.http.protocol.HttpContext): void;
					});
					public constructor();
					public handle(param0: org.apache.http.HttpRequest, param1: org.apache.http.HttpResponse, param2: org.apache.http.protocol.HttpContext): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module protocol {
				export class HttpRequestHandlerRegistry extends java.lang.Object implements org.apache.http.protocol.HttpRequestHandlerResolver {
					public static class: java.lang.Class<org.apache.http.protocol.HttpRequestHandlerRegistry>;
					public lookup(param0: string): org.apache.http.protocol.HttpRequestHandler;
					public setHandlers(param0: java.util.Map<any,any>): void;
					public constructor();
					public unregister(param0: string): void;
					public register(param0: string, param1: org.apache.http.protocol.HttpRequestHandler): void;
					/** @deprecated */
					public matchUriRequestPattern(param0: string, param1: string): boolean;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module protocol {
				export class HttpRequestHandlerResolver extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.protocol.HttpRequestHandlerResolver>;
					/**
					 * Constructs a new instance of the org.apache.http.protocol.HttpRequestHandlerResolver interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						lookup(param0: string): org.apache.http.protocol.HttpRequestHandler;
					});
					public constructor();
					public lookup(param0: string): org.apache.http.protocol.HttpRequestHandler;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module protocol {
				export class HttpRequestInterceptorList extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.protocol.HttpRequestInterceptorList>;
					/**
					 * Constructs a new instance of the org.apache.http.protocol.HttpRequestInterceptorList interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						addRequestInterceptor(param0: org.apache.http.HttpRequestInterceptor): void;
						addRequestInterceptor(param0: org.apache.http.HttpRequestInterceptor, param1: number): void;
						getRequestInterceptorCount(): number;
						getRequestInterceptor(param0: number): org.apache.http.HttpRequestInterceptor;
						clearRequestInterceptors(): void;
						removeRequestInterceptorByClass(param0: java.lang.Class<any>): void;
						setInterceptors(param0: java.util.List<any>): void;
					});
					public constructor();
					public addRequestInterceptor(param0: org.apache.http.HttpRequestInterceptor): void;
					public getRequestInterceptorCount(): number;
					public setInterceptors(param0: java.util.List<any>): void;
					public addRequestInterceptor(param0: org.apache.http.HttpRequestInterceptor, param1: number): void;
					public getRequestInterceptor(param0: number): org.apache.http.HttpRequestInterceptor;
					public removeRequestInterceptorByClass(param0: java.lang.Class<any>): void;
					public clearRequestInterceptors(): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module protocol {
				export class HttpResponseInterceptorList extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.protocol.HttpResponseInterceptorList>;
					/**
					 * Constructs a new instance of the org.apache.http.protocol.HttpResponseInterceptorList interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						addResponseInterceptor(param0: org.apache.http.HttpResponseInterceptor): void;
						addResponseInterceptor(param0: org.apache.http.HttpResponseInterceptor, param1: number): void;
						getResponseInterceptorCount(): number;
						getResponseInterceptor(param0: number): org.apache.http.HttpResponseInterceptor;
						clearResponseInterceptors(): void;
						removeResponseInterceptorByClass(param0: java.lang.Class<any>): void;
						setInterceptors(param0: java.util.List<any>): void;
					});
					public constructor();
					public getResponseInterceptor(param0: number): org.apache.http.HttpResponseInterceptor;
					public addResponseInterceptor(param0: org.apache.http.HttpResponseInterceptor): void;
					public setInterceptors(param0: java.util.List<any>): void;
					public getResponseInterceptorCount(): number;
					public addResponseInterceptor(param0: org.apache.http.HttpResponseInterceptor, param1: number): void;
					public clearResponseInterceptors(): void;
					public removeResponseInterceptorByClass(param0: java.lang.Class<any>): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module protocol {
				export class HttpService extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.protocol.HttpService>;
					public setParams(param0: org.apache.http.params.HttpParams): void;
					public setHttpProcessor(param0: org.apache.http.protocol.HttpProcessor): void;
					public constructor(param0: org.apache.http.protocol.HttpProcessor, param1: org.apache.http.ConnectionReuseStrategy, param2: org.apache.http.HttpResponseFactory);
					public handleException(param0: org.apache.http.HttpException, param1: org.apache.http.HttpResponse): void;
					public handleRequest(param0: org.apache.http.HttpServerConnection, param1: org.apache.http.protocol.HttpContext): void;
					public setExpectationVerifier(param0: org.apache.http.protocol.HttpExpectationVerifier): void;
					public setConnReuseStrategy(param0: org.apache.http.ConnectionReuseStrategy): void;
					public setHandlerResolver(param0: org.apache.http.protocol.HttpRequestHandlerResolver): void;
					public setResponseFactory(param0: org.apache.http.HttpResponseFactory): void;
					public getParams(): org.apache.http.params.HttpParams;
					public doService(param0: org.apache.http.HttpRequest, param1: org.apache.http.HttpResponse, param2: org.apache.http.protocol.HttpContext): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module protocol {
				export class RequestConnControl extends java.lang.Object implements org.apache.http.HttpRequestInterceptor {
					public static class: java.lang.Class<org.apache.http.protocol.RequestConnControl>;
					public constructor();
					public process(param0: org.apache.http.HttpRequest, param1: org.apache.http.protocol.HttpContext): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module protocol {
				export class RequestContent extends java.lang.Object implements org.apache.http.HttpRequestInterceptor {
					public static class: java.lang.Class<org.apache.http.protocol.RequestContent>;
					public constructor();
					public process(param0: org.apache.http.HttpRequest, param1: org.apache.http.protocol.HttpContext): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module protocol {
				export class RequestDate extends java.lang.Object implements org.apache.http.HttpRequestInterceptor {
					public static class: java.lang.Class<org.apache.http.protocol.RequestDate>;
					public constructor();
					public process(param0: org.apache.http.HttpRequest, param1: org.apache.http.protocol.HttpContext): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module protocol {
				export class RequestExpectContinue extends java.lang.Object implements org.apache.http.HttpRequestInterceptor {
					public static class: java.lang.Class<org.apache.http.protocol.RequestExpectContinue>;
					public constructor();
					public process(param0: org.apache.http.HttpRequest, param1: org.apache.http.protocol.HttpContext): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module protocol {
				export class RequestTargetHost extends java.lang.Object implements org.apache.http.HttpRequestInterceptor {
					public static class: java.lang.Class<org.apache.http.protocol.RequestTargetHost>;
					public constructor();
					public process(param0: org.apache.http.HttpRequest, param1: org.apache.http.protocol.HttpContext): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module protocol {
				export class RequestUserAgent extends java.lang.Object implements org.apache.http.HttpRequestInterceptor {
					public static class: java.lang.Class<org.apache.http.protocol.RequestUserAgent>;
					public constructor();
					public process(param0: org.apache.http.HttpRequest, param1: org.apache.http.protocol.HttpContext): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module protocol {
				export class ResponseConnControl extends java.lang.Object implements org.apache.http.HttpResponseInterceptor {
					public static class: java.lang.Class<org.apache.http.protocol.ResponseConnControl>;
					public process(param0: org.apache.http.HttpResponse, param1: org.apache.http.protocol.HttpContext): void;
					public constructor();
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module protocol {
				export class ResponseContent extends java.lang.Object implements org.apache.http.HttpResponseInterceptor {
					public static class: java.lang.Class<org.apache.http.protocol.ResponseContent>;
					public process(param0: org.apache.http.HttpResponse, param1: org.apache.http.protocol.HttpContext): void;
					public constructor();
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module protocol {
				export class ResponseDate extends java.lang.Object implements org.apache.http.HttpResponseInterceptor {
					public static class: java.lang.Class<org.apache.http.protocol.ResponseDate>;
					public process(param0: org.apache.http.HttpResponse, param1: org.apache.http.protocol.HttpContext): void;
					public constructor();
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module protocol {
				export class ResponseServer extends java.lang.Object implements org.apache.http.HttpResponseInterceptor {
					public static class: java.lang.Class<org.apache.http.protocol.ResponseServer>;
					public process(param0: org.apache.http.HttpResponse, param1: org.apache.http.protocol.HttpContext): void;
					public constructor();
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module protocol {
				export class SyncBasicHttpContext extends org.apache.http.protocol.BasicHttpContext {
					public static class: java.lang.Class<org.apache.http.protocol.SyncBasicHttpContext>;
					public getAttribute(param0: string): any;
					public removeAttribute(param0: string): any;
					public constructor();
					public setAttribute(param0: string, param1: any): void;
					public constructor(param0: org.apache.http.protocol.HttpContext);
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module protocol {
				export class UriPatternMatcher extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.protocol.UriPatternMatcher>;
					public matchUriRequestPattern(param0: string, param1: string): boolean;
					public setHandlers(param0: java.util.Map<any,any>): void;
					public constructor();
					public unregister(param0: string): void;
					public register(param0: string, param1: any): void;
					public lookup(param0: string): any;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module util {
				export class ByteArrayBuffer extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.util.ByteArrayBuffer>;
					public append(param0: native.Array<string>, param1: number, param2: number): void;
					public append(param0: native.Array<number>, param1: number, param2: number): void;
					public isEmpty(): boolean;
					public isFull(): boolean;
					public byteAt(param0: number): number;
					public buffer(): native.Array<number>;
					public setLength(param0: number): void;
					public length(): number;
					public append(param0: number): void;
					public toByteArray(): native.Array<number>;
					public clear(): void;
					public append(param0: org.apache.http.util.CharArrayBuffer, param1: number, param2: number): void;
					public constructor(param0: number);
					public capacity(): number;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module util {
				export class CharArrayBuffer extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.util.CharArrayBuffer>;
					public append(param0: native.Array<string>, param1: number, param2: number): void;
					public append(param0: native.Array<number>, param1: number, param2: number): void;
					public append(param0: org.apache.http.util.ByteArrayBuffer, param1: number, param2: number): void;
					public isEmpty(): boolean;
					public isFull(): boolean;
					public buffer(): native.Array<string>;
					public indexOf(param0: number): number;
					public substringTrimmed(param0: number, param1: number): string;
					public append(param0: any): void;
					public setLength(param0: number): void;
					public length(): number;
					public substring(param0: number, param1: number): string;
					public toString(): string;
					public ensureCapacity(param0: number): void;
					public charAt(param0: number): string;
					public clear(): void;
					public append(param0: string): void;
					public indexOf(param0: number, param1: number, param2: number): number;
					public append(param0: org.apache.http.util.CharArrayBuffer, param1: number, param2: number): void;
					public constructor(param0: number);
					public append(param0: org.apache.http.util.CharArrayBuffer): void;
					public toCharArray(): native.Array<string>;
					public capacity(): number;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module util {
				export class EncodingUtils extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.util.EncodingUtils>;
					public static getAsciiString(param0: native.Array<number>): string;
					public static getString(param0: native.Array<number>, param1: number, param2: number, param3: string): string;
					public static getAsciiString(param0: native.Array<number>, param1: number, param2: number): string;
					public static getString(param0: native.Array<number>, param1: string): string;
					public static getBytes(param0: string, param1: string): native.Array<number>;
					public static getAsciiBytes(param0: string): native.Array<number>;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module util {
				export class EntityUtils extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.util.EntityUtils>;
					public toString(): string;
					public static toByteArray(param0: org.apache.http.HttpEntity): native.Array<number>;
					public static getContentCharSet(param0: org.apache.http.HttpEntity): string;
					public static toString(param0: org.apache.http.HttpEntity, param1: string): string;
					public static toString(param0: org.apache.http.HttpEntity): string;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module util {
				export class ExceptionUtils extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.util.ExceptionUtils>;
					public static initCause(param0: java.lang.Throwable, param1: java.lang.Throwable): void;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module util {
				export class LangUtils extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.util.LangUtils>;
					public static HASH_SEED: number;
					public static HASH_OFFSET: number;
					public equals(param0: any): boolean;
					public static hashCode(param0: number, param1: any): number;
					public static hashCode(param0: number, param1: number): number;
					public static equals(param0: native.Array<any>, param1: native.Array<any>): boolean;
					public static hashCode(param0: number, param1: boolean): number;
					public static equals(param0: any, param1: any): boolean;
					public hashCode(): number;
				}
			}
		}
	}
}

declare module org {
	export module apache {
		export module http {
			export module util {
				export class VersionInfo extends java.lang.Object {
					public static class: java.lang.Class<org.apache.http.util.VersionInfo>;
					public static UNAVAILABLE: string;
					public static VERSION_PROPERTY_FILE: string;
					public static PROPERTY_MODULE: string;
					public static PROPERTY_RELEASE: string;
					public static PROPERTY_TIMESTAMP: string;
					public toString(): string;
					public constructor(param0: string, param1: string, param2: string, param3: string, param4: string);
					public getModule(): string;
					public getPackage(): string;
					public static loadVersionInfo(param0: native.Array<string>, param1: java.lang.ClassLoader): native.Array<org.apache.http.util.VersionInfo>;
					public static fromMap(param0: string, param1: java.util.Map<any,any>, param2: java.lang.ClassLoader): org.apache.http.util.VersionInfo;
					public static loadVersionInfo(param0: string, param1: java.lang.ClassLoader): org.apache.http.util.VersionInfo;
					public getRelease(): string;
					public getTimestamp(): string;
					public getClassloader(): string;
				}
			}
		}
	}
}

declare module org {
	export module json {
		export class JSONArray extends java.lang.Object {
			public static class: java.lang.Class<org.json.JSONArray>;
			public opt(param0: number): any;
			public equals(param0: any): boolean;
			public put(param0: number, param1: any): org.json.JSONArray;
			public put(param0: number, param1: boolean): org.json.JSONArray;
			public getJSONArray(param0: number): org.json.JSONArray;
			public put(param0: number, param1: number): org.json.JSONArray;
			public get(param0: number): any;
			public toJSONObject(param0: org.json.JSONArray): org.json.JSONObject;
			public constructor(param0: java.util.Collection<any>);
			public put(param0: boolean): org.json.JSONArray;
			public put(param0: any): org.json.JSONArray;
			public constructor(param0: string);
			public isNull(param0: number): boolean;
			public optLong(param0: number, param1: number): number;
			public optString(param0: number): string;
			public optString(param0: number, param1: string): string;
			public getDouble(param0: number): number;
			public getString(param0: number): string;
			public length(): number;
			public optInt(param0: number): number;
			public constructor();
			public optDouble(param0: number, param1: number): number;
			public optJSONArray(param0: number): org.json.JSONArray;
			public optDouble(param0: number): number;
			public constructor(param0: org.json.JSONTokener);
			public getJSONObject(param0: number): org.json.JSONObject;
			public optJSONObject(param0: number): org.json.JSONObject;
			public optLong(param0: number): number;
			public toString(): string;
			public getLong(param0: number): number;
			public join(param0: string): string;
			public optBoolean(param0: number): boolean;
			public optBoolean(param0: number, param1: boolean): boolean;
			public toString(param0: number): string;
			public put(param0: number): org.json.JSONArray;
			public optInt(param0: number, param1: number): number;
			public getBoolean(param0: number): boolean;
			public getInt(param0: number): number;
			public hashCode(): number;
		}
	}
}

declare module org {
	export module json {
		export class JSONException extends java.lang.Exception {
			public static class: java.lang.Class<org.json.JSONException>;
			public constructor(param0: java.lang.Throwable);
			public constructor(param0: string, param1: java.lang.Throwable);
			public constructor();
			public constructor(param0: string);
		}
	}
}

declare module org {
	export module json {
		export class JSONObject extends java.lang.Object {
			public static class: java.lang.Class<org.json.JSONObject>;
			public static NULL: any;
			public constructor(param0: java.util.Map<any,any>);
			public static quote(param0: string): string;
			public put(param0: string, param1: number): org.json.JSONObject;
			public keys(): java.util.Iterator<any>;
			public accumulate(param0: string, param1: any): org.json.JSONObject;
			public isNull(param0: string): boolean;
			public getBoolean(param0: string): boolean;
			public static numberToString(param0: java.lang.Number): string;
			public optJSONObject(param0: string): org.json.JSONObject;
			public getJSONObject(param0: string): org.json.JSONObject;
			public optDouble(param0: string, param1: number): number;
			public optBoolean(param0: string): boolean;
			public optInt(param0: string): number;
			public getJSONArray(param0: string): org.json.JSONArray;
			public opt(param0: string): any;
			public toJSONArray(param0: org.json.JSONArray): org.json.JSONArray;
			public constructor(param0: string);
			public optLong(param0: string, param1: number): number;
			public put(param0: string, param1: any): org.json.JSONObject;
			public getLong(param0: string): number;
			public putOpt(param0: string, param1: any): org.json.JSONObject;
			public get(param0: string): any;
			public getInt(param0: string): number;
			public optBoolean(param0: string, param1: boolean): boolean;
			public length(): number;
			public optLong(param0: string): number;
			public optJSONArray(param0: string): org.json.JSONArray;
			public getString(param0: string): string;
			public constructor();
			public remove(param0: string): any;
			public constructor(param0: org.json.JSONTokener);
			public optDouble(param0: string): number;
			public toString(): string;
			public put(param0: string, param1: boolean): org.json.JSONObject;
			public getDouble(param0: string): number;
			public optString(param0: string): string;
			public optString(param0: string, param1: string): string;
			public optInt(param0: string, param1: number): number;
			public toString(param0: number): string;
			public names(): org.json.JSONArray;
			public constructor(param0: org.json.JSONObject, param1: native.Array<string>);
			public has(param0: string): boolean;
		}
	}
}

declare module org {
	export module json {
		export class JSONStringer extends java.lang.Object {
			public static class: java.lang.Class<org.json.JSONStringer>;
			public value(param0: number): org.json.JSONStringer;
			public value(param0: boolean): org.json.JSONStringer;
			public key(param0: string): org.json.JSONStringer;
			public toString(): string;
			public object(): org.json.JSONStringer;
			public array(): org.json.JSONStringer;
			public constructor();
			public endArray(): org.json.JSONStringer;
			public endObject(): org.json.JSONStringer;
			public value(param0: any): org.json.JSONStringer;
		}
	}
}

declare module org {
	export module json {
		export class JSONTokener extends java.lang.Object {
			public static class: java.lang.Class<org.json.JSONTokener>;
			public skipTo(param0: string): string;
			public next(param0: string): string;
			public static dehexchar(param0: string): number;
			public syntaxError(param0: string): org.json.JSONException;
			public next(): string;
			public nextTo(param0: string): string;
			public more(): boolean;
			public nextClean(): string;
			public nextString(param0: string): string;
			public toString(): string;
			public back(): void;
			public skipPast(param0: string): void;
			public nextValue(): any;
			public constructor(param0: string);
			public next(param0: number): string;
		}
	}
}

declare module org {
	export module w3c {
		export module dom {
			export class Attr extends java.lang.Object implements org.w3c.dom.Node {
				public static class: java.lang.Class<org.w3c.dom.Attr>;
				/**
				 * Constructs a new instance of the org.w3c.dom.Attr interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getName(): string;
					getSpecified(): boolean;
					getValue(): string;
					setValue(param0: string): void;
					getOwnerElement(): org.w3c.dom.Element;
					getSchemaTypeInfo(): org.w3c.dom.TypeInfo;
					isId(): boolean;
					getNodeName(): string;
					getNodeValue(): string;
					setNodeValue(param0: string): void;
					getNodeType(): number;
					getParentNode(): org.w3c.dom.Node;
					getChildNodes(): org.w3c.dom.NodeList;
					getFirstChild(): org.w3c.dom.Node;
					getLastChild(): org.w3c.dom.Node;
					getPreviousSibling(): org.w3c.dom.Node;
					getNextSibling(): org.w3c.dom.Node;
					getAttributes(): org.w3c.dom.NamedNodeMap;
					getOwnerDocument(): org.w3c.dom.Document;
					insertBefore(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
					replaceChild(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
					removeChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
					appendChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
					hasChildNodes(): boolean;
					cloneNode(param0: boolean): org.w3c.dom.Node;
					normalize(): void;
					isSupported(param0: string, param1: string): boolean;
					getNamespaceURI(): string;
					getPrefix(): string;
					setPrefix(param0: string): void;
					getLocalName(): string;
					hasAttributes(): boolean;
					getBaseURI(): string;
					compareDocumentPosition(param0: org.w3c.dom.Node): number;
					getTextContent(): string;
					setTextContent(param0: string): void;
					isSameNode(param0: org.w3c.dom.Node): boolean;
					lookupPrefix(param0: string): string;
					isDefaultNamespace(param0: string): boolean;
					lookupNamespaceURI(param0: string): string;
					isEqualNode(param0: org.w3c.dom.Node): boolean;
					getFeature(param0: string, param1: string): any;
					setUserData(param0: string, param1: any, param2: org.w3c.dom.UserDataHandler): any;
					getUserData(param0: string): any;
				});
				public constructor();
				public static DOCUMENT_TYPE_NODE: number;
				public static DOCUMENT_FRAGMENT_NODE: number;
				public static ELEMENT_NODE: number;
				public static DOCUMENT_POSITION_FOLLOWING: number;
				public static TEXT_NODE: number;
				public static ATTRIBUTE_NODE: number;
				public static DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC: number;
				public static ENTITY_REFERENCE_NODE: number;
				public static NOTATION_NODE: number;
				public static ENTITY_NODE: number;
				public static DOCUMENT_NODE: number;
				public static PROCESSING_INSTRUCTION_NODE: number;
				public static CDATA_SECTION_NODE: number;
				public static COMMENT_NODE: number;
				public static DOCUMENT_POSITION_DISCONNECTED: number;
				public static DOCUMENT_POSITION_CONTAINED_BY: number;
				public static DOCUMENT_POSITION_PRECEDING: number;
				public static DOCUMENT_POSITION_CONTAINS: number;
				public compareDocumentPosition(param0: org.w3c.dom.Node): number;
				public hasChildNodes(): boolean;
				public removeChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
				public lookupPrefix(param0: string): string;
				public getValue(): string;
				public isDefaultNamespace(param0: string): boolean;
				public getLocalName(): string;
				public getChildNodes(): org.w3c.dom.NodeList;
				public getBaseURI(): string;
				public setValue(param0: string): void;
				public hasAttributes(): boolean;
				public isId(): boolean;
				public normalize(): void;
				public getOwnerDocument(): org.w3c.dom.Document;
				public getOwnerElement(): org.w3c.dom.Element;
				public setNodeValue(param0: string): void;
				public getNamespaceURI(): string;
				public getTextContent(): string;
				public insertBefore(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
				public setPrefix(param0: string): void;
				public setUserData(param0: string, param1: any, param2: org.w3c.dom.UserDataHandler): any;
				public getSpecified(): boolean;
				public getNodeType(): number;
				public isSameNode(param0: org.w3c.dom.Node): boolean;
				public getPreviousSibling(): org.w3c.dom.Node;
				public getPrefix(): string;
				public setTextContent(param0: string): void;
				public getAttributes(): org.w3c.dom.NamedNodeMap;
				public appendChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
				public getName(): string;
				public getSchemaTypeInfo(): org.w3c.dom.TypeInfo;
				public getNodeValue(): string;
				public getFirstChild(): org.w3c.dom.Node;
				public replaceChild(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
				public getFeature(param0: string, param1: string): any;
				public getLastChild(): org.w3c.dom.Node;
				public getUserData(param0: string): any;
				public cloneNode(param0: boolean): org.w3c.dom.Node;
				public isEqualNode(param0: org.w3c.dom.Node): boolean;
				public getNextSibling(): org.w3c.dom.Node;
				public lookupNamespaceURI(param0: string): string;
				public getNodeName(): string;
				public getParentNode(): org.w3c.dom.Node;
				public isSupported(param0: string, param1: string): boolean;
			}
		}
	}
}

declare module org {
	export module w3c {
		export module dom {
			export class CDATASection extends java.lang.Object implements org.w3c.dom.Text {
				public static class: java.lang.Class<org.w3c.dom.CDATASection>;
				/**
				 * Constructs a new instance of the org.w3c.dom.CDATASection interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					splitText(param0: number): org.w3c.dom.Text;
					isElementContentWhitespace(): boolean;
					getWholeText(): string;
					replaceWholeText(param0: string): org.w3c.dom.Text;
					getData(): string;
					setData(param0: string): void;
					getLength(): number;
					substringData(param0: number, param1: number): string;
					appendData(param0: string): void;
					insertData(param0: number, param1: string): void;
					deleteData(param0: number, param1: number): void;
					replaceData(param0: number, param1: number, param2: string): void;
					getNodeName(): string;
					getNodeValue(): string;
					setNodeValue(param0: string): void;
					getNodeType(): number;
					getParentNode(): org.w3c.dom.Node;
					getChildNodes(): org.w3c.dom.NodeList;
					getFirstChild(): org.w3c.dom.Node;
					getLastChild(): org.w3c.dom.Node;
					getPreviousSibling(): org.w3c.dom.Node;
					getNextSibling(): org.w3c.dom.Node;
					getAttributes(): org.w3c.dom.NamedNodeMap;
					getOwnerDocument(): org.w3c.dom.Document;
					insertBefore(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
					replaceChild(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
					removeChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
					appendChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
					hasChildNodes(): boolean;
					cloneNode(param0: boolean): org.w3c.dom.Node;
					normalize(): void;
					isSupported(param0: string, param1: string): boolean;
					getNamespaceURI(): string;
					getPrefix(): string;
					setPrefix(param0: string): void;
					getLocalName(): string;
					hasAttributes(): boolean;
					getBaseURI(): string;
					compareDocumentPosition(param0: org.w3c.dom.Node): number;
					getTextContent(): string;
					setTextContent(param0: string): void;
					isSameNode(param0: org.w3c.dom.Node): boolean;
					lookupPrefix(param0: string): string;
					isDefaultNamespace(param0: string): boolean;
					lookupNamespaceURI(param0: string): string;
					isEqualNode(param0: org.w3c.dom.Node): boolean;
					getFeature(param0: string, param1: string): any;
					setUserData(param0: string, param1: any, param2: org.w3c.dom.UserDataHandler): any;
					getUserData(param0: string): any;
				});
				public constructor();
				public static DOCUMENT_TYPE_NODE: number;
				public static DOCUMENT_FRAGMENT_NODE: number;
				public static ELEMENT_NODE: number;
				public static DOCUMENT_POSITION_FOLLOWING: number;
				public static TEXT_NODE: number;
				public static ATTRIBUTE_NODE: number;
				public static DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC: number;
				public static ENTITY_REFERENCE_NODE: number;
				public static NOTATION_NODE: number;
				public static ENTITY_NODE: number;
				public static DOCUMENT_NODE: number;
				public static PROCESSING_INSTRUCTION_NODE: number;
				public static CDATA_SECTION_NODE: number;
				public static COMMENT_NODE: number;
				public static DOCUMENT_POSITION_DISCONNECTED: number;
				public static DOCUMENT_POSITION_CONTAINED_BY: number;
				public static DOCUMENT_POSITION_PRECEDING: number;
				public static DOCUMENT_POSITION_CONTAINS: number;
				public compareDocumentPosition(param0: org.w3c.dom.Node): number;
				public splitText(param0: number): org.w3c.dom.Text;
				public removeChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
				public getWholeText(): string;
				public isDefaultNamespace(param0: string): boolean;
				public appendData(param0: string): void;
				public getChildNodes(): org.w3c.dom.NodeList;
				public normalize(): void;
				public getOwnerDocument(): org.w3c.dom.Document;
				public getNamespaceURI(): string;
				public getTextContent(): string;
				public setPrefix(param0: string): void;
				public setUserData(param0: string, param1: any, param2: org.w3c.dom.UserDataHandler): any;
				public getNodeType(): number;
				public isSameNode(param0: org.w3c.dom.Node): boolean;
				public setTextContent(param0: string): void;
				public getAttributes(): org.w3c.dom.NamedNodeMap;
				public getNodeValue(): string;
				public getFirstChild(): org.w3c.dom.Node;
				public replaceChild(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
				public getUserData(param0: string): any;
				public lookupNamespaceURI(param0: string): string;
				public getParentNode(): org.w3c.dom.Node;
				public setData(param0: string): void;
				public hasChildNodes(): boolean;
				public isElementContentWhitespace(): boolean;
				public lookupPrefix(param0: string): string;
				public replaceWholeText(param0: string): org.w3c.dom.Text;
				public getLocalName(): string;
				public substringData(param0: number, param1: number): string;
				public getBaseURI(): string;
				public hasAttributes(): boolean;
				public replaceData(param0: number, param1: number, param2: string): void;
				public setNodeValue(param0: string): void;
				public insertBefore(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
				public getPreviousSibling(): org.w3c.dom.Node;
				public getPrefix(): string;
				public insertData(param0: number, param1: string): void;
				public appendChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
				public getLength(): number;
				public getFeature(param0: string, param1: string): any;
				public getLastChild(): org.w3c.dom.Node;
				public getData(): string;
				public cloneNode(param0: boolean): org.w3c.dom.Node;
				public isEqualNode(param0: org.w3c.dom.Node): boolean;
				public getNextSibling(): org.w3c.dom.Node;
				public deleteData(param0: number, param1: number): void;
				public getNodeName(): string;
				public isSupported(param0: string, param1: string): boolean;
			}
		}
	}
}

declare module org {
	export module w3c {
		export module dom {
			export class CharacterData extends java.lang.Object implements org.w3c.dom.Node {
				public static class: java.lang.Class<org.w3c.dom.CharacterData>;
				/**
				 * Constructs a new instance of the org.w3c.dom.CharacterData interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getData(): string;
					setData(param0: string): void;
					getLength(): number;
					substringData(param0: number, param1: number): string;
					appendData(param0: string): void;
					insertData(param0: number, param1: string): void;
					deleteData(param0: number, param1: number): void;
					replaceData(param0: number, param1: number, param2: string): void;
					getNodeName(): string;
					getNodeValue(): string;
					setNodeValue(param0: string): void;
					getNodeType(): number;
					getParentNode(): org.w3c.dom.Node;
					getChildNodes(): org.w3c.dom.NodeList;
					getFirstChild(): org.w3c.dom.Node;
					getLastChild(): org.w3c.dom.Node;
					getPreviousSibling(): org.w3c.dom.Node;
					getNextSibling(): org.w3c.dom.Node;
					getAttributes(): org.w3c.dom.NamedNodeMap;
					getOwnerDocument(): org.w3c.dom.Document;
					insertBefore(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
					replaceChild(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
					removeChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
					appendChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
					hasChildNodes(): boolean;
					cloneNode(param0: boolean): org.w3c.dom.Node;
					normalize(): void;
					isSupported(param0: string, param1: string): boolean;
					getNamespaceURI(): string;
					getPrefix(): string;
					setPrefix(param0: string): void;
					getLocalName(): string;
					hasAttributes(): boolean;
					getBaseURI(): string;
					compareDocumentPosition(param0: org.w3c.dom.Node): number;
					getTextContent(): string;
					setTextContent(param0: string): void;
					isSameNode(param0: org.w3c.dom.Node): boolean;
					lookupPrefix(param0: string): string;
					isDefaultNamespace(param0: string): boolean;
					lookupNamespaceURI(param0: string): string;
					isEqualNode(param0: org.w3c.dom.Node): boolean;
					getFeature(param0: string, param1: string): any;
					setUserData(param0: string, param1: any, param2: org.w3c.dom.UserDataHandler): any;
					getUserData(param0: string): any;
				});
				public constructor();
				public static DOCUMENT_TYPE_NODE: number;
				public static DOCUMENT_FRAGMENT_NODE: number;
				public static ELEMENT_NODE: number;
				public static DOCUMENT_POSITION_FOLLOWING: number;
				public static TEXT_NODE: number;
				public static ATTRIBUTE_NODE: number;
				public static DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC: number;
				public static ENTITY_REFERENCE_NODE: number;
				public static NOTATION_NODE: number;
				public static ENTITY_NODE: number;
				public static DOCUMENT_NODE: number;
				public static PROCESSING_INSTRUCTION_NODE: number;
				public static CDATA_SECTION_NODE: number;
				public static COMMENT_NODE: number;
				public static DOCUMENT_POSITION_DISCONNECTED: number;
				public static DOCUMENT_POSITION_CONTAINED_BY: number;
				public static DOCUMENT_POSITION_PRECEDING: number;
				public static DOCUMENT_POSITION_CONTAINS: number;
				public compareDocumentPosition(param0: org.w3c.dom.Node): number;
				public setData(param0: string): void;
				public hasChildNodes(): boolean;
				public removeChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
				public lookupPrefix(param0: string): string;
				public isDefaultNamespace(param0: string): boolean;
				public appendData(param0: string): void;
				public getLocalName(): string;
				public substringData(param0: number, param1: number): string;
				public getChildNodes(): org.w3c.dom.NodeList;
				public getBaseURI(): string;
				public hasAttributes(): boolean;
				public replaceData(param0: number, param1: number, param2: string): void;
				public normalize(): void;
				public getOwnerDocument(): org.w3c.dom.Document;
				public setNodeValue(param0: string): void;
				public getNamespaceURI(): string;
				public getTextContent(): string;
				public insertBefore(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
				public setPrefix(param0: string): void;
				public setUserData(param0: string, param1: any, param2: org.w3c.dom.UserDataHandler): any;
				public getNodeType(): number;
				public isSameNode(param0: org.w3c.dom.Node): boolean;
				public getPreviousSibling(): org.w3c.dom.Node;
				public getPrefix(): string;
				public insertData(param0: number, param1: string): void;
				public setTextContent(param0: string): void;
				public getAttributes(): org.w3c.dom.NamedNodeMap;
				public appendChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
				public getNodeValue(): string;
				public getLength(): number;
				public getFirstChild(): org.w3c.dom.Node;
				public replaceChild(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
				public getFeature(param0: string, param1: string): any;
				public getLastChild(): org.w3c.dom.Node;
				public getUserData(param0: string): any;
				public getData(): string;
				public cloneNode(param0: boolean): org.w3c.dom.Node;
				public isEqualNode(param0: org.w3c.dom.Node): boolean;
				public getNextSibling(): org.w3c.dom.Node;
				public deleteData(param0: number, param1: number): void;
				public lookupNamespaceURI(param0: string): string;
				public getNodeName(): string;
				public getParentNode(): org.w3c.dom.Node;
				public isSupported(param0: string, param1: string): boolean;
			}
		}
	}
}

declare module org {
	export module w3c {
		export module dom {
			export class Comment extends java.lang.Object implements org.w3c.dom.CharacterData {
				public static class: java.lang.Class<org.w3c.dom.Comment>;
				/**
				 * Constructs a new instance of the org.w3c.dom.Comment interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getData(): string;
					setData(param0: string): void;
					getLength(): number;
					substringData(param0: number, param1: number): string;
					appendData(param0: string): void;
					insertData(param0: number, param1: string): void;
					deleteData(param0: number, param1: number): void;
					replaceData(param0: number, param1: number, param2: string): void;
					getNodeName(): string;
					getNodeValue(): string;
					setNodeValue(param0: string): void;
					getNodeType(): number;
					getParentNode(): org.w3c.dom.Node;
					getChildNodes(): org.w3c.dom.NodeList;
					getFirstChild(): org.w3c.dom.Node;
					getLastChild(): org.w3c.dom.Node;
					getPreviousSibling(): org.w3c.dom.Node;
					getNextSibling(): org.w3c.dom.Node;
					getAttributes(): org.w3c.dom.NamedNodeMap;
					getOwnerDocument(): org.w3c.dom.Document;
					insertBefore(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
					replaceChild(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
					removeChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
					appendChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
					hasChildNodes(): boolean;
					cloneNode(param0: boolean): org.w3c.dom.Node;
					normalize(): void;
					isSupported(param0: string, param1: string): boolean;
					getNamespaceURI(): string;
					getPrefix(): string;
					setPrefix(param0: string): void;
					getLocalName(): string;
					hasAttributes(): boolean;
					getBaseURI(): string;
					compareDocumentPosition(param0: org.w3c.dom.Node): number;
					getTextContent(): string;
					setTextContent(param0: string): void;
					isSameNode(param0: org.w3c.dom.Node): boolean;
					lookupPrefix(param0: string): string;
					isDefaultNamespace(param0: string): boolean;
					lookupNamespaceURI(param0: string): string;
					isEqualNode(param0: org.w3c.dom.Node): boolean;
					getFeature(param0: string, param1: string): any;
					setUserData(param0: string, param1: any, param2: org.w3c.dom.UserDataHandler): any;
					getUserData(param0: string): any;
				});
				public constructor();
				public static DOCUMENT_TYPE_NODE: number;
				public static DOCUMENT_FRAGMENT_NODE: number;
				public static ELEMENT_NODE: number;
				public static DOCUMENT_POSITION_FOLLOWING: number;
				public static TEXT_NODE: number;
				public static ATTRIBUTE_NODE: number;
				public static DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC: number;
				public static ENTITY_REFERENCE_NODE: number;
				public static NOTATION_NODE: number;
				public static ENTITY_NODE: number;
				public static DOCUMENT_NODE: number;
				public static PROCESSING_INSTRUCTION_NODE: number;
				public static CDATA_SECTION_NODE: number;
				public static COMMENT_NODE: number;
				public static DOCUMENT_POSITION_DISCONNECTED: number;
				public static DOCUMENT_POSITION_CONTAINED_BY: number;
				public static DOCUMENT_POSITION_PRECEDING: number;
				public static DOCUMENT_POSITION_CONTAINS: number;
				public compareDocumentPosition(param0: org.w3c.dom.Node): number;
				public setData(param0: string): void;
				public hasChildNodes(): boolean;
				public removeChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
				public lookupPrefix(param0: string): string;
				public isDefaultNamespace(param0: string): boolean;
				public appendData(param0: string): void;
				public getLocalName(): string;
				public substringData(param0: number, param1: number): string;
				public getChildNodes(): org.w3c.dom.NodeList;
				public getBaseURI(): string;
				public hasAttributes(): boolean;
				public replaceData(param0: number, param1: number, param2: string): void;
				public normalize(): void;
				public getOwnerDocument(): org.w3c.dom.Document;
				public setNodeValue(param0: string): void;
				public getNamespaceURI(): string;
				public getTextContent(): string;
				public insertBefore(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
				public setPrefix(param0: string): void;
				public setUserData(param0: string, param1: any, param2: org.w3c.dom.UserDataHandler): any;
				public getNodeType(): number;
				public isSameNode(param0: org.w3c.dom.Node): boolean;
				public getPreviousSibling(): org.w3c.dom.Node;
				public getPrefix(): string;
				public insertData(param0: number, param1: string): void;
				public setTextContent(param0: string): void;
				public getAttributes(): org.w3c.dom.NamedNodeMap;
				public appendChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
				public getNodeValue(): string;
				public getLength(): number;
				public getFirstChild(): org.w3c.dom.Node;
				public replaceChild(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
				public getFeature(param0: string, param1: string): any;
				public getLastChild(): org.w3c.dom.Node;
				public getUserData(param0: string): any;
				public getData(): string;
				public cloneNode(param0: boolean): org.w3c.dom.Node;
				public isEqualNode(param0: org.w3c.dom.Node): boolean;
				public getNextSibling(): org.w3c.dom.Node;
				public deleteData(param0: number, param1: number): void;
				public lookupNamespaceURI(param0: string): string;
				public getNodeName(): string;
				public getParentNode(): org.w3c.dom.Node;
				public isSupported(param0: string, param1: string): boolean;
			}
		}
	}
}

declare module org {
	export module w3c {
		export module dom {
			export class DOMConfiguration extends java.lang.Object {
				public static class: java.lang.Class<org.w3c.dom.DOMConfiguration>;
				/**
				 * Constructs a new instance of the org.w3c.dom.DOMConfiguration interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					setParameter(param0: string, param1: any): void;
					getParameter(param0: string): any;
					canSetParameter(param0: string, param1: any): boolean;
					getParameterNames(): org.w3c.dom.DOMStringList;
				});
				public constructor();
				public getParameter(param0: string): any;
				public getParameterNames(): org.w3c.dom.DOMStringList;
				public setParameter(param0: string, param1: any): void;
				public canSetParameter(param0: string, param1: any): boolean;
			}
		}
	}
}

declare module org {
	export module w3c {
		export module dom {
			export class DOMError extends java.lang.Object {
				public static class: java.lang.Class<org.w3c.dom.DOMError>;
				/**
				 * Constructs a new instance of the org.w3c.dom.DOMError interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getSeverity(): number;
					getMessage(): string;
					getType(): string;
					getRelatedException(): any;
					getRelatedData(): any;
					getLocation(): org.w3c.dom.DOMLocator;
				});
				public constructor();
				public static SEVERITY_ERROR: number;
				public static SEVERITY_WARNING: number;
				public static SEVERITY_FATAL_ERROR: number;
				public getType(): string;
				public getLocation(): org.w3c.dom.DOMLocator;
				public getRelatedException(): any;
				public getSeverity(): number;
				public getRelatedData(): any;
				public getMessage(): string;
			}
		}
	}
}

declare module org {
	export module w3c {
		export module dom {
			export class DOMErrorHandler extends java.lang.Object {
				public static class: java.lang.Class<org.w3c.dom.DOMErrorHandler>;
				/**
				 * Constructs a new instance of the org.w3c.dom.DOMErrorHandler interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					handleError(param0: org.w3c.dom.DOMError): boolean;
				});
				public constructor();
				public handleError(param0: org.w3c.dom.DOMError): boolean;
			}
		}
	}
}

declare module org {
	export module w3c {
		export module dom {
			export class DOMException extends java.lang.RuntimeException {
				public static class: java.lang.Class<org.w3c.dom.DOMException>;
				public code: number;
				public static INDEX_SIZE_ERR: number;
				public static DOMSTRING_SIZE_ERR: number;
				public static HIERARCHY_REQUEST_ERR: number;
				public static WRONG_DOCUMENT_ERR: number;
				public static INVALID_CHARACTER_ERR: number;
				public static NO_DATA_ALLOWED_ERR: number;
				public static NO_MODIFICATION_ALLOWED_ERR: number;
				public static NOT_FOUND_ERR: number;
				public static NOT_SUPPORTED_ERR: number;
				public static INUSE_ATTRIBUTE_ERR: number;
				public static INVALID_STATE_ERR: number;
				public static SYNTAX_ERR: number;
				public static INVALID_MODIFICATION_ERR: number;
				public static NAMESPACE_ERR: number;
				public static INVALID_ACCESS_ERR: number;
				public static VALIDATION_ERR: number;
				public static TYPE_MISMATCH_ERR: number;
				public constructor(param0: number, param1: string);
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module org {
	export module w3c {
		export module dom {
			export class DOMImplementation extends java.lang.Object {
				public static class: java.lang.Class<org.w3c.dom.DOMImplementation>;
				/**
				 * Constructs a new instance of the org.w3c.dom.DOMImplementation interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					hasFeature(param0: string, param1: string): boolean;
					createDocumentType(param0: string, param1: string, param2: string): org.w3c.dom.DocumentType;
					createDocument(param0: string, param1: string, param2: org.w3c.dom.DocumentType): org.w3c.dom.Document;
					getFeature(param0: string, param1: string): any;
				});
				public constructor();
				public createDocument(param0: string, param1: string, param2: org.w3c.dom.DocumentType): org.w3c.dom.Document;
				public hasFeature(param0: string, param1: string): boolean;
				public createDocumentType(param0: string, param1: string, param2: string): org.w3c.dom.DocumentType;
				public getFeature(param0: string, param1: string): any;
			}
		}
	}
}

declare module org {
	export module w3c {
		export module dom {
			export class DOMImplementationList extends java.lang.Object {
				public static class: java.lang.Class<org.w3c.dom.DOMImplementationList>;
				/**
				 * Constructs a new instance of the org.w3c.dom.DOMImplementationList interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					item(param0: number): org.w3c.dom.DOMImplementation;
					getLength(): number;
				});
				public constructor();
				public item(param0: number): org.w3c.dom.DOMImplementation;
				public getLength(): number;
			}
		}
	}
}

declare module org {
	export module w3c {
		export module dom {
			export class DOMImplementationSource extends java.lang.Object {
				public static class: java.lang.Class<org.w3c.dom.DOMImplementationSource>;
				/**
				 * Constructs a new instance of the org.w3c.dom.DOMImplementationSource interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getDOMImplementation(param0: string): org.w3c.dom.DOMImplementation;
					getDOMImplementationList(param0: string): org.w3c.dom.DOMImplementationList;
				});
				public constructor();
				public getDOMImplementation(param0: string): org.w3c.dom.DOMImplementation;
				public getDOMImplementationList(param0: string): org.w3c.dom.DOMImplementationList;
			}
		}
	}
}

declare module org {
	export module w3c {
		export module dom {
			export class DOMLocator extends java.lang.Object {
				public static class: java.lang.Class<org.w3c.dom.DOMLocator>;
				/**
				 * Constructs a new instance of the org.w3c.dom.DOMLocator interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getLineNumber(): number;
					getColumnNumber(): number;
					getByteOffset(): number;
					getUtf16Offset(): number;
					getRelatedNode(): org.w3c.dom.Node;
					getUri(): string;
				});
				public constructor();
				public getLineNumber(): number;
				public getUri(): string;
				public getRelatedNode(): org.w3c.dom.Node;
				public getUtf16Offset(): number;
				public getByteOffset(): number;
				public getColumnNumber(): number;
			}
		}
	}
}

declare module org {
	export module w3c {
		export module dom {
			export class DOMStringList extends java.lang.Object {
				public static class: java.lang.Class<org.w3c.dom.DOMStringList>;
				/**
				 * Constructs a new instance of the org.w3c.dom.DOMStringList interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					item(param0: number): string;
					getLength(): number;
					contains(param0: string): boolean;
				});
				public constructor();
				public contains(param0: string): boolean;
				public item(param0: number): string;
				public getLength(): number;
			}
		}
	}
}

declare module org {
	export module w3c {
		export module dom {
			export class Document extends java.lang.Object implements org.w3c.dom.Node {
				public static class: java.lang.Class<org.w3c.dom.Document>;
				/**
				 * Constructs a new instance of the org.w3c.dom.Document interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getDoctype(): org.w3c.dom.DocumentType;
					getImplementation(): org.w3c.dom.DOMImplementation;
					getDocumentElement(): org.w3c.dom.Element;
					createElement(param0: string): org.w3c.dom.Element;
					createDocumentFragment(): org.w3c.dom.DocumentFragment;
					createTextNode(param0: string): org.w3c.dom.Text;
					createComment(param0: string): org.w3c.dom.Comment;
					createCDATASection(param0: string): org.w3c.dom.CDATASection;
					createProcessingInstruction(param0: string, param1: string): org.w3c.dom.ProcessingInstruction;
					createAttribute(param0: string): org.w3c.dom.Attr;
					createEntityReference(param0: string): org.w3c.dom.EntityReference;
					getElementsByTagName(param0: string): org.w3c.dom.NodeList;
					importNode(param0: org.w3c.dom.Node, param1: boolean): org.w3c.dom.Node;
					createElementNS(param0: string, param1: string): org.w3c.dom.Element;
					createAttributeNS(param0: string, param1: string): org.w3c.dom.Attr;
					getElementsByTagNameNS(param0: string, param1: string): org.w3c.dom.NodeList;
					getElementById(param0: string): org.w3c.dom.Element;
					getInputEncoding(): string;
					getXmlEncoding(): string;
					getXmlStandalone(): boolean;
					setXmlStandalone(param0: boolean): void;
					getXmlVersion(): string;
					setXmlVersion(param0: string): void;
					getStrictErrorChecking(): boolean;
					setStrictErrorChecking(param0: boolean): void;
					getDocumentURI(): string;
					setDocumentURI(param0: string): void;
					adoptNode(param0: org.w3c.dom.Node): org.w3c.dom.Node;
					getDomConfig(): org.w3c.dom.DOMConfiguration;
					normalizeDocument(): void;
					renameNode(param0: org.w3c.dom.Node, param1: string, param2: string): org.w3c.dom.Node;
					getNodeName(): string;
					getNodeValue(): string;
					setNodeValue(param0: string): void;
					getNodeType(): number;
					getParentNode(): org.w3c.dom.Node;
					getChildNodes(): org.w3c.dom.NodeList;
					getFirstChild(): org.w3c.dom.Node;
					getLastChild(): org.w3c.dom.Node;
					getPreviousSibling(): org.w3c.dom.Node;
					getNextSibling(): org.w3c.dom.Node;
					getAttributes(): org.w3c.dom.NamedNodeMap;
					getOwnerDocument(): org.w3c.dom.Document;
					insertBefore(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
					replaceChild(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
					removeChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
					appendChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
					hasChildNodes(): boolean;
					cloneNode(param0: boolean): org.w3c.dom.Node;
					normalize(): void;
					isSupported(param0: string, param1: string): boolean;
					getNamespaceURI(): string;
					getPrefix(): string;
					setPrefix(param0: string): void;
					getLocalName(): string;
					hasAttributes(): boolean;
					getBaseURI(): string;
					compareDocumentPosition(param0: org.w3c.dom.Node): number;
					getTextContent(): string;
					setTextContent(param0: string): void;
					isSameNode(param0: org.w3c.dom.Node): boolean;
					lookupPrefix(param0: string): string;
					isDefaultNamespace(param0: string): boolean;
					lookupNamespaceURI(param0: string): string;
					isEqualNode(param0: org.w3c.dom.Node): boolean;
					getFeature(param0: string, param1: string): any;
					setUserData(param0: string, param1: any, param2: org.w3c.dom.UserDataHandler): any;
					getUserData(param0: string): any;
				});
				public constructor();
				public static DOCUMENT_TYPE_NODE: number;
				public static DOCUMENT_FRAGMENT_NODE: number;
				public static ELEMENT_NODE: number;
				public static DOCUMENT_POSITION_FOLLOWING: number;
				public static TEXT_NODE: number;
				public static ATTRIBUTE_NODE: number;
				public static DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC: number;
				public static ENTITY_REFERENCE_NODE: number;
				public static NOTATION_NODE: number;
				public static ENTITY_NODE: number;
				public static DOCUMENT_NODE: number;
				public static PROCESSING_INSTRUCTION_NODE: number;
				public static CDATA_SECTION_NODE: number;
				public static COMMENT_NODE: number;
				public static DOCUMENT_POSITION_DISCONNECTED: number;
				public static DOCUMENT_POSITION_CONTAINED_BY: number;
				public static DOCUMENT_POSITION_PRECEDING: number;
				public static DOCUMENT_POSITION_CONTAINS: number;
				public normalizeDocument(): void;
				public importNode(param0: org.w3c.dom.Node, param1: boolean): org.w3c.dom.Node;
				public getXmlEncoding(): string;
				public compareDocumentPosition(param0: org.w3c.dom.Node): number;
				public createDocumentFragment(): org.w3c.dom.DocumentFragment;
				public removeChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
				public setDocumentURI(param0: string): void;
				public getDomConfig(): org.w3c.dom.DOMConfiguration;
				public isDefaultNamespace(param0: string): boolean;
				public createCDATASection(param0: string): org.w3c.dom.CDATASection;
				public getDoctype(): org.w3c.dom.DocumentType;
				public getChildNodes(): org.w3c.dom.NodeList;
				public getElementsByTagNameNS(param0: string, param1: string): org.w3c.dom.NodeList;
				public normalize(): void;
				public getOwnerDocument(): org.w3c.dom.Document;
				public getNamespaceURI(): string;
				public getTextContent(): string;
				public createElementNS(param0: string, param1: string): org.w3c.dom.Element;
				public setPrefix(param0: string): void;
				public setUserData(param0: string, param1: any, param2: org.w3c.dom.UserDataHandler): any;
				public getNodeType(): number;
				public isSameNode(param0: org.w3c.dom.Node): boolean;
				public getElementById(param0: string): org.w3c.dom.Element;
				public setTextContent(param0: string): void;
				public getXmlStandalone(): boolean;
				public getAttributes(): org.w3c.dom.NamedNodeMap;
				public adoptNode(param0: org.w3c.dom.Node): org.w3c.dom.Node;
				public setXmlStandalone(param0: boolean): void;
				public createEntityReference(param0: string): org.w3c.dom.EntityReference;
				public getNodeValue(): string;
				public getXmlVersion(): string;
				public setStrictErrorChecking(param0: boolean): void;
				public getFirstChild(): org.w3c.dom.Node;
				public replaceChild(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
				public getUserData(param0: string): any;
				public getDocumentURI(): string;
				public lookupNamespaceURI(param0: string): string;
				public createComment(param0: string): org.w3c.dom.Comment;
				public getParentNode(): org.w3c.dom.Node;
				public getElementsByTagName(param0: string): org.w3c.dom.NodeList;
				public getInputEncoding(): string;
				public hasChildNodes(): boolean;
				public getImplementation(): org.w3c.dom.DOMImplementation;
				public lookupPrefix(param0: string): string;
				public getLocalName(): string;
				public getBaseURI(): string;
				public hasAttributes(): boolean;
				public setNodeValue(param0: string): void;
				public insertBefore(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
				public getDocumentElement(): org.w3c.dom.Element;
				public createAttributeNS(param0: string, param1: string): org.w3c.dom.Attr;
				public getPreviousSibling(): org.w3c.dom.Node;
				public getPrefix(): string;
				public setXmlVersion(param0: string): void;
				public appendChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
				public getFeature(param0: string, param1: string): any;
				public getLastChild(): org.w3c.dom.Node;
				public createAttribute(param0: string): org.w3c.dom.Attr;
				public createProcessingInstruction(param0: string, param1: string): org.w3c.dom.ProcessingInstruction;
				public getStrictErrorChecking(): boolean;
				public cloneNode(param0: boolean): org.w3c.dom.Node;
				public isEqualNode(param0: org.w3c.dom.Node): boolean;
				public createElement(param0: string): org.w3c.dom.Element;
				public createTextNode(param0: string): org.w3c.dom.Text;
				public getNextSibling(): org.w3c.dom.Node;
				public renameNode(param0: org.w3c.dom.Node, param1: string, param2: string): org.w3c.dom.Node;
				public getNodeName(): string;
				public isSupported(param0: string, param1: string): boolean;
			}
		}
	}
}

declare module org {
	export module w3c {
		export module dom {
			export class DocumentFragment extends java.lang.Object implements org.w3c.dom.Node {
				public static class: java.lang.Class<org.w3c.dom.DocumentFragment>;
				/**
				 * Constructs a new instance of the org.w3c.dom.DocumentFragment interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getNodeName(): string;
					getNodeValue(): string;
					setNodeValue(param0: string): void;
					getNodeType(): number;
					getParentNode(): org.w3c.dom.Node;
					getChildNodes(): org.w3c.dom.NodeList;
					getFirstChild(): org.w3c.dom.Node;
					getLastChild(): org.w3c.dom.Node;
					getPreviousSibling(): org.w3c.dom.Node;
					getNextSibling(): org.w3c.dom.Node;
					getAttributes(): org.w3c.dom.NamedNodeMap;
					getOwnerDocument(): org.w3c.dom.Document;
					insertBefore(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
					replaceChild(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
					removeChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
					appendChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
					hasChildNodes(): boolean;
					cloneNode(param0: boolean): org.w3c.dom.Node;
					normalize(): void;
					isSupported(param0: string, param1: string): boolean;
					getNamespaceURI(): string;
					getPrefix(): string;
					setPrefix(param0: string): void;
					getLocalName(): string;
					hasAttributes(): boolean;
					getBaseURI(): string;
					compareDocumentPosition(param0: org.w3c.dom.Node): number;
					getTextContent(): string;
					setTextContent(param0: string): void;
					isSameNode(param0: org.w3c.dom.Node): boolean;
					lookupPrefix(param0: string): string;
					isDefaultNamespace(param0: string): boolean;
					lookupNamespaceURI(param0: string): string;
					isEqualNode(param0: org.w3c.dom.Node): boolean;
					getFeature(param0: string, param1: string): any;
					setUserData(param0: string, param1: any, param2: org.w3c.dom.UserDataHandler): any;
					getUserData(param0: string): any;
				});
				public constructor();
				public static DOCUMENT_TYPE_NODE: number;
				public static DOCUMENT_FRAGMENT_NODE: number;
				public static ELEMENT_NODE: number;
				public static DOCUMENT_POSITION_FOLLOWING: number;
				public static TEXT_NODE: number;
				public static ATTRIBUTE_NODE: number;
				public static DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC: number;
				public static ENTITY_REFERENCE_NODE: number;
				public static NOTATION_NODE: number;
				public static ENTITY_NODE: number;
				public static DOCUMENT_NODE: number;
				public static PROCESSING_INSTRUCTION_NODE: number;
				public static CDATA_SECTION_NODE: number;
				public static COMMENT_NODE: number;
				public static DOCUMENT_POSITION_DISCONNECTED: number;
				public static DOCUMENT_POSITION_CONTAINED_BY: number;
				public static DOCUMENT_POSITION_PRECEDING: number;
				public static DOCUMENT_POSITION_CONTAINS: number;
				public compareDocumentPosition(param0: org.w3c.dom.Node): number;
				public hasChildNodes(): boolean;
				public removeChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
				public lookupPrefix(param0: string): string;
				public isDefaultNamespace(param0: string): boolean;
				public getLocalName(): string;
				public getChildNodes(): org.w3c.dom.NodeList;
				public getBaseURI(): string;
				public hasAttributes(): boolean;
				public normalize(): void;
				public getOwnerDocument(): org.w3c.dom.Document;
				public setNodeValue(param0: string): void;
				public getNamespaceURI(): string;
				public getTextContent(): string;
				public insertBefore(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
				public setPrefix(param0: string): void;
				public setUserData(param0: string, param1: any, param2: org.w3c.dom.UserDataHandler): any;
				public getNodeType(): number;
				public isSameNode(param0: org.w3c.dom.Node): boolean;
				public getPreviousSibling(): org.w3c.dom.Node;
				public getPrefix(): string;
				public setTextContent(param0: string): void;
				public getAttributes(): org.w3c.dom.NamedNodeMap;
				public appendChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
				public getNodeValue(): string;
				public getFirstChild(): org.w3c.dom.Node;
				public replaceChild(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
				public getFeature(param0: string, param1: string): any;
				public getLastChild(): org.w3c.dom.Node;
				public getUserData(param0: string): any;
				public cloneNode(param0: boolean): org.w3c.dom.Node;
				public isEqualNode(param0: org.w3c.dom.Node): boolean;
				public getNextSibling(): org.w3c.dom.Node;
				public lookupNamespaceURI(param0: string): string;
				public getNodeName(): string;
				public getParentNode(): org.w3c.dom.Node;
				public isSupported(param0: string, param1: string): boolean;
			}
		}
	}
}

declare module org {
	export module w3c {
		export module dom {
			export class DocumentType extends java.lang.Object implements org.w3c.dom.Node {
				public static class: java.lang.Class<org.w3c.dom.DocumentType>;
				/**
				 * Constructs a new instance of the org.w3c.dom.DocumentType interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getName(): string;
					getEntities(): org.w3c.dom.NamedNodeMap;
					getNotations(): org.w3c.dom.NamedNodeMap;
					getPublicId(): string;
					getSystemId(): string;
					getInternalSubset(): string;
					getNodeName(): string;
					getNodeValue(): string;
					setNodeValue(param0: string): void;
					getNodeType(): number;
					getParentNode(): org.w3c.dom.Node;
					getChildNodes(): org.w3c.dom.NodeList;
					getFirstChild(): org.w3c.dom.Node;
					getLastChild(): org.w3c.dom.Node;
					getPreviousSibling(): org.w3c.dom.Node;
					getNextSibling(): org.w3c.dom.Node;
					getAttributes(): org.w3c.dom.NamedNodeMap;
					getOwnerDocument(): org.w3c.dom.Document;
					insertBefore(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
					replaceChild(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
					removeChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
					appendChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
					hasChildNodes(): boolean;
					cloneNode(param0: boolean): org.w3c.dom.Node;
					normalize(): void;
					isSupported(param0: string, param1: string): boolean;
					getNamespaceURI(): string;
					getPrefix(): string;
					setPrefix(param0: string): void;
					getLocalName(): string;
					hasAttributes(): boolean;
					getBaseURI(): string;
					compareDocumentPosition(param0: org.w3c.dom.Node): number;
					getTextContent(): string;
					setTextContent(param0: string): void;
					isSameNode(param0: org.w3c.dom.Node): boolean;
					lookupPrefix(param0: string): string;
					isDefaultNamespace(param0: string): boolean;
					lookupNamespaceURI(param0: string): string;
					isEqualNode(param0: org.w3c.dom.Node): boolean;
					getFeature(param0: string, param1: string): any;
					setUserData(param0: string, param1: any, param2: org.w3c.dom.UserDataHandler): any;
					getUserData(param0: string): any;
				});
				public constructor();
				public static DOCUMENT_TYPE_NODE: number;
				public static DOCUMENT_FRAGMENT_NODE: number;
				public static ELEMENT_NODE: number;
				public static DOCUMENT_POSITION_FOLLOWING: number;
				public static TEXT_NODE: number;
				public static ATTRIBUTE_NODE: number;
				public static DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC: number;
				public static ENTITY_REFERENCE_NODE: number;
				public static NOTATION_NODE: number;
				public static ENTITY_NODE: number;
				public static DOCUMENT_NODE: number;
				public static PROCESSING_INSTRUCTION_NODE: number;
				public static CDATA_SECTION_NODE: number;
				public static COMMENT_NODE: number;
				public static DOCUMENT_POSITION_DISCONNECTED: number;
				public static DOCUMENT_POSITION_CONTAINED_BY: number;
				public static DOCUMENT_POSITION_PRECEDING: number;
				public static DOCUMENT_POSITION_CONTAINS: number;
				public compareDocumentPosition(param0: org.w3c.dom.Node): number;
				public hasChildNodes(): boolean;
				public removeChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
				public lookupPrefix(param0: string): string;
				public isDefaultNamespace(param0: string): boolean;
				public getLocalName(): string;
				public getChildNodes(): org.w3c.dom.NodeList;
				public getBaseURI(): string;
				public hasAttributes(): boolean;
				public getPublicId(): string;
				public normalize(): void;
				public getOwnerDocument(): org.w3c.dom.Document;
				public setNodeValue(param0: string): void;
				public getNamespaceURI(): string;
				public getSystemId(): string;
				public getTextContent(): string;
				public insertBefore(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
				public setPrefix(param0: string): void;
				public setUserData(param0: string, param1: any, param2: org.w3c.dom.UserDataHandler): any;
				public getInternalSubset(): string;
				public getNotations(): org.w3c.dom.NamedNodeMap;
				public getNodeType(): number;
				public isSameNode(param0: org.w3c.dom.Node): boolean;
				public getPreviousSibling(): org.w3c.dom.Node;
				public getPrefix(): string;
				public setTextContent(param0: string): void;
				public getAttributes(): org.w3c.dom.NamedNodeMap;
				public appendChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
				public getName(): string;
				public getNodeValue(): string;
				public getFirstChild(): org.w3c.dom.Node;
				public replaceChild(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
				public getFeature(param0: string, param1: string): any;
				public getLastChild(): org.w3c.dom.Node;
				public getUserData(param0: string): any;
				public cloneNode(param0: boolean): org.w3c.dom.Node;
				public isEqualNode(param0: org.w3c.dom.Node): boolean;
				public getNextSibling(): org.w3c.dom.Node;
				public lookupNamespaceURI(param0: string): string;
				public getEntities(): org.w3c.dom.NamedNodeMap;
				public getNodeName(): string;
				public getParentNode(): org.w3c.dom.Node;
				public isSupported(param0: string, param1: string): boolean;
			}
		}
	}
}

declare module org {
	export module w3c {
		export module dom {
			export class Element extends java.lang.Object implements org.w3c.dom.Node {
				public static class: java.lang.Class<org.w3c.dom.Element>;
				/**
				 * Constructs a new instance of the org.w3c.dom.Element interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getTagName(): string;
					getAttribute(param0: string): string;
					setAttribute(param0: string, param1: string): void;
					removeAttribute(param0: string): void;
					getAttributeNode(param0: string): org.w3c.dom.Attr;
					setAttributeNode(param0: org.w3c.dom.Attr): org.w3c.dom.Attr;
					removeAttributeNode(param0: org.w3c.dom.Attr): org.w3c.dom.Attr;
					getElementsByTagName(param0: string): org.w3c.dom.NodeList;
					getAttributeNS(param0: string, param1: string): string;
					setAttributeNS(param0: string, param1: string, param2: string): void;
					removeAttributeNS(param0: string, param1: string): void;
					getAttributeNodeNS(param0: string, param1: string): org.w3c.dom.Attr;
					setAttributeNodeNS(param0: org.w3c.dom.Attr): org.w3c.dom.Attr;
					getElementsByTagNameNS(param0: string, param1: string): org.w3c.dom.NodeList;
					hasAttribute(param0: string): boolean;
					hasAttributeNS(param0: string, param1: string): boolean;
					getSchemaTypeInfo(): org.w3c.dom.TypeInfo;
					setIdAttribute(param0: string, param1: boolean): void;
					setIdAttributeNS(param0: string, param1: string, param2: boolean): void;
					setIdAttributeNode(param0: org.w3c.dom.Attr, param1: boolean): void;
					getNodeName(): string;
					getNodeValue(): string;
					setNodeValue(param0: string): void;
					getNodeType(): number;
					getParentNode(): org.w3c.dom.Node;
					getChildNodes(): org.w3c.dom.NodeList;
					getFirstChild(): org.w3c.dom.Node;
					getLastChild(): org.w3c.dom.Node;
					getPreviousSibling(): org.w3c.dom.Node;
					getNextSibling(): org.w3c.dom.Node;
					getAttributes(): org.w3c.dom.NamedNodeMap;
					getOwnerDocument(): org.w3c.dom.Document;
					insertBefore(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
					replaceChild(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
					removeChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
					appendChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
					hasChildNodes(): boolean;
					cloneNode(param0: boolean): org.w3c.dom.Node;
					normalize(): void;
					isSupported(param0: string, param1: string): boolean;
					getNamespaceURI(): string;
					getPrefix(): string;
					setPrefix(param0: string): void;
					getLocalName(): string;
					hasAttributes(): boolean;
					getBaseURI(): string;
					compareDocumentPosition(param0: org.w3c.dom.Node): number;
					getTextContent(): string;
					setTextContent(param0: string): void;
					isSameNode(param0: org.w3c.dom.Node): boolean;
					lookupPrefix(param0: string): string;
					isDefaultNamespace(param0: string): boolean;
					lookupNamespaceURI(param0: string): string;
					isEqualNode(param0: org.w3c.dom.Node): boolean;
					getFeature(param0: string, param1: string): any;
					setUserData(param0: string, param1: any, param2: org.w3c.dom.UserDataHandler): any;
					getUserData(param0: string): any;
				});
				public constructor();
				public static DOCUMENT_TYPE_NODE: number;
				public static DOCUMENT_FRAGMENT_NODE: number;
				public static ELEMENT_NODE: number;
				public static DOCUMENT_POSITION_FOLLOWING: number;
				public static TEXT_NODE: number;
				public static ATTRIBUTE_NODE: number;
				public static DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC: number;
				public static ENTITY_REFERENCE_NODE: number;
				public static NOTATION_NODE: number;
				public static ENTITY_NODE: number;
				public static DOCUMENT_NODE: number;
				public static PROCESSING_INSTRUCTION_NODE: number;
				public static CDATA_SECTION_NODE: number;
				public static COMMENT_NODE: number;
				public static DOCUMENT_POSITION_DISCONNECTED: number;
				public static DOCUMENT_POSITION_CONTAINED_BY: number;
				public static DOCUMENT_POSITION_PRECEDING: number;
				public static DOCUMENT_POSITION_CONTAINS: number;
				public setAttributeNode(param0: org.w3c.dom.Attr): org.w3c.dom.Attr;
				public compareDocumentPosition(param0: org.w3c.dom.Node): number;
				public removeChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
				public isDefaultNamespace(param0: string): boolean;
				public removeAttributeNS(param0: string, param1: string): void;
				public getChildNodes(): org.w3c.dom.NodeList;
				public getElementsByTagNameNS(param0: string, param1: string): org.w3c.dom.NodeList;
				public normalize(): void;
				public getOwnerDocument(): org.w3c.dom.Document;
				public getNamespaceURI(): string;
				public getTextContent(): string;
				public setAttribute(param0: string, param1: string): void;
				public setPrefix(param0: string): void;
				public setUserData(param0: string, param1: any, param2: org.w3c.dom.UserDataHandler): any;
				public getNodeType(): number;
				public isSameNode(param0: org.w3c.dom.Node): boolean;
				public setIdAttribute(param0: string, param1: boolean): void;
				public setTextContent(param0: string): void;
				public getAttributes(): org.w3c.dom.NamedNodeMap;
				public setAttributeNodeNS(param0: org.w3c.dom.Attr): org.w3c.dom.Attr;
				public getAttributeNodeNS(param0: string, param1: string): org.w3c.dom.Attr;
				public getNodeValue(): string;
				public getFirstChild(): org.w3c.dom.Node;
				public replaceChild(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
				public getAttribute(param0: string): string;
				public getUserData(param0: string): any;
				public getAttributeNS(param0: string, param1: string): string;
				public getAttributeNode(param0: string): org.w3c.dom.Attr;
				public lookupNamespaceURI(param0: string): string;
				public getParentNode(): org.w3c.dom.Node;
				public getElementsByTagName(param0: string): org.w3c.dom.NodeList;
				public hasAttribute(param0: string): boolean;
				public hasChildNodes(): boolean;
				public lookupPrefix(param0: string): string;
				public getLocalName(): string;
				public getBaseURI(): string;
				public hasAttributes(): boolean;
				public setNodeValue(param0: string): void;
				public insertBefore(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
				public setAttributeNS(param0: string, param1: string, param2: string): void;
				public getPreviousSibling(): org.w3c.dom.Node;
				public getPrefix(): string;
				public setIdAttributeNS(param0: string, param1: string, param2: boolean): void;
				public setIdAttributeNode(param0: org.w3c.dom.Attr, param1: boolean): void;
				public appendChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
				public getSchemaTypeInfo(): org.w3c.dom.TypeInfo;
				public removeAttribute(param0: string): void;
				public getFeature(param0: string, param1: string): any;
				public getLastChild(): org.w3c.dom.Node;
				public cloneNode(param0: boolean): org.w3c.dom.Node;
				public isEqualNode(param0: org.w3c.dom.Node): boolean;
				public getNextSibling(): org.w3c.dom.Node;
				public removeAttributeNode(param0: org.w3c.dom.Attr): org.w3c.dom.Attr;
				public hasAttributeNS(param0: string, param1: string): boolean;
				public getTagName(): string;
				public getNodeName(): string;
				public isSupported(param0: string, param1: string): boolean;
			}
		}
	}
}

declare module org {
	export module w3c {
		export module dom {
			export class Entity extends java.lang.Object implements org.w3c.dom.Node {
				public static class: java.lang.Class<org.w3c.dom.Entity>;
				/**
				 * Constructs a new instance of the org.w3c.dom.Entity interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getPublicId(): string;
					getSystemId(): string;
					getNotationName(): string;
					getInputEncoding(): string;
					getXmlEncoding(): string;
					getXmlVersion(): string;
					getNodeName(): string;
					getNodeValue(): string;
					setNodeValue(param0: string): void;
					getNodeType(): number;
					getParentNode(): org.w3c.dom.Node;
					getChildNodes(): org.w3c.dom.NodeList;
					getFirstChild(): org.w3c.dom.Node;
					getLastChild(): org.w3c.dom.Node;
					getPreviousSibling(): org.w3c.dom.Node;
					getNextSibling(): org.w3c.dom.Node;
					getAttributes(): org.w3c.dom.NamedNodeMap;
					getOwnerDocument(): org.w3c.dom.Document;
					insertBefore(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
					replaceChild(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
					removeChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
					appendChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
					hasChildNodes(): boolean;
					cloneNode(param0: boolean): org.w3c.dom.Node;
					normalize(): void;
					isSupported(param0: string, param1: string): boolean;
					getNamespaceURI(): string;
					getPrefix(): string;
					setPrefix(param0: string): void;
					getLocalName(): string;
					hasAttributes(): boolean;
					getBaseURI(): string;
					compareDocumentPosition(param0: org.w3c.dom.Node): number;
					getTextContent(): string;
					setTextContent(param0: string): void;
					isSameNode(param0: org.w3c.dom.Node): boolean;
					lookupPrefix(param0: string): string;
					isDefaultNamespace(param0: string): boolean;
					lookupNamespaceURI(param0: string): string;
					isEqualNode(param0: org.w3c.dom.Node): boolean;
					getFeature(param0: string, param1: string): any;
					setUserData(param0: string, param1: any, param2: org.w3c.dom.UserDataHandler): any;
					getUserData(param0: string): any;
				});
				public constructor();
				public static DOCUMENT_TYPE_NODE: number;
				public static DOCUMENT_FRAGMENT_NODE: number;
				public static ELEMENT_NODE: number;
				public static DOCUMENT_POSITION_FOLLOWING: number;
				public static TEXT_NODE: number;
				public static ATTRIBUTE_NODE: number;
				public static DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC: number;
				public static ENTITY_REFERENCE_NODE: number;
				public static NOTATION_NODE: number;
				public static ENTITY_NODE: number;
				public static DOCUMENT_NODE: number;
				public static PROCESSING_INSTRUCTION_NODE: number;
				public static CDATA_SECTION_NODE: number;
				public static COMMENT_NODE: number;
				public static DOCUMENT_POSITION_DISCONNECTED: number;
				public static DOCUMENT_POSITION_CONTAINED_BY: number;
				public static DOCUMENT_POSITION_PRECEDING: number;
				public static DOCUMENT_POSITION_CONTAINS: number;
				public getInputEncoding(): string;
				public getXmlEncoding(): string;
				public compareDocumentPosition(param0: org.w3c.dom.Node): number;
				public hasChildNodes(): boolean;
				public removeChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
				public lookupPrefix(param0: string): string;
				public isDefaultNamespace(param0: string): boolean;
				public getLocalName(): string;
				public getChildNodes(): org.w3c.dom.NodeList;
				public getBaseURI(): string;
				public hasAttributes(): boolean;
				public getPublicId(): string;
				public normalize(): void;
				public getOwnerDocument(): org.w3c.dom.Document;
				public setNodeValue(param0: string): void;
				public getNamespaceURI(): string;
				public getSystemId(): string;
				public getTextContent(): string;
				public insertBefore(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
				public setPrefix(param0: string): void;
				public setUserData(param0: string, param1: any, param2: org.w3c.dom.UserDataHandler): any;
				public getNodeType(): number;
				public getNotationName(): string;
				public isSameNode(param0: org.w3c.dom.Node): boolean;
				public getPreviousSibling(): org.w3c.dom.Node;
				public getPrefix(): string;
				public setTextContent(param0: string): void;
				public getAttributes(): org.w3c.dom.NamedNodeMap;
				public appendChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
				public getNodeValue(): string;
				public getXmlVersion(): string;
				public getFirstChild(): org.w3c.dom.Node;
				public replaceChild(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
				public getFeature(param0: string, param1: string): any;
				public getLastChild(): org.w3c.dom.Node;
				public getUserData(param0: string): any;
				public cloneNode(param0: boolean): org.w3c.dom.Node;
				public isEqualNode(param0: org.w3c.dom.Node): boolean;
				public getNextSibling(): org.w3c.dom.Node;
				public lookupNamespaceURI(param0: string): string;
				public getNodeName(): string;
				public getParentNode(): org.w3c.dom.Node;
				public isSupported(param0: string, param1: string): boolean;
			}
		}
	}
}

declare module org {
	export module w3c {
		export module dom {
			export class EntityReference extends java.lang.Object implements org.w3c.dom.Node {
				public static class: java.lang.Class<org.w3c.dom.EntityReference>;
				/**
				 * Constructs a new instance of the org.w3c.dom.EntityReference interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getNodeName(): string;
					getNodeValue(): string;
					setNodeValue(param0: string): void;
					getNodeType(): number;
					getParentNode(): org.w3c.dom.Node;
					getChildNodes(): org.w3c.dom.NodeList;
					getFirstChild(): org.w3c.dom.Node;
					getLastChild(): org.w3c.dom.Node;
					getPreviousSibling(): org.w3c.dom.Node;
					getNextSibling(): org.w3c.dom.Node;
					getAttributes(): org.w3c.dom.NamedNodeMap;
					getOwnerDocument(): org.w3c.dom.Document;
					insertBefore(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
					replaceChild(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
					removeChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
					appendChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
					hasChildNodes(): boolean;
					cloneNode(param0: boolean): org.w3c.dom.Node;
					normalize(): void;
					isSupported(param0: string, param1: string): boolean;
					getNamespaceURI(): string;
					getPrefix(): string;
					setPrefix(param0: string): void;
					getLocalName(): string;
					hasAttributes(): boolean;
					getBaseURI(): string;
					compareDocumentPosition(param0: org.w3c.dom.Node): number;
					getTextContent(): string;
					setTextContent(param0: string): void;
					isSameNode(param0: org.w3c.dom.Node): boolean;
					lookupPrefix(param0: string): string;
					isDefaultNamespace(param0: string): boolean;
					lookupNamespaceURI(param0: string): string;
					isEqualNode(param0: org.w3c.dom.Node): boolean;
					getFeature(param0: string, param1: string): any;
					setUserData(param0: string, param1: any, param2: org.w3c.dom.UserDataHandler): any;
					getUserData(param0: string): any;
				});
				public constructor();
				public static DOCUMENT_TYPE_NODE: number;
				public static DOCUMENT_FRAGMENT_NODE: number;
				public static ELEMENT_NODE: number;
				public static DOCUMENT_POSITION_FOLLOWING: number;
				public static TEXT_NODE: number;
				public static ATTRIBUTE_NODE: number;
				public static DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC: number;
				public static ENTITY_REFERENCE_NODE: number;
				public static NOTATION_NODE: number;
				public static ENTITY_NODE: number;
				public static DOCUMENT_NODE: number;
				public static PROCESSING_INSTRUCTION_NODE: number;
				public static CDATA_SECTION_NODE: number;
				public static COMMENT_NODE: number;
				public static DOCUMENT_POSITION_DISCONNECTED: number;
				public static DOCUMENT_POSITION_CONTAINED_BY: number;
				public static DOCUMENT_POSITION_PRECEDING: number;
				public static DOCUMENT_POSITION_CONTAINS: number;
				public compareDocumentPosition(param0: org.w3c.dom.Node): number;
				public hasChildNodes(): boolean;
				public removeChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
				public lookupPrefix(param0: string): string;
				public isDefaultNamespace(param0: string): boolean;
				public getLocalName(): string;
				public getChildNodes(): org.w3c.dom.NodeList;
				public getBaseURI(): string;
				public hasAttributes(): boolean;
				public normalize(): void;
				public getOwnerDocument(): org.w3c.dom.Document;
				public setNodeValue(param0: string): void;
				public getNamespaceURI(): string;
				public getTextContent(): string;
				public insertBefore(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
				public setPrefix(param0: string): void;
				public setUserData(param0: string, param1: any, param2: org.w3c.dom.UserDataHandler): any;
				public getNodeType(): number;
				public isSameNode(param0: org.w3c.dom.Node): boolean;
				public getPreviousSibling(): org.w3c.dom.Node;
				public getPrefix(): string;
				public setTextContent(param0: string): void;
				public getAttributes(): org.w3c.dom.NamedNodeMap;
				public appendChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
				public getNodeValue(): string;
				public getFirstChild(): org.w3c.dom.Node;
				public replaceChild(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
				public getFeature(param0: string, param1: string): any;
				public getLastChild(): org.w3c.dom.Node;
				public getUserData(param0: string): any;
				public cloneNode(param0: boolean): org.w3c.dom.Node;
				public isEqualNode(param0: org.w3c.dom.Node): boolean;
				public getNextSibling(): org.w3c.dom.Node;
				public lookupNamespaceURI(param0: string): string;
				public getNodeName(): string;
				public getParentNode(): org.w3c.dom.Node;
				public isSupported(param0: string, param1: string): boolean;
			}
		}
	}
}

declare module org {
	export module w3c {
		export module dom {
			export class NameList extends java.lang.Object {
				public static class: java.lang.Class<org.w3c.dom.NameList>;
				/**
				 * Constructs a new instance of the org.w3c.dom.NameList interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getName(param0: number): string;
					getNamespaceURI(param0: number): string;
					getLength(): number;
					contains(param0: string): boolean;
					containsNS(param0: string, param1: string): boolean;
				});
				public constructor();
				public getName(param0: number): string;
				public contains(param0: string): boolean;
				public getNamespaceURI(param0: number): string;
				public containsNS(param0: string, param1: string): boolean;
				public getLength(): number;
			}
		}
	}
}

declare module org {
	export module w3c {
		export module dom {
			export class NamedNodeMap extends java.lang.Object {
				public static class: java.lang.Class<org.w3c.dom.NamedNodeMap>;
				/**
				 * Constructs a new instance of the org.w3c.dom.NamedNodeMap interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getNamedItem(param0: string): org.w3c.dom.Node;
					setNamedItem(param0: org.w3c.dom.Node): org.w3c.dom.Node;
					removeNamedItem(param0: string): org.w3c.dom.Node;
					item(param0: number): org.w3c.dom.Node;
					getLength(): number;
					getNamedItemNS(param0: string, param1: string): org.w3c.dom.Node;
					setNamedItemNS(param0: org.w3c.dom.Node): org.w3c.dom.Node;
					removeNamedItemNS(param0: string, param1: string): org.w3c.dom.Node;
				});
				public constructor();
				public item(param0: number): org.w3c.dom.Node;
				public setNamedItem(param0: org.w3c.dom.Node): org.w3c.dom.Node;
				public setNamedItemNS(param0: org.w3c.dom.Node): org.w3c.dom.Node;
				public removeNamedItemNS(param0: string, param1: string): org.w3c.dom.Node;
				public removeNamedItem(param0: string): org.w3c.dom.Node;
				public getNamedItemNS(param0: string, param1: string): org.w3c.dom.Node;
				public getLength(): number;
				public getNamedItem(param0: string): org.w3c.dom.Node;
			}
		}
	}
}

declare module org {
	export module w3c {
		export module dom {
			export class Node extends java.lang.Object {
				public static class: java.lang.Class<org.w3c.dom.Node>;
				/**
				 * Constructs a new instance of the org.w3c.dom.Node interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getNodeName(): string;
					getNodeValue(): string;
					setNodeValue(param0: string): void;
					getNodeType(): number;
					getParentNode(): org.w3c.dom.Node;
					getChildNodes(): org.w3c.dom.NodeList;
					getFirstChild(): org.w3c.dom.Node;
					getLastChild(): org.w3c.dom.Node;
					getPreviousSibling(): org.w3c.dom.Node;
					getNextSibling(): org.w3c.dom.Node;
					getAttributes(): org.w3c.dom.NamedNodeMap;
					getOwnerDocument(): org.w3c.dom.Document;
					insertBefore(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
					replaceChild(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
					removeChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
					appendChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
					hasChildNodes(): boolean;
					cloneNode(param0: boolean): org.w3c.dom.Node;
					normalize(): void;
					isSupported(param0: string, param1: string): boolean;
					getNamespaceURI(): string;
					getPrefix(): string;
					setPrefix(param0: string): void;
					getLocalName(): string;
					hasAttributes(): boolean;
					getBaseURI(): string;
					compareDocumentPosition(param0: org.w3c.dom.Node): number;
					getTextContent(): string;
					setTextContent(param0: string): void;
					isSameNode(param0: org.w3c.dom.Node): boolean;
					lookupPrefix(param0: string): string;
					isDefaultNamespace(param0: string): boolean;
					lookupNamespaceURI(param0: string): string;
					isEqualNode(param0: org.w3c.dom.Node): boolean;
					getFeature(param0: string, param1: string): any;
					setUserData(param0: string, param1: any, param2: org.w3c.dom.UserDataHandler): any;
					getUserData(param0: string): any;
				});
				public constructor();
				public static DOCUMENT_TYPE_NODE: number;
				public static DOCUMENT_FRAGMENT_NODE: number;
				public static ELEMENT_NODE: number;
				public static DOCUMENT_POSITION_FOLLOWING: number;
				public static TEXT_NODE: number;
				public static ATTRIBUTE_NODE: number;
				public static DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC: number;
				public static ENTITY_REFERENCE_NODE: number;
				public static NOTATION_NODE: number;
				public static ENTITY_NODE: number;
				public static DOCUMENT_NODE: number;
				public static PROCESSING_INSTRUCTION_NODE: number;
				public static CDATA_SECTION_NODE: number;
				public static COMMENT_NODE: number;
				public static DOCUMENT_POSITION_DISCONNECTED: number;
				public static DOCUMENT_POSITION_CONTAINED_BY: number;
				public static DOCUMENT_POSITION_PRECEDING: number;
				public static DOCUMENT_POSITION_CONTAINS: number;
				public compareDocumentPosition(param0: org.w3c.dom.Node): number;
				public hasChildNodes(): boolean;
				public removeChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
				public lookupPrefix(param0: string): string;
				public isDefaultNamespace(param0: string): boolean;
				public getLocalName(): string;
				public getChildNodes(): org.w3c.dom.NodeList;
				public getBaseURI(): string;
				public hasAttributes(): boolean;
				public normalize(): void;
				public getOwnerDocument(): org.w3c.dom.Document;
				public setNodeValue(param0: string): void;
				public getNamespaceURI(): string;
				public getTextContent(): string;
				public insertBefore(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
				public setPrefix(param0: string): void;
				public setUserData(param0: string, param1: any, param2: org.w3c.dom.UserDataHandler): any;
				public getNodeType(): number;
				public isSameNode(param0: org.w3c.dom.Node): boolean;
				public getPreviousSibling(): org.w3c.dom.Node;
				public getPrefix(): string;
				public setTextContent(param0: string): void;
				public getAttributes(): org.w3c.dom.NamedNodeMap;
				public appendChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
				public getNodeValue(): string;
				public getFirstChild(): org.w3c.dom.Node;
				public replaceChild(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
				public getFeature(param0: string, param1: string): any;
				public getLastChild(): org.w3c.dom.Node;
				public getUserData(param0: string): any;
				public cloneNode(param0: boolean): org.w3c.dom.Node;
				public isEqualNode(param0: org.w3c.dom.Node): boolean;
				public getNextSibling(): org.w3c.dom.Node;
				public lookupNamespaceURI(param0: string): string;
				public getNodeName(): string;
				public getParentNode(): org.w3c.dom.Node;
				public isSupported(param0: string, param1: string): boolean;
			}
		}
	}
}

declare module org {
	export module w3c {
		export module dom {
			export class NodeList extends java.lang.Object {
				public static class: java.lang.Class<org.w3c.dom.NodeList>;
				/**
				 * Constructs a new instance of the org.w3c.dom.NodeList interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					item(param0: number): org.w3c.dom.Node;
					getLength(): number;
				});
				public constructor();
				public item(param0: number): org.w3c.dom.Node;
				public getLength(): number;
			}
		}
	}
}

declare module org {
	export module w3c {
		export module dom {
			export class Notation extends java.lang.Object implements org.w3c.dom.Node {
				public static class: java.lang.Class<org.w3c.dom.Notation>;
				/**
				 * Constructs a new instance of the org.w3c.dom.Notation interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getPublicId(): string;
					getSystemId(): string;
					getNodeName(): string;
					getNodeValue(): string;
					setNodeValue(param0: string): void;
					getNodeType(): number;
					getParentNode(): org.w3c.dom.Node;
					getChildNodes(): org.w3c.dom.NodeList;
					getFirstChild(): org.w3c.dom.Node;
					getLastChild(): org.w3c.dom.Node;
					getPreviousSibling(): org.w3c.dom.Node;
					getNextSibling(): org.w3c.dom.Node;
					getAttributes(): org.w3c.dom.NamedNodeMap;
					getOwnerDocument(): org.w3c.dom.Document;
					insertBefore(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
					replaceChild(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
					removeChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
					appendChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
					hasChildNodes(): boolean;
					cloneNode(param0: boolean): org.w3c.dom.Node;
					normalize(): void;
					isSupported(param0: string, param1: string): boolean;
					getNamespaceURI(): string;
					getPrefix(): string;
					setPrefix(param0: string): void;
					getLocalName(): string;
					hasAttributes(): boolean;
					getBaseURI(): string;
					compareDocumentPosition(param0: org.w3c.dom.Node): number;
					getTextContent(): string;
					setTextContent(param0: string): void;
					isSameNode(param0: org.w3c.dom.Node): boolean;
					lookupPrefix(param0: string): string;
					isDefaultNamespace(param0: string): boolean;
					lookupNamespaceURI(param0: string): string;
					isEqualNode(param0: org.w3c.dom.Node): boolean;
					getFeature(param0: string, param1: string): any;
					setUserData(param0: string, param1: any, param2: org.w3c.dom.UserDataHandler): any;
					getUserData(param0: string): any;
				});
				public constructor();
				public static DOCUMENT_TYPE_NODE: number;
				public static DOCUMENT_FRAGMENT_NODE: number;
				public static ELEMENT_NODE: number;
				public static DOCUMENT_POSITION_FOLLOWING: number;
				public static TEXT_NODE: number;
				public static ATTRIBUTE_NODE: number;
				public static DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC: number;
				public static ENTITY_REFERENCE_NODE: number;
				public static NOTATION_NODE: number;
				public static ENTITY_NODE: number;
				public static DOCUMENT_NODE: number;
				public static PROCESSING_INSTRUCTION_NODE: number;
				public static CDATA_SECTION_NODE: number;
				public static COMMENT_NODE: number;
				public static DOCUMENT_POSITION_DISCONNECTED: number;
				public static DOCUMENT_POSITION_CONTAINED_BY: number;
				public static DOCUMENT_POSITION_PRECEDING: number;
				public static DOCUMENT_POSITION_CONTAINS: number;
				public compareDocumentPosition(param0: org.w3c.dom.Node): number;
				public hasChildNodes(): boolean;
				public removeChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
				public lookupPrefix(param0: string): string;
				public isDefaultNamespace(param0: string): boolean;
				public getLocalName(): string;
				public getChildNodes(): org.w3c.dom.NodeList;
				public getBaseURI(): string;
				public hasAttributes(): boolean;
				public getPublicId(): string;
				public normalize(): void;
				public getOwnerDocument(): org.w3c.dom.Document;
				public setNodeValue(param0: string): void;
				public getNamespaceURI(): string;
				public getSystemId(): string;
				public getTextContent(): string;
				public insertBefore(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
				public setPrefix(param0: string): void;
				public setUserData(param0: string, param1: any, param2: org.w3c.dom.UserDataHandler): any;
				public getNodeType(): number;
				public isSameNode(param0: org.w3c.dom.Node): boolean;
				public getPreviousSibling(): org.w3c.dom.Node;
				public getPrefix(): string;
				public setTextContent(param0: string): void;
				public getAttributes(): org.w3c.dom.NamedNodeMap;
				public appendChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
				public getNodeValue(): string;
				public getFirstChild(): org.w3c.dom.Node;
				public replaceChild(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
				public getFeature(param0: string, param1: string): any;
				public getLastChild(): org.w3c.dom.Node;
				public getUserData(param0: string): any;
				public cloneNode(param0: boolean): org.w3c.dom.Node;
				public isEqualNode(param0: org.w3c.dom.Node): boolean;
				public getNextSibling(): org.w3c.dom.Node;
				public lookupNamespaceURI(param0: string): string;
				public getNodeName(): string;
				public getParentNode(): org.w3c.dom.Node;
				public isSupported(param0: string, param1: string): boolean;
			}
		}
	}
}

declare module org {
	export module w3c {
		export module dom {
			export class ProcessingInstruction extends java.lang.Object implements org.w3c.dom.Node {
				public static class: java.lang.Class<org.w3c.dom.ProcessingInstruction>;
				/**
				 * Constructs a new instance of the org.w3c.dom.ProcessingInstruction interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getTarget(): string;
					getData(): string;
					setData(param0: string): void;
					getNodeName(): string;
					getNodeValue(): string;
					setNodeValue(param0: string): void;
					getNodeType(): number;
					getParentNode(): org.w3c.dom.Node;
					getChildNodes(): org.w3c.dom.NodeList;
					getFirstChild(): org.w3c.dom.Node;
					getLastChild(): org.w3c.dom.Node;
					getPreviousSibling(): org.w3c.dom.Node;
					getNextSibling(): org.w3c.dom.Node;
					getAttributes(): org.w3c.dom.NamedNodeMap;
					getOwnerDocument(): org.w3c.dom.Document;
					insertBefore(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
					replaceChild(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
					removeChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
					appendChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
					hasChildNodes(): boolean;
					cloneNode(param0: boolean): org.w3c.dom.Node;
					normalize(): void;
					isSupported(param0: string, param1: string): boolean;
					getNamespaceURI(): string;
					getPrefix(): string;
					setPrefix(param0: string): void;
					getLocalName(): string;
					hasAttributes(): boolean;
					getBaseURI(): string;
					compareDocumentPosition(param0: org.w3c.dom.Node): number;
					getTextContent(): string;
					setTextContent(param0: string): void;
					isSameNode(param0: org.w3c.dom.Node): boolean;
					lookupPrefix(param0: string): string;
					isDefaultNamespace(param0: string): boolean;
					lookupNamespaceURI(param0: string): string;
					isEqualNode(param0: org.w3c.dom.Node): boolean;
					getFeature(param0: string, param1: string): any;
					setUserData(param0: string, param1: any, param2: org.w3c.dom.UserDataHandler): any;
					getUserData(param0: string): any;
				});
				public constructor();
				public static DOCUMENT_TYPE_NODE: number;
				public static DOCUMENT_FRAGMENT_NODE: number;
				public static ELEMENT_NODE: number;
				public static DOCUMENT_POSITION_FOLLOWING: number;
				public static TEXT_NODE: number;
				public static ATTRIBUTE_NODE: number;
				public static DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC: number;
				public static ENTITY_REFERENCE_NODE: number;
				public static NOTATION_NODE: number;
				public static ENTITY_NODE: number;
				public static DOCUMENT_NODE: number;
				public static PROCESSING_INSTRUCTION_NODE: number;
				public static CDATA_SECTION_NODE: number;
				public static COMMENT_NODE: number;
				public static DOCUMENT_POSITION_DISCONNECTED: number;
				public static DOCUMENT_POSITION_CONTAINED_BY: number;
				public static DOCUMENT_POSITION_PRECEDING: number;
				public static DOCUMENT_POSITION_CONTAINS: number;
				public compareDocumentPosition(param0: org.w3c.dom.Node): number;
				public setData(param0: string): void;
				public hasChildNodes(): boolean;
				public removeChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
				public lookupPrefix(param0: string): string;
				public isDefaultNamespace(param0: string): boolean;
				public getLocalName(): string;
				public getChildNodes(): org.w3c.dom.NodeList;
				public getBaseURI(): string;
				public hasAttributes(): boolean;
				public normalize(): void;
				public getOwnerDocument(): org.w3c.dom.Document;
				public setNodeValue(param0: string): void;
				public getNamespaceURI(): string;
				public getTextContent(): string;
				public insertBefore(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
				public setPrefix(param0: string): void;
				public setUserData(param0: string, param1: any, param2: org.w3c.dom.UserDataHandler): any;
				public getNodeType(): number;
				public isSameNode(param0: org.w3c.dom.Node): boolean;
				public getPreviousSibling(): org.w3c.dom.Node;
				public getPrefix(): string;
				public setTextContent(param0: string): void;
				public getTarget(): string;
				public getAttributes(): org.w3c.dom.NamedNodeMap;
				public appendChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
				public getNodeValue(): string;
				public getFirstChild(): org.w3c.dom.Node;
				public replaceChild(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
				public getFeature(param0: string, param1: string): any;
				public getLastChild(): org.w3c.dom.Node;
				public getUserData(param0: string): any;
				public getData(): string;
				public cloneNode(param0: boolean): org.w3c.dom.Node;
				public isEqualNode(param0: org.w3c.dom.Node): boolean;
				public getNextSibling(): org.w3c.dom.Node;
				public lookupNamespaceURI(param0: string): string;
				public getNodeName(): string;
				public getParentNode(): org.w3c.dom.Node;
				public isSupported(param0: string, param1: string): boolean;
			}
		}
	}
}

declare module org {
	export module w3c {
		export module dom {
			export class Text extends java.lang.Object implements org.w3c.dom.CharacterData {
				public static class: java.lang.Class<org.w3c.dom.Text>;
				/**
				 * Constructs a new instance of the org.w3c.dom.Text interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					splitText(param0: number): org.w3c.dom.Text;
					isElementContentWhitespace(): boolean;
					getWholeText(): string;
					replaceWholeText(param0: string): org.w3c.dom.Text;
					getData(): string;
					setData(param0: string): void;
					getLength(): number;
					substringData(param0: number, param1: number): string;
					appendData(param0: string): void;
					insertData(param0: number, param1: string): void;
					deleteData(param0: number, param1: number): void;
					replaceData(param0: number, param1: number, param2: string): void;
					getNodeName(): string;
					getNodeValue(): string;
					setNodeValue(param0: string): void;
					getNodeType(): number;
					getParentNode(): org.w3c.dom.Node;
					getChildNodes(): org.w3c.dom.NodeList;
					getFirstChild(): org.w3c.dom.Node;
					getLastChild(): org.w3c.dom.Node;
					getPreviousSibling(): org.w3c.dom.Node;
					getNextSibling(): org.w3c.dom.Node;
					getAttributes(): org.w3c.dom.NamedNodeMap;
					getOwnerDocument(): org.w3c.dom.Document;
					insertBefore(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
					replaceChild(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
					removeChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
					appendChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
					hasChildNodes(): boolean;
					cloneNode(param0: boolean): org.w3c.dom.Node;
					normalize(): void;
					isSupported(param0: string, param1: string): boolean;
					getNamespaceURI(): string;
					getPrefix(): string;
					setPrefix(param0: string): void;
					getLocalName(): string;
					hasAttributes(): boolean;
					getBaseURI(): string;
					compareDocumentPosition(param0: org.w3c.dom.Node): number;
					getTextContent(): string;
					setTextContent(param0: string): void;
					isSameNode(param0: org.w3c.dom.Node): boolean;
					lookupPrefix(param0: string): string;
					isDefaultNamespace(param0: string): boolean;
					lookupNamespaceURI(param0: string): string;
					isEqualNode(param0: org.w3c.dom.Node): boolean;
					getFeature(param0: string, param1: string): any;
					setUserData(param0: string, param1: any, param2: org.w3c.dom.UserDataHandler): any;
					getUserData(param0: string): any;
				});
				public constructor();
				public static DOCUMENT_TYPE_NODE: number;
				public static DOCUMENT_FRAGMENT_NODE: number;
				public static ELEMENT_NODE: number;
				public static DOCUMENT_POSITION_FOLLOWING: number;
				public static TEXT_NODE: number;
				public static ATTRIBUTE_NODE: number;
				public static DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC: number;
				public static ENTITY_REFERENCE_NODE: number;
				public static NOTATION_NODE: number;
				public static ENTITY_NODE: number;
				public static DOCUMENT_NODE: number;
				public static PROCESSING_INSTRUCTION_NODE: number;
				public static CDATA_SECTION_NODE: number;
				public static COMMENT_NODE: number;
				public static DOCUMENT_POSITION_DISCONNECTED: number;
				public static DOCUMENT_POSITION_CONTAINED_BY: number;
				public static DOCUMENT_POSITION_PRECEDING: number;
				public static DOCUMENT_POSITION_CONTAINS: number;
				public compareDocumentPosition(param0: org.w3c.dom.Node): number;
				public splitText(param0: number): org.w3c.dom.Text;
				public removeChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
				public getWholeText(): string;
				public isDefaultNamespace(param0: string): boolean;
				public appendData(param0: string): void;
				public getChildNodes(): org.w3c.dom.NodeList;
				public normalize(): void;
				public getOwnerDocument(): org.w3c.dom.Document;
				public getNamespaceURI(): string;
				public getTextContent(): string;
				public setPrefix(param0: string): void;
				public setUserData(param0: string, param1: any, param2: org.w3c.dom.UserDataHandler): any;
				public getNodeType(): number;
				public isSameNode(param0: org.w3c.dom.Node): boolean;
				public setTextContent(param0: string): void;
				public getAttributes(): org.w3c.dom.NamedNodeMap;
				public getNodeValue(): string;
				public getFirstChild(): org.w3c.dom.Node;
				public replaceChild(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
				public getUserData(param0: string): any;
				public lookupNamespaceURI(param0: string): string;
				public getParentNode(): org.w3c.dom.Node;
				public setData(param0: string): void;
				public hasChildNodes(): boolean;
				public isElementContentWhitespace(): boolean;
				public lookupPrefix(param0: string): string;
				public replaceWholeText(param0: string): org.w3c.dom.Text;
				public getLocalName(): string;
				public substringData(param0: number, param1: number): string;
				public getBaseURI(): string;
				public hasAttributes(): boolean;
				public replaceData(param0: number, param1: number, param2: string): void;
				public setNodeValue(param0: string): void;
				public insertBefore(param0: org.w3c.dom.Node, param1: org.w3c.dom.Node): org.w3c.dom.Node;
				public getPreviousSibling(): org.w3c.dom.Node;
				public getPrefix(): string;
				public insertData(param0: number, param1: string): void;
				public appendChild(param0: org.w3c.dom.Node): org.w3c.dom.Node;
				public getLength(): number;
				public getFeature(param0: string, param1: string): any;
				public getLastChild(): org.w3c.dom.Node;
				public getData(): string;
				public cloneNode(param0: boolean): org.w3c.dom.Node;
				public isEqualNode(param0: org.w3c.dom.Node): boolean;
				public getNextSibling(): org.w3c.dom.Node;
				public deleteData(param0: number, param1: number): void;
				public getNodeName(): string;
				public isSupported(param0: string, param1: string): boolean;
			}
		}
	}
}

declare module org {
	export module w3c {
		export module dom {
			export class TypeInfo extends java.lang.Object {
				public static class: java.lang.Class<org.w3c.dom.TypeInfo>;
				/**
				 * Constructs a new instance of the org.w3c.dom.TypeInfo interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getTypeName(): string;
					getTypeNamespace(): string;
					isDerivedFrom(param0: string, param1: string, param2: number): boolean;
				});
				public constructor();
				public static DERIVATION_RESTRICTION: number;
				public static DERIVATION_LIST: number;
				public static DERIVATION_UNION: number;
				public static DERIVATION_EXTENSION: number;
				public getTypeName(): string;
				public getTypeNamespace(): string;
				public isDerivedFrom(param0: string, param1: string, param2: number): boolean;
			}
		}
	}
}

declare module org {
	export module w3c {
		export module dom {
			export class UserDataHandler extends java.lang.Object {
				public static class: java.lang.Class<org.w3c.dom.UserDataHandler>;
				/**
				 * Constructs a new instance of the org.w3c.dom.UserDataHandler interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					handle(param0: number, param1: string, param2: any, param3: org.w3c.dom.Node, param4: org.w3c.dom.Node): void;
				});
				public constructor();
				public static NODE_DELETED: number;
				public static NODE_RENAMED: number;
				public static NODE_IMPORTED: number;
				public static NODE_ADOPTED: number;
				public static NODE_CLONED: number;
				public handle(param0: number, param1: string, param2: any, param3: org.w3c.dom.Node, param4: org.w3c.dom.Node): void;
			}
		}
	}
}

declare module org {
	export module w3c {
		export module dom {
			export module ls {
				export class DOMImplementationLS extends java.lang.Object {
					public static class: java.lang.Class<org.w3c.dom.ls.DOMImplementationLS>;
					/**
					 * Constructs a new instance of the org.w3c.dom.ls.DOMImplementationLS interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						createLSParser(param0: number, param1: string): org.w3c.dom.ls.LSParser;
						createLSSerializer(): org.w3c.dom.ls.LSSerializer;
						createLSInput(): org.w3c.dom.ls.LSInput;
						createLSOutput(): org.w3c.dom.ls.LSOutput;
					});
					public constructor();
					public static MODE_SYNCHRONOUS: number;
					public static MODE_ASYNCHRONOUS: number;
					public createLSInput(): org.w3c.dom.ls.LSInput;
					public createLSParser(param0: number, param1: string): org.w3c.dom.ls.LSParser;
					public createLSOutput(): org.w3c.dom.ls.LSOutput;
					public createLSSerializer(): org.w3c.dom.ls.LSSerializer;
				}
			}
		}
	}
}

declare module org {
	export module w3c {
		export module dom {
			export module ls {
				export class LSException extends java.lang.RuntimeException {
					public static class: java.lang.Class<org.w3c.dom.ls.LSException>;
					public code: number;
					public static PARSE_ERR: number;
					public static SERIALIZE_ERR: number;
					public constructor(param0: string, param1: java.lang.Throwable);
					public constructor(param0: string);
					public constructor(param0: java.lang.Throwable);
					public constructor();
					public constructor(param0: number, param1: string);
				}
			}
		}
	}
}

declare module org {
	export module w3c {
		export module dom {
			export module ls {
				export class LSInput extends java.lang.Object {
					public static class: java.lang.Class<org.w3c.dom.ls.LSInput>;
					/**
					 * Constructs a new instance of the org.w3c.dom.ls.LSInput interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						getCharacterStream(): java.io.Reader;
						setCharacterStream(param0: java.io.Reader): void;
						getByteStream(): java.io.InputStream;
						setByteStream(param0: java.io.InputStream): void;
						getStringData(): string;
						setStringData(param0: string): void;
						getSystemId(): string;
						setSystemId(param0: string): void;
						getPublicId(): string;
						setPublicId(param0: string): void;
						getBaseURI(): string;
						setBaseURI(param0: string): void;
						getEncoding(): string;
						setEncoding(param0: string): void;
						getCertifiedText(): boolean;
						setCertifiedText(param0: boolean): void;
					});
					public constructor();
					public getCharacterStream(): java.io.Reader;
					public setEncoding(param0: string): void;
					public setStringData(param0: string): void;
					public getPublicId(): string;
					public getEncoding(): string;
					public setPublicId(param0: string): void;
					public getCertifiedText(): boolean;
					public getByteStream(): java.io.InputStream;
					public getBaseURI(): string;
					public getStringData(): string;
					public setCertifiedText(param0: boolean): void;
					public setByteStream(param0: java.io.InputStream): void;
					public setBaseURI(param0: string): void;
					public setCharacterStream(param0: java.io.Reader): void;
					public getSystemId(): string;
					public setSystemId(param0: string): void;
				}
			}
		}
	}
}

declare module org {
	export module w3c {
		export module dom {
			export module ls {
				export class LSOutput extends java.lang.Object {
					public static class: java.lang.Class<org.w3c.dom.ls.LSOutput>;
					/**
					 * Constructs a new instance of the org.w3c.dom.ls.LSOutput interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						getCharacterStream(): java.io.Writer;
						setCharacterStream(param0: java.io.Writer): void;
						getByteStream(): java.io.OutputStream;
						setByteStream(param0: java.io.OutputStream): void;
						getSystemId(): string;
						setSystemId(param0: string): void;
						getEncoding(): string;
						setEncoding(param0: string): void;
					});
					public constructor();
					public setByteStream(param0: java.io.OutputStream): void;
					public setEncoding(param0: string): void;
					public getEncoding(): string;
					public getCharacterStream(): java.io.Writer;
					public setCharacterStream(param0: java.io.Writer): void;
					public getSystemId(): string;
					public setSystemId(param0: string): void;
					public getByteStream(): java.io.OutputStream;
				}
			}
		}
	}
}

declare module org {
	export module w3c {
		export module dom {
			export module ls {
				export class LSParser extends java.lang.Object {
					public static class: java.lang.Class<org.w3c.dom.ls.LSParser>;
					/**
					 * Constructs a new instance of the org.w3c.dom.ls.LSParser interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						getDomConfig(): org.w3c.dom.DOMConfiguration;
						getFilter(): org.w3c.dom.ls.LSParserFilter;
						setFilter(param0: org.w3c.dom.ls.LSParserFilter): void;
						getAsync(): boolean;
						getBusy(): boolean;
						parse(param0: org.w3c.dom.ls.LSInput): org.w3c.dom.Document;
						parseURI(param0: string): org.w3c.dom.Document;
						parseWithContext(param0: org.w3c.dom.ls.LSInput, param1: org.w3c.dom.Node, param2: number): org.w3c.dom.Node;
						abort(): void;
					});
					public constructor();
					public static ACTION_REPLACE_CHILDREN: number;
					public static ACTION_INSERT_AFTER: number;
					public static ACTION_INSERT_BEFORE: number;
					public static ACTION_APPEND_AS_CHILDREN: number;
					public static ACTION_REPLACE: number;
					public setFilter(param0: org.w3c.dom.ls.LSParserFilter): void;
					public parse(param0: org.w3c.dom.ls.LSInput): org.w3c.dom.Document;
					public getAsync(): boolean;
					public getDomConfig(): org.w3c.dom.DOMConfiguration;
					public getBusy(): boolean;
					public getFilter(): org.w3c.dom.ls.LSParserFilter;
					public parseWithContext(param0: org.w3c.dom.ls.LSInput, param1: org.w3c.dom.Node, param2: number): org.w3c.dom.Node;
					public abort(): void;
					public parseURI(param0: string): org.w3c.dom.Document;
				}
			}
		}
	}
}

declare module org {
	export module w3c {
		export module dom {
			export module ls {
				export class LSParserFilter extends java.lang.Object {
					public static class: java.lang.Class<org.w3c.dom.ls.LSParserFilter>;
					/**
					 * Constructs a new instance of the org.w3c.dom.ls.LSParserFilter interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						startElement(param0: org.w3c.dom.Element): number;
						acceptNode(param0: org.w3c.dom.Node): number;
						getWhatToShow(): number;
					});
					public constructor();
					public static FILTER_ACCEPT: number;
					public static FILTER_REJECT: number;
					public static FILTER_INTERRUPT: number;
					public static FILTER_SKIP: number;
					public acceptNode(param0: org.w3c.dom.Node): number;
					public getWhatToShow(): number;
					public startElement(param0: org.w3c.dom.Element): number;
				}
			}
		}
	}
}

declare module org {
	export module w3c {
		export module dom {
			export module ls {
				export class LSResourceResolver extends java.lang.Object {
					public static class: java.lang.Class<org.w3c.dom.ls.LSResourceResolver>;
					/**
					 * Constructs a new instance of the org.w3c.dom.ls.LSResourceResolver interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						resolveResource(param0: string, param1: string, param2: string, param3: string, param4: string): org.w3c.dom.ls.LSInput;
					});
					public constructor();
					public resolveResource(param0: string, param1: string, param2: string, param3: string, param4: string): org.w3c.dom.ls.LSInput;
				}
			}
		}
	}
}

declare module org {
	export module w3c {
		export module dom {
			export module ls {
				export class LSSerializer extends java.lang.Object {
					public static class: java.lang.Class<org.w3c.dom.ls.LSSerializer>;
					/**
					 * Constructs a new instance of the org.w3c.dom.ls.LSSerializer interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						getDomConfig(): org.w3c.dom.DOMConfiguration;
						getNewLine(): string;
						setNewLine(param0: string): void;
						write(param0: org.w3c.dom.Node, param1: org.w3c.dom.ls.LSOutput): boolean;
						writeToURI(param0: org.w3c.dom.Node, param1: string): boolean;
						writeToString(param0: org.w3c.dom.Node): string;
					});
					public constructor();
					public writeToURI(param0: org.w3c.dom.Node, param1: string): boolean;
					public setNewLine(param0: string): void;
					public writeToString(param0: org.w3c.dom.Node): string;
					public getNewLine(): string;
					public write(param0: org.w3c.dom.Node, param1: org.w3c.dom.ls.LSOutput): boolean;
					public getDomConfig(): org.w3c.dom.DOMConfiguration;
				}
			}
		}
	}
}

declare module org {
	export module xml {
		export module sax {
			export class AttributeList extends java.lang.Object {
				public static class: java.lang.Class<org.xml.sax.AttributeList>;
				/**
				 * Constructs a new instance of the org.xml.sax.AttributeList interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getLength(): number;
					getName(param0: number): string;
					getType(param0: number): string;
					getValue(param0: number): string;
					getType(param0: string): string;
					getValue(param0: string): string;
				});
				public constructor();
				public getName(param0: number): string;
				public getValue(param0: number): string;
				public getType(param0: number): string;
				public getValue(param0: string): string;
				public getLength(): number;
				public getType(param0: string): string;
			}
		}
	}
}

declare module org {
	export module xml {
		export module sax {
			export class Attributes extends java.lang.Object {
				public static class: java.lang.Class<org.xml.sax.Attributes>;
				/**
				 * Constructs a new instance of the org.xml.sax.Attributes interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getLength(): number;
					getURI(param0: number): string;
					getLocalName(param0: number): string;
					getQName(param0: number): string;
					getType(param0: number): string;
					getValue(param0: number): string;
					getIndex(param0: string, param1: string): number;
					getIndex(param0: string): number;
					getType(param0: string, param1: string): string;
					getType(param0: string): string;
					getValue(param0: string, param1: string): string;
					getValue(param0: string): string;
				});
				public constructor();
				public getURI(param0: number): string;
				public getType(param0: string, param1: string): string;
				public getValue(param0: number): string;
				public getIndex(param0: string): number;
				public getLocalName(param0: number): string;
				public getQName(param0: number): string;
				public getType(param0: number): string;
				public getValue(param0: string, param1: string): string;
				public getIndex(param0: string, param1: string): number;
				public getValue(param0: string): string;
				public getLength(): number;
				public getType(param0: string): string;
			}
		}
	}
}

declare module org {
	export module xml {
		export module sax {
			export class ContentHandler extends java.lang.Object {
				public static class: java.lang.Class<org.xml.sax.ContentHandler>;
				/**
				 * Constructs a new instance of the org.xml.sax.ContentHandler interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					setDocumentLocator(param0: org.xml.sax.Locator): void;
					startDocument(): void;
					endDocument(): void;
					startPrefixMapping(param0: string, param1: string): void;
					endPrefixMapping(param0: string): void;
					startElement(param0: string, param1: string, param2: string, param3: org.xml.sax.Attributes): void;
					endElement(param0: string, param1: string, param2: string): void;
					characters(param0: native.Array<string>, param1: number, param2: number): void;
					ignorableWhitespace(param0: native.Array<string>, param1: number, param2: number): void;
					processingInstruction(param0: string, param1: string): void;
					skippedEntity(param0: string): void;
				});
				public constructor();
				public ignorableWhitespace(param0: native.Array<string>, param1: number, param2: number): void;
				public startElement(param0: string, param1: string, param2: string, param3: org.xml.sax.Attributes): void;
				public endElement(param0: string, param1: string, param2: string): void;
				public startDocument(): void;
				public endPrefixMapping(param0: string): void;
				public processingInstruction(param0: string, param1: string): void;
				public setDocumentLocator(param0: org.xml.sax.Locator): void;
				public endDocument(): void;
				public startPrefixMapping(param0: string, param1: string): void;
				public characters(param0: native.Array<string>, param1: number, param2: number): void;
				public skippedEntity(param0: string): void;
			}
		}
	}
}

declare module org {
	export module xml {
		export module sax {
			export class DTDHandler extends java.lang.Object {
				public static class: java.lang.Class<org.xml.sax.DTDHandler>;
				/**
				 * Constructs a new instance of the org.xml.sax.DTDHandler interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					notationDecl(param0: string, param1: string, param2: string): void;
					unparsedEntityDecl(param0: string, param1: string, param2: string, param3: string): void;
				});
				public constructor();
				public notationDecl(param0: string, param1: string, param2: string): void;
				public unparsedEntityDecl(param0: string, param1: string, param2: string, param3: string): void;
			}
		}
	}
}

declare module org {
	export module xml {
		export module sax {
			export class DocumentHandler extends java.lang.Object {
				public static class: java.lang.Class<org.xml.sax.DocumentHandler>;
				/**
				 * Constructs a new instance of the org.xml.sax.DocumentHandler interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					setDocumentLocator(param0: org.xml.sax.Locator): void;
					startDocument(): void;
					endDocument(): void;
					startElement(param0: string, param1: org.xml.sax.AttributeList): void;
					endElement(param0: string): void;
					characters(param0: native.Array<string>, param1: number, param2: number): void;
					ignorableWhitespace(param0: native.Array<string>, param1: number, param2: number): void;
					processingInstruction(param0: string, param1: string): void;
				});
				public constructor();
				public endElement(param0: string): void;
				public ignorableWhitespace(param0: native.Array<string>, param1: number, param2: number): void;
				public startElement(param0: string, param1: org.xml.sax.AttributeList): void;
				public startDocument(): void;
				public processingInstruction(param0: string, param1: string): void;
				public setDocumentLocator(param0: org.xml.sax.Locator): void;
				public endDocument(): void;
				public characters(param0: native.Array<string>, param1: number, param2: number): void;
			}
		}
	}
}

declare module org {
	export module xml {
		export module sax {
			export class EntityResolver extends java.lang.Object {
				public static class: java.lang.Class<org.xml.sax.EntityResolver>;
				/**
				 * Constructs a new instance of the org.xml.sax.EntityResolver interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					resolveEntity(param0: string, param1: string): org.xml.sax.InputSource;
				});
				public constructor();
				public resolveEntity(param0: string, param1: string): org.xml.sax.InputSource;
			}
		}
	}
}

declare module org {
	export module xml {
		export module sax {
			export class ErrorHandler extends java.lang.Object {
				public static class: java.lang.Class<org.xml.sax.ErrorHandler>;
				/**
				 * Constructs a new instance of the org.xml.sax.ErrorHandler interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					warning(param0: org.xml.sax.SAXParseException): void;
					error(param0: org.xml.sax.SAXParseException): void;
					fatalError(param0: org.xml.sax.SAXParseException): void;
				});
				public constructor();
				public warning(param0: org.xml.sax.SAXParseException): void;
				public fatalError(param0: org.xml.sax.SAXParseException): void;
				public error(param0: org.xml.sax.SAXParseException): void;
			}
		}
	}
}

declare module org {
	export module xml {
		export module sax {
			export class HandlerBase extends java.lang.Object implements org.xml.sax.EntityResolver, org.xml.sax.DTDHandler, org.xml.sax.DocumentHandler, org.xml.sax.ErrorHandler {
				public static class: java.lang.Class<org.xml.sax.HandlerBase>;
				public endElement(param0: string): void;
				public resolveEntity(param0: string, param1: string): org.xml.sax.InputSource;
				public warning(param0: org.xml.sax.SAXParseException): void;
				public error(param0: org.xml.sax.SAXParseException): void;
				public startElement(param0: string, param1: org.xml.sax.AttributeList): void;
				public notationDecl(param0: string, param1: string, param2: string): void;
				public unparsedEntityDecl(param0: string, param1: string, param2: string, param3: string): void;
				public processingInstruction(param0: string, param1: string): void;
				public endDocument(): void;
				public characters(param0: native.Array<string>, param1: number, param2: number): void;
				public constructor();
				public fatalError(param0: org.xml.sax.SAXParseException): void;
				public ignorableWhitespace(param0: native.Array<string>, param1: number, param2: number): void;
				public startDocument(): void;
				public setDocumentLocator(param0: org.xml.sax.Locator): void;
			}
		}
	}
}

declare module org {
	export module xml {
		export module sax {
			export class InputSource extends java.lang.Object {
				public static class: java.lang.Class<org.xml.sax.InputSource>;
				public getEncoding(): string;
				public setCharacterStream(param0: java.io.Reader): void;
				public getCharacterStream(): java.io.Reader;
				public getByteStream(): java.io.InputStream;
				public constructor(param0: java.io.InputStream);
				public constructor(param0: java.io.Reader);
				public constructor(param0: string);
				public constructor();
				public getPublicId(): string;
				public setSystemId(param0: string): void;
				public getSystemId(): string;
				public setByteStream(param0: java.io.InputStream): void;
				public setPublicId(param0: string): void;
				public setEncoding(param0: string): void;
			}
		}
	}
}

declare module org {
	export module xml {
		export module sax {
			export class Locator extends java.lang.Object {
				public static class: java.lang.Class<org.xml.sax.Locator>;
				/**
				 * Constructs a new instance of the org.xml.sax.Locator interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getPublicId(): string;
					getSystemId(): string;
					getLineNumber(): number;
					getColumnNumber(): number;
				});
				public constructor();
				public getPublicId(): string;
				public getLineNumber(): number;
				public getSystemId(): string;
				public getColumnNumber(): number;
			}
		}
	}
}

declare module org {
	export module xml {
		export module sax {
			export class Parser extends java.lang.Object {
				public static class: java.lang.Class<org.xml.sax.Parser>;
				/**
				 * Constructs a new instance of the org.xml.sax.Parser interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					setLocale(param0: java.util.Locale): void;
					setEntityResolver(param0: org.xml.sax.EntityResolver): void;
					setDTDHandler(param0: org.xml.sax.DTDHandler): void;
					setDocumentHandler(param0: org.xml.sax.DocumentHandler): void;
					setErrorHandler(param0: org.xml.sax.ErrorHandler): void;
					parse(param0: org.xml.sax.InputSource): void;
					parse(param0: string): void;
				});
				public constructor();
				public setErrorHandler(param0: org.xml.sax.ErrorHandler): void;
				public parse(param0: org.xml.sax.InputSource): void;
				public parse(param0: string): void;
				public setLocale(param0: java.util.Locale): void;
				public setDTDHandler(param0: org.xml.sax.DTDHandler): void;
				public setDocumentHandler(param0: org.xml.sax.DocumentHandler): void;
				public setEntityResolver(param0: org.xml.sax.EntityResolver): void;
			}
		}
	}
}

declare module org {
	export module xml {
		export module sax {
			export class SAXException extends java.lang.Exception {
				public static class: java.lang.Class<org.xml.sax.SAXException>;
				public getException(): java.lang.Exception;
				public constructor(param0: string, param1: java.lang.Exception);
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Exception);
				public getMessage(): string;
				public toString(): string;
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module org {
	export module xml {
		export module sax {
			export class SAXNotRecognizedException extends org.xml.sax.SAXException {
				public static class: java.lang.Class<org.xml.sax.SAXNotRecognizedException>;
				public constructor(param0: string, param1: java.lang.Exception);
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Exception);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module org {
	export module xml {
		export module sax {
			export class SAXNotSupportedException extends org.xml.sax.SAXException {
				public static class: java.lang.Class<org.xml.sax.SAXNotSupportedException>;
				public constructor(param0: string, param1: java.lang.Exception);
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Exception);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
			}
		}
	}
}

declare module org {
	export module xml {
		export module sax {
			export class SAXParseException extends org.xml.sax.SAXException {
				public static class: java.lang.Class<org.xml.sax.SAXParseException>;
				public getLineNumber(): number;
				public constructor(param0: string, param1: string, param2: string, param3: number, param4: number, param5: java.lang.Exception);
				public constructor(param0: java.lang.Throwable);
				public constructor(param0: string);
				public constructor();
				public constructor(param0: string, param1: java.lang.Exception);
				public getPublicId(): string;
				public constructor(param0: string, param1: string, param2: string, param3: number, param4: number);
				public getSystemId(): string;
				public constructor(param0: string, param1: org.xml.sax.Locator, param2: java.lang.Exception);
				public constructor(param0: string, param1: java.lang.Throwable);
				public constructor(param0: java.lang.Exception);
				public getColumnNumber(): number;
				public constructor(param0: string, param1: org.xml.sax.Locator);
			}
		}
	}
}

declare module org {
	export module xml {
		export module sax {
			export class XMLFilter extends java.lang.Object implements org.xml.sax.XMLReader {
				public static class: java.lang.Class<org.xml.sax.XMLFilter>;
				/**
				 * Constructs a new instance of the org.xml.sax.XMLFilter interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					setParent(param0: org.xml.sax.XMLReader): void;
					getParent(): org.xml.sax.XMLReader;
					getFeature(param0: string): boolean;
					setFeature(param0: string, param1: boolean): void;
					getProperty(param0: string): any;
					setProperty(param0: string, param1: any): void;
					setEntityResolver(param0: org.xml.sax.EntityResolver): void;
					getEntityResolver(): org.xml.sax.EntityResolver;
					setDTDHandler(param0: org.xml.sax.DTDHandler): void;
					getDTDHandler(): org.xml.sax.DTDHandler;
					setContentHandler(param0: org.xml.sax.ContentHandler): void;
					getContentHandler(): org.xml.sax.ContentHandler;
					setErrorHandler(param0: org.xml.sax.ErrorHandler): void;
					getErrorHandler(): org.xml.sax.ErrorHandler;
					parse(param0: org.xml.sax.InputSource): void;
					parse(param0: string): void;
				});
				public constructor();
				public setContentHandler(param0: org.xml.sax.ContentHandler): void;
				public setParent(param0: org.xml.sax.XMLReader): void;
				public getProperty(param0: string): any;
				public getEntityResolver(): org.xml.sax.EntityResolver;
				public getFeature(param0: string): boolean;
				public getDTDHandler(): org.xml.sax.DTDHandler;
				public parse(param0: org.xml.sax.InputSource): void;
				public setProperty(param0: string, param1: any): void;
				public setDTDHandler(param0: org.xml.sax.DTDHandler): void;
				public setEntityResolver(param0: org.xml.sax.EntityResolver): void;
				public getContentHandler(): org.xml.sax.ContentHandler;
				public setErrorHandler(param0: org.xml.sax.ErrorHandler): void;
				public setFeature(param0: string, param1: boolean): void;
				public parse(param0: string): void;
				public getParent(): org.xml.sax.XMLReader;
				public getErrorHandler(): org.xml.sax.ErrorHandler;
			}
		}
	}
}

declare module org {
	export module xml {
		export module sax {
			export class XMLReader extends java.lang.Object {
				public static class: java.lang.Class<org.xml.sax.XMLReader>;
				/**
				 * Constructs a new instance of the org.xml.sax.XMLReader interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					getFeature(param0: string): boolean;
					setFeature(param0: string, param1: boolean): void;
					getProperty(param0: string): any;
					setProperty(param0: string, param1: any): void;
					setEntityResolver(param0: org.xml.sax.EntityResolver): void;
					getEntityResolver(): org.xml.sax.EntityResolver;
					setDTDHandler(param0: org.xml.sax.DTDHandler): void;
					getDTDHandler(): org.xml.sax.DTDHandler;
					setContentHandler(param0: org.xml.sax.ContentHandler): void;
					getContentHandler(): org.xml.sax.ContentHandler;
					setErrorHandler(param0: org.xml.sax.ErrorHandler): void;
					getErrorHandler(): org.xml.sax.ErrorHandler;
					parse(param0: org.xml.sax.InputSource): void;
					parse(param0: string): void;
				});
				public constructor();
				public setContentHandler(param0: org.xml.sax.ContentHandler): void;
				public getProperty(param0: string): any;
				public getEntityResolver(): org.xml.sax.EntityResolver;
				public getFeature(param0: string): boolean;
				public getDTDHandler(): org.xml.sax.DTDHandler;
				public parse(param0: org.xml.sax.InputSource): void;
				public setProperty(param0: string, param1: any): void;
				public setDTDHandler(param0: org.xml.sax.DTDHandler): void;
				public setEntityResolver(param0: org.xml.sax.EntityResolver): void;
				public getContentHandler(): org.xml.sax.ContentHandler;
				public setErrorHandler(param0: org.xml.sax.ErrorHandler): void;
				public setFeature(param0: string, param1: boolean): void;
				public parse(param0: string): void;
				public getErrorHandler(): org.xml.sax.ErrorHandler;
			}
		}
	}
}

declare module org {
	export module xml {
		export module sax {
			export module ext {
				export class Attributes2 extends java.lang.Object implements org.xml.sax.Attributes {
					public static class: java.lang.Class<org.xml.sax.ext.Attributes2>;
					/**
					 * Constructs a new instance of the org.xml.sax.ext.Attributes2 interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						isDeclared(param0: number): boolean;
						isDeclared(param0: string): boolean;
						isDeclared(param0: string, param1: string): boolean;
						isSpecified(param0: number): boolean;
						isSpecified(param0: string, param1: string): boolean;
						isSpecified(param0: string): boolean;
						getLength(): number;
						getURI(param0: number): string;
						getLocalName(param0: number): string;
						getQName(param0: number): string;
						getType(param0: number): string;
						getValue(param0: number): string;
						getIndex(param0: string, param1: string): number;
						getIndex(param0: string): number;
						getType(param0: string, param1: string): string;
						getType(param0: string): string;
						getValue(param0: string, param1: string): string;
						getValue(param0: string): string;
					});
					public constructor();
					public isDeclared(param0: string): boolean;
					public getType(param0: string, param1: string): string;
					public isSpecified(param0: number): boolean;
					public getType(param0: number): string;
					public getLength(): number;
					public getValue(param0: string, param1: string): string;
					public getLocalName(param0: number): string;
					public getQName(param0: number): string;
					public isSpecified(param0: string): boolean;
					public isSpecified(param0: string, param1: string): boolean;
					public getType(param0: string): string;
					public isDeclared(param0: string, param1: string): boolean;
					public getURI(param0: number): string;
					public getValue(param0: number): string;
					public getIndex(param0: string): number;
					public getIndex(param0: string, param1: string): number;
					public getValue(param0: string): string;
					public isDeclared(param0: number): boolean;
				}
			}
		}
	}
}

declare module org {
	export module xml {
		export module sax {
			export module ext {
				export class Attributes2Impl extends org.xml.sax.helpers.AttributesImpl implements org.xml.sax.ext.Attributes2 {
					public static class: java.lang.Class<org.xml.sax.ext.Attributes2Impl>;
					public getType(param0: string, param1: string): string;
					public isSpecified(param0: number): boolean;
					public addAttribute(param0: string, param1: string, param2: string, param3: string, param4: string): void;
					public getType(param0: number): string;
					public getLength(): number;
					public constructor(param0: org.xml.sax.Attributes);
					public setSpecified(param0: number, param1: boolean): void;
					public isSpecified(param0: string, param1: string): boolean;
					public setDeclared(param0: number, param1: boolean): void;
					public constructor();
					public removeAttribute(param0: number): void;
					public getURI(param0: number): string;
					public getIndex(param0: string): number;
					public getValue(param0: string): string;
					public isDeclared(param0: string): boolean;
					public getValue(param0: string, param1: string): string;
					public getLocalName(param0: number): string;
					public getQName(param0: number): string;
					public isSpecified(param0: string): boolean;
					public getType(param0: string): string;
					public isDeclared(param0: string, param1: string): boolean;
					public getValue(param0: number): string;
					public setAttributes(param0: org.xml.sax.Attributes): void;
					public getIndex(param0: string, param1: string): number;
					public isDeclared(param0: number): boolean;
				}
			}
		}
	}
}

declare module org {
	export module xml {
		export module sax {
			export module ext {
				export class DeclHandler extends java.lang.Object {
					public static class: java.lang.Class<org.xml.sax.ext.DeclHandler>;
					/**
					 * Constructs a new instance of the org.xml.sax.ext.DeclHandler interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						elementDecl(param0: string, param1: string): void;
						attributeDecl(param0: string, param1: string, param2: string, param3: string, param4: string): void;
						internalEntityDecl(param0: string, param1: string): void;
						externalEntityDecl(param0: string, param1: string, param2: string): void;
					});
					public constructor();
					public attributeDecl(param0: string, param1: string, param2: string, param3: string, param4: string): void;
					public internalEntityDecl(param0: string, param1: string): void;
					public elementDecl(param0: string, param1: string): void;
					public externalEntityDecl(param0: string, param1: string, param2: string): void;
				}
			}
		}
	}
}

declare module org {
	export module xml {
		export module sax {
			export module ext {
				export class DefaultHandler2 extends org.xml.sax.helpers.DefaultHandler implements org.xml.sax.ext.LexicalHandler, org.xml.sax.ext.DeclHandler, org.xml.sax.ext.EntityResolver2 {
					public static class: java.lang.Class<org.xml.sax.ext.DefaultHandler2>;
					public comment(param0: native.Array<string>, param1: number, param2: number): void;
					public startPrefixMapping(param0: string, param1: string): void;
					public skippedEntity(param0: string): void;
					public endDocument(): void;
					public startElement(param0: string, param1: string, param2: string, param3: org.xml.sax.Attributes): void;
					public externalEntityDecl(param0: string, param1: string, param2: string): void;
					public startDTD(param0: string, param1: string, param2: string): void;
					public characters(param0: native.Array<string>, param1: number, param2: number): void;
					public processingInstruction(param0: string, param1: string): void;
					public fatalError(param0: org.xml.sax.SAXParseException): void;
					public constructor();
					public endDTD(): void;
					public getExternalSubset(param0: string, param1: string): org.xml.sax.InputSource;
					public endEntity(param0: string): void;
					public elementDecl(param0: string, param1: string): void;
					public error(param0: org.xml.sax.SAXParseException): void;
					public startCDATA(): void;
					public endElement(param0: string, param1: string, param2: string): void;
					public endCDATA(): void;
					public resolveEntity(param0: string, param1: string): org.xml.sax.InputSource;
					public warning(param0: org.xml.sax.SAXParseException): void;
					public startDocument(): void;
					public ignorableWhitespace(param0: native.Array<string>, param1: number, param2: number): void;
					public attributeDecl(param0: string, param1: string, param2: string, param3: string, param4: string): void;
					public internalEntityDecl(param0: string, param1: string): void;
					public endPrefixMapping(param0: string): void;
					public resolveEntity(param0: string, param1: string, param2: string, param3: string): org.xml.sax.InputSource;
					public startEntity(param0: string): void;
					public notationDecl(param0: string, param1: string, param2: string): void;
					public unparsedEntityDecl(param0: string, param1: string, param2: string, param3: string): void;
					public setDocumentLocator(param0: org.xml.sax.Locator): void;
				}
			}
		}
	}
}

declare module org {
	export module xml {
		export module sax {
			export module ext {
				export class EntityResolver2 extends java.lang.Object implements org.xml.sax.EntityResolver {
					public static class: java.lang.Class<org.xml.sax.ext.EntityResolver2>;
					/**
					 * Constructs a new instance of the org.xml.sax.ext.EntityResolver2 interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						getExternalSubset(param0: string, param1: string): org.xml.sax.InputSource;
						resolveEntity(param0: string, param1: string, param2: string, param3: string): org.xml.sax.InputSource;
						resolveEntity(param0: string, param1: string): org.xml.sax.InputSource;
					});
					public constructor();
					public resolveEntity(param0: string, param1: string): org.xml.sax.InputSource;
					public getExternalSubset(param0: string, param1: string): org.xml.sax.InputSource;
					public resolveEntity(param0: string, param1: string, param2: string, param3: string): org.xml.sax.InputSource;
				}
			}
		}
	}
}

declare module org {
	export module xml {
		export module sax {
			export module ext {
				export class LexicalHandler extends java.lang.Object {
					public static class: java.lang.Class<org.xml.sax.ext.LexicalHandler>;
					/**
					 * Constructs a new instance of the org.xml.sax.ext.LexicalHandler interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						startDTD(param0: string, param1: string, param2: string): void;
						endDTD(): void;
						startEntity(param0: string): void;
						endEntity(param0: string): void;
						startCDATA(): void;
						endCDATA(): void;
						comment(param0: native.Array<string>, param1: number, param2: number): void;
					});
					public constructor();
					public endCDATA(): void;
					public comment(param0: native.Array<string>, param1: number, param2: number): void;
					public endDTD(): void;
					public endEntity(param0: string): void;
					public startCDATA(): void;
					public startEntity(param0: string): void;
					public startDTD(param0: string, param1: string, param2: string): void;
				}
			}
		}
	}
}

declare module org {
	export module xml {
		export module sax {
			export module ext {
				export class Locator2 extends java.lang.Object implements org.xml.sax.Locator {
					public static class: java.lang.Class<org.xml.sax.ext.Locator2>;
					/**
					 * Constructs a new instance of the org.xml.sax.ext.Locator2 interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
					 */
					public constructor(implementation: {
						getXMLVersion(): string;
						getEncoding(): string;
						getPublicId(): string;
						getSystemId(): string;
						getLineNumber(): number;
						getColumnNumber(): number;
					});
					public constructor();
					public getLineNumber(): number;
					public getXMLVersion(): string;
					public getEncoding(): string;
					public getPublicId(): string;
					public getColumnNumber(): number;
					public getSystemId(): string;
				}
			}
		}
	}
}

declare module org {
	export module xml {
		export module sax {
			export module ext {
				export class Locator2Impl extends org.xml.sax.helpers.LocatorImpl implements org.xml.sax.ext.Locator2 {
					public static class: java.lang.Class<org.xml.sax.ext.Locator2Impl>;
					public getLineNumber(): number;
					public constructor(param0: org.xml.sax.Locator);
					public setEncoding(param0: string): void;
					public constructor();
					public getXMLVersion(): string;
					public getEncoding(): string;
					public getPublicId(): string;
					public getColumnNumber(): number;
					public getSystemId(): string;
					public setXMLVersion(param0: string): void;
				}
			}
		}
	}
}

declare module org {
	export module xml {
		export module sax {
			export module helpers {
				export class AttributeListImpl extends java.lang.Object implements org.xml.sax.AttributeList {
					public static class: java.lang.Class<org.xml.sax.helpers.AttributeListImpl>;
					public getType(param0: string): string;
					public constructor(param0: org.xml.sax.AttributeList);
					public constructor();
					public getType(param0: number): string;
					public setAttributeList(param0: org.xml.sax.AttributeList): void;
					public clear(): void;
					public getLength(): number;
					public getValue(param0: number): string;
					public getName(param0: number): string;
					public getValue(param0: string): string;
					public removeAttribute(param0: string): void;
					public addAttribute(param0: string, param1: string, param2: string): void;
				}
			}
		}
	}
}

declare module org {
	export module xml {
		export module sax {
			export module helpers {
				export class AttributesImpl extends java.lang.Object implements org.xml.sax.Attributes {
					public static class: java.lang.Class<org.xml.sax.helpers.AttributesImpl>;
					public setQName(param0: number, param1: string): void;
					public getType(param0: string, param1: string): string;
					public addAttribute(param0: string, param1: string, param2: string, param3: string, param4: string): void;
					public setURI(param0: number, param1: string): void;
					public getType(param0: number): string;
					public setAttribute(param0: number, param1: string, param2: string, param3: string, param4: string, param5: string): void;
					public getLength(): number;
					public getValue(param0: string, param1: string): string;
					public constructor(param0: org.xml.sax.Attributes);
					public setValue(param0: number, param1: string): void;
					public getLocalName(param0: number): string;
					public getQName(param0: number): string;
					public setType(param0: number, param1: string): void;
					public getType(param0: string): string;
					public constructor();
					public removeAttribute(param0: number): void;
					public getURI(param0: number): string;
					public getValue(param0: number): string;
					public getIndex(param0: string): number;
					public clear(): void;
					public setAttributes(param0: org.xml.sax.Attributes): void;
					public getIndex(param0: string, param1: string): number;
					public getValue(param0: string): string;
					public setLocalName(param0: number, param1: string): void;
				}
			}
		}
	}
}

declare module org {
	export module xml {
		export module sax {
			export module helpers {
				export class DefaultHandler extends java.lang.Object implements org.xml.sax.EntityResolver, org.xml.sax.DTDHandler, org.xml.sax.ContentHandler, org.xml.sax.ErrorHandler {
					public static class: java.lang.Class<org.xml.sax.helpers.DefaultHandler>;
					public startPrefixMapping(param0: string, param1: string): void;
					public skippedEntity(param0: string): void;
					public endDocument(): void;
					public startElement(param0: string, param1: string, param2: string, param3: org.xml.sax.Attributes): void;
					public error(param0: org.xml.sax.SAXParseException): void;
					public endElement(param0: string, param1: string, param2: string): void;
					public characters(param0: native.Array<string>, param1: number, param2: number): void;
					public resolveEntity(param0: string, param1: string): org.xml.sax.InputSource;
					public startDocument(): void;
					public ignorableWhitespace(param0: native.Array<string>, param1: number, param2: number): void;
					public warning(param0: org.xml.sax.SAXParseException): void;
					public processingInstruction(param0: string, param1: string): void;
					public endPrefixMapping(param0: string): void;
					public fatalError(param0: org.xml.sax.SAXParseException): void;
					public constructor();
					public notationDecl(param0: string, param1: string, param2: string): void;
					public unparsedEntityDecl(param0: string, param1: string, param2: string, param3: string): void;
					public setDocumentLocator(param0: org.xml.sax.Locator): void;
				}
			}
		}
	}
}

declare module org {
	export module xml {
		export module sax {
			export module helpers {
				export class LocatorImpl extends java.lang.Object implements org.xml.sax.Locator {
					public static class: java.lang.Class<org.xml.sax.helpers.LocatorImpl>;
					public getLineNumber(): number;
					public setColumnNumber(param0: number): void;
					public constructor(param0: org.xml.sax.Locator);
					public constructor();
					public getPublicId(): string;
					public setPublicId(param0: string): void;
					public getColumnNumber(): number;
					public getSystemId(): string;
					public setSystemId(param0: string): void;
					public setLineNumber(param0: number): void;
				}
			}
		}
	}
}

declare module org {
	export module xml {
		export module sax {
			export module helpers {
				export class NamespaceSupport extends java.lang.Object {
					public static class: java.lang.Class<org.xml.sax.helpers.NamespaceSupport>;
					public static XMLNS: string;
					public static NSDECL: string;
					public getURI(param0: string): string;
					public reset(): void;
					public isNamespaceDeclUris(): boolean;
					public getDeclaredPrefixes(): java.util.Enumeration<any>;
					public declarePrefix(param0: string, param1: string): boolean;
					public pushContext(): void;
					public getPrefix(param0: string): string;
					public setNamespaceDeclUris(param0: boolean): void;
					public constructor();
					public getPrefixes(): java.util.Enumeration<any>;
					public popContext(): void;
					public getPrefixes(param0: string): java.util.Enumeration<any>;
					public processName(param0: string, param1: native.Array<string>, param2: boolean): native.Array<string>;
				}
			}
		}
	}
}

declare module org {
	export module xml {
		export module sax {
			export module helpers {
				export class ParserAdapter extends java.lang.Object implements org.xml.sax.XMLReader, org.xml.sax.DocumentHandler {
					public static class: java.lang.Class<org.xml.sax.helpers.ParserAdapter>;
					public parse(param0: string): void;
					public startElement(param0: string, param1: org.xml.sax.AttributeList): void;
					public endElement(param0: string): void;
					public getContentHandler(): org.xml.sax.ContentHandler;
					public setFeature(param0: string, param1: boolean): void;
					public getProperty(param0: string): any;
					public endDocument(): void;
					public setErrorHandler(param0: org.xml.sax.ErrorHandler): void;
					public setDTDHandler(param0: org.xml.sax.DTDHandler): void;
					public constructor(param0: org.xml.sax.Parser);
					public getEntityResolver(): org.xml.sax.EntityResolver;
					public getFeature(param0: string): boolean;
					public characters(param0: native.Array<string>, param1: number, param2: number): void;
					public getDTDHandler(): org.xml.sax.DTDHandler;
					public startDocument(): void;
					public ignorableWhitespace(param0: native.Array<string>, param1: number, param2: number): void;
					public parse(param0: org.xml.sax.InputSource): void;
					public processingInstruction(param0: string, param1: string): void;
					public constructor();
					public setEntityResolver(param0: org.xml.sax.EntityResolver): void;
					public setContentHandler(param0: org.xml.sax.ContentHandler): void;
					public setProperty(param0: string, param1: any): void;
					public getErrorHandler(): org.xml.sax.ErrorHandler;
					public setDocumentLocator(param0: org.xml.sax.Locator): void;
				}
			}
		}
	}
}

declare module org {
	export module xml {
		export module sax {
			export module helpers {
				export class ParserFactory extends java.lang.Object {
					public static class: java.lang.Class<org.xml.sax.helpers.ParserFactory>;
					public static makeParser(): org.xml.sax.Parser;
					public static makeParser(param0: string): org.xml.sax.Parser;
				}
			}
		}
	}
}

declare module org {
	export module xml {
		export module sax {
			export module helpers {
				export class XMLFilterImpl extends java.lang.Object implements org.xml.sax.XMLFilter, org.xml.sax.EntityResolver, org.xml.sax.DTDHandler, org.xml.sax.ContentHandler, org.xml.sax.ErrorHandler {
					public static class: java.lang.Class<org.xml.sax.helpers.XMLFilterImpl>;
					public parse(param0: string): void;
					public startPrefixMapping(param0: string, param1: string): void;
					public skippedEntity(param0: string): void;
					public getContentHandler(): org.xml.sax.ContentHandler;
					public constructor(param0: org.xml.sax.XMLReader);
					public setFeature(param0: string, param1: boolean): void;
					public getParent(): org.xml.sax.XMLReader;
					public endDocument(): void;
					public startElement(param0: string, param1: string, param2: string, param3: org.xml.sax.Attributes): void;
					public setDTDHandler(param0: org.xml.sax.DTDHandler): void;
					public getEntityResolver(): org.xml.sax.EntityResolver;
					public characters(param0: native.Array<string>, param1: number, param2: number): void;
					public getDTDHandler(): org.xml.sax.DTDHandler;
					public processingInstruction(param0: string, param1: string): void;
					public fatalError(param0: org.xml.sax.SAXParseException): void;
					public constructor();
					public setEntityResolver(param0: org.xml.sax.EntityResolver): void;
					public setContentHandler(param0: org.xml.sax.ContentHandler): void;
					public setProperty(param0: string, param1: any): void;
					public setParent(param0: org.xml.sax.XMLReader): void;
					public getProperty(param0: string): any;
					public setErrorHandler(param0: org.xml.sax.ErrorHandler): void;
					public error(param0: org.xml.sax.SAXParseException): void;
					public endElement(param0: string, param1: string, param2: string): void;
					public getFeature(param0: string): boolean;
					public resolveEntity(param0: string, param1: string): org.xml.sax.InputSource;
					public startDocument(): void;
					public ignorableWhitespace(param0: native.Array<string>, param1: number, param2: number): void;
					public warning(param0: org.xml.sax.SAXParseException): void;
					public parse(param0: org.xml.sax.InputSource): void;
					public endPrefixMapping(param0: string): void;
					public notationDecl(param0: string, param1: string, param2: string): void;
					public unparsedEntityDecl(param0: string, param1: string, param2: string, param3: string): void;
					public getErrorHandler(): org.xml.sax.ErrorHandler;
					public setDocumentLocator(param0: org.xml.sax.Locator): void;
				}
			}
		}
	}
}

declare module org {
	export module xml {
		export module sax {
			export module helpers {
				export class XMLReaderAdapter extends java.lang.Object implements org.xml.sax.Parser, org.xml.sax.ContentHandler {
					public static class: java.lang.Class<org.xml.sax.helpers.XMLReaderAdapter>;
					public parse(param0: string): void;
					public startPrefixMapping(param0: string, param1: string): void;
					public skippedEntity(param0: string): void;
					public constructor(param0: org.xml.sax.XMLReader);
					public endDocument(): void;
					public setDocumentHandler(param0: org.xml.sax.DocumentHandler): void;
					public setLocale(param0: java.util.Locale): void;
					public startElement(param0: string, param1: string, param2: string, param3: org.xml.sax.Attributes): void;
					public setErrorHandler(param0: org.xml.sax.ErrorHandler): void;
					public setDTDHandler(param0: org.xml.sax.DTDHandler): void;
					public endElement(param0: string, param1: string, param2: string): void;
					public characters(param0: native.Array<string>, param1: number, param2: number): void;
					public startDocument(): void;
					public ignorableWhitespace(param0: native.Array<string>, param1: number, param2: number): void;
					public parse(param0: org.xml.sax.InputSource): void;
					public processingInstruction(param0: string, param1: string): void;
					public endPrefixMapping(param0: string): void;
					public constructor();
					public setEntityResolver(param0: org.xml.sax.EntityResolver): void;
					public setDocumentLocator(param0: org.xml.sax.Locator): void;
				}
			}
		}
	}
}

declare module org {
	export module xml {
		export module sax {
			export module helpers {
				export class XMLReaderFactory extends java.lang.Object {
					public static class: java.lang.Class<org.xml.sax.helpers.XMLReaderFactory>;
					public static createXMLReader(param0: string): org.xml.sax.XMLReader;
					public static createXMLReader(): org.xml.sax.XMLReader;
				}
			}
		}
	}
}

declare module org {
	export module xmlpull {
		export module v1 {
			export class XmlPullParser extends java.lang.Object {
				public static class: java.lang.Class<org.xmlpull.v1.XmlPullParser>;
				/**
				 * Constructs a new instance of the org.xmlpull.v1.XmlPullParser interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					setFeature(param0: string, param1: boolean): void;
					getFeature(param0: string): boolean;
					setProperty(param0: string, param1: any): void;
					getProperty(param0: string): any;
					setInput(param0: java.io.Reader): void;
					setInput(param0: java.io.InputStream, param1: string): void;
					getInputEncoding(): string;
					defineEntityReplacementText(param0: string, param1: string): void;
					getNamespaceCount(param0: number): number;
					getNamespacePrefix(param0: number): string;
					getNamespaceUri(param0: number): string;
					getNamespace(param0: string): string;
					getDepth(): number;
					getPositionDescription(): string;
					getLineNumber(): number;
					getColumnNumber(): number;
					isWhitespace(): boolean;
					getText(): string;
					getTextCharacters(param0: native.Array<number>): native.Array<string>;
					getNamespace(): string;
					getName(): string;
					getPrefix(): string;
					isEmptyElementTag(): boolean;
					getAttributeCount(): number;
					getAttributeNamespace(param0: number): string;
					getAttributeName(param0: number): string;
					getAttributePrefix(param0: number): string;
					getAttributeType(param0: number): string;
					isAttributeDefault(param0: number): boolean;
					getAttributeValue(param0: number): string;
					getAttributeValue(param0: string, param1: string): string;
					getEventType(): number;
					next(): number;
					nextToken(): number;
					require(param0: number, param1: string, param2: string): void;
					nextText(): string;
					nextTag(): number;
					<clinit>(): void;
				});
				public constructor();
				public static NO_NAMESPACE: string;
				public static TEXT: number;
				public static ENTITY_REF: number;
				public static COMMENT: number;
				public static END_DOCUMENT: number;
				public static END_TAG: number;
				public static DOCDECL: number;
				public static FEATURE_VALIDATION: string;
				public static START_DOCUMENT: number;
				public static CDSECT: number;
				public static START_TAG: number;
				public static IGNORABLE_WHITESPACE: number;
				public static FEATURE_PROCESS_NAMESPACES: string;
				public static TYPES: native.Array<string>;
				public static PROCESSING_INSTRUCTION: number;
				public static FEATURE_PROCESS_DOCDECL: string;
				public static FEATURE_REPORT_NAMESPACE_ATTRIBUTES: string;
				public getInputEncoding(): string;
				public setInput(param0: java.io.Reader): void;
				public getLineNumber(): number;
				public getEventType(): number;
				public getAttributeValue(param0: string, param1: string): string;
				public getProperty(param0: string): any;
				public setInput(param0: java.io.InputStream, param1: string): void;
				public nextTag(): number;
				public getPositionDescription(): string;
				public getAttributeCount(): number;
				public getAttributePrefix(param0: number): string;
				public nextText(): string;
				public getNamespaceUri(param0: number): string;
				public nextToken(): number;
				public getColumnNumber(): number;
				public getAttributeNamespace(param0: number): string;
				public isEmptyElementTag(): boolean;
				public getNamespacePrefix(param0: number): string;
				public getPrefix(): string;
				public require(param0: number, param1: string, param2: string): void;
				public getNamespaceCount(param0: number): number;
				public getAttributeName(param0: number): string;
				public getFeature(param0: string): boolean;
				public setProperty(param0: string, param1: any): void;
				public getName(): string;
				public getNamespace(param0: string): string;
				public getTextCharacters(param0: native.Array<number>): native.Array<string>;
				public getAttributeType(param0: number): string;
				public getText(): string;
				public getAttributeValue(param0: number): string;
				public isAttributeDefault(param0: number): boolean;
				public getNamespace(): string;
				public setFeature(param0: string, param1: boolean): void;
				public defineEntityReplacementText(param0: string, param1: string): void;
				public isWhitespace(): boolean;
				public getDepth(): number;
				public next(): number;
			}
		}
	}
}

declare module org {
	export module xmlpull {
		export module v1 {
			export class XmlPullParserException extends java.lang.Exception {
				public static class: java.lang.Class<org.xmlpull.v1.XmlPullParserException>;
				public detail: java.lang.Throwable;
				public row: number;
				public column: number;
				public getLineNumber(): number;
				public printStackTrace(param0: java.io.PrintWriter): void;
				public getDetail(): java.lang.Throwable;
				public constructor(param0: string, param1: java.lang.Throwable);
				public getColumnNumber(): number;
				public constructor(param0: java.lang.Throwable);
				public printStackTrace(param0: java.io.PrintStream): void;
				public constructor(param0: string);
				public constructor();
				public constructor(param0: string, param1: org.xmlpull.v1.XmlPullParser, param2: java.lang.Throwable);
				public printStackTrace(): void;
			}
		}
	}
}

declare module org {
	export module xmlpull {
		export module v1 {
			export class XmlPullParserFactory extends java.lang.Object {
				public static class: java.lang.Class<org.xmlpull.v1.XmlPullParserFactory>;
				public static PROPERTY_NAME: string;
				public parserClasses: java.util.ArrayList<any>;
				public classNamesLocation: string;
				public serializerClasses: java.util.ArrayList<any>;
				public features: java.util.HashMap<any,any>;
				public isNamespaceAware(): boolean;
				public static newInstance(param0: string, param1: java.lang.Class<any>): org.xmlpull.v1.XmlPullParserFactory;
				public setValidating(param0: boolean): void;
				public setFeature(param0: string, param1: boolean): void;
				public getFeature(param0: string): boolean;
				public static newInstance(): org.xmlpull.v1.XmlPullParserFactory;
				public setNamespaceAware(param0: boolean): void;
				public isValidating(): boolean;
				public newPullParser(): org.xmlpull.v1.XmlPullParser;
				public constructor();
				public newSerializer(): org.xmlpull.v1.XmlSerializer;
			}
		}
	}
}

declare module org {
	export module xmlpull {
		export module v1 {
			export class XmlSerializer extends java.lang.Object {
				public static class: java.lang.Class<org.xmlpull.v1.XmlSerializer>;
				/**
				 * Constructs a new instance of the org.xmlpull.v1.XmlSerializer interface with the provided implementation. An empty constructor exists calling super() when extending the interface class.
				 */
				public constructor(implementation: {
					setFeature(param0: string, param1: boolean): void;
					getFeature(param0: string): boolean;
					setProperty(param0: string, param1: any): void;
					getProperty(param0: string): any;
					setOutput(param0: java.io.OutputStream, param1: string): void;
					setOutput(param0: java.io.Writer): void;
					startDocument(param0: string, param1: java.lang.Boolean): void;
					endDocument(): void;
					setPrefix(param0: string, param1: string): void;
					getPrefix(param0: string, param1: boolean): string;
					getDepth(): number;
					getNamespace(): string;
					getName(): string;
					startTag(param0: string, param1: string): org.xmlpull.v1.XmlSerializer;
					attribute(param0: string, param1: string, param2: string): org.xmlpull.v1.XmlSerializer;
					endTag(param0: string, param1: string): org.xmlpull.v1.XmlSerializer;
					text(param0: string): org.xmlpull.v1.XmlSerializer;
					text(param0: native.Array<string>, param1: number, param2: number): org.xmlpull.v1.XmlSerializer;
					cdsect(param0: string): void;
					entityRef(param0: string): void;
					processingInstruction(param0: string): void;
					comment(param0: string): void;
					docdecl(param0: string): void;
					ignorableWhitespace(param0: string): void;
					flush(): void;
				});
				public constructor();
				public setOutput(param0: java.io.Writer): void;
				public docdecl(param0: string): void;
				public getProperty(param0: string): any;
				public text(param0: string): org.xmlpull.v1.XmlSerializer;
				public startDocument(param0: string, param1: java.lang.Boolean): void;
				public flush(): void;
				public attribute(param0: string, param1: string, param2: string): org.xmlpull.v1.XmlSerializer;
				public getPrefix(param0: string, param1: boolean): string;
				public setOutput(param0: java.io.OutputStream, param1: string): void;
				public setPrefix(param0: string, param1: string): void;
				public ignorableWhitespace(param0: string): void;
				public getFeature(param0: string): boolean;
				public processingInstruction(param0: string): void;
				public setProperty(param0: string, param1: any): void;
				public getName(): string;
				public cdsect(param0: string): void;
				public endDocument(): void;
				public comment(param0: string): void;
				public endTag(param0: string, param1: string): org.xmlpull.v1.XmlSerializer;
				public text(param0: native.Array<string>, param1: number, param2: number): org.xmlpull.v1.XmlSerializer;
				public getNamespace(): string;
				public setFeature(param0: string, param1: boolean): void;
				public startTag(param0: string, param1: string): org.xmlpull.v1.XmlSerializer;
				public getDepth(): number;
				public entityRef(param0: string): void;
			}
		}
	}
}

declare module org {
	export module xmlpull {
		export module v1 {
			export module sax2 {
				export class Driver extends java.lang.Object implements org.xml.sax.Locator, org.xml.sax.XMLReader, org.xml.sax.Attributes {
					public static class: java.lang.Class<org.xmlpull.v1.sax2.Driver>;
					public static DECLARATION_HANDLER_PROPERTY: string;
					public static LEXICAL_HANDLER_PROPERTY: string;
					public static NAMESPACES_FEATURE: string;
					public static NAMESPACE_PREFIXES_FEATURE: string;
					public static VALIDATION_FEATURE: string;
					public static APACHE_SCHEMA_VALIDATION_FEATURE: string;
					public static APACHE_DYNAMIC_VALIDATION_FEATURE: string;
					public contentHandler: org.xml.sax.ContentHandler;
					public errorHandler: org.xml.sax.ErrorHandler;
					public systemId: string;
					public pp: org.xmlpull.v1.XmlPullParser;
					public parse(param0: string): void;
					public startElement(param0: string, param1: string, param2: string): void;
					public getType(param0: string, param1: string): string;
					public getType(param0: number): string;
					public getContentHandler(): org.xml.sax.ContentHandler;
					public parseSubTree(param0: org.xmlpull.v1.XmlPullParser): void;
					public setFeature(param0: string, param1: boolean): void;
					public getLength(): number;
					public setDTDHandler(param0: org.xml.sax.DTDHandler): void;
					public getEntityResolver(): org.xml.sax.EntityResolver;
					public getDTDHandler(): org.xml.sax.DTDHandler;
					public constructor();
					public getURI(param0: number): string;
					public getIndex(param0: string): number;
					public setEntityResolver(param0: org.xml.sax.EntityResolver): void;
					public getColumnNumber(): number;
					public getValue(param0: string): string;
					public getSystemId(): string;
					public setContentHandler(param0: org.xml.sax.ContentHandler): void;
					public setProperty(param0: string, param1: any): void;
					public getLineNumber(): number;
					public constructor(param0: org.xmlpull.v1.XmlPullParser);
					public getProperty(param0: string): any;
					public getValue(param0: string, param1: string): string;
					public getPublicId(): string;
					public getLocalName(param0: number): string;
					public getQName(param0: number): string;
					public setErrorHandler(param0: org.xml.sax.ErrorHandler): void;
					public getFeature(param0: string): boolean;
					public getType(param0: string): string;
					public parse(param0: org.xml.sax.InputSource): void;
					public getValue(param0: number): string;
					public getIndex(param0: string, param1: string): number;
					public getErrorHandler(): org.xml.sax.ErrorHandler;
				}
			}
		}
	}
}

//Generics information:
//android.accounts.AccountManagerCallback:1
//android.accounts.AccountManagerFuture:1
//android.animation.TypeEvaluator:1
//android.app.LoaderManager.LoaderCallbacks:1
//android.content.AsyncTaskLoader:1
//android.content.ContentProvider.PipeDataWriter:1
//android.content.Loader:1
//android.content.Loader.OnLoadCanceledListener:1
//android.content.Loader.OnLoadCompleteListener:1
//android.database.Observable:1
//android.os.AsyncTask:3
//android.os.Parcelable.ClassLoaderCreator:1
//android.os.Parcelable.Creator:1
//android.os.RemoteCallbackList:1
//android.test.ActivityInstrumentationTestCase:1
//android.test.ActivityInstrumentationTestCase2:1
//android.test.ActivityUnitTestCase:1
//android.test.ApplicationTestCase:1
//android.test.ProviderTestCase:1
//android.test.ProviderTestCase2:1
//android.test.ServiceTestCase:1
//android.test.SingleLaunchActivityTestCase:1
//android.util.LongSparseArray:1
//android.util.LruCache:2
//android.util.Pair:2
//android.util.Property:2
//android.util.SparseArray:1
//android.webkit.ValueCallback:1
//android.widget.AdapterView:1
//android.widget.ArrayAdapter:1
//com.android.internal.util.Predicate:1
//java.lang.Class:1
//java.lang.Comparable:1
//java.lang.Enum:1
//java.lang.InheritableThreadLocal:1
//java.lang.Iterable:1
//java.lang.ThreadLocal:1
//java.lang.ref.PhantomReference:1
//java.lang.ref.Reference:1
//java.lang.ref.ReferenceQueue:1
//java.lang.ref.SoftReference:1
//java.lang.ref.WeakReference:1
//java.lang.reflect.Constructor:1
//java.lang.reflect.TypeVariable:1
//java.security.PrivilegedAction:1
//java.security.PrivilegedExceptionAction:1
//java.util.AbstractCollection:1
//java.util.AbstractList:1
//java.util.AbstractMap:2
//java.util.AbstractMap.SimpleEntry:2
//java.util.AbstractMap.SimpleImmutableEntry:2
//java.util.AbstractQueue:1
//java.util.AbstractSequentialList:1
//java.util.AbstractSet:1
//java.util.ArrayDeque:1
//java.util.ArrayList:1
//java.util.Collection:1
//java.util.Comparator:1
//java.util.Deque:1
//java.util.Dictionary:2
//java.util.EnumMap:2
//java.util.EnumSet:1
//java.util.Enumeration:1
//java.util.HashMap:2
//java.util.HashSet:1
//java.util.Hashtable:2
//java.util.IdentityHashMap:2
//java.util.Iterator:1
//java.util.LinkedHashMap:2
//java.util.LinkedHashSet:1
//java.util.LinkedList:1
//java.util.List:1
//java.util.ListIterator:1
//java.util.Map:2
//java.util.Map.Entry:2
//java.util.NavigableMap:2
//java.util.NavigableSet:1
//java.util.PriorityQueue:1
//java.util.Queue:1
//java.util.ServiceLoader:1
//java.util.Set:1
//java.util.SortedMap:2
//java.util.SortedSet:1
//java.util.Stack:1
//java.util.TreeMap:2
//java.util.TreeSet:1
//java.util.Vector:1
//java.util.WeakHashMap:2
//java.util.concurrent.ArrayBlockingQueue:1
//java.util.concurrent.BlockingDeque:1
//java.util.concurrent.BlockingQueue:1
//java.util.concurrent.Callable:1
//java.util.concurrent.CompletionService:1
//java.util.concurrent.ConcurrentHashMap:2
//java.util.concurrent.ConcurrentLinkedQueue:1
//java.util.concurrent.ConcurrentMap:2
//java.util.concurrent.ConcurrentNavigableMap:2
//java.util.concurrent.ConcurrentSkipListMap:2
//java.util.concurrent.ConcurrentSkipListSet:1
//java.util.concurrent.CopyOnWriteArrayList:1
//java.util.concurrent.CopyOnWriteArraySet:1
//java.util.concurrent.DelayQueue:1
//java.util.concurrent.Exchanger:1
//java.util.concurrent.ExecutorCompletionService:1
//java.util.concurrent.Future:1
//java.util.concurrent.FutureTask:1
//java.util.concurrent.LinkedBlockingDeque:1
//java.util.concurrent.LinkedBlockingQueue:1
//java.util.concurrent.PriorityBlockingQueue:1
//java.util.concurrent.RunnableFuture:1
//java.util.concurrent.RunnableScheduledFuture:1
//java.util.concurrent.ScheduledFuture:1
//java.util.concurrent.SynchronousQueue:1
//java.util.concurrent.atomic.AtomicIntegerFieldUpdater:1
//java.util.concurrent.atomic.AtomicLongFieldUpdater:1
//java.util.concurrent.atomic.AtomicMarkableReference:1
//java.util.concurrent.atomic.AtomicReference:1
//java.util.concurrent.atomic.AtomicReferenceArray:1
//java.util.concurrent.atomic.AtomicReferenceFieldUpdater:2
//java.util.concurrent.atomic.AtomicStampedReference:1
//org.apache.http.client.ResponseHandler:1

