@onesy/style
Version:
CSS in JS styling solution
105 lines (104 loc) • 3.22 kB
TypeScript
import OnesySubscription from '@onesy/subscription';
import OnesyStyle from './OnesyStyle';
import OnesyStyleSheet from './OnesyStyleSheet';
import OnesyStyleRuleProperty from './OnesyStyleRuleProperty';
import { IOptionsRule, IValuesVersion, TMode, TRef, TStatus, TValueVersion } from './interfaces';
export declare type TVersion = 'property' | 'at-rule';
export interface IRuleItemWithString {
property: string;
value: OnesyStyleRule | OnesyStyleRuleProperty;
}
export interface IOnesyStyleRuleValue {
value: Array<string | (() => any) | OnesySubscription>;
options?: {
rule?: IOptionsRule;
};
}
export declare type TRules = Array<{
property: string;
value: OnesyStyleRule | OnesyStyleRuleProperty;
}>;
interface IOptions extends IOptionsRule {
mode?: TMode;
value_version?: TValueVersion;
version?: TVersion;
pure?: boolean;
index?: number;
owner?: OnesyStyleRule | OnesyStyleSheet;
parents?: Array<OnesyStyleSheet | OnesyStyleRule>;
onesyStyle?: OnesyStyle;
onesyStyleSheet?: OnesyStyleSheet;
}
declare class OnesyStyleRule {
value: any;
property: string;
options: IOptions;
id: string;
value_version: TValueVersion;
mode: TMode;
version: TVersion;
pure: boolean;
index: number;
owner: OnesyStyleRule | OnesyStyleSheet;
parents: Array<OnesyStyleSheet | OnesyStyleRule>;
onesyStyleSheet: OnesyStyleSheet;
onesyStyle: OnesyStyle;
rule_: CSSStyleRule;
status: TStatus;
level: number;
level_actual: number;
isVariable: boolean;
hash_: string;
static: boolean;
rules_owned: Array<OnesyStyleRule | OnesyStyleRuleProperty>;
ref: TRef;
className_: string;
selector_: string;
classNames_: string;
keyframesName_: string;
values: {
value: any;
css: string;
};
rules: TRules;
constructor(value: any, property: string, options?: IOptions);
get selector(): string;
private set selector(value);
get className(): string;
set className(value: string);
get classNames(): string;
set classNames(value: string);
get keyframesName(): string;
set keyframesName(value: string);
get hash(): string;
get parent(): OnesyStyleRule | OnesyStyleSheet;
get response(): IValuesVersion;
get css(): string;
get allOwnedCss(): string;
get counter(): {
className: number;
keyframesName: number;
};
private makeRuleClassNameDefault;
private makeRuleKeyframesNameDefault;
updateValues(hash_?: boolean): void;
private makeHash;
private init;
addProperty(prop: string, value: any, index?: number, unique?: boolean, add?: boolean): void;
add(update?: boolean): boolean;
updateProps(): void;
update(value?: any): void;
remove(): void;
private addRuleToCss;
addRuleRef(): void;
makeSelector(): void;
private makeClassName;
private makeRuleClassName;
private makeRuleKeyframesName;
get rule(): CSSStyleRule;
set rule(rule: CSSStyleRule);
private get unique();
private clear;
static make(value: any, property: string, options?: IOptions): OnesyStyleRule;
}
export default OnesyStyleRule;