mirror of
https://github.com/zhigang1992/DefinitelyTyped.git
synced 2026-05-26 00:21:41 +08:00
* Support Partial<> on setState now that TS 2.1 is out * Update readme to reflect setState being typed correctly * Switch setState to Pick * Restore cloneELement portion of readme * Use Pick<> | S for setState due to cast issue * state and props should be readonly * Fix nit + document why we * Add typescript compiler header * Update to properly order headers * Update readme to reflect 2.1.5 fixing stPick * Update readme now that 2.1.5 is out * All that depend on react now require 2.1 * Fix definition that fails due to readonly state
71 lines
1.8 KiB
TypeScript
71 lines
1.8 KiB
TypeScript
// Type definitions for Aphrodite 0.5.0
|
|
// Project: https://github.com/Khan/aphrodite
|
|
// Definitions by: Alexey Svetliakov <https://github.com/asvetliakov>
|
|
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
|
|
// TypeScript Version: 2.1
|
|
|
|
import * as React from "react";
|
|
|
|
/**
|
|
* Aphrodite style declaration
|
|
*/
|
|
export interface StyleDeclaration {
|
|
[key: string]: React.CSSProperties;
|
|
}
|
|
|
|
interface StyleSheetStatic {
|
|
/**
|
|
* Create style sheet
|
|
*/
|
|
create<T extends StyleDeclaration>(styles: T): T;
|
|
/**
|
|
* Rehydrate class names from server renderer
|
|
*/
|
|
rehydrate(renderedClassNames: string[]): void;
|
|
}
|
|
|
|
export var StyleSheet: StyleSheetStatic;
|
|
/**
|
|
* Get class names from passed styles
|
|
*/
|
|
export function css(...styles: any[]): string;
|
|
|
|
interface StaticRendererResult {
|
|
html: string;
|
|
css: {
|
|
content: string;
|
|
renderedClassNames: string[];
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Utilities for using Aphrodite server-side.
|
|
*/
|
|
interface StyleSheetServerStatic {
|
|
renderStatic(renderFunc: () => string): StaticRendererResult;
|
|
}
|
|
|
|
export var StyleSheetServer: StyleSheetServerStatic;
|
|
|
|
interface StyleSheetTestUtilsStatic {
|
|
/**
|
|
* Prevent styles from being injected into the DOM.
|
|
*
|
|
* This is useful in situations where you'd like to test rendering UI
|
|
* components which use Aphrodite without any of the side-effects of
|
|
* Aphrodite happening. Particularly useful for testing the output of
|
|
* components when you have no DOM, e.g. testing in Node without a fake DOM.
|
|
*
|
|
* Should be paired with a subsequent call to
|
|
* clearBufferAndResumeStyleInjection.
|
|
*/
|
|
suppressStyleInjection(): void;
|
|
/**
|
|
* Opposite method of preventStyleInject.
|
|
*/
|
|
clearBufferAndResumeStyleInjection(): void;
|
|
}
|
|
|
|
export var StyleSheetTestUtils: StyleSheetTestUtilsStatic;
|
|
|