import { InterestType, FriendLinkState, CommentPolicy, PostPrivacy, AddMediaPrivacy } from './inspire-library.enum';
export interface Content {
    text: string;
}
export interface MemberNotification {
    body: string;
    data: MemberNotificationData;
    id: string;
    t_created: string;
    t_pushed: string;
    t_read?: string;
    title: string;
}
export interface MemberNotificationData {
    content: Content[];
    link: string;
}
export interface Partner {
    logo_image: string;
    name: string;
    name_id: string;
    url: string;
    donate?: DonateLinks;
    facebook?: FacebookLinks;
    twitter?: TwitterFeeds;
}
export interface DonateLinks {
    links: DonateLink[];
}
export interface DonateLink {
    button_text: string;
    link: string;
    partner_id: string;
}
export interface FacebookLinks {
    links: FacebookLink[];
}
export interface FacebookLink {
    code: string;
    longname: string;
    name: string;
    partner_id: string;
}
export interface TwitterFeeds {
    feeds?: TwitterFeed[];
    links?: any[];
}
export interface TwitterFeed {
    code: string;
    color: string;
    name: string;
    partner_id: string;
}
export interface Link {
    links: CommunitySection[];
}
export interface Asset {
    accent_color: string;
    background_image: string;
    group_name_id: string;
    header_color: string;
    iconnect_link: IconnectLink;
    logo_image: string;
    partners: Partner[];
}
export interface MemberCommunity {
    assets: Asset;
    descriptor: string;
    group_description_text: string;
    group_id: string;
    group_status: string;
    group_subject: string;
    name: string;
    name_id: string;
    partner_id: string;
    qual_surv_id?: string;
    resourcedir: string;
    resources?: string;
    uri?: string;
}
export interface MemberFriend {
    nickname: string;
    status: string;
}
export interface ConditionOrTreatment {
    id: string;
    name: string;
    name_id: string;
    treatment_id?: string;
    class: string;
    type: InterestType;
    isSelected: boolean;
    isInProgress: boolean;
}
export interface MemberReaction {
    nickname: string;
    ts: number;
}
export interface MemberReactions {
    thanks: MemberReaction[];
    useful: MemberReaction[];
    support: MemberReaction[];
}
export interface JournalPostForm {
    title: string;
    photos: AddPhoto[];
    body: string;
    communities: MemberCommunity[];
    privacy: string;
    allowComment: boolean;
    postType: string;
    commentPolicy: CommentPolicy;
}
export interface InsSelectInterface {
    isSelected: boolean;
}
export interface PrivacyOption {
    value: PostPrivacy | AddMediaPrivacy;
    label: string;
    description: string;
}
export interface File {
    filesize: number;
    gestalt: string;
    filename: string;
    sensitive: boolean;
    caption: string;
    mimetype: string;
    uuid: string;
    uploaded: Date;
    filetype: string;
    thumbnail_URL: string;
    variant_sm_URL: string;
    variant_lg_URL: string;
    signedURL?: string;
    posttype?: string;
    postid?: string;
    privacy: PostPrivacy | AddMediaPrivacy;
}
export interface AddPhoto extends File {
    isSelected?: boolean;
    isAttached?: boolean;
}
export interface GroupDetail {
    id: number;
    name: string;
    name_id: string;
    resources: string;
    uri: string;
}
export interface FriendLink {
    f_state: FriendLinkState;
    sense?: 'sent';
}
export interface ReplyMeta {
    text: string;
    photos: AddPhoto[];
}
export interface CommunityCsData {
    donate: Link;
    extras: {
        sections: CommunitySection[];
    };
    facebook: Link;
    group_description_text: string;
    heading_links: Link;
    hide_ads: boolean;
    resource: CommunityCsDataResources;
    sticky_disc_name_id: string;
    tagline: string;
    title_name: string;
    twitter: TwitterFeeds;
}
export interface CommunityCsDataResources {
    sections: CommunitySection[];
}
export interface CommunitySection {
    heading?: string;
    label?: string;
    link?: string;
    prose?: string;
    links?: CommunitySectionLink[];
}
export interface CommunitySectionLink {
    label: string;
    link: string;
}
export interface CommunityPartner {
    featured: string;
    metadata: CommunityMetaData;
    name: string;
    name_id: string;
    partner_id: string;
    resourcedir: string;
    sort: string;
}
export interface CommunityMetaData {
    description: string;
    email: string;
    group_list_explanatory_text: string;
    name_prefix: string;
    web_site: string;
    address_1: string;
    address_2: string;
    city: string;
    country: string;
    donate_url: string;
    fax: string;
    former_name_id: string;
    name_short: string;
    phone: string;
    postal_code: number;
    postal_code_str: string;
    state: string;
}
export interface CommunityTopic {
    description: string;
    f_suppressed: string;
    group_id: string;
    name: string;
    name_id: string;
    parent_id: string;
    sort_order: string;
    topic_id: string;
}
export interface Community {
    address_1: string;
    adunit: string;
    assets: Asset;
    descriptor: string;
    group_description_text: string;
    group_id: string;
    group_status: string;
    group_subject: string;
    name: string;
    name_id: string;
    partner_id: string;
    qual_surv_id?: string;
    resourcedir: string;
    resources?: string;
    uri?: string;
    city: string;
    conditions: string[];
    cs_data: CommunityCsData;
    description: string;
    email: string;
    fax: string;
    filter_cat: string[];
    former_name_id: string;
    member_count: string;
    page_meta_desc: string;
    page_meta_keywords: string;
    partner: CommunityPartner;
    partner_name: string;
    phone: string;
    post_count: number;
    postal_code: string;
    reply_count: number;
    state: string;
    topics: CommunityTopic[];
    postal_code_str?: string;
    web_site: string;
    welcome_text: string;
}
export declare class User {
    status: number;
    nickname: string;
    StateName: string;
    avatar: {
        small: string;
        medium: string;
        large: string;
    };
    age: string;
    city: string;
    country: string;
    country_name: string;
    f_photo: number;
    f_photo_vis: string;
    gender: string;
    global_ldr: boolean;
    uid: string;
    interests: {
        treatments: any;
        conditions: any;
    };
    groups: any;
    groupMap: Map<any, any>;
    follows: Map<any, any>;
}
export interface SlugConfig {
    replacement: string;
    remove?: RegExp;
    lower: boolean;
    strict: boolean;
    locale?: string;
}
export interface IconnectLink {
    link_target: string;
    link_text: string;
}
