summaryrefslogtreecommitdiff
path: root/lib/epub.js/types/annotations.d.ts
diff options
context:
space:
mode:
Diffstat (limited to 'lib/epub.js/types/annotations.d.ts')
-rw-r--r--lib/epub.js/types/annotations.d.ts53
1 files changed, 53 insertions, 0 deletions
diff --git a/lib/epub.js/types/annotations.d.ts b/lib/epub.js/types/annotations.d.ts
new file mode 100644
index 0000000..718319d
--- /dev/null
+++ b/lib/epub.js/types/annotations.d.ts
@@ -0,0 +1,53 @@
+import Rendition from "./rendition";
+import View from "./managers/view";
+
+export default class Annotations {
+ constructor(rendition: Rendition);
+
+ add(type: string, cfiRange: string, data?: object, cb?: Function, className?: string, styles?: object): Annotation;
+
+ remove(cfiRange: string, type: string): void;
+
+ highlight(cfiRange: string, data?: object, cb?: Function, className?: string, styles?: object): void;
+
+ underline(cfiRange: string, data?: object, cb?: Function, className?: string, styles?: object): void;
+
+ mark(cfiRange: string, data?: object, cb?: Function): void;
+
+ each(): Array<Annotation>
+
+ private _removeFromAnnotationBySectionIndex(sectionIndex: number, hash: string): void;
+
+ private _annotationsAt(index: number): void;
+
+ private inject(view: View): void;
+
+ private clear(view: View): void;
+}
+
+declare class Annotation {
+ constructor(options: {
+ type: string,
+ cfiRange: string,
+ data?: object,
+ sectionIndex?: number,
+ cb?: Function,
+ className?: string,
+ styles?: object
+ });
+
+ update(data: object): void;
+
+ attach(view: View): any;
+
+ detach(view: View): any;
+
+ // Event emitters
+ emit(type: any, ...args: any[]): void;
+
+ off(type: any, listener: any): any;
+
+ on(type: any, listener: any): any;
+
+ once(type: any, listener: any, ...args: any[]): any;
+}