///<reference path="./leaf.d.ts"/>
namespace R {
    export class HomePage extends Leaf.GeneratedWidget<{ refresh: HTMLDivElement }, { username: any }, "username">{
        constructor() {
            super(() => {
                let _e = this._e.bind(this)
                let _t = this._t.bind(this)
                return _e("div", { "class": "home-page" }, [_t({ "templates": [{ "type": "raw", "content": "\n  " }] }), _e("div", { "class": "title" }, [_t({ "templates": [{ "type": "raw", "content": "\n    " }, { "type": "value", "content": "username", "reverse": false }, { "type": "raw", "content": "'s archive\n  " }] })]), _t({ "templates": [{ "type": "raw", "content": "\n  " }] }), _e("widget", { "data-widget": "./homePageNavigator" }, []), _t({ "templates": [{ "type": "raw", "content": "\n  " }] }), _e("div", { "class": "archives", "data-list": "archives" }, [_t({ "templates": [{ "type": "raw", "content": "\n    " }] }), _t({ "templates": [{ "type": "raw", "content": "\n  " }] })]), _t({ "templates": [{ "type": "raw", "content": "\n  " }] }), _e("div", { "class": "button", "data-id": "refresh" }, [_t({ "templates": [{ "type": "raw", "content": "\n  " }] })]), _t({ "templates": [{ "type": "raw", "content": "\n" }] })])
            }, "HomePage", ["username"])
        }
        archives: Leaf.List<R.HomePage.ArchiveListItem>
        homePageNavigator: R.HomePageNavigator
    }
    (HomePage["prototype"] as any).name = "HomePage"
    export namespace HomePage {
        export class ArchiveListItem extends Leaf.GeneratedWidget<{}, { title: any, src: any, content: any }, "title" | "src" | "content">{
            constructor() {
                super(() => {
                    let _e = this._e.bind(this)
                    let _t = this._t.bind(this)
                    return _e("div", { "class": "archive-list-item" }, [_t({ "templates": [{ "type": "raw", "content": "\n        " }] }), _e("div", { "class": "title" }, [_t({ "templates": [{ "type": "raw", "content": "\n          " }, { "type": "value", "content": "title", "reverse": false }, { "type": "raw", "content": "\n        " }] })]), _t({ "templates": [{ "type": "raw", "content": "\n        " }] }), _e("img", { "src": { "name": "src", "templates": [{ "type": "value", "content": "src", "reverse": false }] }, "class": "", "alt": "" }, []), _t({ "templates": [{ "type": "raw", "content": "\n        " }] }), _e("div", { "class": "content" }, [_t({ "templates": [{ "type": "raw", "content": "\n          " }, { "type": "value", "content": "content", "reverse": false }, { "type": "raw", "content": "\n        " }] })]), _t({ "templates": [{ "type": "raw", "content": "\n        " }] }), _e("div", { "class": "comments", "data-list": "comments" }, [_t({ "templates": [{ "type": "raw", "content": "\n          " }] }), _t({ "templates": [{ "type": "raw", "content": "\n        " }] })]), _t({ "templates": [{ "type": "raw", "content": "\n      " }] })])
                }, "ArchiveListItem", ["title", "src", "content"])
            }
            comments: Leaf.List<R.HomePage.ArchiveListItem.CommentListItem>

        }
        (ArchiveListItem["prototype"] as any).name = "ArchiveListItem"
        export namespace ArchiveListItem {
            export class CommentListItem extends Leaf.GeneratedWidget<{}, { userName: any }, "userName">{
                constructor() {
                    super(() => {
                        let _e = this._e.bind(this)
                        let _t = this._t.bind(this)
                        return _e("div", { "class": "user" }, [_t({ "templates": [{ "type": "raw", "content": "\n              " }, { "type": "value", "content": "userName", "reverse": false }, { "type": "raw", "content": "\n            " }] })])
                    }, "CommentListItem", ["userName"])
                }

            }
            (CommentListItem["prototype"] as any).name = "CommentListItem"
        }
    }
    export class HomePageNavigator extends Leaf.GeneratedWidget<{}, {}, null>{
        constructor() {
            super(() => {
                let _e = this._e.bind(this)
                let _t = this._t.bind(this)
                return _e("div", { "class": "home-page-navigator", "data-list": "navigators" }, [_t({ "templates": [{ "type": "raw", "content": "\n  " }] }), _t({ "templates": [{ "type": "raw", "content": "\n" }] })])
            }, "HomePageNavigator", [])
        }
        navigators: Leaf.List<R.HomePageNavigator.NavigatorItem>

    }
    (HomePageNavigator["prototype"] as any).name = "HomePageNavigator"
    export namespace HomePageNavigator {
        export class NavigatorItem extends Leaf.GeneratedWidget<{}, { name: any }, "name">{
            constructor() {
                super(() => {
                    let _e = this._e.bind(this)
                    let _t = this._t.bind(this)
                    return _e("div", { "class": "nav" }, [_t({ "templates": [{ "type": "raw", "content": "\n      " }, { "type": "value", "content": "name", "reverse": false }, { "type": "raw", "content": "\n    " }] })])
                }, "NavigatorItem", ["name"])
            }

        }
        (NavigatorItem["prototype"] as any).name = "NavigatorItem"
    }
}
