import { Vector3, Vector4 } from "./GeoMath";
import ContainerController from "./ContainerController";
/**
* 著作権表示の表示制御
*/
declare class AttributionController extends ContainerController {
private _default_attributions;
private _attributions;
private _background_color;
private _text_color;
protected _sub_container: HTMLElement;
private _normalize_attribution_styles;
/**
* コンストラクタ
* @param options 表示オプション( 任意で著作権コンテナの表示に関するオプションを指定する。 )
*/
constructor(options?: AttributionController.Option);
/**
* 指定した著作権をコンテナに追加
* @param attribution 単体もしくは配列の文字列 ( HTMLタグ可 )
*/
addAttribution(attribution: string | string[]): void;
/**
* 指定した著作権をコンテナに追加
* @param attribution 単体もしくは配列の文字列 ( HTMLタグ可 )
* @param is_default デフォルト要素として追加するか
*/
private _addAttribution;
/**
* 指定した著作権をコンテナから削除
* @param attribution 対象の著作権を示す文字列
*/
removeAttribution(attribution: string): void;
/**
* コンテナが持つ著作権をリセット
*
* 「©Mapray」を含むデフォルトの著作権はリセットしない。
*/
clearAttribution(): void;
/**
* コンテナが持つ著作権を取得
* @returns 著作権の配列
*/
getAttributions(): string[];
/**
* 指定した著作権をコンテナが持つデフォルトの著作権から削除
* @param attribution 対象の著作権を示す文字列
*/
private _removeDefaultAttribution;
/**
* コンテナが持つデフォルトの著作権をリセット
*/
private _clearDefaultAttribution;
/**
* コンテナが持つデフォルトの著作権を取得
* @returns デフォルトの著作権配列
*/
private _getDefaultAttributions;
/**
* コンテナの背景色を変更
* @param color GeoMath で表される色情報
*/
setBackgroundColor(color: Vector3 | Vector4): void;
/**
* コンテナの現在の背景色を取得
* @returns GeoMath で表される色情報
*/
getBackgroundColor(): Vector4;
/**
* コンテナの文字色を変更
* @param color GeoMath で表される色情報
*/
setTextColor(color: Vector3): void;
/**
* コンテナの現在の文字色を取得
* @returns GeoMath で表される色情報
*/
getTextColor(): Vector3;
/**
* 著作権を追加する際に、コンテナに既にある著作権と重複していないかを確認
* @param attribution 確認する対象の著作権
* @returns 重複していないなら true、重複しているなら false
*/
private _isValidAttribution;
/**
* コンテナに著作権を追加
*
* 追加した著作権はコンテナに表示されている著作権の末尾に配置される。
* @param attribution 著作権
*/
private _addDomNodeForAttribution;
/**
* コンテナの背景色の変更処理
*/
private _updateBackgroundColor;
private _updateTextColor;
}
declare namespace AttributionController {
interface Option extends ContainerController.Option {
/**
* 著作権コンテナに表示する著作権を指定
* @example
* ```ts
* const myAttributions = [
* `©Mapray`,
* `©JAXA`,
* `測量法に基づく国土地理院長承認(複製)H30JHf626`
* ]
* ```
*/
attributions?: string | string[];
/**
* 著作権コンテナに含まれるAタグなどに適用されるブラウザデフォルトスタイルを無効にする。
*
* `setTextColor` を使って指定したテキスト色が上書きされるのを防ぐために利用します(デフォルトで有効です)。
* この動作を無効にするには `false` を指定します。
*
* @defaultValue `true`
*/
normalize_attribution_styles?: boolean;
/**
* 背景色を指定
* @example
* ```ts
* background_color: [0, 1, 0, 0.5]
* ```
*/
background_color?: Vector3 | Vector4;
/**
* 文字色を指定
* @example
* ```ts
* text_color: [0, 1, 0]
* ```
*/
text_color?: Vector3;
/**
* Viewer に格納されるコンテナに対してこのオプションを用いることを想定
* true にすることで、©Mapray ( デフォルトの著作権 ) が表示される。
* ユーザ側でこのオプションを指定することはない。またこのパラメータは途中で変えることができない。
*/
is_default?: boolean;
}
/**
* Mapray 著作権
*/
const MAPRAY_DEFAULT_ATTRIBUTION: string;
}
export default AttributionController;
//# sourceMappingURL=AttributionController.d.ts.map