Add basic typedef for store states

This commit is contained in:
Abhas
2018-07-10 15:04:29 +05:30
parent 8d9d3b2a8f
commit 69d9b8081d
+44
View File
@@ -0,0 +1,44 @@
import { Store, createStore, applyMiddleware } from 'redux';
export namespace FailReasons {
export enum EachBranchBehindOrEven {
'remote branch doesn\'t exist',
'forked branch ahead'
};
export enum NotContributor {
'contributor in self repo',
'contributor in parent repo'
};
export enum NoCommits {
'commit in self repo',
'commit in parent repo'
};
}
export interface GithubRepoFilterState {
eachBranchBehindOrEven: {
fail: boolean,
failReason: FailReasons.EachBranchBehindOrEven
failBranchName: string
},
notContributor: {
fail: boolean,
failReason: FailReasons.NotContributor
},
noCommits: {
fail: boolean,
failReason: FailReasons.NoCommits
}
}
export type GithubRepoFilterStates = Map<string, {
filterState: GithubRepoFilterState
}>;
export interface ApplicationState {
username: string;
repoStates: GithubRepoFilterStates;
}