Skip to content

Instantly share code, notes, and snippets.

@tomitrescak
Last active October 29, 2021 13:43
Show Gist options
  • Save tomitrescak/6261ad27dbe43aad03b2497721d751f5 to your computer and use it in GitHub Desktop.
Save tomitrescak/6261ad27dbe43aad03b2497721d751f5 to your computer and use it in GitHub Desktop.
Typescript binding for semantic-ui-react
// Generated by typings
// Source: ../../../../Downloads/semantic-ui-react.d.ts
declare namespace _semanticUIReact {
// import ListItemContent = __ReactMDL.ListItemContent;
type InputType = 'color' | 'date' | 'datetime' | 'datetime-local' | 'email' | 'number' | 'range' | 'search' | 'select' | 'password' | 'tel' | 'text' | 'time' | 'url' | 'week'
type SemanticCOLORS = 'red' | 'orange' | 'yellow' | 'olive' | 'green' | 'teal' | 'blue' | 'violet' | 'purple' | 'pink' | 'brown' | 'grey' | 'black' | 'twitter' | 'google plus' | 'facebook'
type SemanticSOCIAL = 'facebook' | 'google plus' | 'vk' | 'twitter' | 'linkedin' | 'instagram' | 'youtube'
type SemanticROTATION = 'clockwise' | 'counterclockwise'
type SemanticFLOATS = 'left' | 'right'
type SemanticSIZES = 'mini' | 'tiny' | 'small' | 'medium' | 'large' | 'big' | 'huge' | 'massive'
type SemanticTEXTALIGNMENTS = 'left' | 'center' |'right' | 'justified'
type SemanticVERTICALALIGNMENTS = 'top' | 'middle' |'bottom'
type SemanticWIDTHSNUMBER = '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9' | '10' | '11' | '12' | '13' | '14' | '15' | '16'
type SemanticWIDTHSSTRING = 'one' | 'two' | 'three' | 'four' | 'five' | 'six' | 'seven' | 'eight' | 'nine' | 'ten' | 'eleven' | 'twelve' | 'thirteen' | 'fourteen' | 'fifteen' | 'sixteen'
type SemanticCOUNTRY = 'ad' | 'andorra' | 'ae' | 'united arab emirates' | 'uae' | 'af' | 'afghanistan' | 'ag' | 'antigua' | 'ai' | 'anguilla' | 'al' | 'albania' | 'am' | 'armenia' | 'an' | 'netherlands antilles' | 'ao' | 'angola' | 'ar' | 'argentina' | 'as' | 'american samoa' | 'at' | 'austria' | 'au' | 'australia' | 'aw' | 'aruba' | 'ax' | 'aland islands' | 'az' | 'azerbaijan' | 'ba' | 'bosnia' | 'bb' | 'barbados' | 'bd' | 'bangladesh' | 'be' | 'belgium' | 'bf' | 'burkina faso' | 'bg' | 'bulgaria' | 'bh' | 'bahrain' | 'bi' | 'burundi' | 'bj' | 'benin' | 'bm' | 'bermuda' | 'bn' | 'brunei' | 'bo' | 'bolivia' | 'br' | 'brazil' | 'bs' | 'bahamas' | 'bt' | 'bhutan' | 'bv' | 'bouvet island' | 'bw' | 'botswana' | 'by' | 'belarus' | 'bz' | 'belize' | 'ca' | 'canada' | 'cc' | 'cocos islands' | 'cd' | 'congo' | 'cf' | 'central african republic' | 'cg' | 'congo brazzaville' | 'ch' | 'switzerland' | 'ci' | 'cote divoire' | 'ck' | 'cook islands' | 'cl' | 'chile' | 'cm' | 'cameroon' | 'cn' | 'china' | 'co' | 'colombia' | 'cr' | 'costa rica' | 'cs' | 'serbia' | 'cu' | 'cuba' | 'cv' | 'cape verde' | 'cx' | 'christmas island' | 'cy' | 'cyprus' | 'cz' | 'czech republic' | 'de' | 'germany' | 'dj' | 'djibouti' | 'dk' | 'denmark' | 'dm' | 'dominica' | 'do' | 'dominican republic' | 'dz' | 'algeria' | 'ec' | 'ecuador' | 'ee' | 'estonia' | 'eg' | 'egypt' | 'eh' | 'western sahara' | 'er' | 'eritrea' | 'es' | 'spain' | 'et' | 'ethiopia' | 'eu' | 'european union' | 'fi' | 'finland' | 'fj' | 'fiji' | 'fk' | 'falkland islands' | 'fm' | 'micronesia' | 'fo' | 'faroe islands' | 'fr' | 'france' | 'ga' | 'gabon' | 'gb' | 'united kingdom' | 'gd' | 'grenada' | 'ge' | 'georgia' | 'gf' | 'french guiana' | 'gh' | 'ghana' | 'gi' | 'gibraltar' | 'gl' | 'greenland' | 'gm' | 'gambia' | 'gn' | 'guinea' | 'gp' | 'guadeloupe' | 'gq' | 'equatorial guinea' | 'gr' | 'greece' | 'gs' | 'sandwich islands' | 'gt' | 'guatemala' | 'gu' | 'guam' | 'gw' | 'guinea-bissau' | 'gy' | 'guyana' | 'hk' | 'hong kong' | 'hm' | 'heard island' | 'hn' | 'honduras' | 'hr' | 'croatia' | 'ht' | 'haiti' | 'hu' | 'hungary' | 'id' | 'indonesia' | 'ie' | 'ireland' | 'il' | 'israel' | 'in' | 'india' | 'io' | 'indian ocean territory' | 'iq' | 'iraq' | 'ir' | 'iran' | 'is' | 'iceland' | 'it' | 'italy' | 'jm' | 'jamaica' | 'jo' | 'jordan' | 'jp' | 'japan' | 'ke' | 'kenya' | 'kg' | 'kyrgyzstan' | 'kh' | 'cambodia' | 'ki' | 'kiribati' | 'km' | 'comoros' | 'kn' | 'saint kitts and nevis' | 'kp' | 'north korea' | 'kr' | 'south korea' | 'kw' | 'kuwait' | 'ky' | 'cayman islands' | 'kz' | 'kazakhstan' | 'la' | 'laos' | 'lb' | 'lebanon' | 'lc' | 'saint lucia' | 'li' | 'liechtenstein' | 'lk' | 'sri lanka' | 'lr' | 'liberia' | 'ls' | 'lesotho' | 'lt' | 'lithuania' | 'lu' | 'luxembourg' | 'lv' | 'latvia' | 'ly' | 'libya' | 'ma' | 'morocco' | 'mc' | 'monaco' | 'md' | 'moldova' | 'me' | 'montenegro' | 'mg' | 'madagascar' | 'mh' | 'marshall islands' | 'mk' | 'macedonia' | 'ml' | 'mali' | 'mm' | 'myanmar' | 'burma' | 'mn' | 'mongolia' | 'mo' | 'macau' | 'mp' | 'northern mariana islands' | 'mq' | 'martinique' | 'mr' | 'mauritania' | 'ms' | 'montserrat' | 'mt' | 'malta' | 'mu' | 'mauritius' | 'mv' | 'maldives' | 'mw' | 'malawi' | 'mx' | 'mexico' | 'my' | 'malaysia' | 'mz' | 'mozambique' | 'na' | 'namibia' | 'nc' | 'new caledonia' | 'ne' | 'niger' | 'nf' | 'norfolk island' | 'ng' | 'nigeria' | 'ni' | 'nicaragua' | 'nl' | 'netherlands' | 'no' | 'norway' | 'np' | 'nepal' | 'nr' | 'nauru' | 'nu' | 'niue' | 'nz' | 'new zealand' | 'om' | 'oman' | 'pa' | 'panama' | 'pe' | 'peru' | 'pf' | 'french polynesia' | 'pg' | 'new guinea' | 'ph' | 'philippines' | 'pk' | 'pakistan' | 'pl' | 'poland' | 'pm' | 'saint pierre' | 'pn' | 'pitcairn islands' | 'pr' | 'puerto rico' | 'ps' | 'palestine' | 'pt' | 'portugal' | 'pw' | 'palau' | 'py' | 'paraguay' | 'qa' | 'qatar' | 're' | 'reunion' | 'ro' | 'romania' | 'rs' | 'serbia' | 'ru' | 'russia' | 'rw' | 'rwanda' | 'sa' | 'saudi arabia' | 'sb' | 'solomon islands' | 'sc' | 'seychelles' | 'gb sct' | 'scotland' | 'sd' | 'sudan' | 'se' | 'sweden' | 'sg' | 'singapore' | 'sh' | 'saint helena' | 'si' | 'slovenia' | 'sj' | 'svalbard' | 'jan mayen' | 'sk' | 'slovakia' | 'sl' | 'sierra leone' | 'sm' | 'san marino' | 'sn' | 'senegal' | 'so' | 'somalia' | 'sr' | 'suriname' | 'st' | 'sao tome' | 'sv' | 'el salvador' | 'sy' | 'syria' | 'sz' | 'swaziland' | 'tc' | 'caicos islands' | 'td' | 'chad' | 'tf' | 'french territories' | 'tg' | 'togo' | 'th' | 'thailand' | 'tj' | 'tajikistan' | 'tk' | 'tokelau' | 'tl' | 'timorleste' | 'tm' | 'turkmenistan' | 'tn' | 'tunisia' | 'to' | 'tonga' | 'tr' | 'turkey' | 'tt' | 'trinidad' | 'tv' | 'tuvalu' | 'tw' | 'taiwan' | 'tz' | 'tanzania' | 'ua' | 'ukraine' | 'ug' | 'uganda' | 'um' | 'us minor islands' | 'us' | 'america' | 'united states' | 'uy' | 'uruguay' | 'uz' | 'uzbekistan' | 'va' | 'vatican city' | 'vc' | 'saint vincent' | 've' | 'venezuela' | 'vg' | 'british virgin islands' | 'vi' | 'us virgin islands' | 'vn' | 'vietnam' | 'vu' | 'vanuatu' | 'gb wls' | 'wales' | 'wf' | 'wallis and futuna' | 'ws' | 'samoa' | 'ye' | 'yemen' | 'yt' | 'mayotte' | 'za' | 'south africa' | 'zm' | 'zambia' | 'zw' | 'zimbabwe'
type SemanticPOSITIONING = 'top left'|'top right'|'bottom right'|'bottom left'|'right center'|'left center'|'top center'|'bottom center';
type SemanticGenericOnClick = (event: any, value: any)=>void;
type SemanticFormOnClick = (event: any, object: Object)=>void;
type SemanticSearchOnClick = (event: any, value: any, text: string)=>void; // TODO - not sure if this is correct.
interface ReactMouseEvents<T> {
// MouseEvents
onClick?: React.MouseEventHandler<T>;
onContextMenu?: React.MouseEventHandler<T>;
onDoubleClick?: React.MouseEventHandler<T>;
onDrag?: React.DragEventHandler<T>;
onDragEnd?: React.DragEventHandler<T>;
onDragEnter?: React.DragEventHandler<T>;
onDragExit?: React.DragEventHandler<T>;
onDragLeave?: React.DragEventHandler<T>;
onDragOver?: React.DragEventHandler<T>;
onDragStart?: React.DragEventHandler<T>;
onDrop?: React.DragEventHandler<T>;
onMouseDown?: React.MouseEventHandler<T>;
onMouseEnter?: React.MouseEventHandler<T>;
onMouseLeave?: React.MouseEventHandler<T>;
onMouseMove?: React.MouseEventHandler<T>;
onMouseOut?: React.MouseEventHandler<T>;
onMouseOver?: React.MouseEventHandler<T>;
onMouseUp?: React.MouseEventHandler<T>;
}
// Focus Events
interface ReactFocusEvents<T> {
onFocus?: React.FocusEventHandler<T>;
onBlur?: React.FocusEventHandler<T>;
}
interface FormEventHandler<E> {
(event: E, ...params: any[]): void;
}
// Form Events
interface ReactFormEvents<T> {
onChange?: FormEventHandler<React.FormEvent<T>>;
onInput?: FormEventHandler<React.FormEvent<T>>;
onSubmit?: FormEventHandler<React.FormEvent<T>>;
}
// Button
// ----------------------------------
type SemanticButtonLABELPOSITIONS = 'right' | 'left';
export interface ButtonProps extends ReactMouseEvents<HTMLButtonElement> {
active?: boolean;
animated?: 'fade'|'vertical';
as?: any;
attached?: 'left' | 'right' | 'top' | 'bottom';
basic?: boolean;
children?: React.ReactNode;
circular?: boolean;
className?: string;
color?: SemanticCOLORS | SemanticSOCIAL;
compact?: boolean;
content?: any;
disabled?: boolean;
floated?: SemanticFLOATS;
fluid?: boolean;
icon?: any;
inverted?: boolean;
label?: any;
labelPosition?: SemanticButtonLABELPOSITIONS;
loading?: boolean;
negative?: boolean;
positive?: boolean;
primary?: boolean;
secondary?: boolean;
size?: SemanticSIZES;
toggle?: boolean;
type?: string;
}
interface ButtonClass extends React.ComponentClass<ButtonProps> {
Content: typeof ButtonContent;
Group: typeof ButtonGroup;
Or: typeof ButtonOr;
}
var Button: ButtonClass;
interface ContentProps {
as?: any;
children?: React.ReactNode;
className?: string;
hidden?: boolean;
visible?: boolean;
}
var ButtonContent: React.ComponentClass<ContentProps>;
interface GroupProps {
as?: any;
attached?: string;
basic?: boolean;
children?: React.ReactNode;
className?: string;
color?: SemanticCOLORS | SemanticSOCIAL;
icon?: any;
labeled?: boolean;
size?: SemanticSIZES;
widths?: number | SemanticWIDTHSSTRING | SemanticWIDTHSNUMBER;
}
var ButtonGroup: React.ComponentClass<GroupProps>;
interface OrProps {
as?: any;
className?: string;
}
var ButtonOr: React.ComponentClass<OrProps>;
// Container
// ----------------------------------
interface ContainerProps {
as?: any;
children?: React.ReactNode,
className?: string;
fluid?: boolean,
text?: boolean,
/** Describes how the text inside this component should be aligned. */
textAlign?: SemanticTEXTALIGNMENTS,
}
export class Container extends React.Component<ContainerProps, void> {
}
// Divider
// ----------------------------------
interface DividerProps {
as?: any;
children?: React.ReactNode,
className?: string;
clearing?: boolean,
fitted?: boolean,
hidden?: boolean,
horizontal?: boolean,
inverted?: boolean,
section?: boolean,
vertical?: boolean,
}
export class Divider extends React.Component<DividerProps, void> {
}
// Flag
// ----------------------------------
interface FlagProps extends ReactMouseEvents<any> {
as?: any;
className?: string;
name: SemanticCOUNTRY,
}
export class Flag extends React.Component<FlagProps, void> {
}
// Header
// ----------------------------------
interface HeaderProps {
as?: any;
attached?: 'top'|'bottom';
block?: boolean;
children?: React.ReactNode;
className?: string;
color?: SemanticCOLORS;
content?: any;
disabled?: boolean;
dividing?: boolean;
floated?: SemanticFLOATS;
icon?: any;
image?: any;
inverted?: boolean;
size?: SemanticSIZES;
sub?: boolean;
subheader?: any;
textAlign?: SemanticTEXTALIGNMENTS;
}
interface HeaderClass extends React.ComponentClass<HeaderProps> {
Content: typeof HeaderContent;
Subheader: typeof HeaderSubHeader;
}
var Header: HeaderClass;
interface HeaderContentProps {
as?: any;
children?: React.ReactNode;
className?: string;
}
var HeaderContent: React.ComponentClass<HeaderContentProps>;
interface HeaderSubHeaderProps {
as?: any;
children?: React.ReactNode;
className?: string;
content?: any;
}
var HeaderSubHeader: React.ComponentClass<HeaderSubHeaderProps>;
// Icon
// ----------------------------------
interface IconProps extends ReactMouseEvents<any> {
as?: any;
bordered?: boolean,
circular?: boolean,
className?: string;
color?: SemanticCOLORS,
corner?: boolean,
disabled?: boolean;
fitted?: boolean,
flipped?: 'horizontally' | 'vertically'
inverted?: boolean,
link?: boolean,
loading?: boolean,
name?: string,
rotated?: SemanticROTATION,
size?: SemanticSIZES,
}
interface IconClass extends React.ComponentClass<IconProps> {
Content: typeof IconGroup;
}
var Icon: IconClass;
interface IconGroupProps {
as?: any;
children?: React.ReactNode;
className?: string;
size?: SemanticSIZES;
}
var IconGroup: React.ComponentClass<IconGroupProps>;
// Image
// ----------------------------------
interface ImageProps extends ReactMouseEvents<any> {
alt?: string;
as?: any;
avatar?: boolean;
bordered?: boolean;
centered?: boolean;
className?: string;
disabled?: boolean;
floated?: SemanticFLOATS;
fluid?: boolean;
height?: string|number;
href?: string;
inline?: boolean;
label?: LabelProps;
shape?: boolean |'rounded'|'circular';
size?: SemanticSIZES;
spaced?: boolean|'left'|'right';
src?: string;
ui?: boolean;
verticalAlign?: SemanticVERTICALALIGNMENTS;
width?: number|SemanticWIDTHSSTRING| SemanticWIDTHSNUMBER;
wrapped?: any;
}
interface ImageClass extends React.ComponentClass<ImageProps> {
Group: typeof ImageGroup;
}
var Image: ImageClass;
interface ImageGroupProps {
as?: any;
children?: React.ReactNode;
className?: string;
size?: SemanticSIZES;
}
var ImageGroup: React.ComponentClass<ImageGroupProps>;
// Input
// ----------------------------------
interface InputProps extends ReactFocusEvents<HTMLInputElement>, ReactFormEvents<HTMLInputElement> {
action?: any;
actionPosition?: 'left'
as?: any;
autocomplete?: string; // Used by chrome https://developers.google.com/web/updates/2015/06/checkout-faster-with-autofill
children?: React.ReactNode;
className?: string;
defaultValue?: string;
disabled?: boolean;
error?: boolean;
fluid?: boolean;
focus?: boolean;
icon?: any;
iconPosition?: 'left';
input?: any;
inverted?: boolean;
label?: any;
labelPosition?: SemanticButtonLABELPOSITIONS;
loading?: boolean;
name?:string;
placeholder?: string;
readOnly?:boolean;
step?: number;
size?: SemanticSIZES;
transparent?: boolean;
type?: string;
value?: string | number;
width?: number;
}
export class Input extends React.Component<InputProps, void> {
}
// Label
// ----------------------------------
type LabelPropAttached = 'top' | 'bottom' | 'top right' | 'top left' | 'bottom left' | 'bottom right';
type LabelPropPointing = 'above' | 'below' | 'left' | 'right';
type LabelPropCorner = 'left' | 'right';
interface LabelProps {
as?: any;
attached?: LabelPropAttached;
basic?: boolean;
children?: React.ReactNode;
circular?: boolean;
className?: string;
color?: SemanticCOLORS;
content?: any;
corner?: boolean | LabelPropCorner;
detail?: any;
empty?: any;
floating?: boolean;
horizontal?: boolean;
icon?: any;
image?: any;
onClick?: React.MouseEventHandler<HTMLDivElement>;
onRemove?: React.FormEventHandler<HTMLDivElement>;
pointing?: boolean | LabelPropPointing;
removable?: boolean;
ribbon?: boolean | 'right';
size?: SemanticSIZES;
tag?: boolean;
}
interface LabelClass extends React.ComponentClass<LabelProps> {
Detail: typeof LabelDetail;
Group: typeof LabelGroup;
}
var Label: LabelClass;
interface LabelDetailProps {
as?: any;
children?: React.ReactNode;
className?: string;
content?: any;
}
var LabelDetail: React.ComponentClass<LabelDetailProps>;
interface LabelGroupProps {
as?: any;
children?: React.ReactNode;
circular: boolean;
className?: string;
color?: SemanticCOLORS;
size?: SemanticSIZES;
tag?: boolean;
}
var LabelGroup: React.ComponentClass<LabelGroupProps>;
// // ListItem
// // ----------------------------------
interface ListProps extends ReactMouseEvents<any> {
animated?: boolean;
as?: any;
bulleted?: boolean;
celled?: boolean;
children?: React.ReactNode;
className?: string;
divided?: boolean;
floated?: SemanticFLOATS;
horizontal?: boolean;
inverted?: boolean;
items?: any;
link?: boolean;
ordered?: boolean;
relaxed?: boolean | 'very';
selection?: boolean;
size?: SemanticSIZES;
verticalAlign?: SemanticVERTICALALIGNMENTS;
}
interface ListClass extends React.ComponentClass<ListProps> {
Content: typeof ListContent;
Description: typeof ListDescription;
Header: typeof ListHeader;
Icon: typeof ListIcon;
Item: typeof ListItem;
List: typeof ListList;
}
var List: ListClass;
interface ListContentProps {
as?: any;
children?: React.ReactNode;
className?: string;
content?: any;
description?: any;
floated?: SemanticFLOATS;
header?: any;
verticalAlign?: SemanticVERTICALALIGNMENTS;
}
var ListContent: React.ComponentClass<ListContentProps>;
interface ListDescriptionProps {
as?: any;
children?: React.ReactNode;
className?: string;
content?: any;
}
var ListDescription: React.ComponentClass<ListDescriptionProps>;
interface ListHeaderProps {
as?: any;
children?: React.ReactNode;
className?: string;
content?: any;
}
var ListHeader: React.ComponentClass<ListHeaderProps>;
interface ListIconProps extends ReactMouseEvents<any> {
className?: string;
name?: string;
verticalAlign?: SemanticVERTICALALIGNMENTS;
}
var ListIcon: React.ComponentClass<ListIconProps>;
interface ListItemProps extends ReactMouseEvents<any> {
active?: boolean;
as?: any;
children?: React.ReactNode;
className?: string;
content?: any;
description?: any;
disabled?: boolean;
header?: any;
icon?: any;
image?: any;
value?: string;
}
var ListItem: React.ComponentClass<ListItemProps>;
interface ListListProps {
as?: any;
children?: React.ReactNode;
className?: string;
}
var ListList: React.ComponentClass<ListListProps>;
// Loader
// ----------------------------------
interface LoaderProps {
as?: any;
active?: boolean;
children?: React.ReactNode;
className?: string;
content?: any;
disabled?: boolean;
indeterminate?: boolean;
inline?: boolean | 'centered';
inverted?: boolean;
size?: SemanticSIZES;
}
export class Loader extends React.Component<LoaderProps, void> {
}
// Rail
// ----------------------------------
interface RailProps {
as?: any;
attached?: boolean;
children?: React.ReactNode;
className?: string;
close?: boolean | 'very';
dividing?: boolean;
internal?: boolean;
position: SemanticFLOATS;
// TODO(zuko): this should not support 'medium' from SemanticSize
size?: SemanticSIZES,
}
export class Rail extends React.Component<RailProps, void> {
}
// // Segment
// // ----------------------------------
interface SegmentProps {
as?: any;
attached?: any;
basic?: boolean;
children?: React.ReactNode;
circular?: boolean;
className?: string;
clearing?: boolean;
color?: SemanticCOLORS | SemanticSOCIAL;
compact?: boolean;
disabled?: boolean;
floated?: SemanticFLOATS;
inverted?: boolean;
loading?: boolean;
padded?: boolean;
piled?: boolean;
raised?: boolean;
secondary?: boolean;
size?: SemanticSIZES;
stacked?: boolean;
tertiary?: boolean;
textAlign?: SemanticTEXTALIGNMENTS;
vertical?: SemanticVERTICALALIGNMENTS;
}
interface SegmentClass extends React.ComponentClass<SegmentProps> {
Group: typeof SegmentGroup;
}
var Segment: SegmentClass;
interface SegmentGroupProps {
as?: any;
children?: React.ReactNode;
className?: string;
compact?: boolean;
horizontal?: boolean;
piled?: boolean;
raised?: boolean;
size?: SemanticSIZES;
stacked?: boolean;
}
var SegmentGroup: React.ComponentClass<SegmentGroupProps>;
// Step
// ----------------------------------
interface StepProps extends ReactMouseEvents<any> {
active?: boolean;
as?: any;
children?: React.ReactNode;
className?: string;
completed?: boolean;
description?: any;
disabled?: boolean;
href?: string;
icon?: any;
link?: boolean;
onClick?: React.MouseEventHandler<HTMLDivElement>;
ordered?: boolean;
title?: any;
}
interface StepClass extends React.ComponentClass<StepProps> {
Content: typeof StepContent;
Description: typeof StepDescription;
Group: typeof StepGroup;
Title: typeof StepTitle;
}
var Step: StepClass;
interface StepContentProps {
as?: any;
children?: React.ReactNode;
className?: string;
description?: any;
title?: any;
}
var StepContent: React.ComponentClass<StepContentProps>;
interface StepDescriptionProps {
as?: any;
children?: React.ReactNode;
className?: string;
description?: any;
}
var StepDescription: React.ComponentClass<StepDescriptionProps>;
interface StepGroupProps {
as?: any;
children?: React.ReactNode;
className?: string;
fluid?: boolean;
items?: any;
ordered?: boolean;
size?: SemanticSIZES;
stackable?: boolean;
vertical?: SemanticVERTICALALIGNMENTS;
}
var StepGroup: React.ComponentClass<StepGroupProps>;
interface StepTitleProps {
as?: any;
children?: React.ReactNode;
className?: string;
title?: any;
}
var StepTitle: React.ComponentClass<StepTitleProps>;
// ======================================================
// Collections
// ======================================================
// Breadcrumb
// ----------------------------------
interface BreadcrumbProps extends ReactMouseEvents<HTMLElement> {
as?: any;
children?: React.ReactNode;
className?: string;
divider?: any;
icon?: any;
sections?: Array<any>;
size?: SemanticSIZES;
}
interface BreadcrumbClass extends React.ComponentClass<BreadcrumbProps> {
Divider: typeof BreadcrumbDivider;
Section: typeof BreadcrumbSection;
}
var Breadcrumb: BreadcrumbClass;
interface BreadcrumbDividerProps {
as?: any;
children?: React.ReactNode;
className?: string;
icon?: any;
}
var BreadcrumbDivider: React.ComponentClass<BreadcrumbDividerProps>;
interface BreadcrumbSectionProps {
active?: boolean;
as?: any;
children?: React.ReactNode;
className?: string;
href?: string;
link?: boolean;
onClick?: React.MouseEventHandler<HTMLAnchorElement>;
}
var BreadcrumbSection: React.ComponentClass<BreadcrumbSectionProps>;
// Form
// ----------------------------------
interface FormProps {
method?: 'get' | 'post'
as?: any;
children?: React.ReactNode;
className?: string;
error?: boolean;
loading?: boolean;
onSubmit?: SemanticFormOnClick;
reply?: boolean;
serializer?: ()=>void; // TODO, check;
size?: string;
success?: boolean;
warning?: boolean;
widths?: SemanticWIDTHSSTRING | SemanticWIDTHSNUMBER | number | 'equal';
}
interface FormClass extends React.ComponentClass<FormProps> {
Field: typeof FormField;
Button: typeof FormButton;
Checkbox: typeof FormCheckbox;
Dropdown: typeof FormDropdown;
Group: typeof FormGroup;
Input: typeof FormInput;
Radio: typeof FormRadio;
Select: typeof FormSelect;
TextArea: typeof FormTextArea;
}
var Form: FormClass;
interface FormFieldProps {
as?: any;
children?: React.ReactNode;
className?: string;
control?: any;
disabled?: any;
error?: boolean;
inline?: boolean;
label?: string;
required?: any;
type?: string;
width?: SemanticWIDTHSSTRING | SemanticWIDTHSNUMBER | number;
}
var FormField: React.ComponentClass<FormFieldProps>;
interface FormButtonProps extends ButtonProps {
width: number;
}
var FormButton: React.ComponentClass<FormButtonProps>;
interface FormCheckboxProps {
as?: any;
control?: any;
label?: string;
name?: string;
placeholder?: string;
value?: string|number|Array<string>|Array<number>;
}
var FormCheckbox: React.ComponentClass<FormCheckboxProps>;
interface FormDropdownProps extends DropdownProps {
as?: any;
control?: any;
label?: string;
name?: string;
placeholder?: string;
}
var FormDropdown: React.ComponentClass<FormDropdownProps>;
interface FormGroupProps {
as?: any;
children?: React.ReactNode;
className?: string;
grouped?: boolean;
inline?: boolean;
widths?: SemanticWIDTHSSTRING | SemanticWIDTHSNUMBER | number | 'equal';
}
var FormGroup: React.ComponentClass<FormGroupProps>;
interface FormInputProps extends InputProps, ReactFormEvents<HTMLInputElement>, ReactFocusEvents<HTMLInputElement> {
}
var FormInput: React.ComponentClass<FormInputProps>;
interface FormRadioProps {
as?: any;
checked?: boolean;
control?: any;
label?: string;
name?: string;
onChange?: SemanticGenericOnClick;
placeholder?: string;
value?: string|number|Array<string>|Array<number>;
}
var FormRadio: React.ComponentClass<FormRadioProps>;
interface FormSelectProps extends ReactFormEvents<HTMLSelectElement>, ReactFocusEvents<HTMLSelectElement> {
as?: any;
control?: any;
label?: string;
multiple?: boolean;
name?: string;
options?: any;
placeholder?: string;
search?: boolean;
width?: number;
compact?: boolean;
}
var FormSelect: React.ComponentClass<FormSelectProps>;
interface FormTextAreaProps extends ReactFormEvents<HTMLTextAreaElement>, ReactFocusEvents<HTMLTextAreaElement> {
as?: any;
control?: any;
label?: string;
name?: string;
options?: any;
placeholder?: string;
rows?: string|number;
width?: number;
}
var FormTextArea: React.ComponentClass<FormTextAreaProps>;
// Grid
// ----------------------------------
type GridPropReversed = 'computer' | 'computer vertically' | 'mobile' | 'mobile vertically' | 'tablet' | 'tablet vertically'
interface GridProps {
as?: any;
celled?: boolean|'internally';
centered?: boolean;
children?: React.ReactNode;
className?: string;
columns?: number | SemanticWIDTHSNUMBER | SemanticWIDTHSSTRING | number | 'equal';
divided?: boolean | 'vertically';
doubling?: boolean;
padded?: boolean | 'horizontally' | 'vertically';
relaxed?: boolean | 'very';
reversed?: GridPropReversed;
stackable?: boolean;
stretched?: boolean;
textAlign?: SemanticTEXTALIGNMENTS;
verticalAlign?: SemanticVERTICALALIGNMENTS;
}
interface GridClass extends React.ComponentClass<GridProps> {
Column: typeof GridColumn;
Row: typeof GridRow;
}
var Grid: GridClass;
type GridPropOnly = 'computer' | 'large screen' | 'mobile' | 'tablet mobile' | 'tablet' | 'widescreen'
interface GridColumnProps {
as?: any;
children?: React.ReactNode;
className?: string;
color?: SemanticCOLORS;
computer?: SemanticWIDTHSNUMBER | SemanticWIDTHSSTRING | number;
floated?: SemanticFLOATS;
largeScreen?: SemanticWIDTHSNUMBER | SemanticWIDTHSSTRING| number;
mobile?: SemanticWIDTHSNUMBER | SemanticWIDTHSSTRING| number;
only?: GridPropOnly;
stretched?: boolean;
tablet?: SemanticWIDTHSNUMBER | SemanticWIDTHSSTRING| number;
textAlign?: SemanticTEXTALIGNMENTS;
verticalAlign?: SemanticVERTICALALIGNMENTS;
widescreen?: number | SemanticWIDTHSSTRING| number;
width?: SemanticWIDTHSNUMBER | SemanticWIDTHSSTRING| number;
}
var GridColumn: React.ComponentClass<GridColumnProps>
interface GridRowProps {
as?: any;
centered?: boolean;
children?: React.ReactNode;
className?: string;
color?: SemanticCOLORS;
columns?: SemanticWIDTHSNUMBER | SemanticWIDTHSSTRING| number | 'equal';
divided?: boolean;
only?: GridPropOnly;
reversed?: GridPropReversed;
stretched?: boolean;
textAlign?: SemanticTEXTALIGNMENTS;
verticalAlign?: SemanticVERTICALALIGNMENTS;
}
var GridRow: React.ComponentClass<GridRowProps>;
// Menu
// ----------------------------------
type MenuPropsIcon = 'labeled';
type MenuPropsTabular = 'right';
type MenuPropsFixed = 'left'| 'right'| 'bottom'| 'top';
type MenuPropsAttached = 'bottom' | 'top';
interface MenuProps {
activeIndex?: number;
as?: any;
attached?: boolean | MenuPropsAttached;
borderless?: boolean;
children?: React.ReactNode;
className?: string;
color?: SemanticCOLORS;
compact?: boolean;
defaultActiveIndex?: number;
fixed?: MenuPropsFixed;
floated?: boolean | SemanticFLOATS;
fluid?: boolean;
icon?: boolean | MenuPropsIcon;
inverted?: boolean;
items?: any; // TODO - check type;
onItemClick?: React.MouseEventHandler<HTMLDivElement>;
pagination?: boolean;
pointing?: boolean;
secondary?: boolean;
size?: SemanticSIZES; // TODO - remove medium and big.
stackable?: boolean;
tabular?: boolean | MenuPropsTabular;
text?: boolean;
vertical?: boolean;
widths?: number|SemanticWIDTHSSTRING | SemanticWIDTHSNUMBER| number;
}
interface MenuClass extends React.ComponentClass<MenuProps> {
Header: typeof MenuHeader;
Item: typeof MenuItem;
Menu: typeof MenuMenuItem;
}
var Menu: MenuClass;
interface HeaderProps {
as?: any;
children?: React.ReactNode;
className?: string;
content?: any;
}
var MenuHeader: React.ComponentClass<HeaderProps>;
interface MenuItemProps extends ReactMouseEvents<HTMLElement> {
active?: boolean;
as?: any;
children?: React.ReactNode;
className?: string;
color?: SemanticCOLORS;
content?: string;
fitted?: boolean | 'horizontally' | 'vertically';
header?: boolean;
icon?: any; // TODO - check type.
index?: number;
link?: boolean;
name?: string;
position?: 'right';
}
var MenuItem: React.ComponentClass<MenuItemProps>;
interface MenuMenuProps {
as?: any;
children?: React.ReactNode;
className?: string;
position?: 'right';
}
var MenuMenuItem: React.ComponentClass<MenuMenuProps>;
// // Message
// // ----------------------------------
interface MessageProps {
as?: any;
attached?: boolean | 'bottom';
children?: React.ReactNode;
className?: string;
color?: SemanticCOLORS;
compact?: boolean;
content?: any;
error?: boolean;
floating?: boolean;
header?: any;
hidden?: boolean;
icon?: any;
info?: boolean;
list?: any;
negative?: boolean;
onDismiss?: React.MouseEventHandler<HTMLDivElement>;
positive?: boolean;
size?: SemanticSIZES;
success?: boolean;
visible?: boolean;
warning?: boolean;
}
interface MessageClass extends React.ComponentClass<MessageProps> {
Content: typeof MessageContent;
Header: typeof MessageHeader;
List: typeof MessageList;
Item: typeof MessageItem;
}
var Message: MessageClass;
interface MessageContentProps {
as?: any;
children?: React.ReactNode;
className?: string;
}
var MessageContent: React.ComponentClass<MessageContentProps>;
interface MessageHeaderProps {
as?: any;
children?: React.ReactNode;
className?: string;
}
var MessageHeader: React.ComponentClass<MessageHeaderProps>;
interface MessageListProps {
as?: any;
children?: React.ReactNode;
className?: string;
items?: Array<any>;
}
var MessageList: React.ComponentClass<MessageListProps>;
interface MessageItemProps {
as?: any;
children?: React.ReactNode;
className?: string;
}
var MessageItem: React.ComponentClass<MessageItemProps>;
// Table
// ----------------------------------
interface TableProps {
as?: any;
attached?: boolean | 'top' | 'bottom';
basic?: boolean | 'very';
celled?: boolean|'internally';
children?: React.ReactNode;
className?: string;
collapsing?: boolean;
color?: SemanticCOLORS;
columns?: SemanticWIDTHSNUMBER | SemanticWIDTHSSTRING | number;
compact?: boolean | 'very';
definition?: boolean;
fixed?: boolean;
footerRow?: any;
headerRow?: any;
inverted?: boolean;
padded?: boolean | 'very';
renderBodyRow?: ()=>void; // TODO - check;
selectable?: boolean;
singleLine?: boolean;
size?: SemanticSIZES;
stackable?: boolean;
striped?: boolean;
structured?: boolean;
tableData?: any;
unstackable?: boolean;
}
interface TableClass extends React.ComponentClass<TableProps> {
Body: typeof TableBody;
Cell: typeof TableCell;
Footer: typeof TableFooter;
Header: typeof TableHeader;
HeaderCell: typeof TableHeaderCell;
Row: typeof TableRow;
}
var Table: TableClass;
interface TableBodyProps {
as?: any;
children?: React.ReactNode;
className?: string;
}
var TableBody: React.ComponentClass<TableBodyProps>;
interface TableCellProps {
active?: boolean;
as ?: any;
children ?: React.ReactNode;
className?: string;
collapsing ?: boolean;
content ?: any;
disabled ?: boolean;
error ?: boolean;
icon ?: any;
negative ?: boolean;
positive ?: boolean;
singleLine ?: boolean;
textAlign?: SemanticTEXTALIGNMENTS;
verticalAlign?: SemanticVERTICALALIGNMENTS;
warning?: boolean;
width?: number | SemanticWIDTHSSTRING | SemanticWIDTHSNUMBER;
}
var TableCell: React.ComponentClass<TableCellProps>;
interface TableFooterProps {
as?: any;
}
var TableFooter: React.ComponentClass<TableFooterProps>;
interface TableHeaderProps {
as?: any;
children?: React.ReactNode;
className?: string;
fullWidth?: boolean;
}
var TableHeader: React.ComponentClass<TableHeaderProps>;
interface TableHeaderCellProps {
as?: any;
}
var TableHeaderCell: React.ComponentClass<TableHeaderCellProps>;
interface TableRowProps {
active?: boolean;
as ?: any;
cellAs?: any;
cells?: any;
children ?: React.ReactNode;
className?: string;
disabled ?: boolean;
error ?: boolean;
negative ?: boolean;
positive ?: boolean;
textAlign?: SemanticTEXTALIGNMENTS;
verticalAlign?: SemanticVERTICALALIGNMENTS;
warning?: boolean;
}
var TableRow: React.ComponentClass<TableRowProps>;
// ======================================================
// Modules
// ======================================================
// Accordian
// ----------------------------------
interface AccordianProps {
activeIndex?: number;
as?: any;
children?: React.ReactNode;
className?: string;
defaultActiveIndex?: number;
fluid?: boolean;
inverted?: string;
onTitleClick?: React.MouseEventHandler<HTMLDivElement>;
panels?: any;
styled?: boolean;
}
interface AccordianClass extends React.ComponentClass<AccordianProps> {
Content: typeof AccordianContent;
Title: typeof AccordianTitle;
}
var Accordian: AccordianClass;
interface AccordianContentProps {
active?: boolean;
as?: any;
children?: React.ReactNode;
className?: string;
}
var AccordianContent: React.ComponentClass<AccordianContentProps>;
interface AccordianTitleProps extends ReactMouseEvents<HTMLElement> {
active?: boolean;
as?: any;
children?: React.ReactNode;
className?: string;
}
var AccordianTitle: React.ComponentClass<AccordianTitleProps>;
// Checkbox
// ----------------------------------
interface CheckboxProps {
as?: any;
checked?: boolean;
className?: string;
defaultChecked?: boolean;
disabled?: boolean;
fitted?: boolean;
label?: string;
name?: string;
onChange?: React.FormEventHandler<HTMLInputElement>;
onClick?: React.MouseEventHandler<HTMLInputElement>;
radio?: any;
readOnly?: boolean;
slider?: any;
toggle?: any;
type?: 'checkbox'|'radio';
value?: string;
}
export class Checkbox extends React.Component<CheckboxProps, {}> {
}
// Dropdown
// ----------------------------------
type DropdownPropPointing = 'left' | 'right' | 'top' | 'top left' | 'top right' | 'bottom' | 'bottom left' | 'bottom right'
type DropdownPropAdditionPosition = 'top' | 'bottom';
interface DropdownProps extends ReactMouseEvents<HTMLElement>, ReactFocusEvents<HTMLElement>, ReactFormEvents<HTMLElement> {
additionLabel?: string;
additionPosition?: DropdownPropAdditionPosition;
allowAdditions?: any;
as?: any;
basic?: boolean;
button?: boolean;
children?: React.ReactNode;
className?: string;
compact?: boolean;
defaultOpen?: boolean;
defaultValue?: string|number|Array<string>|Array<number>;
error?: boolean;
floating?: boolean;
fluid?: boolean;
header?: React.ReactNode;
icon?: any;
inline?: boolean;
labeled?: boolean;
loading?: boolean;
multiple?: boolean;
noResultsMessage?: string;
onAddItem?: React.MouseEventHandler<HTMLSelectElement>;
onSearchChange?: React.FormEventHandler<HTMLSelectElement>;
open?: boolean;
options?: Array<DropdownItemProps>;
placeholder?: string;
pointing?: boolean | DropdownPropPointing;
scrolling?: boolean;
search?: boolean // TODO -add search function;
selectOnBlur?: boolean;
selection?: any;
simple?: boolean;
text?: string|React.ReactNode;
trigger?: any;
value?: string|number|Array<string>|Array<number>;
}
interface DropdownClass extends React.ComponentClass<DropdownProps> {
Divider: typeof DropdownDivider;
Header: typeof DropdownHeader;
Item: typeof DropdownItem;
Menu: typeof DropdownMenu;
}
var Dropdown: DropdownClass;
interface DropdownDividerProps {
as?: any;
}
var DropdownDivider: React.ComponentClass<DropdownDividerProps>;
interface DropdownHeaderProps {
as?: any;
children?: React.ReactNode;
className?: string;
content?: any;
icon?: any;
}
var DropdownHeader: React.ComponentClass<DropdownHeaderProps>;
interface DropdownItemProps extends ReactMouseEvents<HTMLElement>, ReactFocusEvents<HTMLElement>, ReactFormEvents<HTMLElement> {
active?: boolean;
as?: any;
children?: React.ReactNode;
className?: string;
description?: any;
disabled?: boolean;
icon?: any;
selected?: boolean;
text?: any;
value?: number|string;
}
var DropdownItem: React.ComponentClass<DropdownItemProps>;
interface DropdownMenuProps {
as?: any;
children?: React.ReactNode;
className?: string;
}
var DropdownMenu: React.ComponentClass<DropdownMenuProps>;
// Modal
// ----------------------------------
interface ModalProps {
as?: any;
basic?: boolean;
children?: React.ReactNode;
className?: string;
dimmer?: boolean | 'blurring' | 'inverted';
mountnode?: any;
size?: SemanticSIZES;
trigger?: React.ReactNode;
open?: boolean;
onClose: Function;
}
interface ModalClass extends React.ComponentClass<ModalProps> {
Header: typeof ModalHeader;
Content: typeof ModalContent;
Description: typeof ModalDescription;
Actions: typeof ModalActions;
}
var Modal: ModalClass;
interface ModalHeaderProps {
as?: any;
children?: React.ReactNode;
className?: string;
}
var ModalHeader: React.ComponentClass<ModalHeaderProps>;
interface ModalContentProps {
as?: any;
children?: React.ReactNode;
className?: string;
image?: boolean;
}
var ModalContent: React.ComponentClass<ModalContentProps>;
interface ModalDescriptionProps {
as?: any;
children?: React.ReactNode;
className?: string;
}
var ModalDescription: React.ComponentClass<ModalDescriptionProps>;
interface ModalActionsProps {
as?: any;
children?: React.ReactNode;
className?: string;
}
var ModalActions: React.ComponentClass<ModalActionsProps>;
// Progress
// ----------------------------------
interface ProgressProps {
active?: boolean;
as?: any;
attached?: 'top' | 'bottom';
autoSuccess?: boolean;
children?: React.ReactNode;
className?: string;
color?: SemanticCOLORS;
disabled?: boolean;
error?: boolean;
indicating?: boolean;
inverted?: string;
label?: any;
percent?: any;
precision?: number;
progress?: boolean;
size?: SemanticSIZES;
success?: boolean;
total?: any;
value?: any;
warning?: boolean;
}
export class Progress extends React.Component<ProgressProps, void> {
}
// Rating
// ----------------------------------
interface RatingProps {
as?: any;
className?: string;
clearable?: boolean | 'auto';
defaultRating?: string|number;
icon?: 'star'|'heart';
maxRating?: string|number;
onRate?: React.MouseEventHandler<HTMLDivElement>;
rating?: string|number;
size?: SemanticSIZES;
}
interface RatingClass extends React.ComponentClass<RatingProps> {
Icon: typeof RatingIcon;
}
var Rating: RatingClass;
interface RatingIconProps extends ReactMouseEvents<HTMLElement> {
active?: boolean;
className?: string;
index?: number;
selected?: boolean;
}
var RatingIcon: React.ComponentClass<RatingIconProps>;
// Popup
// ----------------------------------
type PopupPropOn = 'hover'|'click'|'focus';
interface PopupProps {
basic?: boolean;
children?: React.ReactNode;
className?: string;
content?: any;
flowing?: boolean;
header?: string;
hideOnScroll?: boolean;
hoverable?: boolean;
inverted?: string;
offset?: number;
on?: PopupPropOn;
positioning?: SemanticPOSITIONING;
size?: SemanticSIZES;
style?: Object;
trigger?: React.ReactNode;
wide?: boolean | 'very';
}
interface PopupClass extends React.ComponentClass<PopupProps> {
Content: typeof PopupContent;
Header: typeof PopupHeader;
}
var Popup: PopupClass;
interface PopupContentProps {
children?: React.ReactNode;
className?: string;
}
var PopupContent: React.ComponentClass<PopupContentProps>;
interface PopupHeaderProps {
children?: React.ReactNode;
className?: string;
}
var PopupHeader: React.ComponentClass<PopupHeaderProps>;
// Search
// ----------------------------------
interface SearchProps extends ReactMouseEvents<HTMLInputElement>, ReactFocusEvents<HTMLInputElement>, ReactFormEvents<HTMLInputElement> {
aligned?: string;
as?: any;
category?: boolean;
categoryRenderer?: ()=>void; // TODO : fix;
className?: string;
defaultOpen?: boolean;
defaultValue?: string;
fluid?: boolean;
icon?: any;
loading?: boolean;
minCharacters?: number;
noResultsDescription?: string;
noResultsMessage?: string;
onSearchChange?: React.FormEventHandler<HTMLInputElement>;
open?: boolean;
placeholder?: string;
resultRenderer?: ()=>void; // TODO: fix.
results?: Array<any>|Object;
selectFirstResult?: boolean;
showNoResults?: boolean;
size?: SemanticSIZES;
value?: string;
}
interface SearchClass extends React.ComponentClass<SearchProps> {
SearchResult: typeof SearchResult;
SearchResults: typeof SearchResults;
}
var Search: SearchClass;
interface SearchResultProps {
active?: boolean;
as?: any;
className?: string;
description?: string;
id?: number;
image?: string;
onClick?: SemanticSearchOnClick;
price?: string;
renderer?: ()=>void; // TODO - fix;
title?: string;
}
var SearchResult: React.ComponentClass<SearchResultProps>;
interface SearchResultsProps {
as?: any;
children?: React.ReactNode;
className?: string;
}
var SearchResults: React.ComponentClass<SearchResultsProps>;
interface SearchCategoryProps {
active?: boolean;
as?: any;
children?: React.ReactNode;
className?: string;
name?: string;
renderer?: ()=>void; // TODO - fix;
results?: Array<typeof SearchResult>;
}
var SearchCategory: React.ComponentClass<SearchCategoryProps>;
// ======================================================
// Views
// ======================================================
// Card
// ----------------------------------
interface CardProps extends ReactMouseEvents<HTMLElement> {
as?: any;
centered?: boolean;
children?: React.ReactNode;
className?: string;
color?: SemanticCOLORS;
description?: any;
extra?: any;
fluid?: boolean;
header?: any;
href?: string;
image?: any;
meta?: any;
onClick?: React.MouseEventHandler<any>;
raised?: boolean;
}
interface CardClass extends React.ComponentClass<CardProps> {
Content: typeof CardContent;
Description: typeof CardDescription;
Group: typeof CardGroup;
Header: typeof CardHeader;
Meta: typeof CardMeta;
}
var Card: CardClass;
interface CardContentProps {
as?: any;
children?: React.ReactNode;
className?: string;
description?: string;
extra?: boolean;
header?: any;
meta?: any;
}
var CardContent: React.ComponentClass<CardContentProps>;
interface CardDescriptionProps {
as?: any;
children?: React.ReactNode;
className?: string;
content?: any;
}
var CardDescription: React.ComponentClass<CardDescriptionProps>;
interface CardGroupProps {
as?: any;
children?: React.ReactNode;
className?: string;
doubling?: boolean;
items?: Array<any>;
itemsPerRow?: SemanticWIDTHSNUMBER | SemanticWIDTHSSTRING | number;
stackable?: boolean;
}
var CardGroup: React.ComponentClass<CardGroupProps>;
interface CardHeaderProps {
as?: any;
children?: React.ReactNode;
className?: string;
content?: any;
}
var CardHeader: React.ComponentClass<CardHeaderProps>;
interface CardMetaProps {
as?: any;
children?: React.ReactNode;
className?: string;
content?: any;
}
var CardMeta: React.ComponentClass<CardMetaProps>;
// Comment
// ----------------------------------
interface CommentProps {
as?: any;
children?: React.ReactNode;
className?: string;
collapsed?: boolean;
}
interface CommentClass extends React.ComponentClass<CommentProps> {
Author: typeof CommentAuthor;
Action: typeof CommentAction;
Actions: typeof CommentActions;
Avatar: typeof CommentAvatar;
Content: typeof CommentContent;
Group: typeof CommentGroup;
Metadata: typeof CommentMetadata;
Text: typeof CommentText;
}
var Comment: CommentClass;
interface CommentAuthorProps {
as?: any;
children?: React.ReactNode;
className?: string;
}
var CommentAuthor: React.ComponentClass<CommentAuthorProps>;
interface CommentActionProps {
active?: boolean;
as?: any;
children?: React.ReactNode;
className?: string;
}
var CommentAction: React.ComponentClass<CommentActionProps>;
interface CommentActionsProps {
as?: any;
children?: React.ReactNode;
className?: string;
}
var CommentActions: React.ComponentClass<CommentActionsProps>;
interface CommentAvatarProps {
as?: any;
className?: string;
src?: string;
}
var CommentAvatar: React.ComponentClass<CommentAvatarProps>;
interface CommentContentProps {
as?: any;
children?: React.ReactNode;
className?: string;
}
var CommentContent: React.ComponentClass<CommentContentProps>;
interface CommentGroupProps {
as?: any;
children?: React.ReactNode;
className?: string;
collapsed?: boolean;
minimal?: boolean;
threaded?: boolean;
}
var CommentGroup: React.ComponentClass<CommentGroupProps>;
interface CommentMetadataProps {
as?: any;
children?: React.ReactNode;
className?: string;
}
var CommentMetadata: React.ComponentClass<CommentMetadataProps>;
interface CommentTextProps {
as?: any;
children?: React.ReactNode;
className?: string;
}
var CommentText: React.ComponentClass<CommentTextProps>;
// Item
// ----------------------------------
interface ItemProps {
as?: any;
children?: React.ReactNode;
className?: string;
content?: any;
description?: string;
extra?: any;
header?: any;
image?: any;
meta?: any;
}
interface ItemClass extends React.ComponentClass<ItemProps> {
Content: typeof ItemContent;
Description: typeof ItemDescription;
Extra: typeof ItemExtra;
Group: typeof ItemGroup;
Header: typeof ItemHeader;
Image: typeof ItemImage;
Meta: typeof ItemMeta;
}
var Item: ItemClass;
interface ItemContentProps {
as?: any;
children?: React.ReactNode;
className?: string;
content?: any;
description?: string;
extra?: any;
header?: any;
image?: any;
meta?: any;
verticalAlign?: SemanticVERTICALALIGNMENTS;
}
var ItemContent: React.ComponentClass<ItemContentProps>;
interface ItemDescriptionProps {
as?: any;
children?: React.ReactNode;
className?: string;
content?: any;
}
var ItemDescription: React.ComponentClass<ItemDescriptionProps>;
interface ItemExtraProps {
as?: any;
children?: React.ReactNode;
className?: string;
content?: any;
}
var ItemExtra: React.ComponentClass<ItemExtraProps>;
interface ItemGroupProps {
as?: any;
children?: React.ReactNode;
className?: string;
divided?: boolean;
items?: any;
link?: boolean;
relaxed?: boolean|'very';
}
var ItemGroup: React.ComponentClass<ItemGroupProps>;
interface ItemHeaderProps {
as?: any;
children?: React.ReactNode;
className?: string;
content?: any;
}
var ItemHeader: React.ComponentClass<ItemHeaderProps>;
interface ItemImageProps extends ImageProps {
}
var ItemImage: React.ComponentClass<ItemImageProps>;
interface ItemMetaProps {
as?: any;
children?: React.ReactNode;
className?: string;
content?: any;
}
var ItemMeta: React.ComponentClass<ItemMetaProps>;
// Feed
// ----------------------------------
interface FeedProps {
as?: any;
children?: React.ReactNode;
className?: string;
events?: Array<any>;
size?: SemanticSIZES;
}
interface FeedClass extends React.ComponentClass<FeedProps> {
Content: typeof FeedContent;
Date: typeof FeedDate;
Event: typeof FeedEvent;
Extra: typeof FeedExtra;
Label: typeof FeedLabel;
Meta: typeof FeedMeta;
Like: typeof FeedLike;
Summary: typeof FeedSummary;
User: typeof FeedUser;
}
var Feed: FeedClass;
interface FeedContentProps {
as?: any;
children?: React.ReactNode;
className?: string;
content?: any;
date?: any;
extraImages?: any;
extraText?: any;
meta?: any;
summary?: any;
}
var FeedContent: React.ComponentClass<FeedContentProps>;
interface FeedDateProps {
as?: any;
children?: React.ReactNode;
className?: string;
content?: any;
}
var FeedDate: React.ComponentClass<FeedDateProps>;
interface FeedEventProps {
as?: any;
children?: React.ReactNode;
className?: string;
content?: any;
date?: any;
extraImages?: any;
extraText?: any;
icon?: any;
image?: any;
meta?: any;
summary?: any;
}
var FeedEvent: React.ComponentClass<FeedEventProps>;
interface FeedExtraProps {
as?: any;
children?: React.ReactNode;
className?: string;
content?: any;
images?: any;
text?: boolean;
}
var FeedExtra: React.ComponentClass<FeedExtraProps>;
interface FeedLabelProps {
as?: any;
children?: React.ReactNode;
className?: string;
content?: any;
icon?: any;
image?: any;
}
var FeedLabel: React.ComponentClass<FeedLabelProps>;
interface FeedLikeProps {
as?: any;
children?: React.ReactNode;
className?: string;
content?: any;
icon?: any;
}
var FeedLike: React.ComponentClass<FeedLikeProps>;
interface FeedMetaProps {
as?: any;
children?: React.ReactNode;
className?: string;
content?: any;
like?: any;
}
var FeedMeta: React.ComponentClass<FeedMetaProps>;
interface FeedSummaryProps {
as?: any;
children?: React.ReactNode;
className?: string;
content?: any;
date?: any;
user?: any;
}
var FeedSummary: React.ComponentClass<FeedSummaryProps>;
interface FeedUserProps {
as?: any;
children?: React.ReactNode;
className?: string;
content?: any;
}
var FeedUser: React.ComponentClass<FeedUserProps>;
// Statistic
// ----------------------------------
interface StatisticProps {
as?: any;
children?: React.ReactNode;
className?: string;
color?: SemanticCOLORS;
floated?: SemanticFLOATS;
horizontal?: boolean;
inverted?: string;
label?: any;
size?: SemanticSIZES;
text?: boolean;
value?: any;
}
interface StatisticClass extends React.ComponentClass<StatisticProps> {
Group: typeof StatisticGroup;
Label: typeof StatisticLabel;
Value: typeof StatisticValue;
}
var Statistic: StatisticClass;
interface StatisticGroupProps {
as?: any;
children?: React.ReactNode;
className?: string;
horizontal?: boolean;
items?: any;
widths?: SemanticWIDTHSSTRING | SemanticWIDTHSNUMBER | number;
}
var StatisticGroup: React.ComponentClass<StatisticGroupProps>;
interface StatisticLabelProps {
as?: any;
children?: React.ReactNode;
className?: string;
label?: any;
}
var StatisticLabel: React.ComponentClass<StatisticLabelProps>;
interface StatisticValueProps {
as?: any;
children?: React.ReactNode;
className?: string;
text?: boolean;
value?: any;
}
var StatisticValue: React.ComponentClass<StatisticValueProps>;
// ======================================================
// Addons
// ======================================================
// NOTE(zuko): This category breaks alphabetical ordering because it relies
// on components defined in other categories
// ======================================================
// TODO(zuko): Confirm
// TODO(zuko): Radio
// TODO(zuko): Select
// TODO(zuko): Textarea
}
// ======================================================
// Elements
// ======================================================
declare module "semantic-ui-react" {
export = _semanticUIReact;
}
@dola
Copy link

dola commented Oct 20, 2016

Thanks for the effort! Found a small bug when trying it out. (TS 1.8.3, IntelliJ)
This should this should be

relaxed?: boolean | 'very';

Copy link

ghost commented Mar 16, 2019

Thanks for this!

@lastmaj
Copy link

lastmaj commented Oct 27, 2020

thank you ^^

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment