diff --git a/types/solid__react/index.d.ts b/types/solid__react/index.d.ts index 34b62daba8..2fa8139d90 100644 --- a/types/solid__react/index.d.ts +++ b/types/solid__react/index.d.ts @@ -8,9 +8,10 @@ import * as React from 'react'; export interface LoginButtonProps { popup: string; + className?: string; } export class LoginButton extends React.Component {} -export class LogoutButton extends React.Component {} +export class LogoutButton extends React.Component<{ className?: string; }> {} export interface AuthButtonProps extends LoginButtonProps { login: string; logout: string; @@ -33,13 +34,20 @@ export function useLDflex(expression: string, listMode?: false): [LDflexValue, b export class Value extends React.Component<{src: string}> {} export interface ListProps { src: string; - children?: (listItem: LDflexValue) => JSX.Element; + offset?: number; + limit?: number; + // dtslint does not appear to understand that `T` is used in the type guard. + // See https://github.com/Microsoft/dtslint/issues/228 + // tslint:disable-next-line no-unnecessary-generics + filter?: (item: LDflexValue, index: number, array: LDflexValue[]) => item is T; + container?: (items: JSX.Element) => JSX.Element; + children?: (listItem: LDflexValue, index: number) => JSX.Element; } export class List extends React.Component {} -export class Image extends React.Component<{ src: string; defaultSrc?: string; }> {} +export class Image extends React.Component<{ src: string; defaultSrc?: string; } & React.HTMLAttributes> {} export class Label extends React.Component<{ src: string; }> {} -export class Link extends React.Component<{ href: string; }> {} +export class Link extends React.Component<{ href: string; } & React.HTMLAttributes> {} export class LiveUpdate extends React.Component<{ subscribe?: '*' | string | string[]; }> {} export class Name extends React.Component<{ src: string; }> {} @@ -51,7 +59,7 @@ export interface ActivityButtonProps { activateLabel?: string | [string, string, React.ReactNode]; deactivateLabel?: string | [string, string, React.ReactNode]; } -export class ActivityButton extends React.Component {} +export class ActivityButton extends React.Component> {} export class Like extends ActivityButton {} export class LikeButton extends Like {} export class Dislike extends ActivityButton {} diff --git a/types/solid__react/solid__react-tests.tsx b/types/solid__react/solid__react-tests.tsx index 862082ece3..feed21624d 100644 --- a/types/solid__react/solid__react-tests.tsx +++ b/types/solid__react/solid__react-tests.tsx @@ -14,11 +14,11 @@ export const TestElement: React.FC = () => { return ( <> - + You are logged in You are logged out - Like this page + undefined}>Like this page ); };