Skip to content

Commit d58f3d5

Browse files
pocesarlutovich
authored andcommitted
export definitions (Driver and Session) and fix subscribe
1 parent 2338692 commit d58f3d5

File tree

9 files changed

+25
-12
lines changed

9 files changed

+25
-12
lines changed

lib/v1/driver.d.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ declare class Driver {
4242
close(): void;
4343
}
4444

45-
declare class _ConnectionStreamObserver extends StreamObserver {
45+
declare class _ConnectionStreamObserver<T> extends StreamObserver<T> {
4646
constructor(driver: Driver, conn: Connection);
4747

4848
onError(error: Error): void;

lib/v1/error.d.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ declare class Neo4jError extends Error {
77
code: string;
88
message: string;
99

10-
constructor(message: any, code: string)
10+
constructor(message: any, code: string);
1111
}
1212

1313
export {

lib/v1/index.d.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import { Neo4jError, SERVICE_UNAVAILABLE, SESSION_EXPIRED } from "./error";
44
import Result from "./result";
55
import ResultSummary from "./result-summary";
66
import Record from "./record";
7+
import Session from './session';
78
import { Driver, READ, WRITE, AuthCredentials, ConfigurationOptions } from "./driver";
89
import RoutingDriver from "./routing-driver";
910
import VERSION from "../version";
@@ -63,8 +64,10 @@ declare const forExport: {
6364
types: typeof types;
6465
session: typeof session;
6566
error: typeof error;
67+
Driver: Driver;
6668
AuthCredentials: AuthCredentials;
6769
ConfigurationOptions: ConfigurationOptions;
70+
Session: Session;
6871
};
6972

7073
export {
@@ -78,6 +81,7 @@ export {
7881
session,
7982
error,
8083
AuthCredentials,
84+
Session,
8185
ConfigurationOptions,
8286
}
8387

lib/v1/internal/stream-observer.d.ts

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,14 @@
1+
import ResultSummary from '../result-summary'
2+
13
declare type ErrorTransformer = <T extends Error>(err: Error) => T;
24

3-
declare class StreamObserver {
5+
export declare interface StreamObserverInterface<T> {
6+
onNext?(record: T): void;
7+
onCompleted?(summary?: ResultSummary): void;
8+
onError?(err: Error): void;
9+
}
10+
11+
declare class StreamObserver<T> implements StreamObserverInterface<T> {
412
constructor(errorTransformer: ErrorTransformer);
513
}
614

lib/v1/record.d.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,9 @@ declare class Record<T> {
1010
constructor(keys: string[], fields: string[], fieldLookup: { [index: string]: string });
1111

1212
forEach(visitor: Visitor<T>): void;
13-
toObject(): Partial<{ [ret: string]: T>;
14-
get<K extends T>(key: string | number): K;
13+
toObject(): Partial<{ [ret: string]: T }>;
14+
get<K extends keyof T>(key: K): T[K];
15+
get<K extends T>(key: number): K;
1516
has(key: string | number): boolean;
1617
}
1718

lib/v1/result-summary.d.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import Integer, { int, isInt } from "./integer";
22

33
declare class ResultSummary {
4-
statement: {text: string, parameters: { [index: string]: any }};
4+
statement: { text: string, parameters: { [index: string]: any } };
55
statementType: string;
66
counters: StatementStatistic;
77
//for backwards compatibility, remove in future version

lib/v1/result.d.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import ResultSummary from "./result-summary";
22
import Record from "./record";
3-
import StreamObserver from "./internal/stream-observer";
3+
import StreamObserver, { StreamObserverInterface } from "./internal/stream-observer";
44

55
declare type ResultType<T> = {
66
records: Array<Record<T>>;
@@ -10,21 +10,21 @@ declare type ResultType<T> = {
1010
declare type PromiseResult<T> = PromiseLike<ResultType<T>>
1111

1212
declare class Result<T, Params extends { [index: string]: any }> extends Promise<ResultType<T>> {
13-
_streanObserver: StreamObserver;
13+
_streamObserver: StreamObserver<T>;
1414
_p: PromiseResult<T> | null;
1515
_statement: string;
1616
_parameters: Params;
1717
_metaSupplier: () => any;
1818

1919
constructor(
20-
streamObserver: StreamObserver,
20+
streamObserver: StreamObserver<T>,
2121
statement: string,
2222
parameters?: Params,
2323
metaSupplier?: () => any
2424
);
2525

2626
protected _createPromise(): PromiseResult<T>;
27-
subscribe(observer: StreamObserver): void;
27+
subscribe(observer: StreamObserverInterface<Record<T>>): void;
2828
}
2929

3030
export default Result;

lib/v1/session.d.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ declare class Session {
2323
protected _onRunFailure(): Function;
2424
}
2525

26-
declare class _RunObserver extends StreamObserver {
26+
declare class _RunObserver<T> extends StreamObserver<T> {
2727
constructor(
2828
onError: Function
2929
);

lib/v1/transaction.d.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ declare class Transaction {
2121
declare function _runDiscardAll<T>(
2222
msg: any,
2323
connectionPromise: PromiseLike<Connection>,
24-
observer: StreamObserver
24+
observer: StreamObserver<T>
2525
): Result<T, {}>;
2626

2727
export default Transaction;

0 commit comments

Comments
 (0)