@stackend/api
Version:
JS bindings to api.stackend.com
51 lines • 1.87 kB
TypeScript
import * as forumApi from './index';
export declare type ForumThreadActions = Request | Receive | Invalidate | Rate | Like | DeleteEntry | Update;
export declare const RECEIVE_FORUM_THREADS = "RECEIVE_FORUM_THREADS";
export declare const REQUEST_FORUM_THREADS = "REQUEST_FORUM_THREADS";
export declare const INVALIDATE_FORUM_THREADS = "INVALIDATE_FORUM_THREADS";
export declare const RECEIVE_VOTE_FORUM_THREAD = "RECEIVE_VOTE_FORUM_THREAD";
export declare const RECEIVE_LIKE_FORUM_THREAD = "RECEIVE_LIKE_FORUM_THREAD";
export declare const UPDATE_FORUM_THREAD_ENTRY = "UPDATE_FORUM_THREAD_ENTRY";
export declare const DELETE_FORUM_THREAD = "DELETE_FORUM_THREAD";
export declare type Request = {
type: typeof REQUEST_FORUM_THREADS;
};
export declare type Receive = {
type: typeof RECEIVE_FORUM_THREADS;
entries: Array<forumApi.ForumThreadEntry>;
forumPermalink: string;
pageSize: number;
};
export declare type Update = {
type: typeof UPDATE_FORUM_THREAD_ENTRY;
entry: forumApi.ForumThreadEntry;
forumPermalink: string;
};
export declare type Invalidate = {
type: typeof INVALIDATE_FORUM_THREADS;
};
export declare type Rate = {
type: typeof RECEIVE_VOTE_FORUM_THREAD;
voteJson: forumApi.VoteReturn;
forumPermalink: string;
};
export declare type Like = {
type: typeof RECEIVE_LIKE_FORUM_THREAD;
referenceId: number;
receivedLikes: any;
forumPermalink: string;
};
export declare type DeleteEntry = {
type: typeof DELETE_FORUM_THREAD;
entry: forumApi.ForumThreadEntry;
};
export interface ForumThreadState {
isFetching: boolean;
didInvalidate: boolean;
lastUpdated: number;
forums: {
[forumPermalink: string]: Array<forumApi.ForumThreadEntry>;
};
}
export declare const forumThreads: (S: any, A: any) => ForumThreadState;
//# sourceMappingURL=forumThreadReducer.d.ts.map