From 17de9b4271bcaf3dc20ec3c77096db3396f0b211 Mon Sep 17 00:00:00 2001 From: Victor M Date: Tue, 7 Jul 2015 19:11:46 +0500 Subject: [PATCH 1/6] Add atom.d.ts from atom-typescript project --- atom/atom.d.ts | 282 +++++++++++++++++++++++-------------------------- 1 file changed, 130 insertions(+), 152 deletions(-) diff --git a/atom/atom.d.ts b/atom/atom.d.ts index 96b7c849d..3fdeccf18 100644 --- a/atom/atom.d.ts +++ b/atom/atom.d.ts @@ -15,7 +15,7 @@ // if js file include to another npm package (e.g. "space-pen", "mixto" and "emissary"). // you should create a separate file. -// API documentation : https://atom.io/docs/api/v0.106.0/api/docs/README.md.html +// NOTE Document? You should use DevTools hehe... interface Window { atom: AtomCore.IAtom; @@ -32,9 +32,36 @@ declare module AtomCore { version: number; configDefaults:any; content():any; + } + + interface Disposable { + dispose(); + } + + interface Decoration + { + destroy(): void; } - interface IWorkspaceView extends View { + /** + * Represents a buffer annotation that remains logically stationary even as the buffer changes. This is used + * to represent cursors, folds, snippet targets, misspelled words, any anything else that needs to track a + * logical location in the buffer over time. + */ + interface Marker { + /** + * Destroys the marker, causing it to emit the 'destroyed' event. Once destroyed, a marker cannot be + * restored by undo/redo operations. + */ + destroy(): void; + + /** + * Gets the screen range of the display marker. + */ + getScreenRange(): Range; + } + + interface IWorkspaceView extends View { // Delegator.includeInto(WorkspaceView); // delegate to model property's property @@ -141,9 +168,14 @@ declare module AtomCore { removeLineHighlights():void; addLineHighlight(row:number, emptySelection?:boolean):any; highlightLines():boolean; - } + } - interface ICommandPanel { + interface ICommandRegistry { + add(selector: string, name: string, callback: (event: any) => void); // selector:'atom-editor'|'atom-workspace' + dispatch(selector: any, name:string); + } + + interface ICommandPanel { // TBD } @@ -344,11 +376,20 @@ declare module AtomCore { foldForMarker(marker:any):any; } + interface IViewRegistry { + getView(selector:any):any; + } + interface ICursorStatic { new (arg:{editor:IEditor; marker:IDisplayBufferMarker; id: number;}):ICursor; } + interface ScopeDescriptor { + scopes: string[]; + } + interface ICursor /* extends Theorist.Model */ { + getScopeDescriptor(): ScopeDescriptor; screenPosition:any; bufferPosition:any; goalColumn:any; @@ -413,6 +454,7 @@ declare module AtomCore { isAtEndOfLine():boolean; getScopes():string[]; hasPrecedingCharactersOnLine():boolean; + getMarker(): Marker; } interface ILanguageMode { @@ -497,35 +539,6 @@ declare module AtomCore { screenRangeChanged():any; } - interface IDecorationParams { - id?: number; - class: string; - type: any /* string or string[] */; - } - - interface IDecorationStatic { - isType(decorationParams:IDecorationParams, type:any /* string or string[] */):boolean; - new (marker:IDisplayBufferMarker, displayBuffer:IDisplayBuffer, params: IDecorationParams): IDecoration; - } - - interface IDecoration extends Emissary.IEmitter { - marker: IDisplayBufferMarker; - displayBuffer: IDisplayBuffer; - params: IDecorationParams - id: number; - flashQueue: any[]; - isDestroyed: boolean; - - destroy():void; - update(newParams:IDecorationParams):void; - getMarker():IDisplayBufferMarker; - getParams():IDecorationParams; - isType(type:string):boolean; - matchesPattern(decorationPattern:{[key:string]:IDecorationParams;}):boolean; - flash(klass:string, duration?:number):void; - consumeNextFlash():any; - } - interface IEditor { // Serializable.includeInto(Editor); // Delegator.includeInto(Editor); @@ -538,8 +551,6 @@ declare module AtomCore { cursors:ICursor[]; selections: ISelection[]; suppressSelectionMerging:boolean; - updateBatchDepth: number; - selectionFlashDuration: number; softTabs: boolean; displayBuffer: IDisplayBuffer; @@ -553,19 +564,20 @@ declare module AtomCore { subscriptionsByObject: any; /* WeakMap */ subscriptions: Emissary.ISubscription[]; - mini: any; - serializeParams():{id:number; softTabs:boolean; scrollTop:number; scrollLeft:number; displayBuffer:any;}; deserializeParams(params:any):any; subscribeToBuffer():void; subscribeToDisplayBuffer():void; getViewClass():any; // return type are EditorView - destroyed():void; + isDestroyed():boolean; copy():IEditor; getTitle():string; getLongTitle():string; setVisible(visible:boolean):void; - setMini(mini:any):void; + setScrollTop(scrollTop:any):void; + getScrollTop():number; + setScrollLeft(scrollLeft:any):void; + getScrollLeft():number; setEditorWidthInChars(editorWidthInChars:any):void; getSoftWrapColumn():number; getSoftTabs():boolean; @@ -575,7 +587,6 @@ declare module AtomCore { getTabText():string; getTabLength():number; setTabLength(tabLength:any):void; - usesSoftTabs():boolean; clipBufferPosition(bufferPosition:any):void; clipBufferRange(range:any):void; indentationForBufferRow(bufferRow:any):void; @@ -584,7 +595,6 @@ declare module AtomCore { buildIndentString(number:any):string; save():void; saveAs(filePath:any):void; - copyPathToClipboard():void; getPath():string; getText():string; setText(text:any):void; @@ -604,7 +614,6 @@ declare module AtomCore { scanInBufferRange():any; backwardsScanInBufferRange():any; isModified():boolean; - isEmpty():boolean; shouldPromptToSave():boolean; screenPositionForBufferPosition(bufferPosition:any, options?:any):TextBuffer.IPoint; bufferPositionForScreenPosition(screenPosition:any, options?:any):TextBuffer.IPoint; @@ -621,20 +630,15 @@ declare module AtomCore { scopesForBufferPosition(bufferPosition:any):string[]; bufferRangeForScopeAtCursor(selector:string):any; tokenForBufferPosition(bufferPosition:any):IToken; - getCursorScopes():string[]; - logCursorScope():void; insertText(text:string, options?:any):TextBuffer.IRange[]; insertNewline():TextBuffer.IRange[]; insertNewlineBelow():TextBuffer.IRange[]; insertNewlineAbove():any; indent(options?:any):any; backspace():any[]; - // deprecated backspaceToBeginningOfWord():any[]; - // deprecated backspaceToBeginningOfLine():any[]; - deleteToBeginningOfWord():any[]; - deleteToBeginningOfLine():any[]; + backspaceToBeginningOfWord():any[]; + backspaceToBeginningOfLine():any[]; delete():any[]; - deleteToEndOfLine():any[]; deleteToEndOfWord():any[]; deleteLine():TextBuffer.IRange[]; indentSelectedRows():TextBuffer.IRange[][]; @@ -657,7 +661,6 @@ declare module AtomCore { foldBufferRow(bufferRow:any):any; unfoldBufferRow(bufferRow:any):any; isFoldableAtBufferRow(bufferRow:any):boolean; - isFoldableAtScreenRow(screenRow:any):boolean; createFold(startRow:any, endRow:any):IFold; destroyFoldWithId(id:any):any; destroyFoldsIntersectingBufferRange(bufferRange:any):any; @@ -671,12 +674,9 @@ declare module AtomCore { moveLineUp():ISelection[]; moveLineDown():ISelection[]; duplicateLines():any[][]; - // duprecated duplicateLine():any[][]; + duplicateLine():any[][]; mutateSelectedText(fn:(selection:ISelection)=>any):any; replaceSelectedText(options:any, fn:(selection:string)=>any):any; - decorationsForScreenRowRange(startScreenRow:any, endScreenRow:any):{[id:number]: IDecoration[]}; - decorateMarker(marker:IDisplayBufferMarker, decorationParams: {type:string; class: string;}):IDecoration; - decorationForId(id:number):IDecoration; getMarker(id:number):IDisplayBufferMarker; getMarkers():IDisplayBufferMarker[]; findMarkers(...args:any[]):IDisplayBufferMarker[]; @@ -688,7 +688,6 @@ declare module AtomCore { getMarkerCount():number; hasMultipleCursors():boolean; getCursors():ICursor[]; - getCursor():ICursor; addCursorAtScreenPosition(screenPosition:any):ICursor; addCursorAtBufferPosition(bufferPosition:any):ICursor; addCursor(marker:any):ICursor; @@ -700,7 +699,6 @@ declare module AtomCore { removeSelection(selection:ISelection):any; clearSelections():boolean; consolidateSelections():boolean; - selectionScreenRangeChanged(selection:any):void; getSelections():ISelection[]; getSelection(index?:number):ISelection; getLastSelection():ISelection; @@ -717,7 +715,7 @@ declare module AtomCore { getSelectedBufferRanges():TextBuffer.IRange[]; getSelectedText():string; getTextInBufferRange(range:TextBuffer.IRange):string; - setTextInBufferRange(range:TextBuffer.IRange, text:string):any; + setTextInBufferRange(range:TextBuffer.IRange | any[], text:string):any; getCurrentParagraphBufferRange():TextBuffer.IRange; getWordUnderCursor(options?:any):string; moveCursorUp(lineCount?:number):void; @@ -729,23 +727,16 @@ declare module AtomCore { moveCursorToBeginningOfScreenLine():void; moveCursorToBeginningOfLine():void; moveCursorToFirstCharacterOfLine():void; - moveCursorToEndOfScreenLine():void; + moveToEndOfScreenLine():void; moveCursorToEndOfLine():void; moveCursorToBeginningOfWord():void; moveCursorToEndOfWord():void; moveCursorToBeginningOfNextWord():void; moveCursorToPreviousWordBoundary():void; moveCursorToNextWordBoundary():void; - moveCursorToBeginningOfNextParagraph():void; - moveCursorToBeginningOfPreviousParagraph():void; - scrollToCursorPosition(options:any):any; - pageUp():void; - pageDown():void; - selectPageUp():void; - selectPageDown():void; - getRowsPerPage():number; moveCursors(fn:(cursor:ICursor)=>any):any; - cursorMoved(event:any):void; + moveToBeginningOfLine():any; + moveToEndOfLine():any; selectToScreenPosition(position:TextBuffer.IPoint):any; selectRight():ISelection[]; selectLeft():ISelection[]; @@ -760,6 +751,7 @@ declare module AtomCore { selectToPreviousWordBoundary():ISelection[]; selectToNextWordBoundary():ISelection[]; selectLine():ISelection[]; + selectLinesContainingCursors():ISelection[]; addSelectionBelow():ISelection[]; addSelectionAbove():ISelection[]; splitSelectionsIntoLines():any[]; @@ -771,8 +763,6 @@ declare module AtomCore { selectToEndOfWord():ISelection[]; selectToBeginningOfNextWord():ISelection[]; selectWord():ISelection[]; - selectToBeginningOfNextParagraph():ISelection[]; - selectToBeginningOfPreviousParagraph():ISelection[]; selectMarker(marker:any):any; mergeCursors():number[]; expandSelectionsForward():any; @@ -784,71 +774,39 @@ declare module AtomCore { setGrammar(grammer:IGrammar):void; reloadGrammar():any; shouldAutoIndent():boolean; - shouldShowInvisibles():boolean; - updateInvisibles():void; transact(fn:Function):any; beginTransaction():ITransaction; commitTransaction():any; abortTransaction():any[]; inspect():string; logScreenLines(start:number, end:number):any[]; - handleTokenization():void; handleGrammarChange():void; handleMarkerCreated(marker:any):any; getSelectionMarkerAttributes():{type: string; editorId: number; invalidate: string; }; - getVerticalScrollMargin():number; - setVerticalScrollMargin(verticalScrollMargin:number):void; - getHorizontalScrollMargin():number; - setHorizontalScrollMargin(horizontalScrollMargin:number):void; - getLineHeightInPixels():number; - setLineHeightInPixels(lineHeightInPixels:number):void; - batchCharacterMeasurement(fn:Function):void; - getScopedCharWidth(scopeNames:any, char:any):any; - setScopedCharWidth(scopeNames:any, char:any, width:any):any; - getScopedCharWidths(scopeNames:any):any; - clearScopedCharWidths():any; - getDefaultCharWidth():number; - setDefaultCharWidth(defaultCharWidth:number):void; - setHeight(height:number):void; - getHeight():number; - getClientHeight():number; - setWidth(width:number):void; - getWidth():number; - getScrollTop():number; - setScrollTop(scrollTop:number):void; - getScrollBottom():number; - setScrollBottom(scrollBottom:number):void; - getScrollLeft():number; - setScrollLeft(scrollLeft:number):void; - getScrollRight():number; - setScrollRight(scrollRight:number):void; - getScrollHeight():number; - getScrollWidth():number; - getVisibleRowRange():number; - intersectsVisibleRowRange(startRow:any, endRow:any):any; - selectionIntersectsVisibleRowRange(selection:any):any; - pixelPositionForScreenPosition(screenPosition:any):any; - pixelPositionForBufferPosition(bufferPosition:any):any; - screenPositionForPixelPosition(pixelPosition:any):any; - pixelRectForScreenRange(screenRange:any):any; - scrollToScreenRange(screenRange:any, options:any):any; - scrollToScreenPosition(screenPosition:any, options:any):any; - scrollToBufferPosition(bufferPosition:any, options:any):any; - horizontallyScrollable():any; - verticallyScrollable():any; - getHorizontalScrollbarHeight():any; - setHorizontalScrollbarHeight(height:any):any; - getVerticalScrollbarWidth():any; - setVerticalScrollbarWidth(width:any):any; - // deprecated joinLine():any; + // joinLine():any; // deprecated + + onDidChange(callback: Function): Disposable; + onDidDestroy(callback: Function): Disposable; + onDidStopChanging(callback: Function): Disposable; + onDidChangeCursorPosition(callback: Function): Disposable; + onDidSave(callback: (event: { path: string }) => void): Disposable; + + screenPositionForPixelPosition: Function; + pixelPositionForBufferPosition: Function; + getHeight(): number; + + decorateMarker(marker: Marker, options: any): Decoration; + getLastCursor(): ICursor; } interface IGrammar { + name: any; scopeName: string; // TBD } interface IPane /* extends Theorist.Model */ { + itemForURI: (uri:string)=>IEditor; items:any[]; activeItem:any; @@ -856,6 +814,7 @@ declare module AtomCore { deserializeParams(params:any):any; getViewClass():any; // return type are PaneView isActive():boolean; + isDestroyed():boolean; focus():void; blur():void; activate():void; @@ -934,7 +893,9 @@ declare module AtomCore { // Serializable.includeInto(Project); path:string; - rootDirectory:PathWatcher.IDirectory; + /** deprecated */ + rootDirectory?:PathWatcher.IDirectory; + rootDirectories:PathWatcher.IDirectory[]; serializeParams():any; deserializeParams(params:any):any; @@ -964,42 +925,69 @@ declare module AtomCore { replace(regex:any, replacementText:any, filePaths:any, iterator:any):Q.Promise; buildEditorForBuffer(buffer:any, editorOptions:any):IEditor; eachBuffer(...args:any[]):any; + + onDidChangePaths(callback: Function): Disposable; } interface IWorkspaceStatic { new():IWorkspace; } + interface IWorkspacePanelOptions{ + item:any; + visible?:boolean; + priority?:number; + } + + interface Panel{ + getItem():any; + getPriority():any; + isVisible():boolean; + show(); + hide(); + } + interface IWorkspace { + addBottomPanel(options:IWorkspacePanelOptions):Panel; + addLeftPanel(options:IWorkspacePanelOptions):Panel; + addRightPanel(options:IWorkspacePanelOptions):Panel; + addTopPanel(options:IWorkspacePanelOptions):Panel; + addModalPanel(options:IWorkspacePanelOptions):Panel; + addOpener(opener: Function): any; + deserializeParams(params:any):any; serializeParams():{paneContainer:any;fullScreen:boolean;}; - eachEditor(callback:Function):void; - getEditors():IEditor[]; + eachEditor(callback: Function): void; + getTextEditors():IEditor[]; open(uri:string, options:any):Q.Promise; openLicense():void; openSync(uri:string, options:any):any; - openUriInPane(uri:string, pane:any, options:any):Q.Promise; + openUriInPane(uri: string, pane: any, options: any): Q.Promise; + observeTextEditors(callback: Function): Disposable; reopenItemSync():any; registerOpener(opener:(urlToOpen:string)=>any):void; unregisterOpener(opener:Function):void; getOpeners():any; getActivePane(): IPane; + getActivePaneItem(): IPane; + getActiveTextEditor(): IEditor; getPanes():any; saveAll():void; activateNextPane():any; activatePreviousPane():any; - paneForUri: (uri:string) => IPane; + paneForURI: (uri:string) => IPane; saveActivePaneItem():any; saveActivePaneItemAs():any; destroyActivePaneItem():any; destroyActivePane():any; - getActiveEditor():IEditor; increaseFontSize():void; decreaseFontSize():void; resetFontSize():void; itemOpened(item:any):void; onPaneItemDestroyed(item:any):void; destroyed():void; + + onDidChangeActivePaneItem(item:any):Disposable; } interface IAtomSettings { @@ -1041,21 +1029,6 @@ declare module AtomCore { // TBD } - interface IPackage { - mainModulePath: string; - mainModule: any; - enable(): void; - disable(): void; - isTheme(): boolean; - getType(): string; - getStylesheetType(): string; - load(): IPackage; - reset(): void; - activate(): Q.Promise; - activateNow(): void; - // TBD - } - interface IPackageManager extends Emissary.IEmitter { packageDirPaths:string[]; loadedPackages:any; @@ -1072,7 +1045,7 @@ declare module AtomCore { activate():void; registerPackageActivator(activator:any, types:any):void; activatePackages(packages:any):void; - activatePackage(name:string):Q.Promise; + activatePackage(name:string):any; deactivatePackages():void; deactivatePackage(name:string):void; getActivePackages():any; @@ -1098,6 +1071,13 @@ declare module AtomCore { getAvailablePackageMetadata():any[]; } + interface INotifications { + addInfo: Function; + addError: Function; + addSuccess: Function; + addWarning: Function; + } + interface IThemeManager { // TBD } @@ -1111,7 +1091,8 @@ declare module AtomCore { } interface IClipboard { - // TBD + write(text:string, metadata?:any):any; + read():string; } interface ISyntax { @@ -1125,14 +1106,7 @@ declare module AtomCore { interface IAtomStatic extends ISerializationStatic { version: number; loadSettings: IAtomSettings; - - /* Load or create the Atom environment in the given mode */ - loadOrCreate(mode:'editor'):IAtom; - /* Load or create the Atom environment in the given mode */ - loadOrCreate(mode:'spec'):IAtom; - /* Load or create the Atom environment in the given mode */ loadOrCreate(mode:string):IAtom; - loadState(mode:any):void; getStatePath(mode:any):string; getConfigDirPath():string; @@ -1145,23 +1119,24 @@ declare module AtomCore { new(state:IAtomState):IAtom; } - // https://atom.io/docs/api/v0.106.0/api/classes/Atom.html - /* Global Atom class : instance members */ interface IAtom { constructor:IAtomStatic; state:IAtomState; mode:string; deserializers:IDeserializerManager; - config: IConfig; + config: IConfig; + commands: ICommandRegistry; keymaps: IKeymapManager; keymap: IKeymapManager; packages: IPackageManager; themes: IThemeManager; contextManu: IContextMenuManager; menu: IMenuManager; + notifications: INotifications; // https://github.com/atom/notifications clipboard:IClipboard; syntax:ISyntax; + views: IViewRegistry; windowEventHandler: IWindowEventHandler; // really exists? start @@ -1228,7 +1203,9 @@ declare module AtomCore { beep:Function; getUserInitScriptPath:Function; requireUserInitScript:Function; - requireWithGlobals:Function; + requireWithGlobals: Function; + + services: any; // TODO: New services api } interface IBufferedNodeProcessStatic { @@ -1704,6 +1681,7 @@ declare module "atom" { cancelling:boolean; items:any[]; list:JQuery; + filterEditorView: JQuery; previouslyFocusedElement:JQuery; @@ -1739,7 +1717,7 @@ declare module "atom" { confirmSelection():any; - viewForItem(item:any):JQuery; // You must override this method! + viewForItem(item:any):JQuery|string|HTMLElement|View; // You must override this method! confirmed(item:any):any; // You must override this method! getFilterKey():any; From 811f53c77aab08f43e6881a208f44b9b299c7d37 Mon Sep 17 00:00:00 2001 From: Victor M Date: Tue, 7 Jul 2015 19:26:14 +0500 Subject: [PATCH 2/6] Add typings for IGrammar interface --- atom/atom.d.ts | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/atom/atom.d.ts b/atom/atom.d.ts index 77dfc087c..a701501b2 100644 --- a/atom/atom.d.ts +++ b/atom/atom.d.ts @@ -905,9 +905,27 @@ declare module AtomCore { } interface IGrammar { - name: any; + bundledPackage: boolean; + emitter: any; + fileTypes: [string]; + firstLineRegex: any; + foldingStopMarker: any; + includedGrammarScopes: [any]; + initialRule: any; + injectionSelector: any; + injections: any; + maxTokensPerLine: Number; + name: string; + packageName: string; + path: string; + rawPatterns: [any]; + rawRepository: any; + registration: Disposable; + registry: any; + repository: Object; scopeName: string; // TBD + } interface IPane /* extends Theorist.Model */ { From 0b6df4413c19aff16f59998591b0f8d1aa63d0cf Mon Sep 17 00:00:00 2001 From: Victor M Date: Tue, 7 Jul 2015 19:37:15 +0500 Subject: [PATCH 3/6] Fix indentation --- atom/atom.d.ts | 44 ++++++++++++++++++++++---------------------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/atom/atom.d.ts b/atom/atom.d.ts index a701501b2..df15f5d20 100644 --- a/atom/atom.d.ts +++ b/atom/atom.d.ts @@ -168,14 +168,14 @@ declare module AtomCore { removeLineHighlights():void; addLineHighlight(row:number, emptySelection?:boolean):any; highlightLines():boolean; - } + } - interface ICommandRegistry { - add(selector: string, name: string, callback: (event: any) => void); // selector:'atom-editor'|'atom-workspace' + interface ICommandRegistry { + add(selector: string, name: string, callback: (event: any) => void); // selector:'atom-editor'|'atom-workspace' dispatch(selector: any, name:string); - } + } - interface ICommandPanel { + interface ICommandPanel { // TBD } @@ -603,12 +603,12 @@ declare module AtomCore { subscribeToDisplayBuffer():void; getViewClass():any; // return type are EditorView destroyed():void; - isDestroyed():boolean; + isDestroyed():boolean; copy():IEditor; getTitle():string; getLongTitle():string; setVisible(visible:boolean):void; - setMini(mini:any):void; + setMini(mini:any):void; setScrollTop(scrollTop:any):void; getScrollTop():number; setScrollLeft(scrollLeft:any):void; @@ -891,13 +891,13 @@ declare module AtomCore { // deprecated joinLine():any; onDidChange(callback: Function): Disposable; - onDidDestroy(callback: Function): Disposable; - onDidStopChanging(callback: Function): Disposable; + onDidDestroy(callback: Function): Disposable; + onDidStopChanging(callback: Function): Disposable; onDidChangeCursorPosition(callback: Function): Disposable; - onDidSave(callback: (event: { path: string }) => void): Disposable; + onDidSave(callback: (event: { path: string }) => void): Disposable; screenPositionForPixelPosition: Function; - pixelPositionForBufferPosition: Function; + pixelPositionForBufferPosition: Function; getHeight(): number; decorateMarker(marker: Marker, options: any): Decoration; @@ -929,7 +929,7 @@ declare module AtomCore { } interface IPane /* extends Theorist.Model */ { - itemForURI: (uri:string)=>IEditor; + itemForURI: (uri:string)=>IEditor; items:any[]; activeItem:any; @@ -1049,7 +1049,7 @@ declare module AtomCore { buildEditorForBuffer(buffer:any, editorOptions:any):IEditor; eachBuffer(...args:any[]):any; - onDidChangePaths(callback: Function): Disposable; + onDidChangePaths(callback: Function): Disposable; } interface IWorkspaceStatic { @@ -1076,17 +1076,17 @@ declare module AtomCore { addRightPanel(options:IWorkspacePanelOptions):Panel; addTopPanel(options:IWorkspacePanelOptions):Panel; addModalPanel(options:IWorkspacePanelOptions):Panel; - addOpener(opener: Function): any; + addOpener(opener: Function): any; deserializeParams(params:any):any; serializeParams():{paneContainer:any;fullScreen:boolean;}; - eachEditor(callback: Function): void; + eachEditor(callback: Function): void; getTextEditors():IEditor[]; open(uri:string, options:any):Q.Promise; openLicense():void; openSync(uri:string, options:any):any; - openUriInPane(uri: string, pane: any, options: any): Q.Promise; - observeTextEditors(callback: Function): Disposable; + openUriInPane(uri: string, pane: any, options: any): Q.Promise; + observeTextEditors(callback: Function): Disposable; reopenItemSync():any; registerOpener(opener:(urlToOpen:string)=>any):void; unregisterOpener(opener:Function):void; @@ -1285,8 +1285,8 @@ declare module AtomCore { state:IAtomState; mode:string; deserializers:IDeserializerManager; - config: IConfig; - commands: ICommandRegistry; + config: IConfig; + commands: ICommandRegistry; keymaps: IKeymapManager; keymap: IKeymapManager; packages: IPackageManager; @@ -1365,9 +1365,9 @@ declare module AtomCore { beep:Function; getUserInitScriptPath:Function; requireUserInitScript:Function; - requireWithGlobals: Function; + requireWithGlobals: Function; - services: any; // TODO: New services api + services: any; // TODO: New services api } interface IBufferedNodeProcessStatic { @@ -1843,7 +1843,7 @@ declare module "atom" { cancelling:boolean; items:any[]; list:JQuery; - filterEditorView: JQuery; + filterEditorView: JQuery; previouslyFocusedElement:JQuery; From e7eaa7bd5bd3a206a17144ded5b13f8aa2a6ec0f Mon Sep 17 00:00:00 2001 From: Victor M Date: Tue, 7 Jul 2015 19:55:07 +0500 Subject: [PATCH 4/6] Fix duplicates confilict --- atom/atom.d.ts | 27 +++++---------------------- 1 file changed, 5 insertions(+), 22 deletions(-) diff --git a/atom/atom.d.ts b/atom/atom.d.ts index df15f5d20..fd248e553 100644 --- a/atom/atom.d.ts +++ b/atom/atom.d.ts @@ -34,10 +34,6 @@ declare module AtomCore { content():any; } - interface Disposable { - dispose(); - } - interface Decoration { destroy(): void; @@ -171,8 +167,9 @@ declare module AtomCore { } interface ICommandRegistry { - add(selector: string, name: string, callback: (event: any) => void); // selector:'atom-editor'|'atom-workspace' - dispatch(selector: any, name:string); + add(selector: string, name: string, callback: (event: any) => void): void; // selector:'atom-editor'|'atom-workspace' + findCommands(params: Object): Object[]; + dispatch(selector: any, name:string): void; } interface ICommandPanel { @@ -896,10 +893,6 @@ declare module AtomCore { onDidChangeCursorPosition(callback: Function): Disposable; onDidSave(callback: (event: { path: string }) => void): Disposable; - screenPositionForPixelPosition: Function; - pixelPositionForBufferPosition: Function; - getHeight(): number; - decorateMarker(marker: Marker, options: any): Decoration; getLastCursor(): ICursor; } @@ -968,7 +961,6 @@ declare module AtomCore { saveItem(item:any, nextAction:Function):void; saveItemAs(item:any, nextAction:Function):void; saveItems():any[]; - itemForURI(uri:any):any; activateItemForURI(uri:any):any; copyActiveItem():void; splitLeft(params:any):IPane; @@ -1066,8 +1058,8 @@ declare module AtomCore { getItem():any; getPriority():any; isVisible():boolean; - show(); - hide(); + show():void; + hide():void; } interface IWorkspace { @@ -1270,13 +1262,6 @@ declare module AtomCore { dispose():void } - class CommandRegistry { - add(target:string, commandName:string, callback:Function):Disposable - findCommands(params:Object):Object[] - dispatch(target:any,commandName:string):void - } - - // https://atom.io/docs/api/v0.106.0/api/classes/Atom.html /* Global Atom class : instance members */ interface IAtom { @@ -1310,8 +1295,6 @@ declare module AtomCore { workspace: IWorkspace; // really exists? end - commands: CommandRegistry; - initialize:Function; // registerRepresentationClass:Function; // registerRepresentationClasses:Function; From 608f3304399fa4123b46026b365e25b6b6555170 Mon Sep 17 00:00:00 2001 From: Victor M Date: Tue, 7 Jul 2015 20:11:09 +0500 Subject: [PATCH 5/6] Fix indentation --- atom/atom.d.ts | 106 ++++++++++++++++++++++++------------------------- 1 file changed, 52 insertions(+), 54 deletions(-) diff --git a/atom/atom.d.ts b/atom/atom.d.ts index fd248e553..9280bc5e9 100644 --- a/atom/atom.d.ts +++ b/atom/atom.d.ts @@ -25,18 +25,16 @@ interface Window { declare module AtomCore { -// https://atom.io/docs/v0.84.0/advanced/view-system + // https://atom.io/docs/v0.84.0/advanced/view-system interface IWorkspaceViewStatic { new ():IWorkspaceView; - version: number; configDefaults:any; content():any; - } + } - interface Decoration - { - destroy(): void; + interface Decoration { + destroy(): void; } /** @@ -44,20 +42,20 @@ declare module AtomCore { * to represent cursors, folds, snippet targets, misspelled words, any anything else that needs to track a * logical location in the buffer over time. */ - interface Marker { - /** - * Destroys the marker, causing it to emit the 'destroyed' event. Once destroyed, a marker cannot be - * restored by undo/redo operations. - */ - destroy(): void; + interface Marker { + /** + * Destroys the marker, causing it to emit the 'destroyed' event. Once destroyed, a marker cannot be + * restored by undo/redo operations. + */ + destroy(): void; - /** - * Gets the screen range of the display marker. - */ - getScreenRange(): Range; - } + /** + * Gets the screen range of the display marker. + */ + getScreenRange(): Range; + } - interface IWorkspaceView extends View { + interface IWorkspaceView extends View { // Delegator.includeInto(WorkspaceView); // delegate to model property's property @@ -164,15 +162,15 @@ declare module AtomCore { removeLineHighlights():void; addLineHighlight(row:number, emptySelection?:boolean):any; highlightLines():boolean; - } + } - interface ICommandRegistry { - add(selector: string, name: string, callback: (event: any) => void): void; // selector:'atom-editor'|'atom-workspace' - findCommands(params: Object): Object[]; + interface ICommandRegistry { + add(selector: string, name: string, callback: (event: any) => void): void; // selector:'atom-editor'|'atom-workspace' + findCommands(params: Object): Object[]; dispatch(selector: any, name:string): void; - } + } - interface ICommandPanel { + interface ICommandPanel { // TBD } @@ -381,12 +379,12 @@ declare module AtomCore { new (arg:{editor:IEditor; marker:IDisplayBufferMarker; id: number;}):ICursor; } - interface ScopeDescriptor { + interface ScopeDescriptor { scopes: string[]; - } + } interface ICursor /* extends Theorist.Model */ { - getScopeDescriptor(): ScopeDescriptor; + getScopeDescriptor(): ScopeDescriptor; screenPosition:any; bufferPosition:any; goalColumn:any; @@ -600,12 +598,12 @@ declare module AtomCore { subscribeToDisplayBuffer():void; getViewClass():any; // return type are EditorView destroyed():void; - isDestroyed():boolean; + isDestroyed():boolean; copy():IEditor; getTitle():string; getLongTitle():string; setVisible(visible:boolean):void; - setMini(mini:any):void; + setMini(mini:any):void; setScrollTop(scrollTop:any):void; getScrollTop():number; setScrollLeft(scrollLeft:any):void; @@ -888,10 +886,10 @@ declare module AtomCore { // deprecated joinLine():any; onDidChange(callback: Function): Disposable; - onDidDestroy(callback: Function): Disposable; - onDidStopChanging(callback: Function): Disposable; + onDidDestroy(callback: Function): Disposable; + onDidStopChanging(callback: Function): Disposable; onDidChangeCursorPosition(callback: Function): Disposable; - onDidSave(callback: (event: { path: string }) => void): Disposable; + onDidSave(callback: (event: { path: string }) => void): Disposable; decorateMarker(marker: Marker, options: any): Decoration; getLastCursor(): ICursor; @@ -922,7 +920,7 @@ declare module AtomCore { } interface IPane /* extends Theorist.Model */ { - itemForURI: (uri:string)=>IEditor; + itemForURI: (uri:string)=>IEditor; items:any[]; activeItem:any; @@ -972,7 +970,7 @@ declare module AtomCore { findOrCreateRightmostSibling():IPane; } -// https://atom.io/docs/v0.84.0/advanced/serialization + // https://atom.io/docs/v0.84.0/advanced/serialization interface ISerializationStatic { deserialize(data:ISerializationInfo):T; new (data:T): ISerialization; @@ -1041,7 +1039,7 @@ declare module AtomCore { buildEditorForBuffer(buffer:any, editorOptions:any):IEditor; eachBuffer(...args:any[]):any; - onDidChangePaths(callback: Function): Disposable; + onDidChangePaths(callback: Function): Disposable; } interface IWorkspaceStatic { @@ -1068,17 +1066,17 @@ declare module AtomCore { addRightPanel(options:IWorkspacePanelOptions):Panel; addTopPanel(options:IWorkspacePanelOptions):Panel; addModalPanel(options:IWorkspacePanelOptions):Panel; - addOpener(opener: Function): any; + addOpener(opener: Function): any; deserializeParams(params:any):any; serializeParams():{paneContainer:any;fullScreen:boolean;}; - eachEditor(callback: Function): void; + eachEditor(callback: Function): void; getTextEditors():IEditor[]; open(uri:string, options:any):Q.Promise; openLicense():void; openSync(uri:string, options:any):any; - openUriInPane(uri: string, pane: any, options: any): Q.Promise; - observeTextEditors(callback: Function): Disposable; + openUriInPane(uri: string, pane: any, options: any): Q.Promise; + observeTextEditors(callback: Function): Disposable; reopenItemSync():any; registerOpener(opener:(urlToOpen:string)=>any):void; unregisterOpener(opener:Function):void; @@ -1145,7 +1143,7 @@ declare module AtomCore { // TBD } - interface IPackage { + interface IPackage { mainModulePath: string; mainModule: any; enable(): void; @@ -1157,8 +1155,8 @@ declare module AtomCore { reset(): void; activate(): Q.Promise; activateNow(): void; - // TBD - } + // TBD + } interface IPackageManager extends Emissary.IEmitter { packageDirPaths:string[]; @@ -1175,7 +1173,7 @@ declare module AtomCore { disablePackage(name:string):any; activate():void; registerPackageActivator(activator:any, types:any):void; - activatePackages(packages:any):void; + activatePackages(packages:any):Q.Promise; activatePackage(name:string):any; deactivatePackages():void; deactivatePackage(name:string):void; @@ -1202,12 +1200,12 @@ declare module AtomCore { getAvailablePackageMetadata():any[]; } - interface INotifications { - addInfo: Function; - addError: Function; - addSuccess: Function; - addWarning: Function; - } + interface INotifications { + addInfo: Function; + addError: Function; + addSuccess: Function; + addWarning: Function; + } interface IThemeManager { // TBD @@ -1270,8 +1268,8 @@ declare module AtomCore { state:IAtomState; mode:string; deserializers:IDeserializerManager; - config: IConfig; - commands: ICommandRegistry; + config: IConfig; + commands: ICommandRegistry; keymaps: IKeymapManager; keymap: IKeymapManager; packages: IPackageManager; @@ -1348,9 +1346,9 @@ declare module AtomCore { beep:Function; getUserInitScriptPath:Function; requireUserInitScript:Function; - requireWithGlobals: Function; + requireWithGlobals: Function; - services: any; // TODO: New services api + services: any; // TODO: New services api } interface IBufferedNodeProcessStatic { @@ -1826,7 +1824,7 @@ declare module "atom" { cancelling:boolean; items:any[]; list:JQuery; - filterEditorView: JQuery; + filterEditorView: JQuery; previouslyFocusedElement:JQuery; From b93eea7d224b3cc1a30212bbb6b0e3db5a27ce62 Mon Sep 17 00:00:00 2001 From: Victor M Date: Tue, 7 Jul 2015 20:38:17 +0500 Subject: [PATCH 6/6] Fix typos --- atom/atom.d.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/atom/atom.d.ts b/atom/atom.d.ts index 9280bc5e9..fbe44d508 100644 --- a/atom/atom.d.ts +++ b/atom/atom.d.ts @@ -1173,8 +1173,8 @@ declare module AtomCore { disablePackage(name:string):any; activate():void; registerPackageActivator(activator:any, types:any):void; - activatePackages(packages:any):Q.Promise; - activatePackage(name:string):any; + activatePackages(packages:any):void; + activatePackage(name:string):Q.Promise; deactivatePackages():void; deactivatePackage(name:string):void; getActivePackages():any; @@ -1346,7 +1346,7 @@ declare module AtomCore { beep:Function; getUserInitScriptPath:Function; requireUserInitScript:Function; - requireWithGlobals: Function; + requireWithGlobals:Function; services: any; // TODO: New services api }