instabug-cordova
Version:
Cordova plugin for integrating the Instabug SDK.
162 lines (161 loc) • 8.17 kB
TypeScript
import registry from "./ArgsRegistry";
declare namespace BugReporting {
enum reportType {
bug = "bug",
feedback = "feedback",
question = "question"
}
enum option {
emailFieldHidden = "emailFieldHidden",
emailFieldOptional = "emailFieldOptional",
commentFieldRequired = "commentFieldRequired",
disablePostSendingDialog = "disablePostSendingDialog"
}
enum invocationEvents {
shake = "shake",
button = "button",
screenshot = "screenshot",
swipe = "swipe",
none = "none"
}
enum extendedBugReportMode {
enabledWithRequiredFields = "enabledWithRequiredFields",
enabledWithOptionalFields = "enabledWithOptionalFields",
disabled = "disabled"
}
const position: typeof registry.position;
/**
* Enables or disables all bug reporting functionalities.
* @param isEnabled a boolean to enable or disable the feature.
* @param success callback on function success.
* @param error callback on function error.
*/
const setEnabled: (isEnabled: boolean, success?: () => void, error?: ((err: any) => void) | undefined) => void;
/**
* Sets report type either bug, feedback or both.
* @param reportTypes an array of reportType.
* @param success callback on function success.
* @param error callback on function error.
*/
const setReportTypes: (reportTypes: reportType[], success?: () => void, error?: ((err: any) => void) | undefined) => void;
/**
* Shows report view with specified options.
* @param reportType an enum of reportType.
* @param options an array of invocation option.
* @param success callback on function success.
* @param error callback on function error.
*/
const showWithOptions: (reportType: reportType, options: option[], success?: () => void, error?: ((err: any) => void) | undefined) => void;
/**
* Sets the invocation options.
* Default is set by `Instabug.start`.
* @param options an array of invocation option.
* @param success callback on function success.
* @param error callback on function error.
*/
const setOptions: (options: option[], success?: () => void, error?: ((err: any) => void) | undefined) => void;
/**
* Sets a block of code to be executed just before the SDK's UI is presented.
* This block is executed on the UI thread. Could be used for performing any
* UI changes before the SDK's UI is shown.
* @param success callback on function success.
* @param error callback on function error.
*/
const setOnInvokeHandler: (success: () => void, error?: ((err: any) => void) | undefined) => void;
/**
* Sets a block of code to be executed right after the SDK's UI is dismissed.
* This block is executed on the UI thread. Could be used for performing any
* UI changes after the SDK's UI is dismissed.
* @param success callback on function success; param includes reportType and dismissType.
* @param error callback on function error.
*/
const setOnDismissHandler: (success: (data: {
reportType: string;
dismissType: string;
}) => void, error?: ((err: any) => void) | undefined) => void;
/**
* Sets the events that will invoke the SDK.
* @param events an array of invocationEvents.
* @param success callback on function success.
* @param error callback on function error.
*/
const setInvocationEvents: (events: invocationEvents[], success?: () => void, error?: ((err: any) => void) | undefined) => void;
/**
* Sets enabled types of attachments for bug reporting.
* @param screenshot a boolean to enable/disable screenshot attachment.
* @param extraScreenshot a boolean to enable/disable extra screenshot attachment.
* @param galleryImage a boolean to enable/disable gallery image attachment.
* @param screenRecording a boolean to enable/disable screen recording attachment.
* @param success callback on function success.
* @param error callback on function error.
*/
const setEnabledAttachmentTypes: (screenshot: boolean, extraScreenshot: boolean, galleryImage: boolean, screenRecording: boolean, success?: () => void, error?: ((err: any) => void) | undefined) => void;
/**
*
* @param extendedBugReportMode an enum of extendedBugReportMode.
* @param success callback on function success.
* @param error callback on function error.
*/
const setExtendedBugReportMode: (extendedBugReportMode: extendedBugReportMode, success?: () => void, error?: ((err: any) => void) | undefined) => void;
/**
* Sets the default edge and offset from the top at which the floating button
* will be shown. Different orientations are already handled.
* @param edge the position of the edge; the default is right.
* @param offset the offset value from the top edge.
* @param success callback on function success.
* @param error callback on function error.
*/
const setFloatingButtonEdge: (edge: registry.floatingButtonEdge, offset: number, success?: () => void, error?: ((err: any) => void) | undefined) => void;
/**
* Sets the threshold value of the shake gesture for iPhone/iPod Touch
* Default for iPhone is 2.5.
* @param threshold the shaking threshold for iPhone.
* @param success callback on function success.
* @param error callback on function error.
*/
const setShakingThresholdForiPhone: (threshold: number, success?: () => void, error?: ((err: any) => void) | undefined) => void;
/**
* Sets the threshold value of the shake gesture for iPad.
* Default for iPad is 0.6.
* @param threshold the shaking threshold for iPad.
* @param success callback on function success.
* @param error callback on function error.
*/
const setShakingThresholdForiPad: (threshold: number, success?: () => void, error?: ((err: any) => void) | undefined) => void;
/**
* Sets the threshold value of the shake gesture for android devices.
* Default for android is an integer value equals 350.
* you could increase the shaking difficulty level by
* increasing the `350` value and vice versa
* @param threshold the shaking threshold for android devices.
* @param success callback on function success.
* @param error callback on function error.
*/
const setShakingThresholdForAndroid: (threshold: number, success?: () => void, error?: ((err: any) => void) | undefined) => void;
/**
* Sets the default position at which the Instabug screen recording button will be shown.
* Different orientations are already handled.
* (Default for `position` is `bottomRight`)
*
* @param position an enum of position to control the video recording button position on the screen.
* @param success callback on function success.
* @param error callback on function error.
*/
const setVideoRecordingFloatingButtonPosition: (position: registry.position, success?: () => void, error?: ((err: any) => void) | undefined) => void;
/**
* Adds a disclaimer text within the bug reporting form, which can include hyperlinked text.
* @param text a String of the disclaimer text.
* @param success callback on function success.
* @param error callback on function error.
*/
const setDisclaimerText: (text: string, success?: () => void, error?: ((err: any) => void) | undefined) => void;
/**
* Sets a minimum number of characters as a requirement for the comments field in the different report types.
* @param limit an integer number of characters.
* @param reportTypes an optional an array of reportType. If it's not passed, the limit will apply to all report types.
* @param success callback on function success.
* @param error callback on function error.
*/
const setCommentMinimumCharacterCount: (limit: number, reportTypes?: reportType[], success?: () => void, error?: ((err: any) => void) | undefined) => void;
}
export = BugReporting;